Files
gstack/lib/diagram-render/dist/diagram-render.html
T
Garry TanandClaude Fable 5.1 444f8feff8 fix: pre-landing review fixes for the Aside-first branch
Review army + adversarial passes (Claude and Codex) on the merged branch:

setup
- _prune_stale_generated scans the host dirs too (the generator already
  removed the render before setup ran, so the host branch was dead), skips
  symlinks in the render tree (rm -rf on a slash-terminated link empties its
  target), removes a host symlink only when it resolves into gstack, cleans a
  bannered real dir through _cleanup_weak_dir, recognizes frontmatter-renamed
  skills, and logs through log. The always-run codex render passes every host
  dir that may link to it.
- NEEDS_BUILD checks all three binaries (with $_EXE) and lib/ sources; the
  browser hint and the bootstrap summary honor GSTACK_SKIP_ASIDE, treat a
  requested skip as a request, and derive one skill list.

lib/aside-render.ts + bin/gstack-render.ts
- The loopback server carries a per-render secret path, checks containment on
  the real path (symlink escapes are 403), and rejects malformed encoding.
- Inline eval results are one base64 line, so page text cannot forge
  ASIDE_DIR= or the sentinel; the last ASIDE_DIR wins.
- runProc escalates SIGTERM to SIGKILL, bounds every wait, and clears every
  timer (an uncleared one kept gstack-render alive after printing OK).
- renderTmpDir refuses a shared /tmp name owned by someone else; the work dir
  and server are created inside try; goto's budget follows the render budget.
- probeAside classifies a present-but-failing CLI as ASIDE_NOT_RUNNING like
  the skills' bash probe; render() retries on gstack's own browser when Aside
  could not start or its private CDP bridge is gone (never on a page error
  or a timeout of a running script); the CLI reports the engine that actually
  rendered, exits 0 on --help, rejects non-numeric flags, documents
  --wait-timeout, fences EVAL/PAGE_ERRORS as untrusted content, and names the
  daemon's cookie-import JS lock remedy.
- The browse path passes --scale only when asked (a scale change rebuilds
  the daemon context) and restores the viewport after a sized screenshot.

resolvers / templates
- The bash probe honors GSTACK_SKIP_ASIDE and has a perl deadline on stock
  macOS; .local is no longer LOCAL (mDNS); same-origin filters compare parsed
  origins; link status is HEAD-checked only on LOCAL targets; every
  aside exec goes through the receipted _aside_exec prelude
  ({{ASIDE_EXEC_PRELUDE}}), including nine template blocks that called it
  bare; the design sketch and diagram staging use private directories.
- The generator prunes only bannered renders and never a host whose
  generation failed.

Docs, stale comments and dead code cleaned; goldens re-rendered; tests
updated and added for every behavior above.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-06 07:23:26 +00:00

4178 lines
7.5 MiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!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 i04=Object.create;var{getPrototypeOf:a04,defineProperty:bo,getOwnPropertyNames:V04}=Object;var h04=Object.prototype.hasOwnProperty;function m04(u){return this[u]}var r04,$04,Eu=(u,B,E)=>{var A=u!=null&&typeof u==="object";if(A){var C=B?r04??=new WeakMap:$04??=new WeakMap,D=C.get(u);if(D)return D}E=u!=null?i04(a04(u)):{};let F=B||!u||!u.__esModule?bo(E,"default",{value:u,enumerable:!0}):E;for(let U of V04(u))if(!h04.call(F,U))bo(F,U,{get:m04.bind(u,U),enumerable:!0});if(A)C.set(u,F);return F};var P1=(u,B)=>()=>(B||u((B={exports:{}}).exports,B),B.exports);var y04=(u)=>u;function c04(u,B){this[u]=y04.bind(null,B)}var ju=(u,B)=>{for(var E in B)bo(u,E,{get:B[E],enumerable:!0,configurable:!0,set:c04.bind(B,E)})};var g=(u,B)=>()=>(u&&(B=u(u=0)),B);var XQ=((u)=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(u,{get:(B,E)=>(typeof require<"u"?require:B)[E]}):u)(function(u){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+u+'" is not supported')});var eK0,X=(u,B)=>eK0(u,"name",{value:B,configurable:!0}),Gf=(u,B)=>{for(var E in B)eK0(u,E,{get:B[E],enumerable:!0})};var Y4=g(()=>{eK0=Object.defineProperty});var OP=P1((Mo,Zo)=>{(function(u,B){typeof Mo=="object"&&typeof Zo<"u"?Zo.exports=B():typeof define=="function"&&define.amd?define(B):(u=typeof globalThis<"u"?globalThis:u||self).dayjs=B()})(Mo,function(){var u=1000,B=60000,E=3600000,A="millisecond",C="second",D="minute",F="hour",U="day",z="week",k="month",f="quarter",l="year",b="date",M="Invalid Date",Z=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,J=/\[([^\]]+)]|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,w={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(R){var Y=["th","st","nd","rd"],a=R%100;return"["+R+(Y[(a-20)%10]||Y[a]||Y[0])+"]"}},K=function(R,Y,a){var I=String(R);return!I||I.length>=Y?R:""+Array(Y+1-I.length).join(a)+R},Q={s:K,z:function(R){var Y=-R.utcOffset(),a=Math.abs(Y),I=Math.floor(a/60),O=a%60;return(Y<=0?"+":"-")+K(I,2,"0")+":"+K(O,2,"0")},m:function R(Y,a){if(Y.date()<a.date())return-R(a,Y);var I=12*(a.year()-Y.year())+(a.month()-Y.month()),O=Y.clone().add(I,k),i=a-O<0,N=Y.clone().add(I+(i?-1:1),k);return+(-(I+(a-O)/(i?O-N:N-O))||0)},a:function(R){return R<0?Math.ceil(R)||0:Math.floor(R)},p:function(R){return{M:k,y:l,w:z,d:U,D:b,h:F,m:D,s:C,ms:A,Q:f}[R]||String(R||"").toLowerCase().replace(/s$/,"")},u:function(R){return R===void 0}},G="en",L={};L[G]=w;var H="$isDayjsObject",q=function(R){return R instanceof S||!(!R||!R[H])},x=function R(Y,a,I){var O;if(!Y)return G;if(typeof Y=="string"){var i=Y.toLowerCase();L[i]&&(O=i),a&&(L[i]=a,O=i);var N=Y.split("-");if(!O&&N.length>1)return R(N[0])}else{var V=Y.name;L[V]=Y,O=V}return!I&&O&&(G=O),O||!I&&G},v=function(R,Y){if(q(R))return R.clone();var a=typeof Y=="object"?Y:{};return a.date=R,a.args=arguments,new S(a)},W=Q;W.l=x,W.i=q,W.w=function(R,Y){return v(R,{locale:Y.$L,utc:Y.$u,x:Y.$x,$offset:Y.$offset})};var S=function(){function R(a){this.$L=x(a.locale,null,!0),this.parse(a),this.$x=this.$x||a.x||{},this[H]=!0}var Y=R.prototype;return Y.parse=function(a){this.$d=function(I){var{date:O,utc:i}=I;if(O===null)return new Date(NaN);if(W.u(O))return new Date;if(O instanceof Date)return new Date(O);if(typeof O=="string"&&!/Z$/i.test(O)){var N=O.match(Z);if(N){var V=N[2]-1||0,h=(N[7]||"0").substring(0,3);return i?new Date(Date.UTC(N[1],V,N[3]||1,N[4]||0,N[5]||0,N[6]||0,h)):new Date(N[1],V,N[3]||1,N[4]||0,N[5]||0,N[6]||0,h)}}return new Date(O)}(a),this.init()},Y.init=function(){var a=this.$d;this.$y=a.getFullYear(),this.$M=a.getMonth(),this.$D=a.getDate(),this.$W=a.getDay(),this.$H=a.getHours(),this.$m=a.getMinutes(),this.$s=a.getSeconds(),this.$ms=a.getMilliseconds()},Y.$utils=function(){return W},Y.isValid=function(){return this.$d.toString()!==M},Y.isSame=function(a,I){var O=v(a);return this.startOf(I)<=O&&O<=this.endOf(I)},Y.isAfter=function(a,I){return v(a)<this.startOf(I)},Y.isBefore=function(a,I){return this.endOf(I)<v(a)},Y.$g=function(a,I,O){return W.u(a)?this[I]:this.set(O,a)},Y.unix=function(){return Math.floor(this.valueOf()/1000)},Y.valueOf=function(){return this.$d.getTime()},Y.startOf=function(a,I){var O=this,i=!!W.u(I)||I,N=W.p(a),V=function(_,b0){var B0=W.w(O.$u?Date.UTC(O.$y,b0,_):new Date(O.$y,b0,_),O);return i?B0:B0.endOf(U)},h=function(_,b0){return W.w(O.toDate()[_].apply(O.toDate("s"),(i?[0,0,0,0]:[23,59,59,999]).slice(b0)),O)},r=this.$W,m=this.$M,$=this.$D,y="set"+(this.$u?"UTC":"");switch(N){case l:return i?V(1,0):V(31,11);case k:return i?V(1,m):V(0,m+1);case z:var p=this.$locale().weekStart||0,e=(r<p?r+7:r)-p;return V(i?$-e:$+(6-e),m);case U:case b:return h(y+"Hours",0);case F:return h(y+"Minutes",1);case D:return h(y+"Seconds",2);case C:return h(y+"Milliseconds",3);default:return this.clone()}},Y.endOf=function(a){return this.startOf(a,!1)},Y.$set=function(a,I){var O,i=W.p(a),N="set"+(this.$u?"UTC":""),V=(O={},O[U]=N+"Date",O[b]=N+"Date",O[k]=N+"Month",O[l]=N+"FullYear",O[F]=N+"Hours",O[D]=N+"Minutes",O[C]=N+"Seconds",O[A]=N+"Milliseconds",O)[i],h=i===U?this.$D+(I-this.$W):I;if(i===k||i===l){var r=this.clone().set(b,1);r.$d[V](h),r.init(),this.$d=r.set(b,Math.min(this.$D,r.daysInMonth())).$d}else V&&this.$d[V](h);return this.init(),this},Y.set=function(a,I){return this.clone().$set(a,I)},Y.get=function(a){return this[W.p(a)]()},Y.add=function(a,I){var O,i=this;a=Number(a);var N=W.p(I),V=function(m){var $=v(i);return W.w($.date($.date()+Math.round(m*a)),i)};if(N===k)return this.set(k,this.$M+a);if(N===l)return this.set(l,this.$y+a);if(N===U)return V(1);if(N===z)return V(7);var h=(O={},O[D]=B,O[F]=E,O[C]=u,O)[N]||1,r=this.$d.getTime()+a*h;return W.w(r,this)},Y.subtract=function(a,I){return this.add(-1*a,I)},Y.format=function(a){var I=this,O=this.$locale();if(!this.isValid())return O.invalidDate||M;var i=a||"YYYY-MM-DDTHH:mm:ssZ",N=W.z(this),V=this.$H,h=this.$m,r=this.$M,m=O.weekdays,$=O.months,y=O.meridiem,p=function(b0,B0,k0,f0){return b0&&(b0[B0]||b0(I,i))||k0[B0].slice(0,f0)},e=function(b0){return W.s(V%12||12,b0,"0")},_=y||function(b0,B0,k0){var f0=b0<12?"AM":"PM";return k0?f0.toLowerCase():f0};return i.replace(J,function(b0,B0){return B0||function(k0){switch(k0){case"YY":return String(I.$y).slice(-2);case"YYYY":return W.s(I.$y,4,"0");case"M":return r+1;case"MM":return W.s(r+1,2,"0");case"MMM":return p(O.monthsShort,r,$,3);case"MMMM":return p($,r);case"D":return I.$D;case"DD":return W.s(I.$D,2,"0");case"d":return String(I.$W);case"dd":return p(O.weekdaysMin,I.$W,m,2);case"ddd":return p(O.weekdaysShort,I.$W,m,3);case"dddd":return m[I.$W];case"H":return String(V);case"HH":return W.s(V,2,"0");case"h":return e(1);case"hh":return e(2);case"a":return _(V,h,!0);case"A":return _(V,h,!1);case"m":return String(h);case"mm":return W.s(h,2,"0");case"s":return String(I.$s);case"ss":return W.s(I.$s,2,"0");case"SSS":return W.s(I.$ms,3,"0");case"Z":return N}return null}(b0)||N.replace(":","")})},Y.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},Y.diff=function(a,I,O){var i,N=this,V=W.p(I),h=v(a),r=(h.utcOffset()-this.utcOffset())*B,m=this-h,$=function(){return W.m(N,h)};switch(V){case l:i=$()/12;break;case k:i=$();break;case f:i=$()/3;break;case z:i=(m-r)/604800000;break;case U:i=(m-r)/86400000;break;case F:i=m/E;break;case D:i=m/B;break;case C:i=m/u;break;default:i=m}return O?i:W.a(i)},Y.daysInMonth=function(){return this.endOf(k).$D},Y.$locale=function(){return L[this.$L]},Y.locale=function(a,I){if(!a)return this.$L;var O=this.clone(),i=x(a,I,!0);return i&&(O.$L=i),O},Y.clone=function(){return W.w(this.$d,this)},Y.toDate=function(){return new Date(this.valueOf())},Y.toJSON=function(){return this.isValid()?this.toISOString():null},Y.toISOString=function(){return this.$d.toISOString()},Y.toString=function(){return this.$d.toUTCString()},R}(),T=S.prototype;return v.prototype=T,[["$ms",A],["$s",C],["$m",D],["$H",F],["$W",U],["$M",k],["$y",l],["$D",b]].forEach(function(R){T[R[1]]=function(Y){return this.$g(Y,R[0],R[1])}}),v.extend=function(R,Y){return R.$i||(R(Y,S,v),R.$i=!0),v},v.locale=x,v.isDayjs=q,v.unix=function(R){return v(1000*R)},v.en=L[G],v.Ls=L,v.p={},v})});var uQ0,Fz,z0,Ix,yE;var o4=g(()=>{Y4();uQ0=Eu(OP(),1),Fz={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},z0={trace:X((...u)=>{},"trace"),debug:X((...u)=>{},"debug"),info:X((...u)=>{},"info"),warn:X((...u)=>{},"warn"),error:X((...u)=>{},"error"),fatal:X((...u)=>{},"fatal")},Ix=X(function(u="fatal"){let B=Fz.fatal;if(typeof u==="string"){if(u.toLowerCase()in Fz)B=Fz[u]}else if(typeof u==="number")B=u;if(z0.trace=()=>{},z0.debug=()=>{},z0.info=()=>{},z0.warn=()=>{},z0.error=()=>{},z0.fatal=()=>{},B<=Fz.fatal)z0.fatal=console.error?console.error.bind(console,yE("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",yE("FATAL"));if(B<=Fz.error)z0.error=console.error?console.error.bind(console,yE("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",yE("ERROR"));if(B<=Fz.warn)z0.warn=console.warn?console.warn.bind(console,yE("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",yE("WARN"));if(B<=Fz.info)z0.info=console.info?console.info.bind(console,yE("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",yE("INFO"));if(B<=Fz.debug)z0.debug=console.debug?console.debug.bind(console,yE("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",yE("DEBUG"));if(B<=Fz.trace)z0.trace=console.debug?console.debug.bind(console,yE("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",yE("TRACE"))},"setLogLevel"),yE=X((u)=>{return`%c${uQ0.default().format("ss.SSS")} : ${u} : `},"format")});var IP,BQ0;var EQ0=g(()=>{IP={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:(u)=>u>=255?255:u<0?0:u,g:(u)=>u>=255?255:u<0?0:u,b:(u)=>u>=255?255:u<0?0:u,h:(u)=>u%360,s:(u)=>u>=100?100:u<0?0:u,l:(u)=>u>=100?100:u<0?0:u,a:(u)=>u>=1?1:u<0?0:u},toLinear:(u)=>{let B=u/255;return u>0.03928?Math.pow((B+0.055)/1.055,2.4):B/12.92},hue2rgb:(u,B,E)=>{if(E<0)E+=1;if(E>1)E-=1;if(E<0.16666666666666666)return u+(B-u)*6*E;if(E<0.5)return B;if(E<0.6666666666666666)return u+(B-u)*(0.6666666666666666-E)*6;return u},hsl2rgb:({h:u,s:B,l:E},A)=>{if(!B)return E*2.55;u/=360,B/=100,E/=100;let C=E<0.5?E*(1+B):E+B-E*B,D=2*E-C;switch(A){case"r":return IP.hue2rgb(D,C,u+0.3333333333333333)*255;case"g":return IP.hue2rgb(D,C,u)*255;case"b":return IP.hue2rgb(D,C,u-0.3333333333333333)*255}},rgb2hsl:({r:u,g:B,b:E},A)=>{u/=255,B/=255,E/=255;let C=Math.max(u,B,E),D=Math.min(u,B,E),F=(C+D)/2;if(A==="l")return F*100;if(C===D)return 0;let U=C-D,z=F>0.5?U/(2-C-D):U/(C+D);if(A==="s")return z*100;switch(C){case u:return((B-E)/U+(B<E?6:0))*60;case B:return((E-u)/U+2)*60;case E:return((u-B)/U+4)*60;default:return-1}}},BQ0=IP});var g04,AQ0;var CQ0=g(()=>{g04={clamp:(u,B,E)=>{if(B>E)return Math.min(B,Math.max(E,u));return Math.min(E,Math.max(B,u))},round:(u)=>{return Math.round(u*10000000000)/10000000000}},AQ0=g04});var _04,DQ0;var FQ0=g(()=>{_04={dec2hex:(u)=>{let B=Math.round(u).toString(16);return B.length>1?B:`0${B}`}},DQ0=_04});var n04,g4;var sD=g(()=>{EQ0();CQ0();FQ0();n04={channel:BQ0,lang:AQ0,unit:DQ0},g4=n04});var Uz,$2;var Px=g(()=>{sD();Uz={};for(let u=0;u<=255;u++)Uz[u]=g4.unit.dec2hex(u);$2={ALL:0,RGB:1,HSL:2}});class UQ0{constructor(){this.type=$2.ALL}get(){return this.type}set(u){if(this.type&&this.type!==u)throw Error("Cannot change both RGB and HSL channels at the same time");this.type=u}reset(){this.type=$2.ALL}is(u){return this.type===u}}var zQ0;var kQ0=g(()=>{Px();zQ0=UQ0});class fQ0{constructor(u,B){this.color=B,this.changed=!1,this.data=u,this.type=new zQ0}set(u,B){return this.color=B,this.changed=!1,this.data=u,this.type.type=$2.ALL,this}_ensureHSL(){let u=this.data,{h:B,s:E,l:A}=u;if(B===void 0)u.h=g4.channel.rgb2hsl(u,"h");if(E===void 0)u.s=g4.channel.rgb2hsl(u,"s");if(A===void 0)u.l=g4.channel.rgb2hsl(u,"l")}_ensureRGB(){let u=this.data,{r:B,g:E,b:A}=u;if(B===void 0)u.r=g4.channel.hsl2rgb(u,"r");if(E===void 0)u.g=g4.channel.hsl2rgb(u,"g");if(A===void 0)u.b=g4.channel.hsl2rgb(u,"b")}get r(){let u=this.data,B=u.r;if(!this.type.is($2.HSL)&&B!==void 0)return B;return this._ensureHSL(),g4.channel.hsl2rgb(u,"r")}get g(){let u=this.data,B=u.g;if(!this.type.is($2.HSL)&&B!==void 0)return B;return this._ensureHSL(),g4.channel.hsl2rgb(u,"g")}get b(){let u=this.data,B=u.b;if(!this.type.is($2.HSL)&&B!==void 0)return B;return this._ensureHSL(),g4.channel.hsl2rgb(u,"b")}get h(){let u=this.data,B=u.h;if(!this.type.is($2.RGB)&&B!==void 0)return B;return this._ensureRGB(),g4.channel.rgb2hsl(u,"h")}get s(){let u=this.data,B=u.s;if(!this.type.is($2.RGB)&&B!==void 0)return B;return this._ensureRGB(),g4.channel.rgb2hsl(u,"s")}get l(){let u=this.data,B=u.l;if(!this.type.is($2.RGB)&&B!==void 0)return B;return this._ensureRGB(),g4.channel.rgb2hsl(u,"l")}get a(){return this.data.a}set r(u){this.type.set($2.RGB),this.changed=!0,this.data.r=u}set g(u){this.type.set($2.RGB),this.changed=!0,this.data.g=u}set b(u){this.type.set($2.RGB),this.changed=!0,this.data.b=u}set h(u){this.type.set($2.HSL),this.changed=!0,this.data.h=u}set s(u){this.type.set($2.HSL),this.changed=!0,this.data.s=u}set l(u){this.type.set($2.HSL),this.changed=!0,this.data.l=u}set a(u){this.changed=!0,this.data.a=u}}var lQ0;var bQ0=g(()=>{sD();kQ0();Px();lQ0=fQ0});var p04,Hf;var jx=g(()=>{bQ0();p04=new lQ0({r:0,g:0,b:0,a:0},"transparent"),Hf=p04});var MQ0,kZ;var Jo=g(()=>{jx();Px();MQ0={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:(u)=>{if(u.charCodeAt(0)!==35)return;let B=u.match(MQ0.re);if(!B)return;let E=B[1],A=parseInt(E,16),C=E.length,D=C%4===0,F=C>4,U=F?1:17,z=F?8:4,k=D?0:-1,f=F?255:15;return Hf.set({r:(A>>z*(k+3)&f)*U,g:(A>>z*(k+2)&f)*U,b:(A>>z*(k+1)&f)*U,a:D?(A&f)*U/255:1},u)},stringify:(u)=>{let{r:B,g:E,b:A,a:C}=u;if(C<1)return`#${Uz[Math.round(B)]}${Uz[Math.round(E)]}${Uz[Math.round(A)]}${Uz[Math.round(C*255)]}`;else return`#${Uz[Math.round(B)]}${Uz[Math.round(E)]}${Uz[Math.round(A)]}`}},kZ=MQ0});var PP,Nx;var ZQ0=g(()=>{sD();jx();PP={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:(u)=>{let B=u.match(PP.hueRe);if(B){let[,E,A]=B;switch(A){case"grad":return g4.channel.clamp.h(parseFloat(E)*0.9);case"rad":return g4.channel.clamp.h(parseFloat(E)*180/Math.PI);case"turn":return g4.channel.clamp.h(parseFloat(E)*360)}}return g4.channel.clamp.h(parseFloat(u))},parse:(u)=>{let B=u.charCodeAt(0);if(B!==104&&B!==72)return;let E=u.match(PP.re);if(!E)return;let[,A,C,D,F,U]=E;return Hf.set({h:PP._hue2deg(A),s:g4.channel.clamp.s(parseFloat(C)),l:g4.channel.clamp.l(parseFloat(D)),a:F?g4.channel.clamp.a(U?parseFloat(F)/100:parseFloat(F)):1},u)},stringify:(u)=>{let{h:B,s:E,l:A,a:C}=u;if(C<1)return`hsla(${g4.lang.round(B)}, ${g4.lang.round(E)}%, ${g4.lang.round(A)}%, ${C})`;else return`hsl(${g4.lang.round(B)}, ${g4.lang.round(E)}%, ${g4.lang.round(A)}%)`}},Nx=PP});var jP,wo;var JQ0=g(()=>{Jo();jP={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:(u)=>{u=u.toLowerCase();let B=jP.colors[u];if(!B)return;return kZ.parse(B)},stringify:(u)=>{let B=kZ.stringify(u);for(let E in jP.colors)if(jP.colors[E]===B)return E;return}},wo=jP});var wQ0,ix;var KQ0=g(()=>{sD();jx();wQ0={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:(u)=>{let B=u.charCodeAt(0);if(B!==114&&B!==82)return;let E=u.match(wQ0.re);if(!E)return;let[,A,C,D,F,U,z,k,f]=E;return Hf.set({r:g4.channel.clamp.r(C?parseFloat(A)*2.55:parseFloat(A)),g:g4.channel.clamp.g(F?parseFloat(D)*2.55:parseFloat(D)),b:g4.channel.clamp.b(z?parseFloat(U)*2.55:parseFloat(U)),a:k?g4.channel.clamp.a(f?parseFloat(k)/100:parseFloat(k)):1},u)},stringify:(u)=>{let{r:B,g:E,b:A,a:C}=u;if(C<1)return`rgba(${g4.lang.round(B)}, ${g4.lang.round(E)}, ${g4.lang.round(A)}, ${g4.lang.round(C)})`;else return`rgb(${g4.lang.round(B)}, ${g4.lang.round(E)}, ${g4.lang.round(A)})`}},ix=wQ0});var d04,y2;var zz=g(()=>{Jo();ZQ0();JQ0();KQ0();Px();d04={format:{keyword:wo,hex:kZ,rgb:ix,rgba:ix,hsl:Nx,hsla:Nx},parse:(u)=>{if(typeof u!=="string")return u;let B=kZ.parse(u)||ix.parse(u)||Nx.parse(u)||wo.parse(u);if(B)return B;throw Error(`Unsupported color format: "${u}"`)},stringify:(u)=>{if(!u.changed&&u.color)return u.color;if(u.type.is($2.HSL)||u.data.r===void 0)return Nx.stringify(u);else if(u.a<1||!Number.isInteger(u.r)||!Number.isInteger(u.g)||!Number.isInteger(u.b))return ix.stringify(u);else return kZ.stringify(u)}},y2=d04});var s04=(u,B)=>{let E=y2.parse(u);for(let A in B)E[A]=g4.channel.clamp[A](B[A]);return y2.stringify(E)},NP;var Ko=g(()=>{sD();zz();NP=s04});var o04=(u,B,E=0,A=1)=>{if(typeof u!=="number")return NP(u,{a:B});let C=Hf.set({r:g4.channel.clamp.r(u),g:g4.channel.clamp.g(B),b:g4.channel.clamp.b(E),a:g4.channel.clamp.a(A)});return y2.stringify(C)},u2;var Qo=g(()=>{sD();jx();zz();Ko();u2=o04});var t04=(u,B)=>{return g4.lang.round(y2.parse(u)[B])},fZ;var QQ0=g(()=>{sD();zz();fZ=t04});var e04=(u)=>{let{r:B,g:E,b:A}=y2.parse(u),C=0.2126*g4.channel.toLinear(B)+0.7152*g4.channel.toLinear(E)+0.0722*g4.channel.toLinear(A);return g4.lang.round(C)},GQ0;var HQ0=g(()=>{sD();zz();GQ0=e04});var uu4=(u)=>{return GQ0(u)>=0.5},LQ0;var qQ0=g(()=>{HQ0();LQ0=uu4});var Bu4=(u)=>{return!LQ0(u)},_1;var XQ0=g(()=>{qQ0();_1=Bu4});var Eu4=(u,B,E)=>{let A=y2.parse(u),C=A[B],D=g4.channel.clamp[B](C+E);if(C!==D)A[B]=D;return y2.stringify(A)},xQ;var iP=g(()=>{sD();zz();xQ=Eu4});var Au4=(u,B)=>{return xQ(u,"l",B)},Ju;var xQ0=g(()=>{iP();Ju=Au4});var Cu4=(u,B)=>{return xQ(u,"l",-B)},wu;var vQ0=g(()=>{iP();wu=Cu4});var Du4=(u,B)=>{return xQ(u,"a",-B)},aP;var SQ0=g(()=>{iP();aP=Du4});var Fu4=(u,B)=>{let E=y2.parse(u),A={};for(let C in B){if(!B[C])continue;A[C]=E[C]+B[C]}return NP(u,A)},Q0;var WQ0=g(()=>{zz();Ko();Q0=Fu4});var Uu4=(u,B,E=50)=>{let{r:A,g:C,b:D,a:F}=y2.parse(u),{r:U,g:z,b:k,a:f}=y2.parse(B),l=E/100,b=l*2-1,M=F-f,J=((b*M===-1?b:(b+M)/(1+b*M))+1)/2,w=1-J,K=A*J+U*w,Q=C*J+z*w,G=D*J+k*w,L=F*l+f*(1-l);return u2(K,Q,G,L)},YQ0;var RQ0=g(()=>{zz();Qo();YQ0=Uu4});var zu4=(u,B=100)=>{let E=y2.parse(u);return E.r=255-E.r,E.g=255-E.g,E.b=255-E.b,YQ0(E,u,B)},Cu;var TQ0=g(()=>{zz();RQ0();Cu=zu4});var OQ0=g(()=>{Qo();QQ0();XQ0();xQ0();vQ0();SQ0();WQ0();TQ0()});var K2=g(()=>{OQ0()});function IQ0(u,B){(B==null||B>u.length)&&(B=u.length);for(var E=0,A=Array(B);E<B;E++)A[E]=u[E];return A}function ku4(u){if(Array.isArray(u))return u}function fu4(u,B){var E=u==null?null:typeof Symbol<"u"&&u[Symbol.iterator]||u["@@iterator"];if(E!=null){var A,C,D,F,U=[],z=!0,k=!1;try{if(D=(E=E.call(u)).next,B===0);else for(;!(z=(A=D.call(E)).done)&&(U.push(A.value),U.length!==B);z=!0);}catch(f){k=!0,C=f}finally{try{if(!z&&E.return!=null&&(F=E.return(),Object(F)!==F))return}finally{if(k)throw C}}return U}}function lu4(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function bu4(u,B){return ku4(u)||fu4(u,B)||Mu4(u,B)||lu4()}function Mu4(u,B){if(u){if(typeof u=="string")return IQ0(u,B);var E={}.toString.call(u).slice(8,-1);return E==="Object"&&u.constructor&&(E=u.constructor.name),E==="Map"||E==="Set"?Array.from(u):E==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(E)?IQ0(u,B):void 0}}function Q2(u){return function(B){if(B instanceof RegExp)B.lastIndex=0;for(var E=arguments.length,A=Array(E>1?E-1:0),C=1;C<E;C++)A[C-1]=arguments[C];return So(u,B,A)}}function qu4(u){return function(){for(var B=arguments.length,E=Array(B),A=0;A<B;A++)E[A]=arguments[A];return Wo(u,E)}}function X1(u,B){let E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:mx;if(PQ0)PQ0(u,null);if(!SQ(B))return u;let A=B.length;while(A--){let C=B[A];if(typeof C==="string"){let D=E(C);if(D!==C){if(!Zu4(B))B[A]=D;C=D}}u[C]=!0}return u}function Xu4(u){for(let B=0;B<u.length;B++)if(!sB(u,B))u[B]=null;return u}function d8(u){let B=vQ(null);for(let A of nQ0(u)){var E=bu4(A,2);let C=E[0],D=E[1];if(sB(u,C))if(SQ(D))B[C]=Xu4(D);else if(D&&typeof D==="object"&&D.constructor===Object)B[C]=d8(D);else B[C]=D}return B}function xu4(u){switch(typeof u){case"string":return u;case"number":return Hu4(u);case"boolean":return Lu4(u);case"bigint":return aQ0?aQ0(u):"0";case"symbol":return VQ0?VQ0(u):"Symbol()";case"undefined":return hx(u);case"function":case"object":{if(u===null)return hx(u);let B=u,E=DC(B,"toString");if(typeof E==="function"){let A=E(B);return typeof A==="string"?A:hx(A)}return hx(u)}default:return hx(u)}}function DC(u,B){while(u!==null){let A=wu4(u,B);if(A){if(A.get)return Q2(A.get);if(typeof A.value==="function")return Q2(A.value)}u=Ju4(u)}function E(){return null}return E}function vu4(u){try{return x7(u,""),!0}catch(B){return!1}}function sQ0(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ru4(),B=(su)=>sQ0(su);if(B.version="3.4.14",B.removed=[],!u||!u.document||u.document.nodeType!==p8.document||!u.Element)return B.isSupported=!1,B;let E=u.document,A=E,C=A.currentScript;u.DocumentFragment;let{HTMLTemplateElement:D,Node:F,Element:U,NodeFilter:z,NamedNodeMap:k}=u;k===void 0&&(u.NamedNodeMap||u.MozNamedAttrMap),u.HTMLFormElement;let{DOMParser:f,trustedTypes:l}=u,b=U.prototype,M=DC(b,"cloneNode"),Z=DC(b,"remove"),J=DC(b,"nextSibling"),w=DC(b,"childNodes"),K=DC(b,"parentNode"),Q=DC(b,"shadowRoot"),G=DC(b,"attributes"),L=F&&F.prototype?DC(F.prototype,"nodeType"):null,H=F&&F.prototype?DC(F.prototype,"nodeName"):null,q=F&&F.prototype?DC(F.prototype,"ownerDocument"):null,x=function(N0){return L?L(N0):N0.nodeType},v=function(N0){return H?H(N0):N0.nodeName};if(typeof D==="function"){let su=E.createElement("template");if(su.content&&su.content.ownerDocument)E=su.content.ownerDocument}let W,S="",T,R=!1,Y=0,a=function(){if(Y>0)throw lZ('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.')},I=function(N0){a(),Y++;try{return W.createHTML(N0)}finally{Y--}},O=function(N0){a(),Y++;try{return W.createScriptURL(N0)}finally{Y--}},i=function(){if(!R)T=$u4(l,C),R=!0;return T},N=E,V=N.implementation,h=N.createNodeIterator,r=N.createDocumentFragment,m=N.getElementsByTagName,$=A.importNode,y=_Q0();B.isSupported=typeof nQ0==="function"&&typeof K==="function"&&V&&V.createHTMLDocument!==void 0;let p=Yu4,e=Ru4,_=Tu4,b0=Ou4,B0=Iu4,k0=Pu4,f0=ju4,D0=iu4,P0=yQ0,q0=null,m0=X1({},[...hQ0,...Lo,...qo,...Xo,...mQ0]),a0=null,_0=X1({},[...rQ0,...xo,...$Q0,...VP]),w0=Object.seal(vQ(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}})),v0=null,T0=null,Z0=Object.seal(vQ(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),F0=!0,u0=!0,M0=!1,X0=!0,S0=!1,Y0=!0,h0=!1,J0=!1,n=null,d=null,H0=!1,o=!1,L0=!1,E0=!1,r0=!0,c0=!1,p0="user-content-",g0=!0,Bu=!1,n0={},e0=null,t0=X1({},["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"]),zu=null,W0=X1({},["audio","video","img","source","image","track"]),$u=null,i0=X1({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),vu="http://www.w3.org/1998/Math/MathML",cu="http://www.w3.org/2000/svg",Du="http://www.w3.org/1999/xhtml",Nu=Du,du=!1,Iu=null,x0=X1({},[vu,cu,Du],Ho),Tu=c2(["mi","mo","mn","ms","mtext"]),Vu=X1({},Tu),Zu=c2(["annotation-xml"]),I0=X1({},Zu),lu=X1({},["title","style","font","a","script"]),Hu=null,Ru=["application/xhtml+xml","text/html"],W4="text/html",ru=null,q4=null,F3=E.createElement("form"),i4=function(N0){return N0 instanceof RegExp||N0 instanceof Function},b4=function(){let N0=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(q4&&q4===N0)return;if(!N0||typeof N0!=="object")N0={};N0=d8(N0),Hu=Ru.indexOf(N0.PARSER_MEDIA_TYPE)===-1?W4:N0.PARSER_MEDIA_TYPE,ru=Hu==="application/xhtml+xml"?Ho:mx,q0=Lf(N0,"ALLOWED_TAGS",m0,{transform:ru}),a0=Lf(N0,"ALLOWED_ATTR",_0,{transform:ru}),Iu=Lf(N0,"ALLOWED_NAMESPACES",x0,{transform:Ho}),$u=Lf(N0,"ADD_URI_SAFE_ATTR",i0,{transform:ru,base:i0}),zu=Lf(N0,"ADD_DATA_URI_TAGS",W0,{transform:ru,base:W0}),e0=Lf(N0,"FORBID_CONTENTS",t0,{transform:ru}),v0=Lf(N0,"FORBID_TAGS",d8({}),{transform:ru}),T0=Lf(N0,"FORBID_ATTR",d8({}),{transform:ru}),n0=sB(N0,"USE_PROFILES")?N0.USE_PROFILES&&typeof N0.USE_PROFILES==="object"?d8(N0.USE_PROFILES):N0.USE_PROFILES:!1,F0=N0.ALLOW_ARIA_ATTR!==!1,u0=N0.ALLOW_DATA_ATTR!==!1,M0=N0.ALLOW_UNKNOWN_PROTOCOLS||!1,X0=N0.ALLOW_SELF_CLOSE_IN_ATTR!==!1,S0=N0.SAFE_FOR_TEMPLATES||!1,Y0=N0.SAFE_FOR_XML!==!1,h0=N0.WHOLE_DOCUMENT||!1,o=N0.RETURN_DOM||!1,L0=N0.RETURN_DOM_FRAGMENT||!1,E0=N0.RETURN_TRUSTED_TYPE||!1,H0=N0.FORCE_BODY||!1,r0=N0.SANITIZE_DOM!==!1,c0=N0.SANITIZE_NAMED_PROPS||!1,g0=N0.KEEP_CONTENT!==!1,Bu=N0.IN_PLACE||!1,P0=vu4(N0.ALLOWED_URI_REGEXP)?N0.ALLOWED_URI_REGEXP:yQ0,Nu=typeof N0.NAMESPACE==="string"?N0.NAMESPACE:Du,Vu=vo(N0,"MATHML_TEXT_INTEGRATION_POINTS",()=>X1({},Tu)),I0=vo(N0,"HTML_INTEGRATION_POINTS",()=>X1({},Zu));let fu=vo(N0,"CUSTOM_ELEMENT_HANDLING",()=>vQ(null));if(w0=vQ(null),sB(fu,"tagNameCheck")&&i4(fu.tagNameCheck))w0.tagNameCheck=fu.tagNameCheck;if(sB(fu,"attributeNameCheck")&&i4(fu.attributeNameCheck))w0.attributeNameCheck=fu.attributeNameCheck;if(sB(fu,"allowCustomizedBuiltInElements")&&typeof fu.allowCustomizedBuiltInElements==="boolean")w0.allowCustomizedBuiltInElements=fu.allowCustomizedBuiltInElements;if(H5(w0),S0)u0=!1;if(L0)o=!0;if(n0){if(q0=X1({},mQ0),a0=vQ(null),n0.html===!0)X1(q0,hQ0),X1(a0,rQ0);if(n0.svg===!0)X1(q0,Lo),X1(a0,xo),X1(a0,VP);if(n0.svgFilters===!0)X1(q0,qo),X1(a0,xo),X1(a0,VP);if(n0.mathMl===!0)X1(q0,Xo),X1(a0,$Q0),X1(a0,VP)}if(Z0.tagCheck=null,Z0.attributeCheck=null,sB(N0,"ADD_TAGS")){if(typeof N0.ADD_TAGS==="function")Z0.tagCheck=N0.ADD_TAGS;else if(SQ(N0.ADD_TAGS)){if(q0===m0)q0=d8(q0);X1(q0,N0.ADD_TAGS,ru)}}if(sB(N0,"ADD_ATTR")){if(typeof N0.ADD_ATTR==="function")Z0.attributeCheck=N0.ADD_ATTR;else if(SQ(N0.ADD_ATTR)){if(a0===_0)a0=d8(a0);X1(a0,N0.ADD_ATTR,ru)}}if(sB(N0,"ADD_FORBID_CONTENTS")&&SQ(N0.ADD_FORBID_CONTENTS)){if(e0===t0)e0=d8(e0);X1(e0,N0.ADD_FORBID_CONTENTS,ru)}if(g0)q0["#text"]=!0;if(h0)X1(q0,["html","head","body"]);if(q0.table)X1(q0,["tbody"]),delete v0.tbody;if(N0.TRUSTED_TYPES_POLICY){if(typeof N0.TRUSTED_TYPES_POLICY.createHTML!=="function")throw lZ('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof N0.TRUSTED_TYPES_POLICY.createScriptURL!=="function")throw lZ('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let hu=W;W=N0.TRUSTED_TYPES_POLICY;try{S=I("")}catch(Z4){throw W=hu,Z4}}else if(N0.TRUSTED_TYPES_POLICY===null)W=void 0,S="";else{if(W===void 0)W=i();if(W&&typeof S==="string")S=I("")}if(c2)c2(N0);q4=N0},P4=X1({},[...Lo,...qo,...Su4]),bu=X1({},[...Xo,...Wu4]),qu=function(N0,fu,hu){if(fu.namespaceURI===Du)return N0==="svg";if(fu.namespaceURI===vu)return N0==="svg"&&(hu==="annotation-xml"||Vu[hu]);return Boolean(P4[N0])},nu=function(N0,fu,hu){if(fu.namespaceURI===Du)return N0==="math";if(fu.namespaceURI===cu)return N0==="math"&&I0[hu];return Boolean(bu[N0])},c4=function(N0,fu,hu){if(fu.namespaceURI===cu&&!I0[hu])return!1;if(fu.namespaceURI===vu&&!Vu[hu])return!1;return!bu[N0]&&(lu[N0]||!P4[N0])},$4=function(N0){let fu=K(N0);if(!fu||!fu.tagName)fu={namespaceURI:Nu,tagName:"template"};let hu=mx(N0.tagName),Z4=mx(fu.tagName);if(!Iu[N0.namespaceURI])return!1;if(N0.namespaceURI===cu)return qu(hu,fu,Z4);if(N0.namespaceURI===vu)return nu(hu,fu,Z4);if(N0.namespaceURI===Du)return c4(hu,fu,Z4);if(Hu==="application/xhtml+xml"&&Iu[N0.namespaceURI])return!0;return!1},B3=function(N0){ax(B.removed,{element:N0});try{K(N0).removeChild(N0)}catch(fu){if(Z(N0),!K(N0))throw lZ("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},z1=function(N0,fu,hu){try{N0.removeAttributeNode(fu)}catch(Z4){try{N0.removeAttribute(hu)}catch(x4){}}},E3=function(N0){f4(N0);let fu=w(N0);if(fu){let Z4=[];bZ(fu,(x4)=>{ax(Z4,x4)}),bZ(Z4,(x4)=>{try{Z(x4)}catch(d4){}})}let hu=G(N0);if(hu)for(let Z4=hu.length-1;Z4>=0;--Z4){let x4=hu[Z4],d4=x4&&x4.name;if(typeof d4==="string")z1(N0,x4,d4)}},eu=function(N0,fu,hu){if(!hu)try{hu=fu.getAttributeNode(N0)}catch(Z4){hu=null}ax(B.removed,{attribute:hu||null,from:fu});try{if(hu)fu.removeAttributeNode(hu);else fu.removeAttribute(N0)}catch(Z4){try{fu.removeAttribute(N0)}catch(x4){}}if(N0==="is")if(o||L0)try{B3(fu)}catch(Z4){}else try{fu.setAttribute(N0,"")}catch(Z4){}},au=function(N0){let fu=G(N0);if(!fu)return;for(let hu=fu.length-1;hu>=0;--hu){let Z4=fu[hu],x4=Z4&&Z4.name;if(typeof x4!=="string"||a0[ru(x4)])continue;z1(N0,Z4,x4)}},f4=function(N0){let fu=[N0];while(fu.length>0){let hu=fu.pop();if(x(hu)===p8.element)au(hu);let x4=w(hu);if(x4)for(let d4=x4.length-1;d4>=0;--d4)fu.push(x4[d4])}},U4=function(N0,fu){if(!Y0)return!1;if(N0==="patchsrc")return!0;return N0==="for"&&fu!=="label"&&fu!=="output"},iu=function(N0){if(!Y0)return;let fu=[N0];while(fu.length>0){let hu=fu.pop(),Z4=x(hu);if(Z4===p8.processingInstruction||Z4===p8.comment&&x7(gQ0,hu.data)){try{Z(hu)}catch(d4){}continue}if(Z4===p8.element){let d4=hu,n3=ru(v(hu));try{if(d4.hasAttribute&&d4.hasAttribute("patchsrc"))d4.removeAttribute("patchsrc");if(d4.hasAttribute&&d4.hasAttribute("for")&&U4("for",n3))d4.removeAttribute("for")}catch(h6){}}let x4=w(hu);if(x4)for(let d4=x4.length-1;d4>=0;--d4)fu.push(x4[d4])}},X4=function(N0){let fu=null,hu=null;if(H0)N0="<remove></remove>"+N0;else{let d4=NQ0(N0,/^[\r\n\t ]+/);hu=d4&&d4[0]}if(Hu==="application/xhtml+xml"&&Nu===Du)N0='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+N0+"</body></html>";let Z4=W?I(N0):N0;if(Nu===Du)try{fu=new f().parseFromString(Z4,Hu)}catch(d4){}if(!fu||!fu.documentElement){fu=V.createDocument(Nu,"template",null);try{fu.documentElement.innerHTML=du?S:Z4}catch(d4){}}let x4=fu.body||fu.documentElement;if(N0&&hu)x4.insertBefore(E.createTextNode(hu),x4.childNodes[0]||null);if(Nu===Du)return m.call(fu,h0?"html":"body")[0];return h0?fu.documentElement:x4},O0=function(N0){let fu=q?q(N0):N0.ownerDocument;return h.call(fu||N0,N0,z.SHOW_ELEMENT|z.SHOW_COMMENT|z.SHOW_TEXT|z.SHOW_PROCESSING_INSTRUCTION|z.SHOW_CDATA_SECTION,null)},J1=function(N0){return N0=Vx(N0,p," "),N0=Vx(N0,e," "),N0=Vx(N0,_," "),N0},V0=function(N0){var fu;N0.normalize();let hu=q?q(N0):N0.ownerDocument,Z4=h.call(hu||N0,N0,z.SHOW_TEXT|z.SHOW_COMMENT|z.SHOW_CDATA_SECTION|z.SHOW_PROCESSING_INSTRUCTION,null),x4=Z4.nextNode();while(x4)x4.data=J1(x4.data),x4=Z4.nextNode();let d4=(fu=N0.querySelectorAll)===null||fu===void 0?void 0:fu.call(N0,"template");if(d4)bZ(d4,(n3)=>{if(f6(n3.content))V0(n3.content)})},A3=function(N0){let fu=H?H(N0):null;if(typeof fu!=="string")return!1;if(ru(fu)!=="form")return!1;return typeof N0.nodeName!=="string"||typeof N0.textContent!=="string"||typeof N0.removeChild!=="function"||N0.attributes!==G(N0)||typeof N0.removeAttribute!=="function"||typeof N0.setAttribute!=="function"||typeof N0.namespaceURI!=="string"||typeof N0.insertBefore!=="function"||typeof N0.hasChildNodes!=="function"||N0.nodeType!==L(N0)||N0.childNodes!==w(N0)},f6=function(N0){if(!L||typeof N0!=="object"||N0===null)return!1;try{return L(N0)===p8.documentFragment}catch(fu){return!1}},h2=function(N0){if(!L||typeof N0!=="object"||N0===null)return!1;try{return typeof L(N0)==="number"}catch(fu){return!1}};function o9(su,N0,fu){if(su.length===0)return;bZ(su,(hu)=>{hu.call(B,N0,fu,q4)})}let CB=function(N0,fu){if(Y0&&N0.hasChildNodes()&&!h2(N0.firstElementChild)&&x7(cQ0,N0.textContent)&&x7(cQ0,N0.innerHTML))return!0;if(Y0&&N0.namespaceURI===Du&&hu4[fu]&&(h2(N0.firstElementChild)||typeof N0.textContent==="string"&&x7(mu4[fu],N0.textContent)))return!0;if(N0.nodeType===p8.processingInstruction)return!0;if(Y0&&N0.nodeType===p8.comment&&x7(gQ0,N0.data))return!0;return!1},g3=function(N0,fu){if(N0 instanceof RegExp)return x7(N0,fu);if(N0 instanceof Function){for(var hu=arguments.length,Z4=Array(hu>2?hu-2:0),x4=2;x4<hu;x4++)Z4[x4-2]=arguments[x4];return Boolean(N0(fu,...Z4))}return!1},S6=function(N0,fu,hu){if(!v0[fu]&&Az(fu)&&g3(w0.tagNameCheck,fu))return!1;if(g0&&!e0[fu]){let Z4=K(N0),x4=w(N0);if(x4&&Z4){let d4=x4.length;for(let n3=d4-1;n3>=0;--n3){let h6=N0===hu?M(x4[n3],!0):x4[n3];Z4.insertBefore(h6,J(N0))}}}return B3(N0),!0},Q5=function(N0,fu,hu,Z4){if(N0.length===0)return fu;return fu===hu||fu===Z4?d8(fu):fu},DB=function(N0,fu){if(N0===fu||K(N0)!==null)return!1;if(Bu)f4(N0);return!0},t9=function(N0,fu){if(o9(y.beforeSanitizeElements,N0,null),DB(N0,fu))return!0;if(A3(N0))return B3(N0),!0;let hu=ru(v(N0));if(q0=Q5(y.uponSanitizeElement,q0,m0,n),o9(y.uponSanitizeElement,N0,{tagName:hu,allowedTags:q0}),DB(N0,fu))return!0;if(CB(N0,hu))return B3(N0),!0;if(v0[hu]||!(Z0.tagCheck instanceof Function&&Z0.tagCheck(hu))&&!q0[hu]){let x4=S6(N0,hu,fu);if(x4===!1)o9(y.afterSanitizeElements,N0,null);return x4}if(x(N0)===p8.element&&!$4(N0))return B3(N0),!0;if((hu==="noscript"||hu==="noembed"||hu==="noframes")&&x7(au4,N0.innerHTML))return B3(N0),!0;if(S0&&N0.nodeType===p8.text){let x4=J1(N0.textContent);if(N0.textContent!==x4)ax(B.removed,{element:N0.cloneNode()}),N0.textContent=x4}return o9(y.afterSanitizeElements,N0,null),!1},Ez=function(N0,fu,hu){if(T0[fu])return!1;if(U4(fu,N0))return!1;if(r0&&(fu==="id"||fu==="name")&&((hu in E)||(hu in F3)))return!1;let Z4=a0[fu]||Z0.attributeCheck instanceof Function&&Z0.attributeCheck(fu,N0);if(u0&&x7(b0,fu))return!0;if(F0&&x7(B0,fu))return!0;if(!Z4)return Az(N0)&&g3(w0.tagNameCheck,N0)&&g3(w0.attributeNameCheck,fu,N0)||fu==="is"&&w0.allowCustomizedBuiltInElements&&g3(w0.tagNameCheck,hu);if($u[fu])return!0;if(x7(P0,Vx(hu,f0,"")))return!0;if((fu==="src"||fu==="xlink:href"||fu==="href")&&N0!=="script"&&iQ0(hu,"data:")===0&&zu[N0])return!0;if(M0&&!x7(k0,Vx(hu,f0,"")))return!0;return!hu},m2=X1({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Az=function(N0){return!m2[mx(N0)]&&x7(D0,N0)},e9=function(N0,fu,hu,Z4){if(W&&typeof l==="object"&&typeof l.getAttributeType==="function"&&!hu)switch(l.getAttributeType(N0,fu)){case"TrustedHTML":return I(Z4);case"TrustedScriptURL":return O(Z4)}return Z4},Cz=function(N0,fu,hu,Z4){try{if(hu)N0.setAttributeNS(hu,fu,Z4);else N0.setAttribute(fu,Z4);if(A3(N0))B3(N0);else jQ0(B.removed)}catch(x4){eu(fu,N0)}},n8=function(N0){o9(y.beforeSanitizeAttributes,N0,null);let fu=N0.attributes;if(!fu||A3(N0))return;a0=Q5(y.uponSanitizeAttribute,a0,_0,d);let hu={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:a0,forceKeepAttr:void 0},Z4=fu.length,x4=ru(N0.nodeName);while(Z4--){let d4=fu[Z4],n3=d4.name,h6=d4.namespaceURI,K9=d4.value,g5=ru(n3),HQ=K9,G5=n3==="value"?HQ:Gu4(HQ);if(hu.attrName=g5,hu.attrValue=G5,hu.keepAttr=!0,hu.forceKeepAttr=void 0,o9(y.uponSanitizeAttribute,N0,hu),G5=hu.attrValue,c0&&(g5==="id"||g5==="name")&&iQ0(G5,p0)!==0)eu(n3,N0,d4),G5=p0+G5;if(Y0&&x7(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,G5)){eu(n3,N0,d4);continue}if(g5==="attributename"&&NQ0(G5,"href")){eu(n3,N0,d4);continue}if(hu.forceKeepAttr)continue;if(!hu.keepAttr){eu(n3,N0,d4);continue}if(!X0&&x7(Vu4,G5)){eu(n3,N0,d4);continue}if(S0)G5=J1(G5);if(!Ez(x4,g5,G5)){eu(n3,N0,d4);continue}if(G5=e9(x4,g5,h6,G5),G5!==HQ)Cz(N0,n3,h6,G5)}o9(y.afterSanitizeAttributes,N0,null)},r2=function(N0){let fu=null,hu=O0(N0);o9(y.beforeSanitizeShadowDOM,N0,null);while(fu=hu.nextNode()){if(o9(y.uponSanitizeShadowNode,fu,null),t9(fu,N0),n8(fu),f6(fu.content))r2(fu.content);if(x(fu)===p8.element){let Z4=Q(fu);if(f6(Z4))UZ(Z4),r2(Z4)}}o9(y.afterSanitizeShadowDOM,N0,null)},UZ=function(N0){let fu=[{node:N0,shadow:null}];while(fu.length>0){let hu=fu.pop();if(hu.shadow){r2(hu.shadow);continue}let Z4=hu.node,d4=x(Z4)===p8.element,n3=w(Z4);if(n3)for(let h6=n3.length-1;h6>=0;--h6)fu.push({node:n3[h6],shadow:null});if(d4){let h6=H?H(Z4):null;if(typeof h6==="string"&&ru(h6)==="template"){let K9=Z4.content;if(f6(K9))fu.push({node:K9,shadow:null})}}if(d4){let h6=Q(Z4);if(f6(h6))fu.push({node:null,shadow:h6},{node:h6,shadow:null})}}};return B.sanitize=function(su){let N0=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},fu=null,hu=null,Z4=null,x4=null;if(du=!su,du)su="<!-->";if(typeof su!=="string"&&!h2(su)){if(su=xu4(su),typeof su!=="string")throw lZ("dirty is not a string, aborting")}if(!B.isSupported)return su;if(J0)q0=n,a0=d;else b4(N0);if(y.uponSanitizeElement.length>0||y.uponSanitizeAttribute.length>0)q0=d8(q0);if(y.uponSanitizeAttribute.length>0)a0=d8(a0);B.removed=[];let d4=Bu&&typeof su!=="string"&&h2(su);if(d4){iu(su);let K9=v(su);if(typeof K9==="string"){let g5=ru(K9);if(!q0[g5]||v0[g5])throw E3(su),lZ("root node is forbidden and cannot be sanitized in-place")}if(A3(su))throw E3(su),lZ("root node is clobbered and cannot be sanitized in-place");try{UZ(su)}catch(g5){throw E3(su),g5}}else if(h2(su)){if(fu=X4("<!---->"),hu=fu.ownerDocument.importNode(su,!0),hu.nodeType===p8.element&&hu.nodeName==="BODY")fu=hu;else if(hu.nodeName==="HTML")fu=hu;else fu.appendChild(hu);UZ(hu)}else{if(!o&&!S0&&!h0&&su.indexOf("<")===-1)return W&&E0?I(su):su;if(fu=X4(su),!fu)return o?null:E0?S:""}if(fu&&H0)B3(fu.firstChild);let n3=d4?su:fu;try{let K9=O0(n3);while(Z4=K9.nextNode())if(t9(Z4,n3),n8(Z4),f6(Z4.content))r2(Z4.content)}catch(K9){if(d4)E3(su),bZ(B.removed,(g5)=>{if(g5.element)f4(g5.element)});throw K9}if(d4){if(bZ(B.removed,(K9)=>{if(K9.element)f4(K9.element)}),S0)V0(su);return su}if(o){if(S0)V0(fu);if(L0){x4=r.call(fu.ownerDocument);while(fu.firstChild)x4.appendChild(fu.firstChild)}else x4=fu;if(a0.shadowroot||a0.shadowrootmode)x4=$.call(A,x4,!0);return x4}let h6=h0?fu.outerHTML:fu.innerHTML;if(h0&&q0["!doctype"]&&fu.ownerDocument&&fu.ownerDocument.doctype&&fu.ownerDocument.doctype.name&&x7(Nu4,fu.ownerDocument.doctype.name))h6="<!DOCTYPE "+fu.ownerDocument.doctype.name+`>
`+h6;if(S0)h6=J1(h6);return W&&E0?I(h6):h6},B.setConfig=function(){let su=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};b4(su),J0=!0,n=q0,d=a0},B.clearConfig=function(){q4=null,J0=!1,n=null,d=null,W=T,S=""},B.isValidAttribute=function(su,N0,fu){if(!q4)b4({});let hu=ru(su),Z4=ru(N0);return Ez(hu,Z4,fu)},B.addHook=function(su,N0){if(typeof N0!=="function")return;if(!sB(y,su))return;ax(y[su],N0)},B.removeHook=function(su,N0){if(!sB(y,su))return;if(N0!==void 0){let fu=Ku4(y[su],N0);return fu===-1?void 0:Qu4(y[su],fu,1)[0]}return jQ0(y[su])},B.removeHooks=function(su){if(!sB(y,su))return;y[su]=[]},B.removeAllHooks=function(){y=_Q0()},B}var nQ0,PQ0,Zu4,Ju4,wu4,c2,H5,vQ,pQ0,So,Wo,bZ,Ku4,jQ0,ax,Qu4,SQ,mx,Ho,NQ0,Vx,iQ0,Gu4,Hu4,Lu4,aQ0,VQ0,sB,hx,x7,lZ,hQ0,Lo,qo,Su4,Xo,Wu4,mQ0,rQ0,xo,$Q0,VP,Yu4,Ru4,Tu4,Ou4,Iu4,yQ0,Pu4,ju4,Nu4,iu4,cQ0,gQ0,au4,Vu4,p8,dQ0,hu4,mu4,ru4=function(){return typeof window>"u"?null:window},$u4=function(B,E){if(typeof B!=="object"||typeof B.createPolicy!=="function")return null;let A=null,C="data-tt-policy-suffix";if(E&&E.hasAttribute(C))A=E.getAttribute(C);let D="dompurify"+(A?"#"+A:"");try{return B.createPolicy(D,{createHTML(F){return F},createScriptURL(F){return F}})}catch(F){return console.warn("TrustedTypes policy "+D+" could not be created."),null}},_Q0=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Lf=function(B,E,A,C){return sB(B,E)&&SQ(B[E])?X1(C.base?d8(C.base):{},B[E],C.transform):A},vo=function(B,E,A){let C=sB(B,E)?B[E]:void 0;return C&&typeof C==="object"?d8(C):A()},oB;var WQ=g(()=>{/*! @license DOMPurify 3.4.14 | (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.14/LICENSE */nQ0=Object.entries,PQ0=Object.setPrototypeOf,Zu4=Object.isFrozen,Ju4=Object.getPrototypeOf,wu4=Object.getOwnPropertyDescriptor,c2=Object.freeze,H5=Object.seal,vQ=Object.create,pQ0=typeof Reflect<"u"&&Reflect,So=pQ0.apply,Wo=pQ0.construct;if(!c2)c2=function(B){return B};if(!H5)H5=function(B){return B};if(!So)So=function(B,E){for(var A=arguments.length,C=Array(A>2?A-2:0),D=2;D<A;D++)C[D-2]=arguments[D];return B.apply(E,C)};if(!Wo)Wo=function(B){for(var E=arguments.length,A=Array(E>1?E-1:0),C=1;C<E;C++)A[C-1]=arguments[C];return new B(...A)};bZ=Q2(Array.prototype.forEach),Ku4=Q2(Array.prototype.lastIndexOf),jQ0=Q2(Array.prototype.pop),ax=Q2(Array.prototype.push),Qu4=Q2(Array.prototype.splice),SQ=Array.isArray,mx=Q2(String.prototype.toLowerCase),Ho=Q2(String.prototype.toString),NQ0=Q2(String.prototype.match),Vx=Q2(String.prototype.replace),iQ0=Q2(String.prototype.indexOf),Gu4=Q2(String.prototype.trim),Hu4=Q2(Number.prototype.toString),Lu4=Q2(Boolean.prototype.toString),aQ0=typeof BigInt>"u"?null:Q2(BigInt.prototype.toString),VQ0=typeof Symbol>"u"?null:Q2(Symbol.prototype.toString),sB=Q2(Object.prototype.hasOwnProperty),hx=Q2(Object.prototype.toString),x7=Q2(RegExp.prototype.test),lZ=qu4(TypeError);hQ0=c2(["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"]),Lo=c2(["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"]),qo=c2(["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"]),Su4=c2(["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"]),Xo=c2(["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"]),Wu4=c2(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),mQ0=c2(["#text"]),rQ0=c2(["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"]),xo=c2(["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"]),$Q0=c2(["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"]),VP=c2(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Yu4=H5(/{{[\w\W]*|^[\w\W]*}}/g),Ru4=H5(/<%[\w\W]*|^[\w\W]*%>/g),Tu4=H5(/\${[\w\W]*/g),Ou4=H5(/^data-[\-\w.\u00B7-\uFFFF]+$/),Iu4=H5(/^aria-[\-\w]+$/),yQ0=H5(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Pu4=H5(/^(?:\w+script|data):/i),ju4=H5(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Nu4=H5(/^html$/i),iu4=H5(/^[a-z][.\w]*(-[.\w]+)+$/i),cQ0=H5(/<[/\w!]/g),gQ0=H5(/<[/\w]/g),au4=H5(/<\/no(script|embed|frames)/i),Vu4=H5(/\/>/i),p8={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},dQ0=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],hu4=c2(X1({},dQ0)),mu4=function(){let u={};return bZ(dQ0,(B)=>{u[B]=H5(new RegExp("</"+B+"(?=[\\t\\n\\f\\r />])","i"))}),c2(u)}();oB=sQ0()});var NH0={};ju(NH0,{version:()=>PH0,renderToString:()=>RH0,render:()=>Ht,default:()=>O34,__setFontMetrics:()=>VG0,__renderToHTMLTree:()=>IH0,__renderToDomTree:()=>Jj,__parse:()=>TH0,__domTree:()=>jH0,__defineSymbol:()=>s,__defineMacro:()=>R0,__defineFunction:()=>G4,SETTINGS_SCHEMA:()=>dP,ParseError:()=>B4});function du4(u){if(typeof u!=="string")return u.enum[0];switch(u){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 su4(u){if(u.default!==void 0)return u.default;var B=Array.isArray(u.type)?u.type[0]:u.type;return du4(B)}function ou4(u,B,E,A){var C=E[B];u[B]=C!==void 0?A.processor?A.processor(C):C:su4(A)}class Ej{constructor(u){if(u===void 0)u={};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,u=u||{};for(var B of Object.keys(dP)){var E=dP[B];if(E)ou4(this,B,u,E)}}reportNonstrict(u,B,E){var A=this.strict;if(typeof A==="function")A=A(u,B,E);if(!A||A==="ignore")return;else if(A===!0||A==="error")throw new B4("LaTeX-incompatible input and strict mode is set to 'error': "+(B+" ["+u+"]"),E);else if(A==="warn")typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(B+" ["+u+"]"));else typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+A+"': "+B+" ["+u+"]"))}useStrictBehavior(u,B,E){var A=this.strict;if(typeof A==="function")try{A=A(u,B,E)}catch(C){A="error"}if(!A||A==="ignore")return!1;else if(A===!0||A==="error")return!0;else if(A==="warn")return typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(B+" ["+u+"]")),!1;else return typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+A+"': "+B+" ["+u+"]")),!1}isTrusted(u){if("url"in u&&u.url&&!u.protocol){var B=pu4(u.url);if(B==null)return!1;u.protocol=B}var E=typeof this.trust==="function"?this.trust(u):this.trust;return Boolean(E)}}class fz{constructor(u,B,E){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=u,this.size=B,this.cramped=E}sup(){return tD[tu4[this.id]]}sub(){return tD[eu4[this.id]]}fracNum(){return tD[u44[this.id]]}fracDen(){return tD[B44[this.id]]}cramp(){return tD[E44[this.id]]}text(){return tD[A44[this.id]]}isTight(){return this.size>=2}}function C44(u){for(var B=0;B<mo.length;B++){var E=mo[B];for(var A=0;A<E.blocks.length;A++){var C=E.blocks[A];if(u>=C[0]&&u<=C[1])return E.name}}return null}function IG0(u){for(var B=0;B<_P.length;B+=2)if(u>=_P[B]&&u<=_P[B+1])return!0;return!1}function J44(u){return"toText"in u}class JZ{constructor(u){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=u,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(u){return this.classes.includes(u)}toNode(){var u=document.createDocumentFragment();for(var B=0;B<this.children.length;B++)u.appendChild(this.children[B].toNode());return u}toMarkup(){var u="";for(var B=0;B<this.children.length;B++)u+=this.children[B].toMarkup();return u}toText(){return this.children.map((u)=>{if(J44(u))return u.toText();throw Error("Expected MathDomNode with toText, got "+u.constructor.name)}).join("")}}class wZ{constructor(u,B,E,A){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,jG0.call(this,u,E,A),this.children=B||[]}setAttribute(u,B){this.attributes[u]=B}hasClass(u){return this.classes.includes(u)}toNode(){return NG0.call(this,"span")}toMarkup(){return iG0.call(this,"span")}}class dx{constructor(u,B,E,A){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,jG0.call(this,B,A),this.children=E||[],this.setAttribute("href",u)}setAttribute(u,B){this.attributes[u]=B}hasClass(u){return this.classes.includes(u)}toNode(){return NG0.call(this,"a")}toMarkup(){return iG0.call(this,"a")}}class aG0{constructor(u,B,E){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=B,this.src=u,this.classes=["mord"],this.height=0,this.depth=0,this.maxFontSize=0,this.style=E}hasClass(u){return this.classes.includes(u)}toNode(){var u=document.createElement("img");return u.src=this.src,u.alt=this.alt,u.className="mord",Object.assign(u.style,this.style),u}toMarkup(){var u='<img src="'+v7(this.src)+'"'+(' alt="'+v7(this.alt)+'"'),B=Ft(this.style);if(B)u+=' style="'+v7(B)+'"';return u+="'/>",u}}class eB{constructor(u,B,E,A,C,D,F,U){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=u,this.height=B||0,this.depth=E||0,this.italic=A||0,this.skew=C||0,this.width=D||0,this.classes=F||[],this.style=U||{},this.maxFontSize=0;var z=C44(this.text.charCodeAt(0));if(z)this.classes.push(z+"_fallback");if(/[îïíì]/.test(this.text))this.text=Q44[this.text]}hasClass(u){return this.classes.includes(u)}toNode(){var u=document.createTextNode(this.text),B=null;if(this.italic>0)B=document.createElement("span"),B.style.marginRight=z4(this.italic);if(this.classes.length>0)B=B||document.createElement("span"),B.className=Xf(this.classes);if(Object.keys(this.style).length>0)B=B||document.createElement("span"),Object.assign(B.style,this.style);if(B)return B.appendChild(u),B;else return u}toMarkup(){var u=!1,B="<span";if(this.classes.length)u=!0,B+=' class="',B+=v7(Xf(this.classes)),B+='"';var E="";if(this.italic>0)E+="margin-right:"+z4(this.italic)+";";if(E+=Ft(this.style),E)u=!0,B+=' style="'+v7(E)+'"';var A=v7(this.text);if(u)return B+=">",B+=A,B+="</span>",B;else return A}}class uF{constructor(u,B){this.children=void 0,this.attributes=void 0,this.children=u||[],this.attributes=B||{}}toNode(){var u="http://www.w3.org/2000/svg",B=document.createElementNS(u,"svg");for(var E of Object.keys(this.attributes))B.setAttribute(E,this.attributes[E]);for(var A=0;A<this.children.length;A++)B.appendChild(this.children[A].toNode());return B}toMarkup(){var u='<svg xmlns="http://www.w3.org/2000/svg"';for(var B of Object.keys(this.attributes))u+=" "+B+'="'+v7(this.attributes[B])+'"';u+=">";for(var E=0;E<this.children.length;E++)u+=this.children[E].toMarkup();return u+="</svg>",u}}class Zz{constructor(u,B){this.pathName=void 0,this.alternate=void 0,this.pathName=u,this.alternate=B}toNode(){var u="http://www.w3.org/2000/svg",B=document.createElementNS(u,"path");if(this.alternate)B.setAttribute("d",this.alternate);else B.setAttribute("d",oQ0[this.pathName]);return B}toMarkup(){if(this.alternate)return'<path d="'+v7(this.alternate)+'"/>';else return'<path d="'+v7(oQ0[this.pathName])+'"/>'}}class oP{constructor(u){this.attributes=void 0,this.attributes=u||{}}toNode(){var u="http://www.w3.org/2000/svg",B=document.createElementNS(u,"line");for(var E of Object.keys(this.attributes))B.setAttribute(E,this.attributes[E]);return B}toMarkup(){var u="<line";for(var B of Object.keys(this.attributes))u+=" "+B+'="'+v7(this.attributes[B])+'"';return u+="/>",u}}function G44(u){if(u instanceof eB)return u;else throw Error("Expected symbolNode but got "+String(u)+".")}function H44(u){if(u instanceof wZ)return u;else throw Error("Expected span<HtmlDomNode> but got "+String(u)+".")}function VG0(u,B){eD[u]=B}function Ut(u,B,E){if(!eD[B])throw Error("Font metrics not found for font: "+B+".");var A=u.charCodeAt(0),C=eD[B][A];if(!C&&u[0]in tQ0)A=tQ0[u[0]].charCodeAt(0),C=eD[B][A];if(!C&&E==="text"){if(IG0(A))C=eD[B][77]}if(C)return{depth:C[0],height:C[1],italic:C[2],skew:C[3],width:C[4]}}function q44(u){var B;if(u>=5)B=0;else if(u>=3)B=1;else B=2;if(!Yo[B]){var E=Yo[B]={cssEmPerMu:hP.quad[B]/18};for(var A in hP)if(hP.hasOwnProperty(A))E[A]=hP[A][B]}return Yo[B]}function s(u,B,E,A,C,D){if(u9[u][C]={font:B,group:E,replace:A},D&&A)u9[u][A]=u9[u][C]}function G4(u){var{type:B,names:E,props:A,handler:C,htmlBuilder:D,mathmlBuilder:F}=u,U={type:B,numArgs:A.numArgs,argTypes:A.argTypes,allowedInArgument:!!A.allowedInArgument,allowedInText:!!A.allowedInText,allowedInMath:A.allowedInMath===void 0?!0:A.allowedInMath,numOptionalArgs:A.numOptionalArgs||0,infix:!!A.infix,primitive:!!A.primitive,handler:C};for(var z=0;z<E.length;++z)cG0[E[z]]=U;if(B){if(D)eP[B]=D;if(F)uj[B]=F}}function KZ(u){var{type:B,htmlBuilder:E,mathmlBuilder:A}=u;G4({type:B,names:[],props:{numArgs:0},handler(){throw Error("Should never be called.")},htmlBuilder:E,mathmlBuilder:A})}function rP(u,B){var E=u4(["base"],u,B),A=u4(["strut"]);if(A.style.height=z4(E.height+E.depth),E.depth)A.style.verticalAlign=z4(-E.depth);return E.children.unshift(A),E}function to(u,B){var E=null;if(u.length===1&&u[0].type==="tag")E=u[0].tag,u=u[0].body;var A=_2(u,B,"root"),C;if(A.length===2&&A[1].hasClass("tag"))C=A.pop();var D=[],F=[];for(var U=0;U<A.length;U++)if(F.push(A[U]),A[U].hasClass("mbin")||A[U].hasClass("mrel")||A[U].hasClass("allowbreak")){var z=!1;while(U<A.length-1&&A[U+1].hasClass("mspace")&&!A[U+1].hasClass("newline"))if(U++,F.push(A[U]),A[U].hasClass("nobreak"))z=!0;if(!z)D.push(rP(F,B)),F=[]}else if(A[U].hasClass("newline")){if(F.pop(),F.length>0)D.push(rP(F,B)),F=[];D.push(A[U])}if(F.length>0)D.push(rP(F,B));var k;if(E)k=rP(_2(E,B,!0),B),k.classes=["tag"],D.push(k);else if(C)D.push(C);var f=u4(["katex-html"],D);if(f.setAttribute("aria-hidden","true"),k){var l=k.children[0];if(l.style.height=z4(f.height+f.depth),f.depth)l.style.verticalAlign=z4(-f.depth)}return f}function _G0(u){return new JZ(u)}class E4{constructor(u,B,E){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=u,this.attributes={},this.children=B||[],this.classes=E||[]}setAttribute(u,B){this.attributes[u]=B}getAttribute(u){return this.attributes[u]}toNode(){var u=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var B in this.attributes)if(Object.prototype.hasOwnProperty.call(this.attributes,B))u.setAttribute(B,this.attributes[B]);if(this.classes.length>0)u.className=Xf(this.classes);for(var E=0;E<this.children.length;E++)if(this.children[E]instanceof B2&&this.children[E+1]instanceof B2){var A=this.children[E].toText()+this.children[++E].toText();while(this.children[E+1]instanceof B2)A+=this.children[++E].toText();u.appendChild(new B2(A).toNode())}else u.appendChild(this.children[E].toNode());return u}toMarkup(){var u="<"+this.type;for(var B in this.attributes)if(Object.prototype.hasOwnProperty.call(this.attributes,B))u+=" "+B+'="',u+=v7(this.attributes[B]),u+='"';if(this.classes.length>0)u+=' class ="'+v7(Xf(this.classes))+'"';u+=">";for(var E=0;E<this.children.length;E++)u+=this.children[E].toMarkup();return u+="</"+this.type+">",u}toText(){return this.children.map((u)=>u.toText()).join("")}}class B2{constructor(u){this.text=void 0,this.text=u}toNode(){return document.createTextNode(this.text)}toMarkup(){return v7(this.toText())}toText(){return this.text}}class ft{constructor(u){if(this.width=void 0,this.character=void 0,this.width=u,u>=0.05555&&u<=0.05556)this.character="";else if(u>=0.1666&&u<=0.1667)this.character="";else if(u>=0.2222&&u<=0.2223)this.character="";else if(u>=0.2777&&u<=0.2778)this.character="";else if(u>=-0.05556&&u<=-0.05555)this.character="";else if(u>=-0.1667&&u<=-0.1666)this.character="";else if(u>=-0.2223&&u<=-0.2222)this.character="";else if(u>=-0.2778&&u<=-0.2777)this.character="";else this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);else{var u=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return u.setAttribute("width",z4(this.width)),u}}toMarkup(){if(this.character)return"<mtext>"+this.character+"</mtext>";else return'<mspace width="'+z4(this.width)+'"/>'}toText(){if(this.character)return this.character;else return" "}}function Ro(u){if(!u)return!1;if(u.type==="mi"&&u.children.length===1){var B=u.children[0];return B instanceof B2&&B.text==="."}else if(u.type==="mo"&&u.children.length===1&&u.getAttribute("separator")==="true"&&u.getAttribute("lspace")==="0em"&&u.getAttribute("rspace")==="0em"){var E=u.children[0];return E instanceof B2&&E.text===","}else return!1}function zG0(u,B,E,A,C){var D=t8(u,E),F;if(D.length===1&&D[0]instanceof E4&&a44.has(D[0].type))F=D[0];else F=new E4("mrow",D);var U=new E4("annotation",[new B2(B)]);U.setAttribute("encoding","application/x-tex");var z=new E4("semantics",[F,U]),k=new E4("math",[z]);if(k.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),A)k.setAttribute("display","block");var f=C?"katex":"katex-mathml";return u4([f],[k])}class bz{constructor(u){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=u.style,this.color=u.color,this.size=u.size||bz.BASESIZE,this.textSize=u.textSize||this.size,this.phantom=!!u.phantom,this.font=u.font||"",this.fontFamily=u.fontFamily||"",this.fontWeight=u.fontWeight||"",this.fontShape=u.fontShape||"",this.sizeMultiplier=kG0[this.size-1],this.maxSize=u.maxSize,this.minRuleThickness=u.minRuleThickness,this._fontMetrics=void 0}extend(u){var B={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(B,u),new bz(B)}havingStyle(u){if(this.style===u)return this;else return this.extend({style:u,size:fG0(this.textSize,u)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(u){if(this.size===u&&this.textSize===u)return this;else return this.extend({style:this.style.text(),size:u,textSize:u,sizeMultiplier:kG0[u-1]})}havingBaseStyle(u){u=u||this.style.text();var B=fG0(bz.BASESIZE,u);if(this.size===B&&this.textSize===bz.BASESIZE&&this.style===u)return this;else return this.extend({style:u,size:B})}havingBaseSizing(){var u;switch(this.style.id){case 4:case 5:u=3;break;case 6:case 7:u=1;break;default:u=6}return this.extend({style:this.style.text(),size:u})}withColor(u){return this.extend({color:u})}withPhantom(){return this.extend({phantom:!0})}withFont(u){return this.extend({font:u})}withTextFontFamily(u){return this.extend({fontFamily:u,font:""})}withTextFontWeight(u){return this.extend({fontWeight:u,font:""})}withTextFontShape(u){return this.extend({fontShape:u,font:""})}sizingClasses(u){if(u.size!==this.size)return["sizing","reset-size"+u.size,"size"+this.size];else return[]}baseSizingClasses(){if(this.size!==bz.BASESIZE)return["sizing","reset-size"+this.size,"size"+bz.BASESIZE];else return[]}fontMetrics(){if(!this._fontMetrics)this._fontMetrics=q44(this.size);return this._fontMetrics}getColor(){if(this.phantom)return"transparent";else return this.color}}function p44(u){return u in _44}function p3(u,B){if(!u||u.type!==B)throw Error("Expected node of type "+B+", but got "+(u?"node of type "+u.type:String(u)));return u}function Uj(u){var B=zj(u);if(!B)throw Error("Expected node of symbol group type, but got "+(u?"node of type "+u.type:String(u)));return B}function zj(u){if(u&&(u.type==="atom"||n44.hasOwnProperty(u.type)))return u;return null}function oG0(u,B){var E=_2(u.body,B,!0);return u4([u.mclass],E,B)}function tG0(u,B){var E,A=t8(u.body,B);if(u.mclass==="minner")E=new E4("mpadded",A);else if(u.mclass==="mord")if(u.isCharacterBox)E=A[0],E.type="mi";else E=new E4("mi",A);else{if(u.isCharacterBox)E=A[0],E.type="mo";else E=new E4("mo",A);if(u.mclass==="mbin")E.attributes.lspace="0.22em",E.attributes.rspace="0.22em";else if(u.mclass==="mpunct")E.attributes.lspace="0em",E.attributes.rspace="0.17em";else if(u.mclass==="mopen"||u.mclass==="mclose")E.attributes.lspace="0em",E.attributes.rspace="0em";else if(u.mclass==="minner")E.attributes.lspace="0.0556em",E.attributes.width="+0.1111em"}return E}function t44(u,B,E){var A=s44[u];switch(A){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return E.callFunction(A,[B[0]],[B[1]]);case"\\uparrow":case"\\downarrow":{var C=E.callFunction("\\\\cdleft",[B[0]],[]),D={type:"atom",text:A,mode:"math",family:"rel"},F=E.callFunction("\\Big",[D],[]),U=E.callFunction("\\\\cdright",[B[1]],[]),z={type:"ordgroup",mode:"math",body:[C,F,U]};return E.callFunction("\\\\cdparent",[z],[])}case"\\\\cdlongequal":return E.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var k={type:"textord",text:"\\Vert",mode:"math"};return E.callFunction("\\Big",[k],[])}default:return{type:"textord",text:" ",mode:"math"}}}function e44(u){var B=[];u.gullet.beginGroup(),u.gullet.macros.set("\\cr","\\\\\\relax"),u.gullet.beginGroup();while(!0){B.push(u.parseExpression(!1,"\\\\")),u.gullet.endGroup(),u.gullet.beginGroup();var E=u.fetch().text;if(E==="&"||E==="\\\\")u.consume();else if(E==="\\end"){if(B[B.length-1].length===0)B.pop();break}else throw new B4("Expected \\\\ or \\cr or \\end",u.nextToken)}var A=[],C=[A];for(var D=0;D<B.length;D++){var F=B[D],U=lG0();for(var z=0;z<F.length;z++)if(!bG0(F[z]))U.body.push(F[z]);else{A.push(U),z+=1;var k=Uj(F[z]).text,f=[,,];if(f[0]={type:"ordgroup",mode:"math",body:[]},f[1]={type:"ordgroup",mode:"math",body:[]},"=|.".includes(k));else if("<>AV".includes(k))for(var l=0;l<2;l++){var b=!0;for(var M=z+1;M<F.length;M++){if(o44(F[M],k)){b=!1,z=M;break}if(bG0(F[M]))throw new B4("Missing a "+k+" character to complete a CD arrow.",F[M]);f[l].body.push(F[M])}if(b)throw new B4("Missing a "+k+" character to complete a CD arrow.",F[z])}else throw new B4('Expected one of "<>AV=|." after @',F[z]);var Z=t44(k,f,u),J={type:"styling",body:[Z],mode:"math",style:"display",resetFont:!0};A.push(J),U=lG0()}if(D%2===0)A.push(U);else A.shift();A=[],C.push(A)}u.gullet.endGroup(),u.gullet.endGroup();var w=Array(C[0].length).fill({type:"align",align:"c",pregap:0.25,postgap:0.25});return{type:"array",mode:"math",body:C,arraystretch:1,addJot:!0,rowGaps:[null],cols:w,colSeparationType:"CD",hLinesBeforeRow:Array(C.length+1).fill([])}}function ZG0(u){return"isMiddle"in u}function fj(u,B){var E=zj(u);if(E&&f34.has(E.text))return E;else if(E)throw new B4("Invalid delimiter '"+E.text+"' after '"+B.funcName+"'",u);else throw new B4("Invalid delimiter type '"+u.type+"'",u)}function JG0(u){if(!u.body)throw Error("Bug: The leftright ParseNode wasn't fully parsed.")}function BF(u){var{type:B,names:E,props:A,handler:C,htmlBuilder:D,mathmlBuilder:F}=u,U={type:B,numArgs:A.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:C};for(var z=0;z<E.length;++z)lH0[E[z]]=U;if(D)eP[B]=D;if(F)uj[B]=F}function R0(u,B){bH0[u]=B}class tB{constructor(u,B,E){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=u,this.start=B,this.end=E}static range(u,B){if(!B)return u&&u.loc;else if(!u||!u.loc||!B.loc||u.loc.lexer!==B.loc.lexer)return null;else return new tB(u.loc.lexer,u.loc.start,B.loc.end)}}class s8{constructor(u,B){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=u,this.loc=B}range(u,B){return new s8(B,tB.range(this,u))}}function wG0(u){var B=[];u.consumeSpaces();var E=u.fetch().text;if(E==="\\relax")u.consume(),u.consumeSpaces(),E=u.fetch().text;while(E==="\\hline"||E==="\\hdashline")u.consume(),B.push(E==="\\hdashline"),u.consumeSpaces(),E=u.fetch().text;return B}function Jt(u){if(!u.includes("ed"))return!u.includes("*")}function Sf(u,B,E){var{hskipBeforeAndAfter:A,addJot:C,cols:D,arraystretch:F,colSeparationType:U,autoTag:z,singleRow:k,emptySingleRow:f,maxNumCols:l,leqno:b}=B;if(u.gullet.beginGroup(),!k)u.gullet.macros.set("\\cr","\\\\\\relax");if(!F){var M=u.gullet.expandMacroAsText("\\arraystretch");if(M==null)F=1;else if(F=parseFloat(M),!F||F<0)throw new B4("Invalid \\arraystretch: "+M)}u.gullet.beginGroup();var Z=[],J=[Z],w=[],K=[],Q=z!=null?[]:void 0;function G(){if(z)u.gullet.macros.set("\\@eqnsw","1",!0)}function L(){if(Q)if(u.gullet.macros.get("\\df@tag"))Q.push(u.subparse([new s8("\\df@tag")])),u.gullet.macros.set("\\df@tag",void 0,!0);else Q.push(Boolean(z)&&u.gullet.macros.get("\\@eqnsw")==="1")}G(),K.push(wG0(u));while(!0){var H=u.parseExpression(!1,k?"\\end":"\\\\");u.gullet.endGroup(),u.gullet.beginGroup();var q={type:"ordgroup",mode:u.mode,body:H};if(E)q={type:"styling",mode:u.mode,style:E,resetFont:!0,body:[q]};Z.push(q);var x=u.fetch().text;if(x==="&"){if(l&&Z.length===l)if(k||U)throw new B4("Too many tab characters: &",u.nextToken);else u.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.");u.consume()}else if(x==="\\end"){if(L(),Z.length===1&&q.type==="styling"&&q.body.length===1&&q.body[0].type==="ordgroup"&&q.body[0].body.length===0&&(J.length>1||!f))J.pop();if(K.length<J.length+1)K.push([]);break}else if(x==="\\\\"){u.consume();var v=void 0;if(u.gullet.future().text!==" ")v=u.parseSizeGroup(!0);w.push(v?v.value:null),L(),K.push(wG0(u)),Z=[],J.push(Z),G()}else throw new B4("Expected & or \\\\ or \\cr or \\end",u.nextToken)}return u.gullet.endGroup(),u.gullet.endGroup(),{type:"array",mode:u.mode,addJot:C,arraystretch:F,body:J,cols:D,rowGaps:w,hskipBeforeAndAfter:A,hLinesBeforeRow:K,colSeparationType:U,tags:Q,leqno:b}}function wt(u){if(u.slice(0,1)==="d")return"display";else return"text"}function LH0(u,B,E){var A=_2(u,B,!1),C=B.sizeMultiplier/E.sizeMultiplier;for(var D=0;D<A.length;D++){var F=A[D].classes.indexOf("sizing");if(F<0)Array.prototype.push.apply(A[D].classes,B.sizingClasses(E));else if(A[D].classes[F+1]==="reset-size"+B.size)A[D].classes[F+1]="reset-size"+E.size;A[D].height*=C,A[D].depth*=C}return Kz(A)}function H34(u){return u in Et}class Ct{constructor(u,B){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=u,this.settings=B,this.tokenRegex=new RegExp(Y34,"g"),this.catcodes={"%":14,"~":13}}setCatcode(u,B){this.catcodes[u]=B}lex(){var u=this.input,B=this.tokenRegex.lastIndex;if(B===u.length)return new s8("EOF",new tB(this,B,B));var E=this.tokenRegex.exec(u);if(E===null||E.index!==B)throw new B4("Unexpected character: '"+u[B]+"'",new s8(u[B],new tB(this,B,B+1)));var A=E[6]||E[3]||(E[2]?"\\ ":" ");if(this.catcodes[A]===14){var C=u.indexOf(`
`,this.tokenRegex.lastIndex);if(C===-1)this.tokenRegex.lastIndex=u.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=C+1;return this.lex()}return new s8(A,new tB(this,B,this.tokenRegex.lastIndex))}}class xH0{constructor(u,B){if(u===void 0)u={};if(B===void 0)B={};this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=B,this.builtins=u,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new B4("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var u=this.undefStack.pop();for(var B in u)if(u.hasOwnProperty(B))if(u[B]==null)delete this.current[B];else this.current[B]=u[B]}endGroups(){while(this.undefStack.length>0)this.endGroup()}has(u){return this.current.hasOwnProperty(u)||this.builtins.hasOwnProperty(u)}get(u){if(this.current.hasOwnProperty(u))return this.current[u];else return this.builtins[u]}set(u,B,E){if(E===void 0)E=!1;if(E){for(var A=0;A<this.undefStack.length;A++)delete this.undefStack[A][u];if(this.undefStack.length>0)this.undefStack[this.undefStack.length-1][u]=B}else{var C=this.undefStack[this.undefStack.length-1];if(C&&!C.hasOwnProperty(u))C[u]=this.current[u]}if(B==null)delete this.current[u];else this.current[u]=B}}class YH0{constructor(u,B,E){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=B,this.expansionCount=0,this.feed(u),this.macros=new xH0(R34,B.macros),this.mode=E,this.stack=[]}feed(u){this.lexer=new Ct(u,this.settings)}switchMode(u){this.mode=u}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(u){this.stack.push(u)}pushTokens(u){this.stack.push(...u)}scanArgument(u){var B,E,A;if(u){if(this.consumeSpaces(),this.future().text!=="[")return null;B=this.popToken(),{tokens:A,end:E}=this.consumeArg(["]"])}else({tokens:A,start:B,end:E}=this.consumeArg());return this.pushToken(new s8("EOF",E.loc)),this.pushTokens(A),new s8("",tB.range(B,E))}consumeSpaces(){for(;;){var u=this.future();if(u.text===" ")this.stack.pop();else break}}consumeArg(u){var B=[],E=u&&u.length>0;if(!E)this.consumeSpaces();var A=this.future(),C,D=0,F=0;do{if(C=this.popToken(),B.push(C),C.text==="{")++D;else if(C.text==="}"){if(--D,D===-1)throw new B4("Extra }",C)}else if(C.text==="EOF")throw new B4("Unexpected end of input in a macro argument, expected '"+(u&&E?u[F]:"}")+"'",C);if(u&&E)if((D===0||D===1&&u[F]==="{")&&C.text===u[F]){if(++F,F===u.length){B.splice(-F,F);break}}else F=0}while(D!==0||E);if(A.text==="{"&&B[B.length-1].text==="}")B.pop(),B.shift();return B.reverse(),{tokens:B,start:A,end:C}}consumeArgs(u,B){if(B){if(B.length!==u+1)throw new B4("The length of delimiters doesn't match the number of args!");var E=B[0];for(var A=0;A<E.length;A++){var C=this.popToken();if(E[A]!==C.text)throw new B4("Use of the macro doesn't match its definition",C)}}var D=[];for(var F=0;F<u;F++)D.push(this.consumeArg(B&&B[F+1]).tokens);return D}countExpansion(u){if(this.expansionCount+=u,this.expansionCount>this.settings.maxExpand)throw new B4("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(u){var B=this.popToken(),E=B.text,A=!B.noexpand?this._getExpansion(E):null;if(A==null||u&&A.unexpandable){if(u&&A==null&&E[0]==="\\"&&!this.isDefined(E))throw new B4("Undefined control sequence: "+E);return this.pushToken(B),!1}this.countExpansion(1);var C=A.tokens,D=this.consumeArgs(A.numArgs,A.delimiters);if(A.numArgs){C=C.slice();for(var F=C.length-1;F>=0;--F){var U=C[F];if(U.text==="#"){if(F===0)throw new B4("Incomplete placeholder at end of macro body",U);if(U=C[--F],U.text==="#")C.splice(F+1,1);else if(/^[1-9]$/.test(U.text))C.splice(F,2,...D[+U.text-1]);else throw new B4("Not a valid argument number",U)}}}return this.pushTokens(C),C.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var u=this.stack.pop();if(u.treatAsRelax)u.text="\\relax";return u}}expandMacro(u){return this.macros.has(u)?this.expandTokens([new s8(u)]):void 0}expandTokens(u){var B=[],E=this.stack.length;this.pushTokens(u);while(this.stack.length>E)if(this.expandOnce(!0)===!1){var A=this.stack.pop();if(A.treatAsRelax)A.noexpand=!1,A.treatAsRelax=!1;B.push(A)}return this.countExpansion(B.length),B}expandMacroAsText(u){var B=this.expandMacro(u);if(B)return B.map((E)=>E.text).join("");else return B}_getExpansion(u){var B=this.macros.get(u);if(B==null)return B;if(u.length===1){var E=this.lexer.catcodes[u];if(E!=null&&E!==13)return}var A=typeof B==="function"?B(this):B;if(typeof A==="string"){var C=0;if(A.includes("#")){var D=A.replace(/##/g,"");while(D.includes("#"+(C+1)))++C}var F=new Ct(A,this.settings),U=[],z=F.lex();while(z.text!=="EOF")U.push(z),z=F.lex();U.reverse();var k={tokens:U,numArgs:C};return k}return A}isDefined(u){return this.macros.has(u)||qf.hasOwnProperty(u)||u9.math.hasOwnProperty(u)||u9.text.hasOwnProperty(u)||WH0.hasOwnProperty(u)}isExpandable(u){var B=this.macros.get(u);return B!=null?typeof B==="string"||typeof B==="function"||!B.unexpandable:qf.hasOwnProperty(u)&&!qf[u].primitive}}class Zj{constructor(u,B){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 YH0(u,B,this.mode),this.settings=B,this.leftrightDepth=0,this.nextToken=null}expect(u,B){if(B===void 0)B=!0;if(this.fetch().text!==u)throw new B4("Expected '"+u+"', got '"+this.fetch().text+"'",this.fetch());if(B)this.consume()}consume(){this.nextToken=null}fetch(){if(this.nextToken==null)this.nextToken=this.gullet.expandNextToken();return this.nextToken}switchMode(u){this.mode=u,this.gullet.switchMode(u)}parse(){if(!this.settings.globalGroup)this.gullet.beginGroup();if(this.settings.colorIsTextColor)this.gullet.macros.set("\\color","\\textcolor");try{var u=this.parseExpression(!1);if(this.expect("EOF"),!this.settings.globalGroup)this.gullet.endGroup();return u}finally{this.gullet.endGroups()}}subparse(u){var B=this.nextToken;this.consume(),this.gullet.pushToken(new s8("}")),this.gullet.pushTokens(u);var E=this.parseExpression(!1);return this.expect("}"),this.nextToken=B,E}parseExpression(u,B){var E=[];while(!0){if(this.mode==="math")this.consumeSpaces();var A=this.fetch();if(Zj.endOfExpression.has(A.text))break;if(B&&A.text===B)break;if(u&&qf[A.text]&&qf[A.text].infix)break;var C=this.parseAtom(B);if(!C)break;else if(C.type==="internal")continue;E.push(C)}if(this.mode==="text")this.formLigatures(E);return this.handleInfixNodes(E)}handleInfixNodes(u){var B=-1,E;for(var A=0;A<u.length;A++){var C=u[A];if(C.type==="infix"){if(B!==-1)throw new B4("only one infix operator per group",C.token);B=A,E=C.replaceWith}}if(B!==-1&&E){var D,F,U=u.slice(0,B),z=u.slice(B+1);if(U.length===1&&U[0].type==="ordgroup")D=U[0];else D={type:"ordgroup",mode:this.mode,body:U};if(z.length===1&&z[0].type==="ordgroup")F=z[0];else F={type:"ordgroup",mode:this.mode,body:z};var k;if(E==="\\\\abovefrac")k=this.callFunction(E,[D,u[B],F],[]);else k=this.callFunction(E,[D,F],[]);return[k]}else return u}handleSupSubscript(u){var B=this.fetch(),E=B.text;this.consume(),this.consumeSpaces();var A;do{var C;A=this.parseGroup(u)}while(((C=A)==null?void 0:C.type)==="internal");if(!A)throw new B4("Expected group after '"+E+"'",B);return A}formatUnsupportedCmd(u){var B=[];for(var E=0;E<u.length;E++)B.push({type:"textord",mode:"text",text:u[E]});var A={type:"text",mode:this.mode,body:B},C={type:"color",mode:this.mode,color:this.settings.errorColor,body:[A]};return C}parseAtom(u){var B=this.parseGroup("atom",u);if((B==null?void 0:B.type)==="internal")return B;if(this.mode==="text")return B;var E,A;while(!0){this.consumeSpaces();var C=this.fetch();if(C.text==="\\limits"||C.text==="\\nolimits"){if(B&&B.type==="op"){var D=C.text==="\\limits";B.limits=D,B.alwaysHandleSupSub=!0}else if(B&&B.type==="operatorname"){if(B.alwaysHandleSupSub)B.limits=C.text==="\\limits"}else throw new B4("Limit controls must follow a math operator",C);this.consume()}else if(C.text==="^"){if(E)throw new B4("Double superscript",C);E=this.handleSupSubscript("superscript")}else if(C.text==="_"){if(A)throw new B4("Double subscript",C);A=this.handleSupSubscript("subscript")}else if(C.text==="'"){if(E)throw new B4("Double superscript",C);var F={type:"textord",mode:this.mode,text:"\\prime"},U=[F];this.consume();while(this.fetch().text==="'")U.push(F),this.consume();if(this.fetch().text==="^")U.push(this.handleSupSubscript("superscript"));E={type:"ordgroup",mode:this.mode,body:U}}else if(cP[C.text]){var z=TG0.test(C.text),k=[];k.push(new s8(cP[C.text])),this.consume();while(!0){var f=this.fetch().text;if(!cP[f])break;if(TG0.test(f)!==z)break;k.unshift(new s8(cP[f])),this.consume()}var l=this.subparse(k);if(z)A={type:"ordgroup",mode:"math",body:l};else E={type:"ordgroup",mode:"math",body:l}}else break}if(E||A)return{type:"supsub",mode:this.mode,base:B,sup:E,sub:A};else return B}parseFunction(u,B){var E=this.fetch(),A=E.text,C=qf[A];if(!C)return null;if(this.consume(),B&&B!=="atom"&&!C.allowedInArgument)throw new B4("Got function '"+A+"' with no arguments"+(B?" as "+B:""),E);else if(this.mode==="text"&&!C.allowedInText)throw new B4("Can't use function '"+A+"' in text mode",E);else if(this.mode==="math"&&C.allowedInMath===!1)throw new B4("Can't use function '"+A+"' in math mode",E);var{args:D,optArgs:F}=this.parseArguments(A,C);return this.callFunction(A,D,F,E,u)}callFunction(u,B,E,A,C){var D={funcName:u,parser:this,token:A,breakOnTokenText:C},F=qf[u];if(F&&F.handler)return F.handler(D,B,E);else throw new B4("No function handler for "+u)}parseArguments(u,B){var E=B.numArgs+B.numOptionalArgs;if(E===0)return{args:[],optArgs:[]};var A=[],C=[];for(var D=0;D<E;D++){var F=B.argTypes&&B.argTypes[D],U=D<B.numOptionalArgs;if("primitive"in B&&B.primitive&&F==null||B.type==="sqrt"&&D===1&&C[0]==null)F="primitive";var z=this.parseGroupOfType("argument to '"+u+"'",F,U);if(U)C.push(z);else if(z!=null)A.push(z);else throw new B4("Null argument, please report this as a bug")}return{args:A,optArgs:C}}parseGroupOfType(u,B,E){switch(B){case"color":return this.parseColorGroup(E);case"size":return this.parseSizeGroup(E);case"url":return this.parseUrlGroup(E);case"math":case"text":return this.parseArgumentGroup(E,B);case"hbox":{var A=this.parseArgumentGroup(E,"text");return A!=null?{type:"styling",mode:A.mode,body:[A],style:"text",resetFont:!0}:null}case"raw":{var C=this.parseStringGroup("raw",E);return C!=null?{type:"raw",mode:"text",string:C.text}:null}case"primitive":{if(E)throw new B4("A primitive argument cannot be optional");var D=this.parseGroup(u);if(D==null)throw new B4("Expected group as "+u,this.fetch());return D}case"original":case null:case void 0:return this.parseArgumentGroup(E);default:throw new B4("Unknown group type as "+u,this.fetch())}}consumeSpaces(){while(this.fetch().text===" ")this.consume()}parseStringGroup(u,B){var E=this.gullet.scanArgument(B);if(E==null)return null;var A="",C;while((C=this.fetch()).text!=="EOF")A+=C.text,this.consume();return this.consume(),E.text=A,E}parseRegexGroup(u,B){var E=this.fetch(),A=E,C="",D;while((D=this.fetch()).text!=="EOF"&&u.test(C+D.text))A=D,C+=A.text,this.consume();if(C==="")throw new B4("Invalid "+B+": '"+E.text+"'",E);return E.range(A,C)}parseColorGroup(u){var B=this.parseStringGroup("color",u);if(B==null)return null;var E=/^(#[a-f0-9]{3,4}|#[a-f0-9]{6}|#[a-f0-9]{8}|[a-f0-9]{6}|[a-z]+)$/i.exec(B.text);if(!E)throw new B4("Invalid color: '"+B.text+"'",B);var A=E[0];if(/^[0-9a-f]{6}$/i.test(A))A="#"+A;return{type:"color-token",mode:this.mode,color:A}}parseSizeGroup(u){var B,E=!1;if(this.gullet.consumeSpaces(),!u&&this.gullet.future().text!=="{")B=this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size");else B=this.parseStringGroup("size",u);if(!B)return null;if(!u&&B.text.length===0)B.text="0pt",E=!0;var A=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(B.text);if(!A)throw new B4("Invalid size: '"+B.text+"'",B);var C={number:+(A[1]+A[2]),unit:A[3]};if(!PG0(C))throw new B4("Invalid unit: '"+C.unit+"'",B);return{type:"size",mode:this.mode,value:C,isBlank:E}}parseUrlGroup(u){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var B=this.parseStringGroup("url",u);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),B==null)return null;var E=B.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:E}}parseArgumentGroup(u,B){var E=this.gullet.scanArgument(u);if(E==null)return null;var A=this.mode;if(B)this.switchMode(B);this.gullet.beginGroup();var C=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var D={type:"ordgroup",mode:this.mode,loc:E.loc,body:C};if(B)this.switchMode(A);return D}parseGroup(u,B){var E=this.fetch(),A=E.text,C;if(A==="{"||A==="\\begingroup"){this.consume();var D=A==="{"?"}":"\\endgroup";this.gullet.beginGroup();var F=this.parseExpression(!1,D),U=this.fetch();this.expect(D),this.gullet.endGroup(),C={type:"ordgroup",mode:this.mode,loc:tB.range(E,U),body:F,semisimple:A==="\\begingroup"||void 0}}else if(C=this.parseFunction(B,u)||this.parseSymbol(),C==null&&A[0]==="\\"&&!WH0.hasOwnProperty(A)){if(this.settings.throwOnError)throw new B4("Undefined control sequence: "+A,E);C=this.formatUnsupportedCmd(A),this.consume()}return C}formLigatures(u){var B=u.length-1;for(var E=0;E<B;++E){var A=u[E];if(A.type!=="textord")continue;var C=A.text,D=u[E+1];if(!D||D.type!=="textord")continue;if(C==="-"&&D.text==="-"){var F=u[E+2];if(E+1<B&&F&&F.type==="textord"&&F.text==="-")u.splice(E,3,{type:"textord",mode:"text",loc:tB.range(A,F),text:"---"}),B-=2;else u.splice(E,2,{type:"textord",mode:"text",loc:tB.range(A,D),text:"--"}),B-=1}if((C==="'"||C==="`")&&D.text===C)u.splice(E,2,{type:"textord",mode:"text",loc:tB.range(A,D),text:C+C}),B-=1}}parseSymbol(){var u=this.fetch(),B=u.text;if(/^\\verb[^a-zA-Z]/.test(B)){this.consume();var E=B.slice(5),A=E.charAt(0)==="*";if(A)E=E.slice(1);if(E.length<2||E.charAt(0)!==E.slice(-1))throw new B4(`\\verb assertion failed --
please report what input caused this bug`);return E=E.slice(1,-1),{type:"verb",mode:"text",body:E,star:A}}if(OG0.hasOwnProperty(B[0])&&!u9[this.mode][B[0]]){if(this.settings.strict&&this.mode==="math")this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+B[0]+'" used in math mode',u);B=OG0[B[0]]+B.slice(1)}var C=W34.exec(B);if(C){if(B=B.substring(0,C.index),B==="i")B="ı";else if(B==="j")B="ȷ"}var D;if(u9[this.mode][B]){if(this.settings.strict&&this.mode==="math"&&$o.includes(B))this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+B[0]+'" used in math mode',u);var F=u9[this.mode][B].group,U=tB.range(u),z;if(p44(F))z={type:"atom",mode:this.mode,family:F,loc:U,text:B};else z={type:F,mode:this.mode,loc:U,text:B};D=z}else if(B.charCodeAt(0)>=128){if(this.settings.strict){if(!IG0(B.charCodeAt(0)))this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+B[0]+'"'+(" ("+B.charCodeAt(0)+")"),u);else if(this.mode==="math")this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+B[0]+'" used in math mode',u)}D={type:"textord",mode:"text",loc:tB.range(u),text:B}}else return null;if(this.consume(),C)for(var k=0;k<C[0].length;k++){var f=C[0][k];if(!ho[f])throw new B4("Unknown accent ' "+f+"'",u);var l=ho[f][this.mode]||ho[f].text;if(!l)throw new B4("Accent "+f+" unsupported in "+this.mode+" mode",u);D={type:"accent",mode:this.mode,loc:tB.range(u),label:l,isStretchy:!1,isShifty:!0,base:D}}return D}}var B4,yu4,cu4=(u)=>u.replace(yu4,"-$1").toLowerCase(),gu4,_u4,v7=(u)=>String(u).replace(_u4,(B)=>gu4[B]),gP=(u)=>{if(u.type==="ordgroup")if(u.body.length===1)return gP(u.body[0]);else return u;else if(u.type==="color")if(u.body.length===1)return gP(u.body[0]);else return u;else if(u.type==="font")return gP(u.body);else return u},nu4,Jz=(u)=>nu4.has(gP(u).type),pu4=(u)=>{var B=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(u);if(!B)return"_relative";if(B[2]!==":")return null;if(!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(B[1]))return null;return B[1].toLowerCase()},dP,Dt=0,sP=1,OQ=2,Mz=3,nx=4,cE=5,IQ=6,UB=7,tD,tu4,eu4,u44,B44,E44,A44,V3,mo,_P,g2=(u)=>u+" "+u,YQ=80,D44=function(B,E){return"M95,"+(622+B+E)+`
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`+B/2.075+" -"+B+`
c5.3,-9.3,12,-14,20,-14
H400000v`+(40+B)+`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+B)+" "+E+"h400000v"+(40+B)+"h-400000z"},F44=function(B,E){return"M263,"+(601+B+E)+`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`+B/2.084+" -"+B+`
c4.7,-7.3,11,-11,19,-11
H40000v`+(40+B)+`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+B)+" "+E+"h400000v"+(40+B)+"h-400000z"},U44=function(B,E){return"M983 "+(10+B+E)+`
l`+B/3.13+" -"+B+`
c4,-6.7,10,-10,18,-10 H400000v`+(40+B)+`
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+B)+" "+E+"h400000v"+(40+B)+"h-400000z"},z44=function(B,E){return"M424,"+(2398+B+E)+`
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`+B/4.223+" -"+B+`c4,-6.7,10,-10,18,-10 H400000
v`+(40+B)+`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+B)+" "+E+`
h400000v`+(40+B)+"h-400000z"},k44=function(B,E){return"M473,"+(2713+B+E)+`
c339.3,-1799.3,509.3,-2700,510,-2702 l`+B/5.298+" -"+B+`
c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+B)+`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+B)+" "+E+"h400000v"+(40+B)+"H1017.7z"},f44=function(B){var E=B/2;return"M400000 "+B+" H0 L"+E+" 0 l65 45 L145 "+(B-80)+" H400000z"},l44=function(B,E,A){var C=A-54-E-B;return"M702 "+(B+E)+"H400000"+(40+B)+`
H742v`+C+`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 `+E+"H400000v"+(40+B)+"H742z"},b44=function(B,E,A){E=1000*E;var C="";switch(B){case"sqrtMain":C=D44(E,YQ);break;case"sqrtSize1":C=F44(E,YQ);break;case"sqrtSize2":C=U44(E,YQ);break;case"sqrtSize3":C=z44(E,YQ);break;case"sqrtSize4":C=k44(E,YQ);break;case"sqrtTall":C=l44(E,YQ,A)}return C},M44=function(B,E){switch(B){case"⎜":return g2("M291 0 H417 V"+E+" H291z");case"":return g2("M145 0 H188 V"+E+" H145z");case"∥":return g2("M145 0 H188 V"+E+" H145z")+g2("M367 0 H410 V"+E+" H367z");case"⎟":return g2("M457 0 H583 V"+E+" H457z");case"⎢":return g2("M319 0 H403 V"+E+" H319z");case"⎥":return g2("M263 0 H347 V"+E+" H263z");case"⎪":return g2("M384 0 H504 V"+E+" H384z");case"⏐":return g2("M312 0 H355 V"+E+" H312z");case"‖":return g2("M257 0 H300 V"+E+" H257z")+g2("M478 0 H521 V"+E+" H478z");default:return""}},oQ0,Z44=function(B,E){switch(B){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+E+` v1759 v84 h347 v-84
H403z M403 1759 V0 H319 V1759 v`+E+" v1759 v84 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+E+` v1759 H0 v84 H347z
M347 1759 V0 H263 V1759 v`+E+" v1759 h84z";case"vert":return"M145 15 v585 v"+E+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-E+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+E+" v585 h43z";case"doublevert":return"M145 15 v585 v"+E+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-E+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+E+` v585 h43z
M367 15 v585 v`+E+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-E+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+E+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+E+` v1715 h263 v84 H319z
MM319 602 V0 H403 V602 v`+E+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+E+` v1799 H0 v-84 H319z
MM319 602 V0 H403 V602 v`+E+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+E+` v602 h84z
M403 1759 V0 H319 V1759 v`+E+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+E+` v602 h84z
M347 1759 V0 h-84 V1759 v`+E+" 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,`+(E+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,-`+(E+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,`+(E+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,-`+(E+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.")}},ro,w44,PG0=function(B){if(typeof B!=="string")B=B.unit;return B in ro||B in w44||B==="ex"},G9=function(B,E){var A;if(B.unit in ro)A=ro[B.unit]/E.fontMetrics().ptPerEm/E.sizeMultiplier;else if(B.unit==="mu")A=E.fontMetrics().cssEmPerMu;else{var C;if(E.style.isTight())C=E.havingStyle(E.style.text());else C=E;if(B.unit==="ex")A=C.fontMetrics().xHeight;else if(B.unit==="em")A=C.fontMetrics().quad;else throw new B4("Invalid unit: '"+B.unit+"'");if(C!==E)A*=C.sizeMultiplier/E.sizeMultiplier}return Math.min(B.number*A,E.maxSize)},z4=function(B){return+B.toFixed(4)+"em"},Xf=function(B){return B.filter((E)=>E).join(" ")},Ft=function(B){var E="";for(var A of Object.keys(B)){var C=B[A];if(C!==void 0)E+=cu4(A)+":"+C+";"}return E},jG0=function(B,E,A){if(this.classes=B||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=A||{},E){if(E.style.isTight())this.classes.push("mtight");var C=E.getColor();if(C)this.style.color=C}},NG0=function(B){var E=document.createElement(B);E.className=Xf(this.classes),Object.assign(E.style,this.style);for(var A of Object.keys(this.attributes))E.setAttribute(A,this.attributes[A]);for(var C=0;C<this.children.length;C++)E.appendChild(this.children[C].toNode());return E},K44,iG0=function(B){var E="<"+B;if(this.classes.length)E+=' class="'+v7(Xf(this.classes))+'"';var A=Ft(this.style);if(A)E+=' style="'+v7(A)+'"';for(var C of Object.keys(this.attributes)){if(K44.test(C))throw new B4("Invalid attribute name '"+C+"'");E+=" "+C+'="'+v7(this.attributes[C])+'"'}E+=">";for(var D=0;D<this.children.length;D++)E+=this.children[D].toMarkup();return E+="</"+B+">",E},Q44,L44=(u)=>u instanceof wZ||u instanceof dx||u instanceof JZ,eD,hP,tQ0,Yo,u9,A0="math",pu="text",G0="main",d0="ams",B9="accent-token",v4="bin",zB="close",NQ="inner",U3="mathord",H2="op-token",o8="open",sx="punct",o0="rel",wz="spacing",Au="textord",hG0,eQ0='0123456789/@."',nP,rx,uG0='0123456789!@*()-=+";:?/.,',pP,$x,tP="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",RQ,yx,R3,e6,_5,oD,lz,$o="ÐÞþ",TQ,cx,yo,BG0,EG0,X44,ZZ,AG0,CG0,DG0,co,go,FG0,_o,UG0,x44,v44=(u)=>{var B=u.charCodeAt(0),E=u.charCodeAt(1),A=(B-55296)*1024+(E-56320)+65536;if(119808<=A&&A<120484){var C=Math.floor((A-119808)/26);return UG0[C]}else if(120782<=A&&A<=120831){var D=Math.floor((A-120782)/10);return x44[D]}else if(A===120485||A===120486)return UG0[0];else if(120486<A&&A<120782)return ZZ;else throw new B4("Unsupported character: "+u)},Aj=function(B,E,A){if(u9[A][B]){var C=u9[A][B].replace;if(C)B=C}return{value:B,metrics:Ut(B,E,A)}},FB=function(B,E,A,C,D){var F=Aj(B,E,A),U=F.metrics;B=F.value;var z;if(U){var k=U.italic;if(A==="text"||C&&C.font==="mathit")k=0;z=new eB(B,U.height,U.depth,k,U.skew,U.width,D)}else typeof console<"u"&&console.warn("No character metrics "+("for '"+B+"' in style '"+E+"' and mode '"+A+"'")),z=new eB(B,0,0,0,0,0,D);if(C){if(z.maxFontSize=C.sizeMultiplier,C.style.isTight())z.classes.push("mtight");var f=C.getColor();if(f)z.style.color=f}return z},zt=function(B,E,A,C){if(C===void 0)C=[];if(A.font==="boldsymbol"&&Aj(B,"Main-Bold",E).metrics)return FB(B,"Main-Bold",E,A,C.concat(["mathbf"]));else if(B==="\\"||u9[E][B].font==="main")return FB(B,"Main-Regular",E,A,C);else return FB(B,"AMS-Regular",E,A,C.concat(["amsrm"]))},S44=function(B,E,A){if(A!=="textord"&&Aj(B,"Math-BoldItalic",E).metrics)return{fontName:"Math-BoldItalic",fontClass:"boldsymbol"};else return{fontName:"Main-Bold",fontClass:"mathbf"}},Cj=function(B,E,A){var{mode:C,text:D}=B,F=["mord"],{font:U,fontFamily:z,fontWeight:k,fontShape:f}=E,l=C==="math"||C==="text"&&!!U,b=l?U:z,M="",Z="";if(D.charCodeAt(0)===55349){var J=v44(D);M=J.font,Z=J[C+"Class"]}if(M)return FB(D,M,C,E,F.concat(Z));else if(b){var w,K;if(b==="boldsymbol"){var Q=S44(D,C,A);w=Q.fontName,K=[Q.fontClass]}else if(l)w=no[U].fontName,K=[U];else w=mP(z,k,f),K=[z,k,f];if(Aj(D,w,C).metrics)return FB(D,w,C,E,F.concat(K));else if(hG0.hasOwnProperty(D)&&w.slice(0,10)==="Typewriter"){var G=[];for(var L=0;L<D.length;L++)G.push(FB(D[L],w,C,E,F.concat(K)));return Kz(G)}}if(A==="mathord")return FB(D,"Math-Italic",C,E,F.concat(["mathnormal"]));else if(A==="textord"){var H=u9[C][D]&&u9[C][D].font;if(H==="ams"){var q=mP("amsrm",k,f);return FB(D,q,C,E,F.concat("amsrm",k,f))}else if(H==="main"||!H){var x=mP("textrm",k,f);return FB(D,x,C,E,F.concat(k,f))}else{var v=mP(H,k,f);return FB(D,v,C,E,F.concat(v,k,f))}}else throw Error("unexpected type: "+A+" in makeOrd")},W44=(u,B)=>{if(Xf(u.classes)!==Xf(B.classes)||u.skew!==B.skew||u.maxFontSize!==B.maxFontSize||u.italic!==0&&u.hasClass("mathnormal"))return!1;if(u.classes.length===1){var E=u.classes[0];if(E==="mbin"||E==="mord")return!1}for(var A of Object.keys(u.style))if(u.style[A]!==B.style[A])return!1;for(var C of Object.keys(B.style))if(u.style[C]!==B.style[C])return!1;return!0},mG0=(u)=>{for(var B=0;B<u.length-1;B++){var E=u[B],A=u[B+1];if(E instanceof eB&&A instanceof eB&&W44(E,A))E.text+=A.text,E.height=Math.max(E.height,A.height),E.depth=Math.max(E.depth,A.depth),E.italic=A.italic,u.splice(B+1,1),B--}return u},kt=function(B){var E=0,A=0,C=0;for(var D=0;D<B.children.length;D++){var F=B.children[D];if(F.height>E)E=F.height;if(F.depth>A)A=F.depth;if(F.maxFontSize>C)C=F.maxFontSize}B.height=E,B.depth=A,B.maxFontSize=C},u4=function(B,E,A,C){var D=new wZ(B,E,A,C);return kt(D),D},xf=(u,B,E,A)=>new wZ(u,B,E,A),PQ=function(B,E,A){var C=u4([B],[],E);return C.height=Math.max(A||E.fontMetrics().defaultRuleThickness,E.minRuleThickness),C.style.borderBottomWidth=z4(C.height),C.maxFontSize=1,C},Y44=function(B,E,A,C){var D=new dx(B,E,A,C);return kt(D),D},Kz=function(B){var E=new JZ(B);return kt(E),E},jQ=function(B,E){if(B instanceof JZ)return u4([],[B],E);return B},R44=function(B){if(B.positionType==="individualShift"){var E=B.children,A=[E[0]],C=-E[0].shift-E[0].elem.depth,D=C;for(var F=1;F<E.length;F++){var U=-E[F].shift-D-E[F].elem.depth,z=U-(E[F-1].elem.height+E[F-1].elem.depth);D=D+U,A.push({type:"kern",size:z}),A.push(E[F])}return{children:A,depth:C}}var k;if(B.positionType==="top"){var f=B.positionData;for(var l=0;l<B.children.length;l++){var b=B.children[l];f-=b.type==="kern"?b.size:b.elem.height+b.elem.depth}k=f}else if(B.positionType==="bottom")k=-B.positionData;else{var M=B.children[0];if(M.type!=="elem")throw Error('First child must have type "elem".');if(B.positionType==="shift")k=-M.elem.depth-B.positionData;else if(B.positionType==="firstBaseline")k=-M.elem.depth;else throw Error("Invalid positionType "+B.positionType+".")}return{children:B.children,depth:k}},n1=function(B,E){var{children:A,depth:C}=R44(B),D=0;for(var F=0;F<A.length;F++){var U=A[F];if(U.type==="elem"){var z=U.elem;D=Math.max(D,z.maxFontSize,z.height)}}D+=2;var k=u4(["pstrut"],[]);k.style.height=z4(D);var f=[],l=C,b=C,M=C;for(var Z=0;Z<A.length;Z++){var J=A[Z];if(J.type==="kern")M+=J.size;else{var w=J.elem,K=J.wrapperClasses||[],Q=J.wrapperStyle||{},G=u4(K,[k,w],void 0,Q);if(G.style.top=z4(-D-M-w.depth),J.marginLeft)G.style.marginLeft=J.marginLeft;if(J.marginRight)G.style.marginRight=J.marginRight;f.push(G),M+=w.height+w.depth}l=Math.min(l,M),b=Math.max(b,M)}var L=u4(["vlist"],f);L.style.height=z4(b);var H;if(l<0){var q=u4([],[]),x=u4(["vlist"],[q]);x.style.height=z4(-l);var v=u4(["vlist-s"],[new eB("")]);H=[u4(["vlist-r"],[L,v]),u4(["vlist-r"],[x])]}else H=[u4(["vlist-r"],[L])];var W=u4(["vlist-t"],H);if(H.length===2)W.classes.push("vlist-t2");return W.height=b,W.depth=-l,W},rG0=(u,B)=>{var E=u4(["mspace"],[],B),A=G9(u,B);return E.style.marginRight=z4(A),E},mP=(u,B,E)=>{var A,C;switch(u){case"amsrm":A="AMS";break;case"textrm":A="Main";break;case"textsf":A="SansSerif";break;case"texttt":A="Typewriter";break;default:A=u}if(B==="textbf"&&E==="textit")C="BoldItalic";else if(B==="textbf")C="Bold";else if(E==="textit")C="Italic";else C="Regular";return A+"-"+C},no,$G0,yG0=function(B,E){var[A,C,D]=$G0[B],F=new Zz(A),U=new uF([F],{width:z4(C),height:z4(D),style:"width:"+z4(C),viewBox:"0 0 "+1000*C+" "+1000*D,preserveAspectRatio:"xMinYMin"}),z=xf(["overlay"],[U],E);return z.height=D,z.style.height=z4(D),z.style.width=z4(C),z},Q9,MZ,kz,T44,O44,cG0,eP,uj,Bj=function(B){return B.type==="ordgroup"&&B.body.length===1?B.body[0]:B},G2=function(B){return B.type==="ordgroup"?B.body:[B]},I44,P44,j44,N44,_2=function(B,E,A,C){if(C===void 0)C=[null,null];var D=[];for(var F=0;F<B.length;F++){var U=p1(B[F],E);if(U instanceof JZ){var z=U.children;D.push(...z)}else D.push(U)}if(mG0(D),!A)return D;var k=E;if(B.length===1){var f=B[0];if(f.type==="sizing")k=E.havingSize(f.size);else if(f.type==="styling")k=E.havingStyle(j44[f.style])}var l=u4([C[0]||"leftmost"],[],E),b=u4([C[1]||"rightmost"],[],E),M=A==="root";return po(D,(Z,J)=>{var w=J.classes[0],K=Z.classes[0];if(w==="mbin"&&P44.has(K))J.classes[0]="mord";else if(K==="mbin"&&I44.has(w))Z.classes[0]="mord"},{node:l},b,M),po(D,(Z,J)=>{var w,K,Q=oo(J),G=oo(Z),L=Q&&G?Z.hasClass("mtight")?(w=O44[Q])==null?void 0:w[G]:(K=T44[Q])==null?void 0:K[G]:null;if(L)return rG0(L,k)},{node:l},b,M),D},po=function(B,E,A,C,D){if(C)B.push(C);var F=0;for(;F<B.length;F++){var U=B[F],z=gG0(U);if(z){po(z.children,E,A,null,D);continue}var k=!U.hasClass("mspace");if(k){var f=E(U,A.node);if(f)if(A.insertAfter)A.insertAfter(f);else B.unshift(f),F++}if(k)A.node=U;else if(D&&U.hasClass("newline"))A.node=u4(["leftmost"]);A.insertAfter=((l)=>(b)=>{B.splice(l+1,0,b),F++})(F)}if(C)B.pop()},gG0=function(B){if(B instanceof JZ||B instanceof dx||B instanceof wZ&&B.hasClass("enclosing"))return B;return null},so=function(B,E){var A=gG0(B);if(A){var C=A.children;if(C.length){if(E==="right")return so(C[C.length-1],"right");else if(E==="left")return so(C[0],"left")}}return B},oo=function(B,E){if(!B)return null;if(E)B=so(B,E);var A=B.classes[0];return N44[A]||null},px=function(B,E){var A=["nulldelimiter"].concat(B.baseSizingClasses());return u4(E.concat(A))},p1=function(B,E,A){if(!B)return u4();if(eP[B.type]){var C=eP[B.type](B,E);if(A&&E.size!==A.size){C=u4(E.sizingClasses(A),[C],E);var D=E.sizeMultiplier/A.sizeMultiplier;C.height*=D,C.depth*=D}return C}else throw new B4("Got group of unknown type: '"+B.type+"'")},i44,a44,gE=function(B,E,A){if(u9[E][B]&&u9[E][B].replace&&B.charCodeAt(0)!==55349&&!(hG0.hasOwnProperty(B)&&A&&(A.fontFamily&&A.fontFamily.slice(4,6)==="tt"||A.font&&A.font.slice(4,6)==="tt")))B=u9[E][B].replace;return new B2(B)},lt=function(B){if(B.length===1)return B[0];else return new E4("mrow",B)},V44,bt=(u,B)=>{if(u.mode==="text"){if(B.fontFamily==="texttt")return"monospace";else if(B.fontFamily==="textsf")if(B.fontShape==="textit"&&B.fontWeight==="textbf")return"sans-serif-bold-italic";else if(B.fontShape==="textit")return"sans-serif-italic";else if(B.fontWeight==="textbf")return"bold-sans-serif";else return"sans-serif";else if(B.fontShape==="textit"&&B.fontWeight==="textbf")return"bold-italic";else if(B.fontShape==="textit")return"italic";else if(B.fontWeight==="textbf")return"bold"}var E=B.font;if(!E||E==="mathnormal")return null;var A=u.mode,C=V44[E];if(C)return typeof C==="function"?C(u):C;var D=u.text;if(i44.has(D))return null;if(u9[A][D]){var F=u9[A][D].replace;if(F)D=F}var U=no[E].fontName;if(Ut(D,U,A))return no[E].variant;return null},t8=function(B,E,A){if(B.length===1){var C=H6(B[0],E);if(A&&C instanceof E4&&C.type==="mo")C.setAttribute("lspace","0em"),C.setAttribute("rspace","0em");return[C]}var D=[],F;for(var U=0;U<B.length;U++){var z=H6(B[U],E);if(z instanceof E4&&F instanceof E4){if(z.type==="mtext"&&F.type==="mtext"&&z.getAttribute("mathvariant")===F.getAttribute("mathvariant")){F.children.push(...z.children);continue}else if(z.type==="mn"&&F.type==="mn"){F.children.push(...z.children);continue}else if(Ro(z)&&F.type==="mn"){F.children.push(...z.children);continue}else if(z.type==="mn"&&Ro(F))z.children=[...F.children,...z.children],D.pop();else if((z.type==="msup"||z.type==="msub")&&z.children.length>=1&&(F.type==="mn"||Ro(F))){var k=z.children[0];if(k instanceof E4&&k.type==="mn")k.children=[...F.children,...k.children],D.pop()}else if(F.type==="mi"&&F.children.length===1){var f=F.children[0];if(f instanceof B2&&f.text==="̸"&&(z.type==="mo"||z.type==="mi"||z.type==="mn")){var l=z.children[0];if(l instanceof B2&&l.text.length>0)l.text=l.text.slice(0,1)+"̸"+l.text.slice(1),D.pop()}}}D.push(z),F=z}return D},vf=function(B,E,A){return lt(t8(B,E,A))},H6=function(B,E){if(!B)return new E4("mrow");if(uj[B.type])return uj[B.type](B,E);else throw new B4("Got group of unknown type: '"+B.type+"'")},h44,kG0,fG0=function(B,E){return E.size<2?B:h44[B-1][E.size-1]},nG0=function(B){return new bz({style:B.displayMode?V3.DISPLAY:V3.TEXT,maxSize:B.maxSize,minRuleThickness:B.minRuleThickness})},pG0=function(B,E){if(E.displayMode){var A=["katex-display"];if(E.leqno)A.push("leqno");if(E.fleqn)A.push("fleqn");B=u4(A,[B])}return B},m44=function(B,E,A){var C=nG0(A),D;if(A.output==="mathml")return zG0(B,E,C,A.displayMode,!0);else if(A.output==="html"){var F=to(B,C);D=u4(["katex"],[F])}else{var U=zG0(B,E,C,A.displayMode,!1),z=to(B,C);D=u4(["katex"],[U,z])}return pG0(D,A)},r44=function(B,E,A){var C=nG0(A),D=to(B,C),F=u4(["katex"],[D]);return pG0(F,A)},$44,Dj=function(B){var E=new E4("mo",[new B2($44[B.replace(/^\\/,"")])]);return E.setAttribute("stretchy","true"),E},y44,c44,Fj=function(B,E){function A(){var U=400000,z=B.label.slice(1);if(c44.has(z)&&"base"in B){var k=B.base.type==="ordgroup"?B.base.body.length:1,f,l,b;if(k>5)if(z==="widehat"||z==="widecheck")f=420,U=2364,b=0.42,l=z+"4";else f=312,U=2340,b=0.34,l="tilde4";else{var M=[1,1,2,2,3,3][k];if(z==="widehat"||z==="widecheck")U=[0,1062,2364,2364,2364][M],f=[0,239,300,360,420][M],b=[0,0.24,0.3,0.3,0.36,0.42][M],l=z+M;else U=[0,600,1033,2339,2340][M],f=[0,260,286,306,312][M],b=[0,0.26,0.286,0.3,0.306,0.34][M],l="tilde"+M}var Z=new Zz(l),J=new uF([Z],{width:"100%",height:z4(b),viewBox:"0 0 "+U+" "+f,preserveAspectRatio:"none"});return{span:xf([],[J],E),minWidth:0,height:b}}else{var w=[],K=y44[z];if(!K)throw Error('No SVG data for "'+z+'".');var[Q,G,L]=K,H=L/1000,q=Q.length,x,v;if(q===1){if(K.length!==4)throw Error('Expected 4-tuple for single-path SVG data "'+z+'".');x=["hide-tail"],v=[K[3]]}else if(q===2)x=["halfarrow-left","halfarrow-right"],v=["xMinYMin","xMaxYMin"];else if(q===3)x=["brace-left","brace-center","brace-right"],v=["xMinYMin","xMidYMin","xMaxYMin"];else throw Error(`Correct katexImagesData or update code here to support
`+q+" children.");for(var W=0;W<q;W++){var S=new Zz(Q[W]),T=new uF([S],{width:"400em",height:z4(H),viewBox:"0 0 "+U+" "+L,preserveAspectRatio:v[W]+" slice"}),R=xf([x[W]],[T],E);if(q===1)return{span:R,minWidth:G,height:H};else R.style.height=z4(H),w.push(R)}return{span:u4(["stretchy"],w,E),minWidth:G,height:H}}}var{span:C,minWidth:D,height:F}=A();if(C.height=F,C.style.height=z4(F),D>0)C.style.minWidth=z4(D);return C},g44=function(B,E,A,C,D){var F,U=B.height+B.depth+A+C;if(/fbox|color|angl/.test(E)){if(F=u4(["stretchy",E],[],D),E==="fbox"){var z=D.color&&D.getColor();if(z)F.style.borderColor=z}}else{var k=[];if(/^[bx]cancel$/.test(E))k.push(new oP({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"}));if(/^x?cancel$/.test(E))k.push(new oP({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new uF(k,{width:"100%",height:z4(U)});F=xf([],[f],D)}return F.height=U,F.style.height=z4(U),F},_44,n44,dG0=(u)=>{if(u instanceof eB)return u;if(L44(u)&&u.children.length===1)return dG0(u.children[0])},Mt=(u,B)=>{var E,A,C;if(u&&u.type==="supsub")A=p3(u.base,"accent"),E=A.base,u.base=E,C=H44(p1(u,B)),u.base=A;else A=p3(u,"accent"),E=A.base;var D=p1(E,B.havingCrampedStyle()),F=A.isShifty&&Jz(E),U=0;if(F){var z,k;U=(z=(k=dG0(D))==null?void 0:k.skew)!=null?z:0}var f=A.label==="\\c",l=f?D.height+D.depth:Math.min(D.height,B.fontMetrics().xHeight),b;if(!A.isStretchy){var M,Z;if(A.label==="\\vec")M=yG0("vec",B),Z=$G0.vec[1];else if(M=Cj({type:"textord",mode:A.mode,text:A.label},B,"textord"),M=G44(M),M.italic=0,Z=M.width,f)l+=M.depth;b=u4(["accent-body"],[M]);var J=A.label==="\\textcircled";if(J)b.classes.push("accent-full"),l=D.height;var w=U;if(!J)w-=Z/2;if(b.style.left=z4(w),A.label==="\\textcircled")b.style.top=".2em";b=n1({positionType:"firstBaseline",children:[{type:"elem",elem:D},{type:"kern",size:-l},{type:"elem",elem:b}]})}else b=Fj(A,B),b=n1({positionType:"firstBaseline",children:[{type:"elem",elem:D},{type:"elem",elem:b,wrapperClasses:["svg-align"],wrapperStyle:U>0?{width:"calc(100% - "+z4(2*U)+")",marginLeft:z4(2*U)}:void 0}]});var K=u4(["mord","accent"],[b],B);if(C)return C.children[0]=K,C.height=Math.max(K.height,C.height),C.classes[0]="mord",C;else return K},sG0=(u,B)=>{var E=u.isStretchy?Dj(u.label):new E4("mo",[gE(u.label,u.mode)]),A=new E4("mover",[H6(u.base,B),E]);return A.setAttribute("accent","true"),A},d44,$P=(u)=>{var B=new E4("mpadded",u?[u]:[]);return B.setAttribute("width","+0.6em"),B.setAttribute("lspace","0.3em"),B},kj=(u)=>{var B=u.type==="ordgroup"&&u.body.length?u.body[0]:u;if(B.type==="atom"&&(B.family==="bin"||B.family==="rel"))return"m"+B.family;else return"mord"},s44,lG0=()=>{return{type:"styling",body:[],mode:"math",style:"display",resetFont:!0}},bG0=(u)=>{return u.type==="textord"&&u.text==="@"},o44=(u,B)=>{return(u.type==="mathord"||u.type==="atom")&&u.text===B},eG0=(u,B)=>{var E=_2(u.body,B.withColor(u.color),!1);return Kz(E)},uH0=(u,B)=>{var E=t8(u.body,B.withColor(u.color)),A=new E4("mstyle",E);return A.setAttribute("mathcolor",u.color),A},eo,BH0=(u)=>{var B=u.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(B))throw new B4("Expected a control sequence",u);return B},u34=(u)=>{var B=u.gullet.popToken();if(B.text==="="){if(B=u.gullet.popToken(),B.text===" ")B=u.gullet.popToken()}return B},EH0=(u,B,E,A)=>{var C=u.gullet.macros.get(E.text);if(C==null)E.noexpand=!0,C={tokens:[E],numArgs:0,unexpandable:!u.gullet.isExpandable(E.text)};u.gullet.macros.set(B,C,A)},gx=function(B,E,A){var C=u9.math[B]&&u9.math[B].replace,D=Ut(C||B,E,A);if(!D)throw Error("Unsupported symbol "+B+" and font size "+E+".");return D},Zt=function(B,E,A,C){var D=A.havingBaseStyle(E),F=u4(C.concat(D.sizingClasses(A)),[B],A),U=D.sizeMultiplier/A.sizeMultiplier;return F.height*=U,F.depth*=U,F.maxFontSize=D.sizeMultiplier,F},AH0=function(B,E,A){var C=E.havingBaseStyle(A),D=(1-E.sizeMultiplier/C.sizeMultiplier)*E.fontMetrics().axisHeight;B.classes.push("delimcenter"),B.style.top=z4(D),B.height-=D,B.depth+=D},B34=function(B,E,A,C,D,F){var U=FB(B,"Main-Regular",D,C),z=Zt(U,E,C,F);if(A)AH0(z,C,E);return z},E34=function(B,E,A,C){return FB(B,"Size"+E+"-Regular",A,C)},CH0=function(B,E,A,C,D,F){var U=E34(B,E,D,C),z=Zt(u4(["delimsizing","size"+E],[U],C),V3.TEXT,C,F);if(A)AH0(z,C,V3.TEXT);return z},To=function(B,E,A){var C;if(E==="Size1-Regular")C="delim-size1";else C="delim-size4";var D=u4(["delimsizinginner",C],[u4([],[FB(B,E,A)])]);return{type:"elem",elem:D}},Oo=function(B,E,A){var C=eD["Size4-Regular"][B.charCodeAt(0)]?eD["Size4-Regular"][B.charCodeAt(0)][4]:eD["Size1-Regular"][B.charCodeAt(0)][4],D=new Zz("inner",M44(B,Math.round(1000*E))),F=new uF([D],{width:z4(C),height:z4(E),style:"width:"+z4(C),viewBox:"0 0 "+1000*C+" "+Math.round(1000*E),preserveAspectRatio:"xMinYMin"}),U=xf([],[F],A);return U.height=E,U.style.height=z4(E),U.style.width=z4(C),{type:"elem",elem:U}},ut=0.008,yP,A34,C34,DH0=function(B,E,A,C,D,F){var U,z,k,f,l="",b=0;U=k=f=B,z=null;var M="Size1-Regular";if(B==="\\uparrow")k=f="⏐";else if(B==="\\Uparrow")k=f="‖";else if(B==="\\downarrow")U=k="⏐";else if(B==="\\Downarrow")U=k="‖";else if(B==="\\updownarrow")U="\\uparrow",k="⏐",f="\\downarrow";else if(B==="\\Updownarrow")U="\\Uparrow",k="‖",f="\\Downarrow";else if(A34.has(B))k="",l="vert",b=333;else if(C34.has(B))k="∥",l="doublevert",b=556;else if(B==="["||B==="\\lbrack")U="⎡",k="⎢",f="⎣",M="Size4-Regular",l="lbrack",b=667;else if(B==="]"||B==="\\rbrack")U="⎤",k="⎥",f="⎦",M="Size4-Regular",l="rbrack",b=667;else if(B==="\\lfloor"||B==="⌊")k=U="⎢",f="⎣",M="Size4-Regular",l="lfloor",b=667;else if(B==="\\lceil"||B==="⌈")U="⎡",k=f="⎢",M="Size4-Regular",l="lceil",b=667;else if(B==="\\rfloor"||B==="⌋")k=U="⎥",f="⎦",M="Size4-Regular",l="rfloor",b=667;else if(B==="\\rceil"||B==="⌉")U="⎤",k=f="⎥",M="Size4-Regular",l="rceil",b=667;else if(B==="("||B==="\\lparen")U="⎛",k="⎜",f="⎝",M="Size4-Regular",l="lparen",b=875;else if(B===")"||B==="\\rparen")U="⎞",k="⎟",f="⎠",M="Size4-Regular",l="rparen",b=875;else if(B==="\\{"||B==="\\lbrace")U="⎧",z="⎨",f="⎩",k="⎪",M="Size4-Regular";else if(B==="\\}"||B==="\\rbrace")U="⎫",z="⎬",f="⎭",k="⎪",M="Size4-Regular";else if(B==="\\lgroup"||B==="⟮")U="⎧",f="⎩",k="⎪",M="Size4-Regular";else if(B==="\\rgroup"||B==="⟯")U="⎫",f="⎭",k="⎪",M="Size4-Regular";else if(B==="\\lmoustache"||B==="⎰")U="⎧",f="⎭",k="⎪",M="Size4-Regular";else if(B==="\\rmoustache"||B==="⎱")U="⎫",f="⎩",k="⎪",M="Size4-Regular";var Z=gx(U,M,D),J=Z.height+Z.depth,w=gx(k,M,D),K=w.height+w.depth,Q=gx(f,M,D),G=Q.height+Q.depth,L=0,H=1;if(z!==null){var q=gx(z,M,D);L=q.height+q.depth,H=2}var x=J+G+L,v=Math.max(0,Math.ceil((E-x)/(H*K))),W=x+v*H*K,S=C.fontMetrics().axisHeight;if(A)S*=C.sizeMultiplier;var T=W/2-S,R=[];if(l.length>0){var Y=W-J-G,a=Math.round(W*1000),I=Z44(l,Math.round(Y*1000)),O=new Zz(l,I),i=z4(b/1000),N=z4(a/1000),V=new uF([O],{width:i,height:N,viewBox:"0 0 "+b+" "+a}),h=xf([],[V],C);h.height=a/1000,h.style.width=i,h.style.height=N,R.push({type:"elem",elem:h})}else{if(R.push(To(f,M,D)),R.push(yP),z===null){var r=W-J-G+2*ut;R.push(Oo(k,r,C))}else{var m=(W-J-G-L)/2+2*ut;R.push(Oo(k,m,C)),R.push(yP),R.push(To(z,M,D)),R.push(yP),R.push(Oo(k,m,C))}R.push(yP),R.push(To(U,M,D))}var $=C.havingBaseStyle(V3.TEXT),y=n1({positionType:"bottom",positionData:T,children:R});return Zt(u4(["delimsizing","mult"],[y],$),V3.TEXT,C,F)},Io=80,Po=0.08,jo=function(B,E,A,C,D){var F=b44(B,C,A),U=new Zz(B,F),z=new uF([U],{width:"400em",height:z4(E),viewBox:"0 0 400000 "+A,preserveAspectRatio:"xMinYMin slice"});return xf(["hide-tail"],[z],D)},D34=function(B,E){var A=E.havingBaseSizing(),C=fH0("\\surd",B*A.sizeMultiplier,kH0,A),D=A.sizeMultiplier,F=Math.max(0,E.minRuleThickness-E.fontMetrics().sqrtRuleThickness),U,z,k,f,l;if(C.type==="small"){if(f=1000+1000*F+Io,B<1)D=1;else if(B<1.4)D=0.7;z=(1+F+Po)/D,k=(1+F)/D,U=jo("sqrtMain",z,f,F,E),U.style.minWidth="0.853em",l=0.833/D}else if(C.type==="large")f=(1000+Io)*_x[C.size],k=(_x[C.size]+F)/D,z=(_x[C.size]+F+Po)/D,U=jo("sqrtSize"+C.size,z,f,F,E),U.style.minWidth="1.02em",l=1/D;else z=B+F+Po,k=B+F,f=Math.floor(1000*B+F)+Io,U=jo("sqrtTall",z,f,F,E),U.style.minWidth="0.742em",l=1.056;return U.height=k,U.style.height=z4(z),{span:U,advanceWidth:l,ruleWidth:(E.fontMetrics().sqrtRuleThickness+F)*D}},FH0,F34,UH0,_x,zH0=function(B,E,A,C,D){if(B==="<"||B==="\\lt"||B==="⟨")B="\\langle";else if(B===">"||B==="\\gt"||B==="⟩")B="\\rangle";if(FH0.has(B)||UH0.has(B))return CH0(B,E,!1,A,C,D);else if(F34.has(B))return DH0(B,_x[E],!1,A,C,D);else throw new B4("Illegal delimiter: '"+B+"'")},U34,z34,kH0,k34=function(B){if(B.type==="small")return"Main-Regular";else if(B.type==="large")return"Size"+B.size+"-Regular";else if(B.type==="stack")return"Size4-Regular";else{var E=B.type;throw Error("Add support for delim type '"+E+"' here.")}},fH0=function(B,E,A,C){var D=Math.min(2,3-C.style.size);for(var F=D;F<A.length;F++){var U=A[F];if(U.type==="stack")break;var z=gx(B,k34(U),"math"),k=z.height+z.depth;if(U.type==="small"){var f=C.havingBaseStyle(U.style);k*=f.sizeMultiplier}if(k>E)return U}return A[A.length-1]},Bt=function(B,E,A,C,D,F){if(B==="<"||B==="\\lt"||B==="⟨")B="\\langle";else if(B===">"||B==="\\gt"||B==="⟩")B="\\rangle";var U;if(UH0.has(B))U=U34;else if(FH0.has(B))U=kH0;else U=z34;var z=fH0(B,E,U,C);if(z.type==="small")return B34(B,z.style,A,C,D,F);else if(z.type==="large")return CH0(B,z.size,A,C,D,F);else return DH0(B,E,A,C,D,F)},No=function(B,E,A,C,D,F){var U=C.fontMetrics().axisHeight*C.sizeMultiplier,z=901,k=5/C.fontMetrics().ptPerEm,f=Math.max(E-U,A+U),l=Math.max(f/500*z,2*f-k);return Bt(B,l,!0,C,D,F)},MG0,f34,lj=(u,B)=>{var E=jQ(p1(u.body,B),B),A=u.label.slice(1),C=B.sizeMultiplier,D,F,U=Jz(u.body);if(A==="sout")D=u4(["stretchy","sout"]),D.height=B.fontMetrics().defaultRuleThickness/C,F=-0.5*B.fontMetrics().xHeight;else if(A==="phase"){var z=G9({number:0.6,unit:"pt"},B),k=G9({number:0.35,unit:"ex"},B),f=B.havingBaseSizing();C=C/f.sizeMultiplier;var l=E.height+E.depth+z+k;E.style.paddingLeft=z4(l/2+z);var b=Math.floor(1000*l*C),M=f44(b),Z=new uF([new Zz("phase",M)],{width:"400em",height:z4(b/1000),viewBox:"0 0 400000 "+b,preserveAspectRatio:"xMinYMin slice"});D=xf(["hide-tail"],[Z],B),D.style.height=z4(l),F=E.depth+z+k}else{if(/cancel/.test(A)){if(!U)E.classes.push("cancel-pad")}else if(A==="angl")E.classes.push("anglpad");else E.classes.push("boxpad");var J,w,K=0;if(/box/.test(A))K=Math.max(B.fontMetrics().fboxrule,B.minRuleThickness),J=B.fontMetrics().fboxsep+(A==="colorbox"?0:K),w=J;else if(A==="angl")K=Math.max(B.fontMetrics().defaultRuleThickness,B.minRuleThickness),J=4*K,w=Math.max(0,0.25-E.depth);else J=U?0.2:0,w=J;if(D=g44(E,A,J,w,B),/fbox|boxed|fcolorbox/.test(A))D.style.borderStyle="solid",D.style.borderWidth=z4(K);else if(A==="angl"&&K!==0.049)D.style.borderTopWidth=z4(K),D.style.borderRightWidth=z4(K);if(F=E.depth+w,u.backgroundColor){if(D.style.backgroundColor=u.backgroundColor,u.borderColor)D.style.borderColor=u.borderColor}}var Q;if(u.backgroundColor)Q=n1({positionType:"individualShift",children:[{type:"elem",elem:D,shift:F},{type:"elem",elem:E,shift:0}]});else{var G=/cancel|phase/.test(A)?["svg-align"]:[];Q=n1({positionType:"individualShift",children:[{type:"elem",elem:E,shift:0},{type:"elem",elem:D,shift:F,wrapperClasses:G}]})}if(/cancel/.test(A))Q.height=E.height,Q.depth=E.depth;if(/cancel/.test(A)&&!U)return u4(["mord","cancel-lap"],[Q],B);else return u4(["mord"],[Q],B)},bj=(u,B)=>{var E,A=new E4(u.label.includes("colorbox")?"mpadded":"menclose",[H6(u.body,B)]);switch(u.label){case"\\cancel":A.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":A.setAttribute("notation","downdiagonalstrike");break;case"\\phase":A.setAttribute("notation","phasorangle");break;case"\\sout":A.setAttribute("notation","horizontalstrike");break;case"\\fbox":A.setAttribute("notation","box");break;case"\\angl":A.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(E=B.fontMetrics().fboxsep*B.fontMetrics().ptPerEm,A.setAttribute("width","+"+2*E+"pt"),A.setAttribute("height","+"+2*E+"pt"),A.setAttribute("lspace",E+"pt"),A.setAttribute("voffset",E+"pt"),u.label==="\\fcolorbox"){var C=Math.max(B.fontMetrics().fboxrule,B.minRuleThickness);A.setAttribute("style","border: "+z4(C)+" solid "+u.borderColor)}break;case"\\xcancel":A.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}if(u.backgroundColor)A.setAttribute("mathbackground",u.backgroundColor);return A},lH0,bH0,Mj=(u)=>{var B=u.parser.settings;if(!B.displayMode)throw new B4("{"+u.envName+"} can be used only in display mode.")},l34,EF=function(B,E){var A,C,D=B.body.length,F=B.hLinesBeforeRow,U=0,z=Array(D),k=[],f=Math.max(E.fontMetrics().arrayRuleWidth,E.minRuleThickness),l=1/E.fontMetrics().ptPerEm,b=5*l;if(B.colSeparationType&&B.colSeparationType==="small"){var M=E.havingStyle(V3.SCRIPT).sizeMultiplier;b=0.2778*(M/E.sizeMultiplier)}var Z=B.colSeparationType==="CD"?G9({number:3,unit:"ex"},E):12*l,J=3*l,w=B.arraystretch*Z,K=0.7*w,Q=0.3*w,G=0;function L(h0){for(var J0=0;J0<h0.length;++J0){if(J0>0)G+=0.25;k.push({pos:G,isDashed:h0[J0]})}}L(F[0]);for(A=0;A<B.body.length;++A){var H=B.body[A],q=K,x=Q;if(U<H.length)U=H.length;var v={cells:Array(H.length),height:0,depth:0,pos:0};for(C=0;C<H.length;++C){var W=p1(H[C],E);if(x<W.depth)x=W.depth;if(q<W.height)q=W.height;v.cells[C]=W}var S=B.rowGaps[A],T=0;if(S){if(T=G9(S,E),T>0){if(T+=Q,x<T)x=T;T=0}}if(B.addJot&&A<B.body.length-1)x+=J;v.height=q,v.depth=x,G+=q,v.pos=G,G+=x+T,z[A]=v,L(F[A+1])}var R=G/2+E.fontMetrics().axisHeight,Y=B.cols||[],a=[],I,O,i=[];if(B.tags&&B.tags.some((h0)=>h0))for(A=0;A<D;++A){var N=z[A],V=N.pos-R,h=B.tags[A],r=void 0;if(h===!0)r=u4(["eqn-num"],[],E);else if(h===!1)r=u4([],[],E);else r=u4([],_2(h,E,!0),E);r.depth=N.depth,r.height=N.height,i.push({type:"elem",elem:r,shift:V})}for(C=0,O=0;C<U||O<Y.length;++C,++O){var m,$=Y[O],y=!0;while(((p=$)==null?void 0:p.type)==="separator"){var p;if(!y)I=u4(["arraycolsep"],[]),I.style.width=z4(E.fontMetrics().doubleRuleSep),a.push(I);if($.separator==="|"||$.separator===":"){var e=$.separator==="|"?"solid":"dashed",_=u4(["vertical-separator"],[],E);_.style.height=z4(G),_.style.borderRightWidth=z4(f),_.style.borderRightStyle=e,_.style.margin="0 "+z4(-f/2);var b0=G-R;if(b0)_.style.verticalAlign=z4(-b0);a.push(_)}else throw new B4("Invalid separator type: "+$.separator);O++,$=Y[O],y=!1}if(C>=U)continue;var B0=void 0;if(C>0||B.hskipBeforeAndAfter){var k0,f0;if(B0=(k0=(f0=$)==null?void 0:f0.pregap)!=null?k0:b,B0!==0)I=u4(["arraycolsep"],[]),I.style.width=z4(B0),a.push(I)}var D0=[];for(A=0;A<D;++A){var P0=z[A],q0=P0.cells[C];if(!q0)continue;var m0=P0.pos-R;q0.depth=P0.depth,q0.height=P0.height,D0.push({type:"elem",elem:q0,shift:m0})}var a0=n1({positionType:"individualShift",children:D0}),_0=u4(["col-align-"+(((m=$)==null?void 0:m.align)||"c")],[a0]);if(a.push(_0),C<U-1||B.hskipBeforeAndAfter){var w0,v0;if(B0=(w0=(v0=$)==null?void 0:v0.postgap)!=null?w0:b,B0!==0)I=u4(["arraycolsep"],[]),I.style.width=z4(B0),a.push(I)}}var T0=u4(["mtable"],a);if(k.length>0){var Z0=PQ("hline",E,f),F0=PQ("hdashline",E,f),u0=[{type:"elem",elem:T0,shift:0}];while(k.length>0){var M0=k.pop(),X0=M0.pos-R;if(M0.isDashed)u0.push({type:"elem",elem:F0,shift:X0});else u0.push({type:"elem",elem:Z0,shift:X0})}T0=n1({positionType:"individualShift",children:u0})}if(i.length===0)return u4(["mord"],[T0],E);else{var S0=n1({positionType:"individualShift",children:i}),Y0=u4(["tag"],[S0],E);return Kz([T0,Y0])}},b34,AF=function(B,E){var A=[],C=new E4("mtd",[],["mtr-glue"]),D=new E4("mtd",[],["mml-eqn-num"]);for(var F=0;F<B.body.length;F++){var U=B.body[F],z=[];for(var k=0;k<U.length;k++)z.push(new E4("mtd",[H6(U[k],E)]));if(B.tags&&B.tags[F])if(z.unshift(C),z.push(C),B.leqno)z.unshift(D);else z.push(D);A.push(new E4("mtr",z))}var f=new E4("mtable",A),l=B.arraystretch===0.5?0.1:0.16+B.arraystretch-1+(B.addJot?0.09:0);f.setAttribute("rowspacing",z4(l));var b="",M="";if(B.cols&&B.cols.length>0){var Z=B.cols,J="",w=!1,K=0,Q=Z.length;if(Z[0].type==="separator")b+="top ",K=1;if(Z[Z.length-1].type==="separator")b+="bottom ",Q-=1;for(var G=K;G<Q;G++){var L=Z[G];if(L.type==="align"){if(M+=b34[L.align],w)J+="none ";w=!0}else if(L.type==="separator"){if(w)J+=L.separator==="|"?"solid ":"dashed ",w=!1}}if(f.setAttribute("columnalign",M.trim()),/[sd]/.test(J))f.setAttribute("columnlines",J.trim())}if(B.colSeparationType==="align"){var H=B.cols||[],q="";for(var x=1;x<H.length;x++)q+=x%2?"0em ":"1em ";f.setAttribute("columnspacing",q.trim())}else if(B.colSeparationType==="alignat"||B.colSeparationType==="gather")f.setAttribute("columnspacing","0em");else if(B.colSeparationType==="small")f.setAttribute("columnspacing","0.2778em");else if(B.colSeparationType==="CD")f.setAttribute("columnspacing","0.5em");else f.setAttribute("columnspacing","1em");var v="",W=B.hLinesBeforeRow;b+=W[0].length>0?"left ":"",b+=W[W.length-1].length>0?"right ":"";for(var S=1;S<W.length-1;S++)v+=W[S].length===0?"none ":W[S][0]?"dashed ":"solid ";if(/[sd]/.test(v))f.setAttribute("rowlines",v.trim());if(b!=="")f=new E4("menclose",[f]),f.setAttribute("notation",b.trim());if(B.arraystretch&&B.arraystretch<1)f=new E4("mstyle",[f]),f.setAttribute("scriptlevel","1");return f},MH0=function(B,E){if(!B.envName.includes("ed"))Mj(B);var A=[],C=B.envName.includes("at")?"alignat":"align",D=B.envName==="split",F=Sf(B.parser,{cols:A,addJot:!0,autoTag:D?void 0:Jt(B.envName),emptySingleRow:!0,colSeparationType:C,maxNumCols:D?2:void 0,leqno:B.parser.settings.leqno},"display"),U=0,z=0,k={type:"ordgroup",mode:B.mode,body:[]};if(E[0]&&E[0].type==="ordgroup"){var f="";for(var l=0;l<E[0].body.length;l++){var b=p3(E[0].body[l],"textord");f+=b.text}U=Number(f),z=U*2}var M=!z;F.body.forEach(function(K){for(var Q=1;Q<K.length;Q+=2){var G=p3(K[Q],"styling"),L=p3(G.body[0],"ordgroup");L.body.unshift(k)}if(!M){var H=K.length/2;if(U<H)throw new B4("Too many math in a row: "+("expected "+U+", but got "+H),K[0])}else if(z<K.length)z=K.length});for(var Z=0;Z<z;++Z){var J="r",w=0;if(Z%2===1)J="l";else if(Z>0&&M)w=1;A[Z]={type:"align",align:J,pregap:w,postgap:0}}return F.colSeparationType=M?"align":"alignat",F},KG0,ZH0=(u,B)=>{var E=u.font,A=B.withFont(E);return p1(u.body,A)},JH0=(u,B)=>{var E=u.font,A=B.withFont(E);return H6(u.body,A)},QG0,M34=(u,B)=>{var E=B.style,A=E.fracNum(),C=E.fracDen(),D;D=B.havingStyle(A);var F=p1(u.numer,D,B);if(u.continued){var U=8.5/B.fontMetrics().ptPerEm,z=3.5/B.fontMetrics().ptPerEm;F.height=F.height<U?U:F.height,F.depth=F.depth<z?z:F.depth}D=B.havingStyle(C);var k=p1(u.denom,D,B),f,l,b;if(u.hasBarLine){if(u.barSize)l=G9(u.barSize,B),f=PQ("frac-line",B,l);else f=PQ("frac-line",B);l=f.height,b=f.height}else f=null,l=0,b=B.fontMetrics().defaultRuleThickness;var M,Z,J;if(E.size===V3.DISPLAY.size){if(M=B.fontMetrics().num1,l>0)Z=3*b;else Z=7*b;J=B.fontMetrics().denom1}else{if(l>0)M=B.fontMetrics().num2,Z=b;else M=B.fontMetrics().num3,Z=3*b;J=B.fontMetrics().denom2}var w;if(!f){var K=M-F.depth-(k.height-J);if(K<Z)M+=0.5*(Z-K),J+=0.5*(Z-K);w=n1({positionType:"individualShift",children:[{type:"elem",elem:k,shift:J},{type:"elem",elem:F,shift:-M}]})}else{var Q=B.fontMetrics().axisHeight;if(M-F.depth-(Q+0.5*l)<Z)M+=Z-(M-F.depth-(Q+0.5*l));if(Q-0.5*l-(k.height-J)<Z)J+=Z-(Q-0.5*l-(k.height-J));var G=-(Q-0.5*l);w=n1({positionType:"individualShift",children:[{type:"elem",elem:k,shift:J},{type:"elem",elem:f,shift:G},{type:"elem",elem:F,shift:-M}]})}D=B.havingStyle(E),w.height*=D.sizeMultiplier/B.sizeMultiplier,w.depth*=D.sizeMultiplier/B.sizeMultiplier;var L;if(E.size===V3.DISPLAY.size)L=B.fontMetrics().delim1;else if(E.size===V3.SCRIPTSCRIPT.size)L=B.havingStyle(V3.SCRIPT).fontMetrics().delim2;else L=B.fontMetrics().delim2;var H,q;if(u.leftDelim==null)H=px(B,["mopen"]);else H=Bt(u.leftDelim,L,!0,B.havingStyle(E),u.mode,["mopen"]);if(u.continued)q=u4([]);else if(u.rightDelim==null)q=px(B,["mclose"]);else q=Bt(u.rightDelim,L,!0,B.havingStyle(E),u.mode,["mclose"]);return u4(["mord"].concat(D.sizingClasses(B)),[H,u4(["mfrac"],[w]),q],B)},Z34=(u,B)=>{var E=new E4("mfrac",[H6(u.numer,B),H6(u.denom,B)]);if(!u.hasBarLine)E.setAttribute("linethickness","0px");else if(u.barSize){var A=G9(u.barSize,B);E.setAttribute("linethickness",z4(A))}if(u.leftDelim!=null||u.rightDelim!=null){var C=[];if(u.leftDelim!=null){var D=new E4("mo",[new B2(u.leftDelim.replace("\\",""))]);D.setAttribute("fence","true"),C.push(D)}if(C.push(E),u.rightDelim!=null){var F=new E4("mo",[new B2(u.rightDelim.replace("\\",""))]);F.setAttribute("fence","true"),C.push(F)}return lt(C)}return E},wH0=(u,B)=>{if(!B)return u;var E={type:"styling",mode:u.mode,style:B,body:[u]};return E},GG0,HG0=function(B){var E=null;if(B.length>0)E=B,E=E==="."?null:E;return E},KH0=(u,B)=>{var E=B.style,A,C;if(u.type==="supsub")A=u.sup?p1(u.sup,B.havingStyle(E.sup()),B):p1(u.sub,B.havingStyle(E.sub()),B),C=p3(u.base,"horizBrace");else C=p3(u,"horizBrace");var D=p1(C.base,B.havingBaseStyle(V3.DISPLAY)),F=Fj(C,B),U;if(C.isOver)U=n1({positionType:"firstBaseline",children:[{type:"elem",elem:D},{type:"kern",size:0.1},{type:"elem",elem:F,wrapperClasses:["svg-align"]}]});else U=n1({positionType:"bottom",positionData:D.depth+0.1+F.height,children:[{type:"elem",elem:F,wrapperClasses:["svg-align"]},{type:"kern",size:0.1},{type:"elem",elem:D}]});if(A){var z=u4(["minner",C.isOver?"mover":"munder"],[U],B);if(C.isOver)U=n1({positionType:"firstBaseline",children:[{type:"elem",elem:z},{type:"kern",size:0.2},{type:"elem",elem:A}]});else U=n1({positionType:"bottom",positionData:z.depth+0.2+A.height+A.depth,children:[{type:"elem",elem:A},{type:"kern",size:0.2},{type:"elem",elem:z}]})}return u4(["minner",C.isOver?"mover":"munder"],[U],B)},J34=(u,B)=>{var E=Dj(u.label);return new E4(u.isOver?"mover":"munder",[H6(u.base,B),E])},io=function(B){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(B))return{number:+B,unit:"bp"};else{var E=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(B);if(!E)throw new B4("Invalid size: '"+B+"' in \\includegraphics");var A={number:+(E[1]+E[2]),unit:E[3]};if(!PG0(A))throw new B4("Invalid unit: '"+A.unit+"' in \\includegraphics.");return A}},LG0=(u,B)=>{switch(B.style.size){case V3.DISPLAY.size:return u.display;case V3.TEXT.size:return u.text;case V3.SCRIPT.size:return u.script;case V3.SCRIPTSCRIPT.size:return u.scriptscript;default:return u.text}},QH0=(u,B,E,A,C,D,F)=>{u=u4([],[u]);var U=E&&Jz(E),z,k;if(B){var f=p1(B,A.havingStyle(C.sup()),A);k={elem:f,kern:Math.max(A.fontMetrics().bigOpSpacing1,A.fontMetrics().bigOpSpacing3-f.depth)}}if(E){var l=p1(E,A.havingStyle(C.sub()),A);z={elem:l,kern:Math.max(A.fontMetrics().bigOpSpacing2,A.fontMetrics().bigOpSpacing4-l.height)}}var b;if(k&&z){var M=A.fontMetrics().bigOpSpacing5+z.elem.height+z.elem.depth+z.kern+u.depth+F;b=n1({positionType:"bottom",positionData:M,children:[{type:"kern",size:A.fontMetrics().bigOpSpacing5},{type:"elem",elem:z.elem,marginLeft:z4(-D)},{type:"kern",size:z.kern},{type:"elem",elem:u},{type:"kern",size:k.kern},{type:"elem",elem:k.elem,marginLeft:z4(D)},{type:"kern",size:A.fontMetrics().bigOpSpacing5}]})}else if(z){var Z=u.height-F;b=n1({positionType:"top",positionData:Z,children:[{type:"kern",size:A.fontMetrics().bigOpSpacing5},{type:"elem",elem:z.elem,marginLeft:z4(-D)},{type:"kern",size:z.kern},{type:"elem",elem:u}]})}else if(k){var J=u.depth+F;b=n1({positionType:"bottom",positionData:J,children:[{type:"elem",elem:u},{type:"kern",size:k.kern},{type:"elem",elem:k.elem,marginLeft:z4(D)},{type:"kern",size:A.fontMetrics().bigOpSpacing5}]})}else return u;var w=[b];if(z&&D!==0&&!U){var K=u4(["mspace"],[],A);K.style.marginRight=z4(D),w.unshift(K)}return u4(["mop","op-limits"],w,A)},GH0,iQ=(u,B)=>{var E,A,C=!1,D;if(u.type==="supsub")E=u.sup,A=u.sub,D=p3(u.base,"op"),C=!0;else D=p3(u,"op");var F=B.style,U=!1;if(F.size===V3.DISPLAY.size&&D.symbol&&!GH0.has(D.name))U=!0;var z,k;if(D.symbol){var f=U?"Size2-Regular":"Size1-Regular",l="";if(D.name==="\\oiint"||D.name==="\\oiiint")l=D.name.slice(1),D.name=l==="oiint"?"\\iint":"\\iiint";if(z=FB(D.name,f,"math",B,["mop","op-symbol",U?"large-op":"small-op"]),k=z.italic,l.length>0){var b=yG0(l+"Size"+(U?"2":"1"),B);z=n1({positionType:"individualShift",children:[{type:"elem",elem:z,shift:0},{type:"elem",elem:b,shift:U?0.08:0}]}),D.name="\\"+l,z.classes.unshift("mop"),z.italic=k}}else if(D.body){var M=_2(D.body,B,!0);if(M.length===1&&M[0]instanceof eB)z=M[0],z.classes[0]="mop";else z=u4(["mop"],M,B)}else{var Z=[];for(var J=1;J<D.name.length;J++)Z.push(zt(D.name[J],D.mode,B));z=u4(["mop"],Z,B)}var w=0,K=0;if((z instanceof eB||D.name==="\\oiint"||D.name==="\\oiiint")&&!D.suppressBaseShift){var Q;w=(z.height-z.depth)/2-B.fontMetrics().axisHeight,K=(Q=z.italic)!=null?Q:0}if(C)return QH0(z,E,A,B,F,K,w);else{if(w)z.style.position="relative",z.style.top=z4(w);return z}},ox=(u,B)=>{var E;if(u.symbol){if(E=new E4("mo",[gE(u.name,u.mode)]),GH0.has(u.name))E.setAttribute("largeop","false")}else if(u.body)E=new E4("mo",t8(u.body,B));else{E=new E4("mi",[new B2(u.name.slice(1))]);var A=new E4("mo",[gE("","text")]);if(u.parentIsSupSub)E=new E4("mrow",[E,A]);else E=_G0([E,A])}return E},w34,K34,HH0=(u,B)=>{var E,A,C=!1,D;if(u.type==="supsub")E=u.sup,A=u.sub,D=p3(u.base,"operatorname"),C=!0;else D=p3(u,"operatorname");var F;if(D.body.length>0){var U=D.body.map((l)=>{var b="text"in l?l.text:void 0;if(typeof b==="string")return{type:"textord",mode:l.mode,text:b};else return l}),z=_2(U,B.withFont("mathrm"),!0);for(var k=0;k<z.length;k++){var f=z[k];if(f instanceof eB)f.text=f.text.replace(/\u2212/,"-").replace(/\u2217/,"*")}F=u4(["mop"],z,B)}else F=u4(["mop"],[],B);if(C)return QH0(F,E,A,B,B.style,0,0);else return F},Q34=(u,B)=>{var E=t8(u.body,B.withFont("mathrm")),A=!0;for(var C=0;C<E.length;C++){var D=E[C];if(D instanceof ft);else if(D instanceof E4)switch(D.type){case"mi":case"mn":case"mspace":case"mtext":break;case"mo":{var F=D.children[0];if(D.children.length===1&&F instanceof B2)F.text=F.text.replace(/\u2212/,"-").replace(/\u2217/,"*");else A=!1;break}default:A=!1}else A=!1}if(A){var U=E.map((f)=>f.toText()).join("");E=[new B2(U)]}var z=new E4("mi",E);z.setAttribute("mathvariant","normal");var k=new E4("mo",[gE("","text")]);if(u.parentIsSupSub)return new E4("mrow",[z,k]);else return _G0([z,k])},qG0,G34=(u,B)=>{var E=B.havingSize(u.size);return LH0(u.body,E,B)},Et,L34=function(B,E){var A=B.base;if(!A)return null;else if(A.type==="op"){var C=A.limits&&(E.style.size===V3.DISPLAY.size||A.alwaysHandleSupSub);return C?iQ:null}else if(A.type==="operatorname"){var D=A.alwaysHandleSupSub&&(E.style.size===V3.DISPLAY.size||A.limits);return D?HH0:null}else if(A.type==="accent")return Jz(A.base)?Mt:null;else if(A.type==="horizBrace"){var F=!B.sub;return F===A.isOver?KH0:null}else return null},qH0,ao,Vo,XG0=()=>{var u=new E4("mtd",[]);return u.setAttribute("width","50%"),u},xG0,vG0,q34,SG0=(u,B)=>{var E=u.font;if(!E)return B;else if(xG0[E])return B.withTextFontFamily(xG0[E]);else if(vG0[E])return B.withTextFontWeight(vG0[E]);else if(E==="\\emph")return B.fontShape==="textit"?B.withTextFontShape("textup"):B.withTextFontShape("textit");return B.withTextFontShape(q34[E])},WG0=(u)=>u.body.replace(/ /g,u.star?"␣":" "),qf,XH0=`[ \r
]`,X34="\\\\[a-zA-Z@]+",x34="\\\\[^\uD800-\uDFFF]",v34,S34=`\\\\(
|[ \r ]+
?)[ \r ]*`,At="[̀-ͯ]",W34,Y34,R34,YG0,Kt=(u,B,E,A)=>{var C=u.consumeArg().tokens;if(C.length!==1)throw new B4("\\newcommand's first argument must be a macro name");var D=C[0].text,F=u.isDefined(D);if(F&&!B)throw new B4("\\newcommand{"+D+"} attempting to redefine "+(D+"; use \\renewcommand"));if(!F&&!E)throw new B4("\\renewcommand{"+D+"} when command "+D+" does not yet exist; use \\newcommand");var U=0;if(C=u.consumeArg().tokens,C.length===1&&C[0].text==="["){var z="",k=u.expandNextToken();while(k.text!=="]"&&k.text!=="EOF")z+=k.text,k=u.expandNextToken();if(!z.match(/^\s*[0-9]+\s*$/))throw new B4("Invalid number of arguments: "+z);U=parseInt(z),C=u.consumeArg().tokens}if(!(F&&A))u.macros.set(D,{tokens:C,numArgs:U});return""},RG0,T34,Qt,vH0,SH0=(u)=>(B)=>{var E=B.consumeArg().tokens,A=B.consumeArg().tokens,C=B.consumeArg().tokens,D=B.consumeArg().tokens,F=B.macros.get("|"),U=B.macros.get("\\|");B.macros.beginGroup();var z=(l)=>(b)=>{if(u){if(b.macros.set("|",F),C.length)b.macros.set("\\|",U)}var M=l;if(!l&&C.length){var Z=b.future();if(Z.text==="|")b.popToken(),M=!0}return{tokens:M?C:A,numArgs:0}};if(B.macros.set("|",z(!1)),C.length)B.macros.set("\\|",z(!0));var k=B.consumeArg().tokens,f=B.expandTokens([...D,...k,...E]);return B.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},WH0,TG0,cP,ho,OG0,Gt=function(B,E){if(!(typeof B==="string"||B instanceof String))throw TypeError("KaTeX can only parse string typed expression");var A=new Zj(B,E);delete A.gullet.macros.current["\\df@tag"];var C=A.parse();if(delete A.gullet.macros.current["\\current@color"],delete A.gullet.macros.current["\\color"],A.gullet.macros.get("\\df@tag")){if(!E.displayMode)throw new B4("\\tag works only in display equations");C=[{type:"tag",mode:"text",body:C,tag:A.subparse([new s8("\\df@tag")])}]}return C},Ht=function(B,E,A){E.textContent="";var C=Jj(B,A).toNode();E.appendChild(C)},RH0=function(B,E){var A=Jj(B,E).toMarkup();return A},TH0=function(B,E){var A=new Ej(E);return Gt(B,A)},OH0=function(B,E,A){if(A.throwOnError||!(B instanceof B4))throw B;var C=u4(["katex-error"],[new eB(E)]);return C.setAttribute("title",B.toString()),C.setAttribute("style","color:"+A.errorColor),C},Jj=function(B,E){var A=new Ej(E);try{var C=Gt(B,A);return m44(C,B,A)}catch(D){return OH0(D,B,A)}},IH0=function(B,E){var A=new Ej(E);try{var C=Gt(B,A);return r44(C,B,A)}catch(D){return OH0(D,B,A)}},PH0="0.16.47",jH0,O34;var iH0=g(()=>{B4=class B4 extends Error{constructor(u,B){var E="KaTeX parse error: "+u,A,C,D=B&&B.loc;if(D&&D.start<=D.end){var F=D.lexer.input;if(A=D.start,C=D.end,A===F.length)E+=" at end of input: ";else E+=" at position "+(A+1)+": ";var U=F.slice(A,C).replace(/[^]/g,"$&̲"),z;if(A>15)z="…"+F.slice(A-15,A);else z=F.slice(0,A);var k;if(C+15<F.length)k=F.slice(C,C+15)+"…";else k=F.slice(C);E+=z+U+k}super(E);if(this.name="ParseError",this.position=void 0,this.length=void 0,this.rawMessage=void 0,Object.setPrototypeOf(this,B4.prototype),this.position=A,A!=null&&C!=null)this.length=C-A;this.rawMessage=u}};yu4=/([A-Z])/g,gu4={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},_u4=/[&><"']/g,nu4=new Set(["mathord","textord","atom"]),dP={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:(u)=>"#"+u},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:(u,B)=>{return B.push(u),B}},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:(u)=>Math.max(0,u),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:(u)=>Math.max(0,u),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:(u)=>Math.max(0,u),cli:"-e, --max-expand <n>",cliProcessor:(u)=>u==="Infinity"?1/0:parseInt(u)},globalGroup:{type:"boolean",cli:!1}};tD=[new fz(Dt,0,!1),new fz(sP,0,!0),new fz(OQ,1,!1),new fz(Mz,1,!0),new fz(nx,2,!1),new fz(cE,2,!0),new fz(IQ,3,!1),new fz(UB,3,!0)],tu4=[nx,cE,nx,cE,IQ,UB,IQ,UB],eu4=[cE,cE,cE,cE,UB,UB,UB,UB],u44=[OQ,Mz,nx,cE,IQ,UB,IQ,UB],B44=[Mz,Mz,cE,cE,UB,UB,UB,UB],E44=[sP,sP,Mz,Mz,cE,cE,UB,UB],A44=[Dt,sP,OQ,Mz,OQ,Mz,OQ,Mz],V3={DISPLAY:tD[Dt],TEXT:tD[OQ],SCRIPT:tD[nx],SCRIPTSCRIPT:tD[IQ]},mo=[{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]]}];_P=[];mo.forEach((u)=>u.blocks.forEach((B)=>_P.push(...B)));oQ0={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:g2("M40 281 V428 H0 V94 H40 V241 H400000 v40z"),leftbracketunder:g2("M0 0 h120 V290 H399995 v120 H0z"),leftbracketover:g2("M0 440 h120 V150 H399995 v-120 H0z"),leftmapsto:g2("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:g2("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:g2("M399960 241 V94 h40 V428 h-40 V281 H0 v-40z"),rightbracketunder:g2("M399995 0 h-120 V290 H0 v120 H400000z"),rightbracketover:g2("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`};ro={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},w44={ex:!0,em:!0,mu:!0},K44=/[\s"'>/=\x00-\x1f]/;Q44={"î":"ı̂","ï":"ı̈","í":"ı́","ì":"ı̀"};eD={"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]}},hP={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]},tQ0={"Å":"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"};Yo={};u9={math:{},text:{}};s(A0,G0,o0,"≡","\\equiv",!0);s(A0,G0,o0,"≺","\\prec",!0);s(A0,G0,o0,"≻","\\succ",!0);s(A0,G0,o0,"","\\sim",!0);s(A0,G0,o0,"⊥","\\perp");s(A0,G0,o0,"⪯","\\preceq",!0);s(A0,G0,o0,"⪰","\\succeq",!0);s(A0,G0,o0,"≃","\\simeq",!0);s(A0,G0,o0,"","\\mid",!0);s(A0,G0,o0,"≪","\\ll",!0);s(A0,G0,o0,"≫","\\gg",!0);s(A0,G0,o0,"≍","\\asymp",!0);s(A0,G0,o0,"∥","\\parallel");s(A0,G0,o0,"⋈","\\bowtie",!0);s(A0,G0,o0,"⌣","\\smile",!0);s(A0,G0,o0,"⊑","\\sqsubseteq",!0);s(A0,G0,o0,"⊒","\\sqsupseteq",!0);s(A0,G0,o0,"≐","\\doteq",!0);s(A0,G0,o0,"⌢","\\frown",!0);s(A0,G0,o0,"∋","\\ni",!0);s(A0,G0,o0,"∝","\\propto",!0);s(A0,G0,o0,"⊢","\\vdash",!0);s(A0,G0,o0,"⊣","\\dashv",!0);s(A0,G0,o0,"∋","\\owns");s(A0,G0,sx,".","\\ldotp");s(A0,G0,sx,"⋅","\\cdotp");s(A0,G0,sx,"⋅","·");s(pu,G0,Au,"⋅","·");s(A0,G0,Au,"#","\\#");s(pu,G0,Au,"#","\\#");s(A0,G0,Au,"&","\\&");s(pu,G0,Au,"&","\\&");s(A0,G0,Au,"ℵ","\\aleph",!0);s(A0,G0,Au,"∀","\\forall",!0);s(A0,G0,Au,"ℏ","\\hbar",!0);s(A0,G0,Au,"∃","\\exists",!0);s(A0,G0,Au,"∇","\\nabla",!0);s(A0,G0,Au,"♭","\\flat",!0);s(A0,G0,Au,"","\\ell",!0);s(A0,G0,Au,"♮","\\natural",!0);s(A0,G0,Au,"♣","\\clubsuit",!0);s(A0,G0,Au,"℘","\\wp",!0);s(A0,G0,Au,"♯","\\sharp",!0);s(A0,G0,Au,"♢","\\diamondsuit",!0);s(A0,G0,Au,"","\\Re",!0);s(A0,G0,Au,"♡","\\heartsuit",!0);s(A0,G0,Au,"","\\Im",!0);s(A0,G0,Au,"♠","\\spadesuit",!0);s(A0,G0,Au,"§","\\S",!0);s(pu,G0,Au,"§","\\S");s(A0,G0,Au,"¶","\\P",!0);s(pu,G0,Au,"¶","\\P");s(A0,G0,Au,"†","\\dag");s(pu,G0,Au,"†","\\dag");s(pu,G0,Au,"†","\\textdagger");s(A0,G0,Au,"‡","\\ddag");s(pu,G0,Au,"‡","\\ddag");s(pu,G0,Au,"‡","\\textdaggerdbl");s(A0,G0,zB,"⎱","\\rmoustache",!0);s(A0,G0,o8,"⎰","\\lmoustache",!0);s(A0,G0,zB,"⟯","\\rgroup",!0);s(A0,G0,o8,"⟮","\\lgroup",!0);s(A0,G0,v4,"∓","\\mp",!0);s(A0,G0,v4,"⊖","\\ominus",!0);s(A0,G0,v4,"⊎","\\uplus",!0);s(A0,G0,v4,"⊓","\\sqcap",!0);s(A0,G0,v4,"","\\ast");s(A0,G0,v4,"⊔","\\sqcup",!0);s(A0,G0,v4,"◯","\\bigcirc",!0);s(A0,G0,v4,"∙","\\bullet",!0);s(A0,G0,v4,"‡","\\ddagger");s(A0,G0,v4,"≀","\\wr",!0);s(A0,G0,v4,"⨿","\\amalg");s(A0,G0,v4,"&","\\And");s(A0,G0,o0,"⟵","\\longleftarrow",!0);s(A0,G0,o0,"⇐","\\Leftarrow",!0);s(A0,G0,o0,"⟸","\\Longleftarrow",!0);s(A0,G0,o0,"⟶","\\longrightarrow",!0);s(A0,G0,o0,"⇒","\\Rightarrow",!0);s(A0,G0,o0,"⟹","\\Longrightarrow",!0);s(A0,G0,o0,"↔","\\leftrightarrow",!0);s(A0,G0,o0,"⟷","\\longleftrightarrow",!0);s(A0,G0,o0,"⇔","\\Leftrightarrow",!0);s(A0,G0,o0,"⟺","\\Longleftrightarrow",!0);s(A0,G0,o0,"↦","\\mapsto",!0);s(A0,G0,o0,"⟼","\\longmapsto",!0);s(A0,G0,o0,"↗","\\nearrow",!0);s(A0,G0,o0,"↩","\\hookleftarrow",!0);s(A0,G0,o0,"↪","\\hookrightarrow",!0);s(A0,G0,o0,"↘","\\searrow",!0);s(A0,G0,o0,"↼","\\leftharpoonup",!0);s(A0,G0,o0,"⇀","\\rightharpoonup",!0);s(A0,G0,o0,"↙","\\swarrow",!0);s(A0,G0,o0,"↽","\\leftharpoondown",!0);s(A0,G0,o0,"⇁","\\rightharpoondown",!0);s(A0,G0,o0,"↖","\\nwarrow",!0);s(A0,G0,o0,"⇌","\\rightleftharpoons",!0);s(A0,d0,o0,"≮","\\nless",!0);s(A0,d0,o0,"","\\@nleqslant");s(A0,d0,o0,"","\\@nleqq");s(A0,d0,o0,"⪇","\\lneq",!0);s(A0,d0,o0,"≨","\\lneqq",!0);s(A0,d0,o0,"","\\@lvertneqq");s(A0,d0,o0,"⋦","\\lnsim",!0);s(A0,d0,o0,"⪉","\\lnapprox",!0);s(A0,d0,o0,"⊀","\\nprec",!0);s(A0,d0,o0,"⋠","\\npreceq",!0);s(A0,d0,o0,"⋨","\\precnsim",!0);s(A0,d0,o0,"⪹","\\precnapprox",!0);s(A0,d0,o0,"≁","\\nsim",!0);s(A0,d0,o0,"","\\@nshortmid");s(A0,d0,o0,"∤","\\nmid",!0);s(A0,d0,o0,"⊬","\\nvdash",!0);s(A0,d0,o0,"⊭","\\nvDash",!0);s(A0,d0,o0,"⋪","\\ntriangleleft");s(A0,d0,o0,"⋬","\\ntrianglelefteq",!0);s(A0,d0,o0,"⊊","\\subsetneq",!0);s(A0,d0,o0,"","\\@varsubsetneq");s(A0,d0,o0,"⫋","\\subsetneqq",!0);s(A0,d0,o0,"","\\@varsubsetneqq");s(A0,d0,o0,"≯","\\ngtr",!0);s(A0,d0,o0,"","\\@ngeqslant");s(A0,d0,o0,"","\\@ngeqq");s(A0,d0,o0,"⪈","\\gneq",!0);s(A0,d0,o0,"≩","\\gneqq",!0);s(A0,d0,o0,"","\\@gvertneqq");s(A0,d0,o0,"⋧","\\gnsim",!0);s(A0,d0,o0,"⪊","\\gnapprox",!0);s(A0,d0,o0,"⊁","\\nsucc",!0);s(A0,d0,o0,"⋡","\\nsucceq",!0);s(A0,d0,o0,"⋩","\\succnsim",!0);s(A0,d0,o0,"⪺","\\succnapprox",!0);s(A0,d0,o0,"≆","\\ncong",!0);s(A0,d0,o0,"","\\@nshortparallel");s(A0,d0,o0,"∦","\\nparallel",!0);s(A0,d0,o0,"⊯","\\nVDash",!0);s(A0,d0,o0,"⋫","\\ntriangleright");s(A0,d0,o0,"⋭","\\ntrianglerighteq",!0);s(A0,d0,o0,"","\\@nsupseteqq");s(A0,d0,o0,"⊋","\\supsetneq",!0);s(A0,d0,o0,"","\\@varsupsetneq");s(A0,d0,o0,"⫌","\\supsetneqq",!0);s(A0,d0,o0,"","\\@varsupsetneqq");s(A0,d0,o0,"⊮","\\nVdash",!0);s(A0,d0,o0,"⪵","\\precneqq",!0);s(A0,d0,o0,"⪶","\\succneqq",!0);s(A0,d0,o0,"","\\@nsubseteqq");s(A0,d0,v4,"⊴","\\unlhd");s(A0,d0,v4,"⊵","\\unrhd");s(A0,d0,o0,"↚","\\nleftarrow",!0);s(A0,d0,o0,"↛","\\nrightarrow",!0);s(A0,d0,o0,"⇍","\\nLeftarrow",!0);s(A0,d0,o0,"⇏","\\nRightarrow",!0);s(A0,d0,o0,"↮","\\nleftrightarrow",!0);s(A0,d0,o0,"⇎","\\nLeftrightarrow",!0);s(A0,d0,o0,"△","\\vartriangle");s(A0,d0,Au,"ℏ","\\hslash");s(A0,d0,Au,"▽","\\triangledown");s(A0,d0,Au,"◊","\\lozenge");s(A0,d0,Au,"Ⓢ","\\circledS");s(A0,d0,Au,"®","\\circledR");s(pu,d0,Au,"®","\\circledR");s(A0,d0,Au,"∡","\\measuredangle",!0);s(A0,d0,Au,"∄","\\nexists");s(A0,d0,Au,"℧","\\mho");s(A0,d0,Au,"Ⅎ","\\Finv",!0);s(A0,d0,Au,"⅁","\\Game",!0);s(A0,d0,Au,"","\\backprime");s(A0,d0,Au,"▲","\\blacktriangle");s(A0,d0,Au,"▼","\\blacktriangledown");s(A0,d0,Au,"■","\\blacksquare");s(A0,d0,Au,"⧫","\\blacklozenge");s(A0,d0,Au,"★","\\bigstar");s(A0,d0,Au,"∢","\\sphericalangle",!0);s(A0,d0,Au,"∁","\\complement",!0);s(A0,d0,Au,"ð","\\eth",!0);s(pu,G0,Au,"ð","ð");s(A0,d0,Au,"","\\diagup");s(A0,d0,Au,"╲","\\diagdown");s(A0,d0,Au,"□","\\square");s(A0,d0,Au,"□","\\Box");s(A0,d0,Au,"◊","\\Diamond");s(A0,d0,Au,"¥","\\yen",!0);s(pu,d0,Au,"¥","\\yen",!0);s(A0,d0,Au,"✓","\\checkmark",!0);s(pu,d0,Au,"✓","\\checkmark");s(A0,d0,Au,"ℶ","\\beth",!0);s(A0,d0,Au,"ℸ","\\daleth",!0);s(A0,d0,Au,"ℷ","\\gimel",!0);s(A0,d0,Au,"ϝ","\\digamma",!0);s(A0,d0,Au,"ϰ","\\varkappa");s(A0,d0,o8,"┌","\\@ulcorner",!0);s(A0,d0,zB,"┐","\\@urcorner",!0);s(A0,d0,o8,"└","\\@llcorner",!0);s(A0,d0,zB,"┘","\\@lrcorner",!0);s(A0,d0,o0,"≦","\\leqq",!0);s(A0,d0,o0,"⩽","\\leqslant",!0);s(A0,d0,o0,"⪕","\\eqslantless",!0);s(A0,d0,o0,"≲","\\lesssim",!0);s(A0,d0,o0,"⪅","\\lessapprox",!0);s(A0,d0,o0,"≊","\\approxeq",!0);s(A0,d0,v4,"⋖","\\lessdot");s(A0,d0,o0,"⋘","\\lll",!0);s(A0,d0,o0,"≶","\\lessgtr",!0);s(A0,d0,o0,"⋚","\\lesseqgtr",!0);s(A0,d0,o0,"⪋","\\lesseqqgtr",!0);s(A0,d0,o0,"≑","\\doteqdot");s(A0,d0,o0,"≓","\\risingdotseq",!0);s(A0,d0,o0,"≒","\\fallingdotseq",!0);s(A0,d0,o0,"∽","\\backsim",!0);s(A0,d0,o0,"⋍","\\backsimeq",!0);s(A0,d0,o0,"⫅","\\subseteqq",!0);s(A0,d0,o0,"⋐","\\Subset",!0);s(A0,d0,o0,"⊏","\\sqsubset",!0);s(A0,d0,o0,"≼","\\preccurlyeq",!0);s(A0,d0,o0,"⋞","\\curlyeqprec",!0);s(A0,d0,o0,"≾","\\precsim",!0);s(A0,d0,o0,"⪷","\\precapprox",!0);s(A0,d0,o0,"⊲","\\vartriangleleft");s(A0,d0,o0,"⊴","\\trianglelefteq");s(A0,d0,o0,"⊨","\\vDash",!0);s(A0,d0,o0,"⊪","\\Vvdash",!0);s(A0,d0,o0,"⌣","\\smallsmile");s(A0,d0,o0,"⌢","\\smallfrown");s(A0,d0,o0,"≏","\\bumpeq",!0);s(A0,d0,o0,"≎","\\Bumpeq",!0);s(A0,d0,o0,"≧","\\geqq",!0);s(A0,d0,o0,"⩾","\\geqslant",!0);s(A0,d0,o0,"⪖","\\eqslantgtr",!0);s(A0,d0,o0,"≳","\\gtrsim",!0);s(A0,d0,o0,"⪆","\\gtrapprox",!0);s(A0,d0,v4,"⋗","\\gtrdot");s(A0,d0,o0,"⋙","\\ggg",!0);s(A0,d0,o0,"≷","\\gtrless",!0);s(A0,d0,o0,"⋛","\\gtreqless",!0);s(A0,d0,o0,"⪌","\\gtreqqless",!0);s(A0,d0,o0,"≖","\\eqcirc",!0);s(A0,d0,o0,"≗","\\circeq",!0);s(A0,d0,o0,"≜","\\triangleq",!0);s(A0,d0,o0,"","\\thicksim");s(A0,d0,o0,"≈","\\thickapprox");s(A0,d0,o0,"⫆","\\supseteqq",!0);s(A0,d0,o0,"⋑","\\Supset",!0);s(A0,d0,o0,"⊐","\\sqsupset",!0);s(A0,d0,o0,"≽","\\succcurlyeq",!0);s(A0,d0,o0,"⋟","\\curlyeqsucc",!0);s(A0,d0,o0,"≿","\\succsim",!0);s(A0,d0,o0,"⪸","\\succapprox",!0);s(A0,d0,o0,"⊳","\\vartriangleright");s(A0,d0,o0,"⊵","\\trianglerighteq");s(A0,d0,o0,"⊩","\\Vdash",!0);s(A0,d0,o0,"","\\shortmid");s(A0,d0,o0,"∥","\\shortparallel");s(A0,d0,o0,"≬","\\between",!0);s(A0,d0,o0,"⋔","\\pitchfork",!0);s(A0,d0,o0,"∝","\\varpropto");s(A0,d0,o0,"◀","\\blacktriangleleft");s(A0,d0,o0,"∴","\\therefore",!0);s(A0,d0,o0,"∍","\\backepsilon");s(A0,d0,o0,"▶","\\blacktriangleright");s(A0,d0,o0,"∵","\\because",!0);s(A0,d0,o0,"⋘","\\llless");s(A0,d0,o0,"⋙","\\gggtr");s(A0,d0,v4,"⊲","\\lhd");s(A0,d0,v4,"⊳","\\rhd");s(A0,d0,o0,"≂","\\eqsim",!0);s(A0,G0,o0,"⋈","\\Join");s(A0,d0,o0,"≑","\\Doteq",!0);s(A0,d0,v4,"∔","\\dotplus",!0);s(A0,d0,v4,"","\\smallsetminus");s(A0,d0,v4,"⋒","\\Cap",!0);s(A0,d0,v4,"⋓","\\Cup",!0);s(A0,d0,v4,"⩞","\\doublebarwedge",!0);s(A0,d0,v4,"⊟","\\boxminus",!0);s(A0,d0,v4,"⊞","\\boxplus",!0);s(A0,d0,v4,"⋇","\\divideontimes",!0);s(A0,d0,v4,"⋉","\\ltimes",!0);s(A0,d0,v4,"⋊","\\rtimes",!0);s(A0,d0,v4,"⋋","\\leftthreetimes",!0);s(A0,d0,v4,"⋌","\\rightthreetimes",!0);s(A0,d0,v4,"⋏","\\curlywedge",!0);s(A0,d0,v4,"⋎","\\curlyvee",!0);s(A0,d0,v4,"⊝","\\circleddash",!0);s(A0,d0,v4,"⊛","\\circledast",!0);s(A0,d0,v4,"⋅","\\centerdot");s(A0,d0,v4,"⊺","\\intercal",!0);s(A0,d0,v4,"⋒","\\doublecap");s(A0,d0,v4,"⋓","\\doublecup");s(A0,d0,v4,"⊠","\\boxtimes",!0);s(A0,d0,o0,"⇢","\\dashrightarrow",!0);s(A0,d0,o0,"⇠","\\dashleftarrow",!0);s(A0,d0,o0,"⇇","\\leftleftarrows",!0);s(A0,d0,o0,"⇆","\\leftrightarrows",!0);s(A0,d0,o0,"⇚","\\Lleftarrow",!0);s(A0,d0,o0,"↞","\\twoheadleftarrow",!0);s(A0,d0,o0,"↢","\\leftarrowtail",!0);s(A0,d0,o0,"↫","\\looparrowleft",!0);s(A0,d0,o0,"⇋","\\leftrightharpoons",!0);s(A0,d0,o0,"↶","\\curvearrowleft",!0);s(A0,d0,o0,"↺","\\circlearrowleft",!0);s(A0,d0,o0,"↰","\\Lsh",!0);s(A0,d0,o0,"⇈","\\upuparrows",!0);s(A0,d0,o0,"↿","\\upharpoonleft",!0);s(A0,d0,o0,"⇃","\\downharpoonleft",!0);s(A0,G0,o0,"⊶","\\origof",!0);s(A0,G0,o0,"⊷","\\imageof",!0);s(A0,d0,o0,"⊸","\\multimap",!0);s(A0,d0,o0,"↭","\\leftrightsquigarrow",!0);s(A0,d0,o0,"⇉","\\rightrightarrows",!0);s(A0,d0,o0,"⇄","\\rightleftarrows",!0);s(A0,d0,o0,"↠","\\twoheadrightarrow",!0);s(A0,d0,o0,"↣","\\rightarrowtail",!0);s(A0,d0,o0,"↬","\\looparrowright",!0);s(A0,d0,o0,"↷","\\curvearrowright",!0);s(A0,d0,o0,"↻","\\circlearrowright",!0);s(A0,d0,o0,"↱","\\Rsh",!0);s(A0,d0,o0,"⇊","\\downdownarrows",!0);s(A0,d0,o0,"↾","\\upharpoonright",!0);s(A0,d0,o0,"⇂","\\downharpoonright",!0);s(A0,d0,o0,"⇝","\\rightsquigarrow",!0);s(A0,d0,o0,"⇝","\\leadsto");s(A0,d0,o0,"⇛","\\Rrightarrow",!0);s(A0,d0,o0,"↾","\\restriction");s(A0,G0,Au,"","`");s(A0,G0,Au,"$","\\$");s(pu,G0,Au,"$","\\$");s(pu,G0,Au,"$","\\textdollar");s(A0,G0,Au,"%","\\%");s(pu,G0,Au,"%","\\%");s(A0,G0,Au,"_","\\_");s(pu,G0,Au,"_","\\_");s(pu,G0,Au,"_","\\textunderscore");s(A0,G0,Au,"∠","\\angle",!0);s(A0,G0,Au,"∞","\\infty",!0);s(A0,G0,Au,"","\\prime");s(A0,G0,Au,"△","\\triangle");s(A0,G0,Au,"Γ","\\Gamma",!0);s(A0,G0,Au,"Δ","\\Delta",!0);s(A0,G0,Au,"Θ","\\Theta",!0);s(A0,G0,Au,"Λ","\\Lambda",!0);s(A0,G0,Au,"Ξ","\\Xi",!0);s(A0,G0,Au,"Π","\\Pi",!0);s(A0,G0,Au,"Σ","\\Sigma",!0);s(A0,G0,Au,"Υ","\\Upsilon",!0);s(A0,G0,Au,"Φ","\\Phi",!0);s(A0,G0,Au,"Ψ","\\Psi",!0);s(A0,G0,Au,"Ω","\\Omega",!0);s(A0,G0,Au,"A","Α");s(A0,G0,Au,"B","Β");s(A0,G0,Au,"E","Ε");s(A0,G0,Au,"Z","Ζ");s(A0,G0,Au,"H","Η");s(A0,G0,Au,"I","Ι");s(A0,G0,Au,"K","Κ");s(A0,G0,Au,"M","Μ");s(A0,G0,Au,"N","Ν");s(A0,G0,Au,"O","Ο");s(A0,G0,Au,"P","Ρ");s(A0,G0,Au,"T","Τ");s(A0,G0,Au,"X","Χ");s(A0,G0,Au,"¬","\\neg",!0);s(A0,G0,Au,"¬","\\lnot");s(A0,G0,Au,"","\\top");s(A0,G0,Au,"⊥","\\bot");s(A0,G0,Au,"∅","\\emptyset");s(A0,d0,Au,"∅","\\varnothing");s(A0,G0,U3,"α","\\alpha",!0);s(A0,G0,U3,"β","\\beta",!0);s(A0,G0,U3,"γ","\\gamma",!0);s(A0,G0,U3,"δ","\\delta",!0);s(A0,G0,U3,"ϵ","\\epsilon",!0);s(A0,G0,U3,"ζ","\\zeta",!0);s(A0,G0,U3,"η","\\eta",!0);s(A0,G0,U3,"θ","\\theta",!0);s(A0,G0,U3,"ι","\\iota",!0);s(A0,G0,U3,"κ","\\kappa",!0);s(A0,G0,U3,"λ","\\lambda",!0);s(A0,G0,U3,"μ","\\mu",!0);s(A0,G0,U3,"ν","\\nu",!0);s(A0,G0,U3,"ξ","\\xi",!0);s(A0,G0,U3,"ο","\\omicron",!0);s(A0,G0,U3,"π","\\pi",!0);s(A0,G0,U3,"ρ","\\rho",!0);s(A0,G0,U3,"σ","\\sigma",!0);s(A0,G0,U3,"τ","\\tau",!0);s(A0,G0,U3,"υ","\\upsilon",!0);s(A0,G0,U3,"ϕ","\\phi",!0);s(A0,G0,U3,"χ","\\chi",!0);s(A0,G0,U3,"ψ","\\psi",!0);s(A0,G0,U3,"ω","\\omega",!0);s(A0,G0,U3,"ε","\\varepsilon",!0);s(A0,G0,U3,"ϑ","\\vartheta",!0);s(A0,G0,U3,"ϖ","\\varpi",!0);s(A0,G0,U3,"ϱ","\\varrho",!0);s(A0,G0,U3,"ς","\\varsigma",!0);s(A0,G0,U3,"φ","\\varphi",!0);s(A0,G0,v4,"","*",!0);s(A0,G0,v4,"+","+");s(A0,G0,v4,"","-",!0);s(A0,G0,v4,"⋅","\\cdot",!0);s(A0,G0,v4,"∘","\\circ",!0);s(A0,G0,v4,"÷","\\div",!0);s(A0,G0,v4,"±","\\pm",!0);s(A0,G0,v4,"×","\\times",!0);s(A0,G0,v4,"∩","\\cap",!0);s(A0,G0,v4,"","\\cup",!0);s(A0,G0,v4,"","\\setminus",!0);s(A0,G0,v4,"∧","\\land");s(A0,G0,v4,"","\\lor");s(A0,G0,v4,"∧","\\wedge",!0);s(A0,G0,v4,"","\\vee",!0);s(A0,G0,Au,"√","\\surd");s(A0,G0,o8,"⟨","\\langle",!0);s(A0,G0,o8,"","\\lvert");s(A0,G0,o8,"∥","\\lVert");s(A0,G0,zB,"?","?");s(A0,G0,zB,"!","!");s(A0,G0,zB,"⟩","\\rangle",!0);s(A0,G0,zB,"","\\rvert");s(A0,G0,zB,"∥","\\rVert");s(A0,G0,o0,"=","=");s(A0,G0,o0,":",":");s(A0,G0,o0,"≈","\\approx",!0);s(A0,G0,o0,"≅","\\cong",!0);s(A0,G0,o0,"≥","\\ge");s(A0,G0,o0,"≥","\\geq",!0);s(A0,G0,o0,"←","\\gets");s(A0,G0,o0,">","\\gt",!0);s(A0,G0,o0,"∈","\\in",!0);s(A0,G0,o0,"","\\@not");s(A0,G0,o0,"⊂","\\subset",!0);s(A0,G0,o0,"⊃","\\supset",!0);s(A0,G0,o0,"⊆","\\subseteq",!0);s(A0,G0,o0,"⊇","\\supseteq",!0);s(A0,d0,o0,"⊈","\\nsubseteq",!0);s(A0,d0,o0,"⊉","\\nsupseteq",!0);s(A0,G0,o0,"⊨","\\models");s(A0,G0,o0,"←","\\leftarrow",!0);s(A0,G0,o0,"≤","\\le");s(A0,G0,o0,"≤","\\leq",!0);s(A0,G0,o0,"<","\\lt",!0);s(A0,G0,o0,"→","\\rightarrow",!0);s(A0,G0,o0,"→","\\to");s(A0,d0,o0,"≱","\\ngeq",!0);s(A0,d0,o0,"≰","\\nleq",!0);s(A0,G0,wz," ","\\ ");s(A0,G0,wz," ","\\space");s(A0,G0,wz," ","\\nobreakspace");s(pu,G0,wz," ","\\ ");s(pu,G0,wz," "," ");s(pu,G0,wz," ","\\space");s(pu,G0,wz," ","\\nobreakspace");s(A0,G0,wz,"","\\nobreak");s(A0,G0,wz,"","\\allowbreak");s(A0,G0,sx,",",",");s(A0,G0,sx,";",";");s(A0,d0,v4,"⊼","\\barwedge",!0);s(A0,d0,v4,"⊻","\\veebar",!0);s(A0,G0,v4,"⊙","\\odot",!0);s(A0,G0,v4,"⊕","\\oplus",!0);s(A0,G0,v4,"⊗","\\otimes",!0);s(A0,G0,Au,"∂","\\partial",!0);s(A0,G0,v4,"⊘","\\oslash",!0);s(A0,d0,v4,"⊚","\\circledcirc",!0);s(A0,d0,v4,"⊡","\\boxdot",!0);s(A0,G0,v4,"△","\\bigtriangleup");s(A0,G0,v4,"▽","\\bigtriangledown");s(A0,G0,v4,"†","\\dagger");s(A0,G0,v4,"⋄","\\diamond");s(A0,G0,v4,"⋆","\\star");s(A0,G0,v4,"◃","\\triangleleft");s(A0,G0,v4,"▹","\\triangleright");s(A0,G0,o8,"{","\\{");s(pu,G0,Au,"{","\\{");s(pu,G0,Au,"{","\\textbraceleft");s(A0,G0,zB,"}","\\}");s(pu,G0,Au,"}","\\}");s(pu,G0,Au,"}","\\textbraceright");s(A0,G0,o8,"{","\\lbrace");s(A0,G0,zB,"}","\\rbrace");s(A0,G0,o8,"[","\\lbrack",!0);s(pu,G0,Au,"[","\\lbrack",!0);s(A0,G0,zB,"]","\\rbrack",!0);s(pu,G0,Au,"]","\\rbrack",!0);s(A0,G0,o8,"(","\\lparen",!0);s(A0,G0,zB,")","\\rparen",!0);s(pu,G0,Au,"<","\\textless",!0);s(pu,G0,Au,">","\\textgreater",!0);s(A0,G0,o8,"⌊","\\lfloor",!0);s(A0,G0,zB,"⌋","\\rfloor",!0);s(A0,G0,o8,"⌈","\\lceil",!0);s(A0,G0,zB,"⌉","\\rceil",!0);s(A0,G0,Au,"\\","\\backslash");s(A0,G0,Au,"","|");s(A0,G0,Au,"","\\vert");s(pu,G0,Au,"|","\\textbar",!0);s(A0,G0,Au,"∥","\\|");s(A0,G0,Au,"∥","\\Vert");s(pu,G0,Au,"∥","\\textbardbl");s(pu,G0,Au,"~","\\textasciitilde");s(pu,G0,Au,"\\","\\textbackslash");s(pu,G0,Au,"^","\\textasciicircum");s(A0,G0,o0,"↑","\\uparrow",!0);s(A0,G0,o0,"⇑","\\Uparrow",!0);s(A0,G0,o0,"↓","\\downarrow",!0);s(A0,G0,o0,"⇓","\\Downarrow",!0);s(A0,G0,o0,"↕","\\updownarrow",!0);s(A0,G0,o0,"⇕","\\Updownarrow",!0);s(A0,G0,H2,"∐","\\coprod");s(A0,G0,H2,"","\\bigvee");s(A0,G0,H2,"⋀","\\bigwedge");s(A0,G0,H2,"⨄","\\biguplus");s(A0,G0,H2,"⋂","\\bigcap");s(A0,G0,H2,"","\\bigcup");s(A0,G0,H2,"∫","\\int");s(A0,G0,H2,"∫","\\intop");s(A0,G0,H2,"∬","\\iint");s(A0,G0,H2,"∭","\\iiint");s(A0,G0,H2,"∏","\\prod");s(A0,G0,H2,"∑","\\sum");s(A0,G0,H2,"⨂","\\bigotimes");s(A0,G0,H2,"⨁","\\bigoplus");s(A0,G0,H2,"⨀","\\bigodot");s(A0,G0,H2,"∮","\\oint");s(A0,G0,H2,"∯","\\oiint");s(A0,G0,H2,"∰","\\oiiint");s(A0,G0,H2,"⨆","\\bigsqcup");s(A0,G0,H2,"∫","\\smallint");s(pu,G0,NQ,"…","\\textellipsis");s(A0,G0,NQ,"…","\\mathellipsis");s(pu,G0,NQ,"…","\\ldots",!0);s(A0,G0,NQ,"…","\\ldots",!0);s(A0,G0,NQ,"⋯","\\@cdots",!0);s(A0,G0,NQ,"⋱","\\ddots",!0);s(A0,G0,Au,"⋮","\\varvdots");s(pu,G0,Au,"⋮","\\varvdots");s(A0,G0,B9,"ˊ","\\acute");s(A0,G0,B9,"ˋ","\\grave");s(A0,G0,B9,"¨","\\ddot");s(A0,G0,B9,"~","\\tilde");s(A0,G0,B9,"ˉ","\\bar");s(A0,G0,B9,"˘","\\breve");s(A0,G0,B9,"ˇ","\\check");s(A0,G0,B9,"^","\\hat");s(A0,G0,B9,"⃗","\\vec");s(A0,G0,B9,"˙","\\dot");s(A0,G0,B9,"˚","\\mathring");s(A0,G0,U3,"","\\@imath");s(A0,G0,U3,"","\\@jmath");s(A0,G0,Au,"ı","ı");s(A0,G0,Au,"ȷ","ȷ");s(pu,G0,Au,"ı","\\i",!0);s(pu,G0,Au,"ȷ","\\j",!0);s(pu,G0,Au,"ß","\\ss",!0);s(pu,G0,Au,"æ","\\ae",!0);s(pu,G0,Au,"œ","\\oe",!0);s(pu,G0,Au,"ø","\\o",!0);s(pu,G0,Au,"Æ","\\AE",!0);s(pu,G0,Au,"Œ","\\OE",!0);s(pu,G0,Au,"Ø","\\O",!0);s(pu,G0,B9,"ˊ","\\'");s(pu,G0,B9,"ˋ","\\`");s(pu,G0,B9,"ˆ","\\^");s(pu,G0,B9,"˜","\\~");s(pu,G0,B9,"ˉ","\\=");s(pu,G0,B9,"˘","\\u");s(pu,G0,B9,"˙","\\.");s(pu,G0,B9,"¸","\\c");s(pu,G0,B9,"˚","\\r");s(pu,G0,B9,"ˇ","\\v");s(pu,G0,B9,"¨","\\\"");s(pu,G0,B9,"˝","\\H");s(pu,G0,B9,"◯","\\textcircled");hG0={"--":!0,"---":!0,"``":!0,"''":!0};s(pu,G0,Au,"","--",!0);s(pu,G0,Au,"","\\textendash");s(pu,G0,Au,"—","---",!0);s(pu,G0,Au,"—","\\textemdash");s(pu,G0,Au,"","`",!0);s(pu,G0,Au,"","\\textquoteleft");s(pu,G0,Au,"","'",!0);s(pu,G0,Au,"","\\textquoteright");s(pu,G0,Au,"“","``",!0);s(pu,G0,Au,"“","\\textquotedblleft");s(pu,G0,Au,"”","''",!0);s(pu,G0,Au,"”","\\textquotedblright");s(A0,G0,Au,"°","\\degree",!0);s(pu,G0,Au,"°","\\degree");s(pu,G0,Au,"°","\\textdegree",!0);s(A0,G0,Au,"£","\\pounds");s(A0,G0,Au,"£","\\mathsterling",!0);s(pu,G0,Au,"£","\\pounds");s(pu,G0,Au,"£","\\textsterling",!0);s(A0,d0,Au,"✠","\\maltese");s(pu,d0,Au,"✠","\\maltese");for(rx=0;rx<eQ0.length;rx++)nP=eQ0.charAt(rx),s(A0,G0,Au,nP,nP);for($x=0;$x<uG0.length;$x++)pP=uG0.charAt($x),s(pu,G0,Au,pP,pP);for(yx=0;yx<tP.length;yx++)RQ=tP.charAt(yx),s(A0,G0,U3,RQ,RQ),s(pu,G0,Au,RQ,RQ);s(A0,d0,Au,"C","");s(pu,d0,Au,"C","");s(A0,d0,Au,"H","");s(pu,d0,Au,"H","");s(A0,d0,Au,"N","");s(pu,d0,Au,"N","");s(A0,d0,Au,"P","");s(pu,d0,Au,"P","");s(A0,d0,Au,"Q","");s(pu,d0,Au,"Q","");s(A0,d0,Au,"R","");s(pu,d0,Au,"R","");s(A0,d0,Au,"Z","");s(pu,d0,Au,"Z","");s(A0,G0,U3,"h","");s(pu,G0,U3,"h","");for(_5=0;_5<tP.length;_5++)if(e6=tP.charAt(_5),R3=String.fromCharCode(55349,56320+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56372+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56424+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56580+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56684+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56736+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56788+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56840+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56944+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),_5<26)R3=String.fromCharCode(55349,56632+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3),R3=String.fromCharCode(55349,56476+_5),s(A0,G0,U3,e6,R3),s(pu,G0,Au,e6,R3);R3=String.fromCharCode(55349,56668);s(A0,G0,U3,"k",R3);s(pu,G0,Au,"k",R3);for(lz=0;lz<10;lz++)oD=lz.toString(),R3=String.fromCharCode(55349,57294+lz),s(A0,G0,U3,oD,R3),s(pu,G0,Au,oD,R3),R3=String.fromCharCode(55349,57314+lz),s(A0,G0,U3,oD,R3),s(pu,G0,Au,oD,R3),R3=String.fromCharCode(55349,57324+lz),s(A0,G0,U3,oD,R3),s(pu,G0,Au,oD,R3),R3=String.fromCharCode(55349,57334+lz),s(A0,G0,U3,oD,R3),s(pu,G0,Au,oD,R3);for(cx=0;cx<$o.length;cx++)TQ=$o.charAt(cx),s(A0,G0,U3,TQ,TQ),s(pu,G0,Au,TQ,TQ);yo={mathClass:"mathbf",textClass:"textbf",font:"Main-Bold"},BG0={mathClass:"mathnormal",textClass:"textit",font:"Math-Italic"},EG0={mathClass:"boldsymbol",textClass:"boldsymbol",font:"Main-BoldItalic"},X44={mathClass:"mathscr",textClass:"textscr",font:"Script-Regular"},ZZ={mathClass:"",textClass:"",font:""},AG0={mathClass:"mathfrak",textClass:"textfrak",font:"Fraktur-Regular"},CG0={mathClass:"mathbb",textClass:"textbb",font:"AMS-Regular"},DG0={mathClass:"mathboldfrak",textClass:"textboldfrak",font:"Fraktur-Regular"},co={mathClass:"mathsf",textClass:"textsf",font:"SansSerif-Regular"},go={mathClass:"mathboldsf",textClass:"textboldsf",font:"SansSerif-Bold"},FG0={mathClass:"mathitsf",textClass:"textitsf",font:"SansSerif-Italic"},_o={mathClass:"mathtt",textClass:"texttt",font:"Typewriter-Regular"},UG0=[yo,yo,BG0,BG0,EG0,EG0,X44,ZZ,ZZ,ZZ,AG0,AG0,CG0,CG0,DG0,DG0,co,co,go,go,FG0,FG0,ZZ,ZZ,_o,_o],x44=[yo,ZZ,co,go,_o],no={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"}},$G0={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]},Q9={number:3,unit:"mu"},MZ={number:4,unit:"mu"},kz={number:5,unit:"mu"},T44={mord:{mop:Q9,mbin:MZ,mrel:kz,minner:Q9},mop:{mord:Q9,mop:Q9,mrel:kz,minner:Q9},mbin:{mord:MZ,mop:MZ,mopen:MZ,minner:MZ},mrel:{mord:kz,mop:kz,mopen:kz,minner:kz},mopen:{},mclose:{mop:Q9,mbin:MZ,mrel:kz,minner:Q9},mpunct:{mord:Q9,mop:Q9,mrel:kz,mopen:Q9,mclose:Q9,mpunct:Q9,minner:Q9},minner:{mord:Q9,mop:Q9,mbin:MZ,mrel:kz,mopen:Q9,mpunct:Q9,minner:Q9}},O44={mord:{mop:Q9},mop:{mord:Q9,mop:Q9},mbin:{},mrel:{},mopen:{},mclose:{mop:Q9},mpunct:{},minner:{mop:Q9}},cG0={},eP={},uj={};I44=new Set(["leftmost","mbin","mopen","mrel","mop","mpunct"]),P44=new Set(["rightmost","mrel","mclose","mpunct"]),j44={display:V3.DISPLAY,text:V3.TEXT,script:V3.SCRIPT,scriptscript:V3.SCRIPTSCRIPT},N44={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"};i44=new Set(["\\imath","\\jmath"]),a44=new Set(["mrow","mtable"]),V44={mathit:"italic",boldsymbol:(u)=>u.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"};h44=[[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]],kG0=[0.5,0.6,0.7,0.8,0.9,1,1.2,1.44,1.728,2.074,2.488];bz.BASESIZE=6;$44={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":"="},y44={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]},c44=new Set(["widehat","widecheck","widetilde","utilde"]),_44={bin:1,close:1,inner:1,open:1,punct:1,rel:1},n44={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1};d44=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((u)=>"\\"+u).join("|"));G4({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:(u,B)=>{var E=Bj(B[0]),A=!d44.test(u.funcName),C=!A||u.funcName==="\\widehat"||u.funcName==="\\widetilde"||u.funcName==="\\widecheck";return{type:"accent",mode:u.parser.mode,label:u.funcName,isStretchy:A,isShifty:C,base:E}},htmlBuilder:Mt,mathmlBuilder:sG0});G4({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.","\\\"","\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(u,B)=>{var E=B[0],A=u.parser.mode;if(A==="math")u.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+u.funcName+" works only in text mode"),A="text";return{type:"accent",mode:A,label:u.funcName,isStretchy:!1,isShifty:!0,base:E}},htmlBuilder:Mt,mathmlBuilder:sG0});G4({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=B[0];return{type:"accentUnder",mode:E.mode,label:A,base:C}},htmlBuilder:(u,B)=>{var E=p1(u.base,B),A=Fj(u,B),C=u.label==="\\utilde"?0.12:0,D=n1({positionType:"top",positionData:E.height,children:[{type:"elem",elem:A,wrapperClasses:["svg-align"]},{type:"kern",size:C},{type:"elem",elem:E}]});return u4(["mord","accentunder"],[D],B)},mathmlBuilder:(u,B)=>{var E=Dj(u.label),A=new E4("munder",[H6(u.base,B),E]);return A.setAttribute("accentunder","true"),A}});G4({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(u,B,E){var{parser:A,funcName:C}=u;return{type:"xArrow",mode:A.mode,label:C,body:B[0],below:E[0]}},htmlBuilder(u,B){var E=B.style,A=B.havingStyle(E.sup()),C=jQ(p1(u.body,A,B),B),D=u.label.slice(0,2)==="\\x"?"x":"cd";C.classes.push(D+"-arrow-pad");var F;if(u.below)A=B.havingStyle(E.sub()),F=jQ(p1(u.below,A,B),B),F.classes.push(D+"-arrow-pad");var U=Fj(u,B),z=-B.fontMetrics().axisHeight+0.5*U.height,k=-B.fontMetrics().axisHeight-0.5*U.height-0.111;if(C.depth>0.25||u.label==="\\xleftequilibrium")k-=C.depth;var f;if(F){var l=-B.fontMetrics().axisHeight+F.height+0.5*U.height+0.111;f=n1({positionType:"individualShift",children:[{type:"elem",elem:C,shift:k},{type:"elem",elem:U,shift:z,wrapperClasses:["svg-align"]},{type:"elem",elem:F,shift:l}]})}else f=n1({positionType:"individualShift",children:[{type:"elem",elem:C,shift:k},{type:"elem",elem:U,shift:z,wrapperClasses:["svg-align"]}]});return u4(["mrel","x-arrow"],[f],B)},mathmlBuilder(u,B){var E=Dj(u.label);E.setAttribute("minsize",u.label.charAt(0)==="x"?"1.75em":"3.0em");var A;if(u.body){var C=$P(H6(u.body,B));if(u.below){var D=$P(H6(u.below,B));A=new E4("munderover",[E,D,C])}else A=new E4("mover",[E,C])}else if(u.below){var F=$P(H6(u.below,B));A=new E4("munder",[E,F])}else A=$P(),A=new E4("mover",[E,A]);return A}});G4({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(u,B){var{parser:E,funcName:A}=u,C=B[0];return{type:"mclass",mode:E.mode,mclass:"m"+A.slice(5),body:G2(C),isCharacterBox:Jz(C)}},htmlBuilder:oG0,mathmlBuilder:tG0});G4({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(u,B){var{parser:E}=u;return{type:"mclass",mode:E.mode,mclass:kj(B[0]),body:G2(B[1]),isCharacterBox:Jz(B[1])}}});G4({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(u,B){var{parser:E,funcName:A}=u,C=B[1],D=B[0],F;if(A!=="\\stackrel")F=kj(C);else F="mrel";var U={type:"op",mode:C.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:A!=="\\stackrel",body:G2(C)},z={type:"supsub",mode:D.mode,base:U,sup:A==="\\underset"?null:D,sub:A==="\\underset"?D:null};return{type:"mclass",mode:E.mode,mclass:F,body:[z],isCharacterBox:Jz(z)}},htmlBuilder:oG0,mathmlBuilder:tG0});G4({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(u,B){var{parser:E}=u;return{type:"pmb",mode:E.mode,mclass:kj(B[0]),body:G2(B[0])}},htmlBuilder(u,B){var E=_2(u.body,B,!0),A=u4([u.mclass],E,B);return A.style.textShadow="0.02em 0.01em 0.04px",A},mathmlBuilder(u,B){var E=t8(u.body,B),A=new E4("mstyle",E);return A.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),A}});s44={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"};G4({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(u,B){var{parser:E,funcName:A}=u;return{type:"cdlabel",mode:E.mode,side:A.slice(4),label:B[0]}},htmlBuilder(u,B){var E=B.havingStyle(B.style.sup()),A=jQ(p1(u.label,E,B),B);return A.classes.push("cd-label-"+u.side),A.style.bottom=z4(0.8-A.depth),A.height=0,A.depth=0,A},mathmlBuilder(u,B){var E=new E4("mrow",[H6(u.label,B)]);if(E=new E4("mpadded",[E]),E.setAttribute("width","0"),u.side==="left")E.setAttribute("lspace","-1width");return E.setAttribute("voffset","0.7em"),E=new E4("mstyle",[E]),E.setAttribute("displaystyle","false"),E.setAttribute("scriptlevel","1"),E}});G4({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(u,B){var{parser:E}=u;return{type:"cdlabelparent",mode:E.mode,fragment:B[0]}},htmlBuilder(u,B){var E=jQ(p1(u.fragment,B),B);return E.classes.push("cd-vert-arrow"),E},mathmlBuilder(u,B){return new E4("mrow",[H6(u.fragment,B)])}});G4({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(u,B){var{parser:E}=u,A=p3(B[0],"ordgroup"),C=A.body,D="";for(var F=0;F<C.length;F++){var U=p3(C[F],"textord");D+=U.text}var z=parseInt(D),k;if(isNaN(z))throw new B4("\\@char has non-numeric argument "+D);else if(z<0||z>=1114111)throw new B4("\\@char with invalid code point "+D);else if(z<=65535)k=String.fromCharCode(z);else z-=65536,k=String.fromCharCode((z>>10)+55296,(z&1023)+56320);return{type:"textord",mode:E.mode,text:k}}});G4({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(u,B){var{parser:E}=u,A=p3(B[0],"color-token").color,C=B[1];return{type:"color",mode:E.mode,color:A,body:G2(C)}},htmlBuilder:eG0,mathmlBuilder:uH0});G4({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(u,B){var{parser:E,breakOnTokenText:A}=u,C=p3(B[0],"color-token").color;E.gullet.macros.set("\\current@color",C);var D=E.parseExpression(!0,A);return{type:"color",mode:E.mode,color:C,body:D}},htmlBuilder:eG0,mathmlBuilder:uH0});G4({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(u,B,E){var{parser:A}=u,C=A.gullet.future().text==="["?A.parseSizeGroup(!0):null,D=!A.settings.displayMode||!A.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:A.mode,newLine:D,size:C&&p3(C,"size").value}},htmlBuilder(u,B){var E=u4(["mspace"],[],B);if(u.newLine){if(E.classes.push("newline"),u.size)E.style.marginTop=z4(G9(u.size,B))}return E},mathmlBuilder(u,B){var E=new E4("mspace");if(u.newLine){if(E.setAttribute("linebreak","newline"),u.size)E.setAttribute("height",z4(G9(u.size,B)))}return E}});eo={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"};G4({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(u){var{parser:B,funcName:E}=u;B.consumeSpaces();var A=B.fetch();if(eo[A.text]){if(E==="\\global"||E==="\\\\globallong")A.text=eo[A.text];return p3(B.parseFunction(),"internal")}throw new B4("Invalid token after macro prefix",A)}});G4({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(u){var{parser:B,funcName:E}=u,A=B.gullet.popToken(),C=A.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(C))throw new B4("Expected a control sequence",A);var D=0,F,U=[[]];while(B.gullet.future().text!=="{")if(A=B.gullet.popToken(),A.text==="#"){if(B.gullet.future().text==="{"){F=B.gullet.future(),U[D].push("{");break}if(A=B.gullet.popToken(),!/^[1-9]$/.test(A.text))throw new B4('Invalid argument number "'+A.text+'"');if(parseInt(A.text)!==D+1)throw new B4('Argument number "'+A.text+'" out of order');D++,U.push([])}else if(A.text==="EOF")throw new B4("Expected a macro definition");else U[D].push(A.text);var{tokens:z}=B.gullet.consumeArg();if(F)z.unshift(F);if(E==="\\edef"||E==="\\xdef")z=B.gullet.expandTokens(z),z.reverse();return B.gullet.macros.set(C,{tokens:z,numArgs:D,delimiters:U},E===eo[E]),{type:"internal",mode:B.mode}}});G4({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(u){var{parser:B,funcName:E}=u,A=BH0(B.gullet.popToken());B.gullet.consumeSpaces();var C=u34(B);return EH0(B,A,C,E==="\\\\globallet"),{type:"internal",mode:B.mode}}});G4({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(u){var{parser:B,funcName:E}=u,A=BH0(B.gullet.popToken()),C=B.gullet.popToken(),D=B.gullet.popToken();return EH0(B,A,D,E==="\\\\globalfuture"),B.gullet.pushToken(D),B.gullet.pushToken(C),{type:"internal",mode:B.mode}}});yP={type:"kern",size:-1*ut},A34=new Set(["|","\\lvert","\\rvert","\\vert"]),C34=new Set(["\\|","\\lVert","\\rVert","\\Vert"]),FH0=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"]),F34=new Set(["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"]),UH0=new Set(["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"]),_x=[0,1.2,1.8,2.4,3],U34=[{type:"small",style:V3.SCRIPTSCRIPT},{type:"small",style:V3.SCRIPT},{type:"small",style:V3.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],z34=[{type:"small",style:V3.SCRIPTSCRIPT},{type:"small",style:V3.SCRIPT},{type:"small",style:V3.TEXT},{type:"stack"}],kH0=[{type:"small",style:V3.SCRIPTSCRIPT},{type:"small",style:V3.SCRIPT},{type:"small",style:V3.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],MG0={"\\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}},f34=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","."]);G4({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:(u,B)=>{var E=fj(B[0],u);return{type:"delimsizing",mode:u.parser.mode,size:MG0[u.funcName].size,mclass:MG0[u.funcName].mclass,delim:E.text}},htmlBuilder:(u,B)=>{if(u.delim===".")return u4([u.mclass]);return zH0(u.delim,u.size,B,u.mode,[u.mclass])},mathmlBuilder:(u)=>{var B=[];if(u.delim!==".")B.push(gE(u.delim,u.mode));var E=new E4("mo",B);if(u.mclass==="mopen"||u.mclass==="mclose")E.setAttribute("fence","true");else E.setAttribute("fence","false");E.setAttribute("stretchy","true");var A=z4(_x[u.size]);return E.setAttribute("minsize",A),E.setAttribute("maxsize",A),E}});G4({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(u,B)=>{var E=u.parser.gullet.macros.get("\\current@color");if(E&&typeof E!=="string")throw new B4("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:u.parser.mode,delim:fj(B[0],u).text,color:E}}});G4({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(u,B)=>{var E=fj(B[0],u),A=u.parser;++A.leftrightDepth;var C=A.parseExpression(!1);--A.leftrightDepth,A.expect("\\right",!1);var D=p3(A.parseFunction(),"leftright-right");return{type:"leftright",mode:A.mode,body:C,left:E.text,right:D.delim,rightColor:D.color}},htmlBuilder:(u,B)=>{JG0(u);var E=_2(u.body,B,!0,["mopen","mclose"]),A=0,C=0,D=!1;for(var F=0;F<E.length;F++){var U=E[F];if(ZG0(U))D=!0;else A=Math.max(E[F].height,A),C=Math.max(E[F].depth,C)}A*=B.sizeMultiplier,C*=B.sizeMultiplier;var z;if(u.left===".")z=px(B,["mopen"]);else z=No(u.left,A,C,B,u.mode,["mopen"]);if(E.unshift(z),D)for(var k=1;k<E.length;k++){var f=E[k];if(ZG0(f)){var l=f.isMiddle;E[k]=No(l.delim,A,C,l.options,u.mode,[])}}var b;if(u.right===".")b=px(B,["mclose"]);else{var M=u.rightColor?B.withColor(u.rightColor):B;b=No(u.right,A,C,M,u.mode,["mclose"])}return E.push(b),u4(["minner"],E,B)},mathmlBuilder:(u,B)=>{JG0(u);var E=t8(u.body,B);if(u.left!=="."){var A=new E4("mo",[gE(u.left,u.mode)]);A.setAttribute("fence","true"),E.unshift(A)}if(u.right!=="."){var C=new E4("mo",[gE(u.right,u.mode)]);if(C.setAttribute("fence","true"),u.rightColor)C.setAttribute("mathcolor",u.rightColor);E.push(C)}return lt(E)}});G4({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(u,B)=>{var E=fj(B[0],u);if(!u.parser.leftrightDepth)throw new B4("\\middle without preceding \\left",E);return{type:"middle",mode:u.parser.mode,delim:E.text}},htmlBuilder:(u,B)=>{var E;if(u.delim===".")E=px(B,[]);else E=zH0(u.delim,1,B,u.mode,[]),E.isMiddle={delim:u.delim,options:B};return E},mathmlBuilder:(u,B)=>{var E=u.delim==="\\vert"||u.delim==="|"?gE("|","text"):gE(u.delim,u.mode),A=new E4("mo",[E]);return A.setAttribute("fence","true"),A.setAttribute("lspace","0.05em"),A.setAttribute("rspace","0.05em"),A}});G4({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","hbox"]},handler(u,B,E){var{parser:A,funcName:C}=u,D=p3(B[0],"color-token").color,F=B[1];return{type:"enclose",mode:A.mode,label:C,backgroundColor:D,body:F}},htmlBuilder:lj,mathmlBuilder:bj});G4({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","hbox"]},handler(u,B,E){var{parser:A,funcName:C}=u,D=p3(B[0],"color-token").color,F=p3(B[1],"color-token").color,U=B[2];return{type:"enclose",mode:A.mode,label:C,backgroundColor:F,borderColor:D,body:U}},htmlBuilder:lj,mathmlBuilder:bj});G4({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(u,B){var{parser:E}=u;return{type:"enclose",mode:E.mode,label:"\\fbox",body:B[0]}}});G4({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\phase"],props:{numArgs:1},handler(u,B){var{parser:E,funcName:A}=u,C=B[0];return{type:"enclose",mode:E.mode,label:A,body:C}},htmlBuilder:lj,mathmlBuilder:bj});G4({type:"enclose",names:["\\sout"],props:{numArgs:1,allowedInText:!0},handler(u,B){var{parser:E,funcName:A}=u;if(E.mode==="math")E.settings.reportNonstrict("mathVsSout","LaTeX's \\sout works only in text mode");var C=B[0];return{type:"enclose",mode:E.mode,label:A,body:C}},htmlBuilder:lj,mathmlBuilder:bj});G4({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(u,B){var{parser:E}=u;return{type:"enclose",mode:E.mode,label:"\\angl",body:B[0]}}});lH0={};bH0={};l34=new Set(["gather","gather*"]);b34={c:"center ",l:"left ",r:"right "};BF({type:"array",names:["array","darray"],props:{numArgs:1},handler(u,B){var E=zj(B[0]),A=E?[B[0]]:p3(B[0],"ordgroup").body,C=A.map(function(F){var U=Uj(F),z=U.text;if("lcr".includes(z))return{type:"align",align:z};else if(z==="|")return{type:"separator",separator:"|"};else if(z===":")return{type:"separator",separator:":"};throw new B4("Unknown column alignment: "+z,F)}),D={cols:C,hskipBeforeAndAfter:!0,maxNumCols:C.length};return Sf(u.parser,D,wt(u.envName))},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(u){var B={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[u.envName.replace("*","")],E="c",A={hskipBeforeAndAfter:!1,cols:[{type:"align",align:E}]};if(u.envName.charAt(u.envName.length-1)==="*"){var C=u.parser;if(C.consumeSpaces(),C.fetch().text==="["){if(C.consume(),C.consumeSpaces(),E=C.fetch().text,!"lcr".includes(E))throw new B4("Expected l or c or r",C.nextToken);C.consume(),C.consumeSpaces(),C.expect("]"),C.consume(),A.cols=[{type:"align",align:E}]}}var D=Sf(u.parser,A,wt(u.envName)),F=Math.max(0,...D.body.map((U)=>U.length));return D.cols=Array(F).fill({type:"align",align:E}),B?{type:"leftright",mode:u.mode,body:[D],left:B[0],right:B[1],rightColor:void 0}:D},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(u){var B={arraystretch:0.5},E=Sf(u.parser,B,"script");return E.colSeparationType="small",E},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["subarray"],props:{numArgs:1},handler(u,B){var E=zj(B[0]),A=E?[B[0]]:p3(B[0],"ordgroup").body,C=A.map(function(U){var z=Uj(U),k=z.text;if("lc".includes(k))return{type:"align",align:k};throw new B4("Unknown column alignment: "+k,U)});if(C.length>1)throw new B4("{subarray} can contain only one column");var D={cols:C,hskipBeforeAndAfter:!1,arraystretch:0.5},F=Sf(u.parser,D,"script");if(F.body.length>0&&F.body[0].length>1)throw new B4("{subarray} can contain only one column");return F},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(u){var B={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},E=Sf(u.parser,B,wt(u.envName));return{type:"leftright",mode:u.mode,body:[E],left:u.envName.includes("r")?".":"\\{",right:u.envName.includes("r")?"\\}":".",rightColor:void 0}},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:MH0,htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(u){if(l34.has(u.envName))Mj(u);var B={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Jt(u.envName),emptySingleRow:!0,leqno:u.parser.settings.leqno};return Sf(u.parser,B,"display")},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:MH0,htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(u){Mj(u);var B={autoTag:Jt(u.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:u.parser.settings.leqno};return Sf(u.parser,B,"display")},htmlBuilder:EF,mathmlBuilder:AF});BF({type:"array",names:["CD"],props:{numArgs:0},handler(u){return Mj(u),e44(u.parser)},htmlBuilder:EF,mathmlBuilder:AF});R0("\\nonumber","\\gdef\\@eqnsw{0}");R0("\\notag","\\nonumber");G4({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(u,B){throw new B4(u.funcName+" valid only within array environment")}});KG0=lH0;G4({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(u,B){var{parser:E,funcName:A}=u,C=B[0];if(C.type!=="ordgroup")throw new B4("Invalid environment name",C);var D="";for(var F=0;F<C.body.length;++F)D+=p3(C.body[F],"textord").text;if(A==="\\begin"){if(!KG0.hasOwnProperty(D))throw new B4("No such environment: "+D,C);var U=KG0[D],{args:z,optArgs:k}=E.parseArguments("\\begin{"+D+"}",U),f={mode:E.mode,envName:D,parser:E},l=U.handler(f,z,k);E.expect("\\end",!1);var b=E.nextToken,M=p3(E.parseFunction(),"environment");if(M.name!==D)throw new B4("Mismatch: \\begin{"+D+"} matched by \\end{"+M.name+"}",b);return l}return{type:"environment",mode:E.mode,name:D,nameGroup:C}}});QG0={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak"};G4({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=Bj(B[0]),D=A;if(D in QG0)D=QG0[D];return{type:"font",mode:E.mode,font:D.slice(1),body:C}},htmlBuilder:ZH0,mathmlBuilder:JH0});G4({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(u,B)=>{var{parser:E}=u,A=B[0];return{type:"mclass",mode:E.mode,mclass:kj(A),body:[{type:"font",mode:E.mode,font:"boldsymbol",body:A}],isCharacterBox:Jz(A)}}});G4({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(u,B)=>{var{parser:E,funcName:A,breakOnTokenText:C}=u,{mode:D}=E,F=E.parseExpression(!0,C);return{type:"font",mode:D,font:"math"+A.slice(1),body:{type:"ordgroup",mode:E.mode,body:F}}},htmlBuilder:ZH0,mathmlBuilder:JH0});G4({type:"genfrac",names:["\\cfrac","\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=B[0],D=B[1],F,U=null,z=null;switch(A){case"\\cfrac":case"\\dfrac":case"\\frac":case"\\tfrac":F=!0;break;case"\\\\atopfrac":F=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":F=!1,U="(",z=")";break;case"\\\\bracefrac":F=!1,U="\\{",z="\\}";break;case"\\\\brackfrac":F=!1,U="[",z="]";break;default:throw Error("Unrecognized genfrac command")}var k=A==="\\cfrac",f=null;if(k||A.startsWith("\\d"))f="display";else if(A.startsWith("\\t"))f="text";return wH0({type:"genfrac",mode:E.mode,numer:C,denom:D,continued:k,hasBarLine:F,leftDelim:U,rightDelim:z,barSize:null},f)},htmlBuilder:M34,mathmlBuilder:Z34});G4({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(u){var{parser:B,funcName:E,token:A}=u,C;switch(E){case"\\over":C="\\frac";break;case"\\choose":C="\\binom";break;case"\\atop":C="\\\\atopfrac";break;case"\\brace":C="\\\\bracefrac";break;case"\\brack":C="\\\\brackfrac";break;default:throw Error("Unrecognized infix genfrac command")}return{type:"infix",mode:B.mode,replaceWith:C,token:A}}});GG0=["display","text","script","scriptscript"];G4({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(u,B){var{parser:E}=u,A=B[4],C=B[5],D=Bj(B[0]),F=D.type==="atom"&&D.family==="open"?HG0(D.text):null,U=Bj(B[1]),z=U.type==="atom"&&U.family==="close"?HG0(U.text):null,k=p3(B[2],"size"),f,l=null;if(k.isBlank)f=!0;else l=k.value,f=l.number>0;var b=null,M=B[3];if(M.type==="ordgroup"){if(M.body.length>0){var Z=p3(M.body[0],"textord");b=GG0[Number(Z.text)]}}else M=p3(M,"textord"),b=GG0[Number(M.text)];return wH0({type:"genfrac",mode:E.mode,numer:A,denom:C,continued:!1,hasBarLine:f,barSize:l,leftDelim:F,rightDelim:z},b)}});G4({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(u,B){var{parser:E,funcName:A,token:C}=u;return{type:"infix",mode:E.mode,replaceWith:"\\\\abovefrac",size:p3(B[0],"size").value,token:C}}});G4({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=B[0],D=p3(B[1],"infix").size;if(!D)throw Error("\\\\abovefrac expected size, but got "+String(D));var F=B[2],U=D.number>0;return{type:"genfrac",mode:E.mode,numer:C,denom:F,continued:!1,hasBarLine:U,barSize:D,leftDelim:null,rightDelim:null}}});G4({type:"horizBrace",names:["\\overbrace","\\underbrace","\\overbracket","\\underbracket"],props:{numArgs:1},handler(u,B){var{parser:E,funcName:A}=u;return{type:"horizBrace",mode:E.mode,label:A,isOver:A.includes("\\over"),base:B[0]}},htmlBuilder:KH0,mathmlBuilder:J34});G4({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(u,B)=>{var{parser:E}=u,A=B[1],C=p3(B[0],"url").url;if(!E.settings.isTrusted({command:"\\href",url:C}))return E.formatUnsupportedCmd("\\href");return{type:"href",mode:E.mode,href:C,body:G2(A)}},htmlBuilder:(u,B)=>{var E=_2(u.body,B,!1);return Y44(u.href,[],E,B)},mathmlBuilder:(u,B)=>{var E=vf(u.body,B);if(!(E instanceof E4))E=new E4("mrow",[E]);return E.setAttribute("href",u.href),E}});G4({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(u,B)=>{var{parser:E}=u,A=p3(B[0],"url").url;if(!E.settings.isTrusted({command:"\\url",url:A}))return E.formatUnsupportedCmd("\\url");var C=[];for(var D=0;D<A.length;D++){var F=A[D];if(F==="~")F="\\textasciitilde";C.push({type:"textord",mode:"text",text:F})}var U={type:"text",mode:E.mode,font:"\\texttt",body:C};return{type:"href",mode:E.mode,href:A,body:G2(U)}}});G4({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(u,B){var{parser:E}=u;return{type:"hbox",mode:E.mode,body:G2(B[0])}},htmlBuilder(u,B){var E=_2(u.body,B.withFont(""),!1);return Kz(E)},mathmlBuilder(u,B){return new E4("mrow",t8(u.body,B.withFont("")))}});G4({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(u,B)=>{var{parser:E,funcName:A,token:C}=u,D=p3(B[0],"raw").string,F=B[1];if(E.settings.strict)E.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var U,z={};switch(A){case"\\htmlClass":z.class=D,U={command:"\\htmlClass",class:D};break;case"\\htmlId":z.id=D,U={command:"\\htmlId",id:D};break;case"\\htmlStyle":z.style=D,U={command:"\\htmlStyle",style:D};break;case"\\htmlData":{var k=D.split(",");for(var f=0;f<k.length;f++){var l=k[f],b=l.indexOf("=");if(b<0)throw new B4("\\htmlData key/value '"+l+"' missing equals sign");var M=l.slice(0,b),Z=l.slice(b+1);z["data-"+M.trim()]=Z}U={command:"\\htmlData",attributes:z};break}default:throw Error("Unrecognized html command")}if(!E.settings.isTrusted(U))return E.formatUnsupportedCmd(A);return{type:"html",mode:E.mode,attributes:z,body:G2(F)}},htmlBuilder:(u,B)=>{var E=_2(u.body,B,!1),A=["enclosing"];if(u.attributes.class)A.push(...u.attributes.class.trim().split(/\s+/));var C=u4(A,E,B);for(var D in u.attributes)if(D!=="class"&&u.attributes.hasOwnProperty(D))C.setAttribute(D,u.attributes[D]);return C},mathmlBuilder:(u,B)=>{return vf(u.body,B)}});G4({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInArgument:!0,allowedInText:!0},handler:(u,B)=>{var{parser:E}=u;return{type:"htmlmathml",mode:E.mode,html:G2(B[0]),mathml:G2(B[1])}},htmlBuilder:(u,B)=>{var E=_2(u.html,B,!1);return Kz(E)},mathmlBuilder:(u,B)=>{return vf(u.mathml,B)}});G4({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(u,B,E)=>{var{parser:A}=u,C={number:0,unit:"em"},D={number:0.9,unit:"em"},F={number:0,unit:"em"},U="";if(E[0]){var z=p3(E[0],"raw").string,k=z.split(",");for(var f=0;f<k.length;f++){var l=k[f].split("=");if(l.length===2){var b=l[1].trim();switch(l[0].trim()){case"alt":U=b;break;case"width":C=io(b);break;case"height":D=io(b);break;case"totalheight":F=io(b);break;default:throw new B4("Invalid key: '"+l[0]+"' in \\includegraphics.")}}}}var M=p3(B[0],"url").url;if(U==="")U=M,U=U.replace(/^.*[\\/]/,""),U=U.substring(0,U.lastIndexOf("."));if(!A.settings.isTrusted({command:"\\includegraphics",url:M}))return A.formatUnsupportedCmd("\\includegraphics");return{type:"includegraphics",mode:A.mode,alt:U,width:C,height:D,totalheight:F,src:M}},htmlBuilder:(u,B)=>{var E=G9(u.height,B),A=0;if(u.totalheight.number>0)A=G9(u.totalheight,B)-E;var C=0;if(u.width.number>0)C=G9(u.width,B);var D={height:z4(E+A)};if(C>0)D.width=z4(C);if(A>0)D.verticalAlign=z4(-A);var F=new aG0(u.src,u.alt,D);return F.height=E,F.depth=A,F},mathmlBuilder:(u,B)=>{var E=new E4("mglyph",[]);E.setAttribute("alt",u.alt);var A=G9(u.height,B),C=0;if(u.totalheight.number>0)C=G9(u.totalheight,B)-A,E.setAttribute("valign",z4(-C));if(E.setAttribute("height",z4(A+C)),u.width.number>0){var D=G9(u.width,B);E.setAttribute("width",z4(D))}return E.setAttribute("src",u.src),E}});G4({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(u,B){var{parser:E,funcName:A}=u,C=p3(B[0],"size");if(E.settings.strict){var D=A[1]==="m",F=C.value.unit==="mu";if(D){if(!F)E.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+A+" supports only mu units, "+("not "+C.value.unit+" units"));if(E.mode!=="math")E.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+A+" works only in math mode")}else if(F)E.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+A+" doesn't support mu units")}return{type:"kern",mode:E.mode,dimension:C.value}},htmlBuilder(u,B){return rG0(u.dimension,B)},mathmlBuilder(u,B){var E=G9(u.dimension,B);return new ft(E)}});G4({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=B[0];return{type:"lap",mode:E.mode,alignment:A.slice(5),body:C}},htmlBuilder:(u,B)=>{var E;if(u.alignment==="clap")E=u4([],[p1(u.body,B)]),E=u4(["inner"],[E],B);else E=u4(["inner"],[p1(u.body,B)]);var A=u4(["fix"],[]),C=u4([u.alignment],[E,A],B),D=u4(["strut"]);if(D.style.height=z4(C.height+C.depth),C.depth)D.style.verticalAlign=z4(-C.depth);return C.children.unshift(D),C=u4(["thinbox"],[C],B),u4(["mord","vbox"],[C],B)},mathmlBuilder:(u,B)=>{var E=new E4("mpadded",[H6(u.body,B)]);if(u.alignment!=="rlap"){var A=u.alignment==="llap"?"-1":"-0.5";E.setAttribute("lspace",A+"width")}return E.setAttribute("width","0px"),E}});G4({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(u,B){var{funcName:E,parser:A}=u,C=A.mode;A.switchMode("math");var D=E==="\\("?"\\)":"$",F=A.parseExpression(!1,D);return A.expect(D),A.switchMode(C),{type:"styling",mode:A.mode,style:"text",resetFont:!0,body:F}}});G4({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(u,B){throw new B4("Mismatched "+u.funcName)}});G4({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(u,B)=>{var{parser:E}=u;return{type:"mathchoice",mode:E.mode,display:G2(B[0]),text:G2(B[1]),script:G2(B[2]),scriptscript:G2(B[3])}},htmlBuilder:(u,B)=>{var E=LG0(u,B),A=_2(E,B,!1);return Kz(A)},mathmlBuilder:(u,B)=>{var E=LG0(u,B);return vf(E,B)}});GH0=new Set(["\\smallint"]),w34={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","":"\\bigvee","⋂":"\\bigcap","":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};G4({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","","⋂","","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=A;if(C.length===1)C=w34[C];return{type:"op",mode:E.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:C}},htmlBuilder:iQ,mathmlBuilder:ox});G4({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(u,B)=>{var{parser:E}=u,A=B[0];return{type:"op",mode:E.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:G2(A)}},htmlBuilder:iQ,mathmlBuilder:ox});K34={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};G4({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(u){var{parser:B,funcName:E}=u;return{type:"op",mode:B.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:E}},htmlBuilder:iQ,mathmlBuilder:ox});G4({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(u){var{parser:B,funcName:E}=u;return{type:"op",mode:B.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:E}},htmlBuilder:iQ,mathmlBuilder:ox});G4({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0,allowedInArgument:!0},handler(u){var{parser:B,funcName:E}=u,A=E;if(A.length===1)A=K34[A];return{type:"op",mode:B.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:A}},htmlBuilder:iQ,mathmlBuilder:ox});G4({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(u,B)=>{var{parser:E,funcName:A}=u,C=B[0];return{type:"operatorname",mode:E.mode,body:G2(C),alwaysHandleSupSub:A==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:HH0,mathmlBuilder:Q34});R0("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");KZ({type:"ordgroup",htmlBuilder(u,B){if(u.semisimple)return Kz(_2(u.body,B,!1));return u4(["mord"],_2(u.body,B,!0),B)},mathmlBuilder(u,B){return vf(u.body,B,!0)}});G4({type:"overline",names:["\\overline"],props:{numArgs:1},handler(u,B){var{parser:E}=u,A=B[0];return{type:"overline",mode:E.mode,body:A}},htmlBuilder(u,B){var E=p1(u.body,B.havingCrampedStyle()),A=PQ("overline-line",B),C=B.fontMetrics().defaultRuleThickness,D=n1({positionType:"firstBaseline",children:[{type:"elem",elem:E},{type:"kern",size:3*C},{type:"elem",elem:A},{type:"kern",size:C}]});return u4(["mord","overline"],[D],B)},mathmlBuilder(u,B){var E=new E4("mo",[new B2("‾")]);E.setAttribute("stretchy","true");var A=new E4("mover",[H6(u.body,B),E]);return A.setAttribute("accent","true"),A}});G4({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(u,B)=>{var{parser:E}=u,A=B[0];return{type:"phantom",mode:E.mode,body:G2(A)}},htmlBuilder:(u,B)=>{var E=_2(u.body,B.withPhantom(),!1);return Kz(E)},mathmlBuilder:(u,B)=>{var E=t8(u.body,B);return new E4("mphantom",E)}});R0("\\hphantom","\\smash{\\phantom{#1}}");G4({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(u,B)=>{var{parser:E}=u,A=B[0];return{type:"vphantom",mode:E.mode,body:A}},htmlBuilder:(u,B)=>{var E=u4(["inner"],[p1(u.body,B.withPhantom())]),A=u4(["fix"],[]);return u4(["mord","rlap"],[E,A],B)},mathmlBuilder:(u,B)=>{var E=t8(G2(u.body),B),A=new E4("mphantom",E),C=new E4("mpadded",[A]);return C.setAttribute("width","0px"),C}});G4({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(u,B){var{parser:E}=u,A=p3(B[0],"size").value,C=B[1];return{type:"raisebox",mode:E.mode,dy:A,body:C}},htmlBuilder(u,B){var E=p1(u.body,B),A=G9(u.dy,B);return n1({positionType:"shift",positionData:-A,children:[{type:"elem",elem:E}]})},mathmlBuilder(u,B){var E=new E4("mpadded",[H6(u.body,B)]),A=u.dy.number+u.dy.unit;return E.setAttribute("voffset",A),E}});G4({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(u){var{parser:B}=u;return{type:"internal",mode:B.mode}}});G4({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(u,B,E){var{parser:A}=u,C=E[0],D=p3(B[0],"size"),F=p3(B[1],"size");return{type:"rule",mode:A.mode,shift:C&&p3(C,"size").value,width:D.value,height:F.value}},htmlBuilder(u,B){var E=u4(["mord","rule"],[],B),A=G9(u.width,B),C=G9(u.height,B),D=u.shift?G9(u.shift,B):0;return E.style.borderRightWidth=z4(A),E.style.borderTopWidth=z4(C),E.style.bottom=z4(D),E.width=A,E.height=C+D,E.depth=-D,E.maxFontSize=C*1.125*B.sizeMultiplier,E},mathmlBuilder(u,B){var E=G9(u.width,B),A=G9(u.height,B),C=u.shift?G9(u.shift,B):0,D=B.color&&B.getColor()||"black",F=new E4("mspace");F.setAttribute("mathbackground",D),F.setAttribute("width",z4(E)),F.setAttribute("height",z4(A));var U=new E4("mpadded",[F]);if(C>=0)U.setAttribute("height",z4(C));else U.setAttribute("height",z4(C)),U.setAttribute("depth",z4(-C));return U.setAttribute("voffset",z4(C)),U}});qG0=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];G4({type:"sizing",names:qG0,props:{numArgs:0,allowedInText:!0},handler:(u,B)=>{var{breakOnTokenText:E,funcName:A,parser:C}=u,D=C.parseExpression(!1,E);return{type:"sizing",mode:C.mode,size:qG0.indexOf(A)+1,body:D}},htmlBuilder:G34,mathmlBuilder:(u,B)=>{var E=B.havingSize(u.size),A=t8(u.body,E),C=new E4("mstyle",A);return C.setAttribute("mathsize",z4(E.sizeMultiplier)),C}});G4({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(u,B,E)=>{var{parser:A}=u,C=!1,D=!1,F=E[0]&&p3(E[0],"ordgroup");if(F){var U;for(var z=0;z<F.body.length;++z){var k=F.body[z];if(U=Uj(k).text,U==="t")C=!0;else if(U==="b")D=!0;else{C=!1,D=!1;break}}}else C=!0,D=!0;var f=B[0];return{type:"smash",mode:A.mode,body:f,smashHeight:C,smashDepth:D}},htmlBuilder:(u,B)=>{var E=u4([],[p1(u.body,B)]);if(!u.smashHeight&&!u.smashDepth)return E;if(u.smashHeight)E.height=0;if(u.smashDepth)E.depth=0;if(u.smashHeight&&u.smashDepth)return u4(["mord","smash"],[E],B);if(E.children)for(var A=0;A<E.children.length;A++){if(u.smashHeight)E.children[A].height=0;if(u.smashDepth)E.children[A].depth=0}var C=n1({positionType:"firstBaseline",children:[{type:"elem",elem:E}]});return u4(["mord"],[C],B)},mathmlBuilder:(u,B)=>{var E=new E4("mpadded",[H6(u.body,B)]);if(u.smashHeight)E.setAttribute("height","0px");if(u.smashDepth)E.setAttribute("depth","0px");return E}});G4({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(u,B,E){var{parser:A}=u,C=E[0],D=B[0];return{type:"sqrt",mode:A.mode,body:D,index:C}},htmlBuilder(u,B){var E=p1(u.body,B.havingCrampedStyle());if(E.height===0)E.height=B.fontMetrics().xHeight;E=jQ(E,B);var A=B.fontMetrics(),C=A.defaultRuleThickness,D=C;if(B.style.id<V3.TEXT.id)D=B.fontMetrics().xHeight;var F=C+D/4,U=E.height+E.depth+F+C,{span:z,ruleWidth:k,advanceWidth:f}=D34(U,B),l=z.height-k;if(l>E.height+E.depth+F)F=(F+l-E.height-E.depth)/2;var b=z.height-E.height-F-k;E.style.paddingLeft=z4(f);var M=n1({positionType:"firstBaseline",children:[{type:"elem",elem:E,wrapperClasses:["svg-align"]},{type:"kern",size:-(E.height+b)},{type:"elem",elem:z},{type:"kern",size:k}]});if(!u.index)return u4(["mord","sqrt"],[M],B);else{var Z=B.havingStyle(V3.SCRIPTSCRIPT),J=p1(u.index,Z,B),w=0.6*(M.height-M.depth),K=n1({positionType:"shift",positionData:-w,children:[{type:"elem",elem:J}]}),Q=u4(["root"],[K]);return u4(["mord","sqrt"],[Q,M],B)}},mathmlBuilder(u,B){var{body:E,index:A}=u;return A?new E4("mroot",[H6(E,B),H6(A,B)]):new E4("msqrt",[H6(E,B)])}});Et={display:V3.DISPLAY,text:V3.TEXT,script:V3.SCRIPT,scriptscript:V3.SCRIPTSCRIPT};G4({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(u,B){var{breakOnTokenText:E,funcName:A,parser:C}=u,D=C.parseExpression(!0,E),F=A.slice(1,A.length-5);if(!H34(F))throw Error("Unknown style: "+F);return{type:"styling",mode:C.mode,style:F,body:D}},htmlBuilder(u,B){var E=Et[u.style],A=B.havingStyle(E);if(u.resetFont)A=A.withFont("");return LH0(u.body,A,B)},mathmlBuilder(u,B){var E=Et[u.style],A=B.havingStyle(E);if(u.resetFont)A=A.withFont("");var C=t8(u.body,A),D=new E4("mstyle",C),F={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},U=F[u.style];return D.setAttribute("scriptlevel",U[0]),D.setAttribute("displaystyle",U[1]),D}});KZ({type:"supsub",htmlBuilder(u,B){var E=L34(u,B);if(E)return E(u,B);var{base:A,sup:C,sub:D}=u,F=p1(A,B),U,z,k=B.fontMetrics(),f=0,l=0,b=A&&Jz(A);if(C){var M=B.havingStyle(B.style.sup());if(U=p1(C,M,B),!b)f=F.height-M.fontMetrics().supDrop*M.sizeMultiplier/B.sizeMultiplier}if(D){var Z=B.havingStyle(B.style.sub());if(z=p1(D,Z,B),!b)l=F.depth+Z.fontMetrics().subDrop*Z.sizeMultiplier/B.sizeMultiplier}var J;if(B.style===V3.DISPLAY)J=k.sup1;else if(B.style.cramped)J=k.sup3;else J=k.sup2;var w=B.sizeMultiplier,K=z4(0.5/k.ptPerEm/w),Q=null;if(z){var G=u.base&&u.base.type==="op"&&u.base.name&&(u.base.name==="\\oiint"||u.base.name==="\\oiiint");if(F instanceof eB||G){var L;Q=z4(-((L=F.italic)!=null?L:0))}}var H;if(U&&z){f=Math.max(f,J,U.depth+0.25*k.xHeight),l=Math.max(l,k.sub2);var q=k.defaultRuleThickness,x=4*q;if(f-U.depth-(z.height-l)<x){l=x-(f-U.depth)+z.height;var v=0.8*k.xHeight-(f-U.depth);if(v>0)f+=v,l-=v}var W=[{type:"elem",elem:z,shift:l,marginRight:K,marginLeft:Q},{type:"elem",elem:U,shift:-f,marginRight:K}];H=n1({positionType:"individualShift",children:W})}else if(z){l=Math.max(l,k.sub1,z.height-0.8*k.xHeight);var S=[{type:"elem",elem:z,marginLeft:Q,marginRight:K}];H=n1({positionType:"shift",positionData:l,children:S})}else if(U)f=Math.max(f,J,U.depth+0.25*k.xHeight),H=n1({positionType:"shift",positionData:-f,children:[{type:"elem",elem:U,marginRight:K}]});else throw Error("supsub must have either sup or sub.");var T=oo(F,"right")||"mord";return u4([T],[F,u4(["msupsub"],[H])],B)},mathmlBuilder(u,B){var E=!1,A,C;if(u.base&&u.base.type==="horizBrace"){if(C=!!u.sup,C===u.base.isOver)E=!0,A=u.base.isOver}if(u.base&&(u.base.type==="op"||u.base.type==="operatorname"))u.base.parentIsSupSub=!0;var D=[H6(u.base,B)];if(u.sub)D.push(H6(u.sub,B));if(u.sup)D.push(H6(u.sup,B));var F;if(E)F=A?"mover":"munder";else if(!u.sub){var U=u.base;if(U&&U.type==="op"&&U.limits&&(B.style===V3.DISPLAY||U.alwaysHandleSupSub))F="mover";else if(U&&U.type==="operatorname"&&U.alwaysHandleSupSub&&(U.limits||B.style===V3.DISPLAY))F="mover";else F="msup"}else if(!u.sup){var z=u.base;if(z&&z.type==="op"&&z.limits&&(B.style===V3.DISPLAY||z.alwaysHandleSupSub))F="munder";else if(z&&z.type==="operatorname"&&z.alwaysHandleSupSub&&(z.limits||B.style===V3.DISPLAY))F="munder";else F="msub"}else{var k=u.base;if(k&&k.type==="op"&&k.limits&&B.style===V3.DISPLAY)F="munderover";else if(k&&k.type==="operatorname"&&k.alwaysHandleSupSub&&(B.style===V3.DISPLAY||k.limits))F="munderover";else F="msubsup"}return new E4(F,D)}});KZ({type:"atom",htmlBuilder(u,B){return zt(u.text,u.mode,B,["m"+u.family])},mathmlBuilder(u,B){var E=new E4("mo",[gE(u.text,u.mode)]);if(u.family==="bin"){var A=bt(u,B);if(A==="bold-italic")E.setAttribute("mathvariant",A)}else if(u.family==="punct")E.setAttribute("separator","true");else if(u.family==="open"||u.family==="close")E.setAttribute("stretchy","false");return E}});qH0={mi:"italic",mn:"normal",mtext:"normal"};KZ({type:"mathord",htmlBuilder(u,B){return Cj(u,B,"mathord")},mathmlBuilder(u,B){var E=new E4("mi",[gE(u.text,u.mode,B)]),A=bt(u,B)||"italic";if(A!==qH0[E.type])E.setAttribute("mathvariant",A);return E}});KZ({type:"textord",htmlBuilder(u,B){return Cj(u,B,"textord")},mathmlBuilder(u,B){var E=gE(u.text,u.mode,B),A=bt(u,B)||"normal",C;if(u.mode==="text")C=new E4("mtext",[E]);else if(/[0-9]/.test(u.text))C=new E4("mn",[E]);else if(u.text==="\\prime")C=new E4("mo",[E]);else C=new E4("mi",[E]);if(A!==qH0[C.type])C.setAttribute("mathvariant",A);return C}});ao={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Vo={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};KZ({type:"spacing",htmlBuilder(u,B){if(Vo.hasOwnProperty(u.text)){var E=Vo[u.text].className||"";if(u.mode==="text"){var A=Cj(u,B,"textord");return A.classes.push(E),A}else return u4(["mspace",E],[zt(u.text,u.mode,B)],B)}else if(ao.hasOwnProperty(u.text))return u4(["mspace",ao[u.text]],[],B);else throw new B4('Unknown type of space "'+u.text+'"')},mathmlBuilder(u,B){var E;if(Vo.hasOwnProperty(u.text))E=new E4("mtext",[new B2(" ")]);else if(ao.hasOwnProperty(u.text))return new E4("mspace");else throw new B4('Unknown type of space "'+u.text+'"');return E}});KZ({type:"tag",mathmlBuilder(u,B){var E=new E4("mtable",[new E4("mtr",[XG0(),new E4("mtd",[vf(u.body,B)]),XG0(),new E4("mtd",[vf(u.tag,B)])])]);return E.setAttribute("width","100%"),E}});xG0={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},vG0={"\\textbf":"textbf","\\textmd":"textmd"},q34={"\\textit":"textit","\\textup":"textup"};G4({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(u,B){var{parser:E,funcName:A}=u,C=B[0];return{type:"text",mode:E.mode,body:G2(C),font:A}},htmlBuilder(u,B){var E=SG0(u,B),A=_2(u.body,E,!0);return u4(["mord","text"],A,E)},mathmlBuilder(u,B){var E=SG0(u,B);return vf(u.body,E)}});G4({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(u,B){var{parser:E}=u;return{type:"underline",mode:E.mode,body:B[0]}},htmlBuilder(u,B){var E=p1(u.body,B),A=PQ("underline-line",B),C=B.fontMetrics().defaultRuleThickness,D=n1({positionType:"top",positionData:E.height,children:[{type:"kern",size:C},{type:"elem",elem:A},{type:"kern",size:3*C},{type:"elem",elem:E}]});return u4(["mord","underline"],[D],B)},mathmlBuilder(u,B){var E=new E4("mo",[new B2("‾")]);E.setAttribute("stretchy","true");var A=new E4("munder",[H6(u.body,B),E]);return A.setAttribute("accentunder","true"),A}});G4({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(u,B){var{parser:E}=u;return{type:"vcenter",mode:E.mode,body:B[0]}},htmlBuilder(u,B){var E=p1(u.body,B),A=B.fontMetrics().axisHeight,C=0.5*(E.height-A-(E.depth+A));return n1({positionType:"shift",positionData:C,children:[{type:"elem",elem:E}]})},mathmlBuilder(u,B){var E=new E4("mpadded",[H6(u.body,B)],["vcenter"]);return new E4("mrow",[E])}});G4({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(u,B,E){throw new B4("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(u,B){var E=WG0(u),A=[],C=B.havingStyle(B.style.text());for(var D=0;D<E.length;D++){var F=E[D];if(F==="~")F="\\textasciitilde";A.push(FB(F,"Typewriter-Regular",u.mode,C,["mord","texttt"]))}return u4(["mord","text"].concat(C.sizingClasses(B)),mG0(A),C)},mathmlBuilder(u,B){var E=new B2(WG0(u)),A=new E4("mtext",[E]);return A.setAttribute("mathvariant","monospace"),A}});qf=cG0,v34="("+X34+")"+XH0+"*",W34=new RegExp(At+"+$"),Y34="("+XH0+"+)|"+(S34+"|")+"([!-\\[\\]-‧‪-퟿豈-￿]"+(At+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(At+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+v34)+("|"+x34+")");R34=bH0;R0("\\noexpand",function(u){var B=u.popToken();if(u.isExpandable(B.text))B.noexpand=!0,B.treatAsRelax=!0;return{tokens:[B],numArgs:0}});R0("\\expandafter",function(u){var B=u.popToken();return u.expandOnce(!0),{tokens:[B],numArgs:0}});R0("\\@firstoftwo",function(u){var B=u.consumeArgs(2);return{tokens:B[0],numArgs:0}});R0("\\@secondoftwo",function(u){var B=u.consumeArgs(2);return{tokens:B[1],numArgs:0}});R0("\\@ifnextchar",function(u){var B=u.consumeArgs(3);u.consumeSpaces();var E=u.future();if(B[0].length===1&&B[0][0].text===E.text)return{tokens:B[1],numArgs:0};else return{tokens:B[2],numArgs:0}});R0("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");R0("\\TextOrMath",function(u){var B=u.consumeArgs(2);if(u.mode==="text")return{tokens:B[0],numArgs:0};else return{tokens:B[1],numArgs:0}});YG0={"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};R0("\\char",function(u){var B=u.popToken(),E,A=0;if(B.text==="'")E=8,B=u.popToken();else if(B.text==='"')E=16,B=u.popToken();else if(B.text==="`")if(B=u.popToken(),B.text[0]==="\\")A=B.text.charCodeAt(1);else if(B.text==="EOF")throw new B4("\\char` missing argument");else A=B.text.charCodeAt(0);else E=10;if(E){if(A=YG0[B.text],A==null||A>=E)throw new B4("Invalid base-"+E+" digit "+B.text);var C;while((C=YG0[u.future().text])!=null&&C<E)A*=E,A+=C,u.popToken()}return"\\@char{"+A+"}"});R0("\\newcommand",(u)=>Kt(u,!1,!0,!1));R0("\\renewcommand",(u)=>Kt(u,!0,!1,!1));R0("\\providecommand",(u)=>Kt(u,!0,!0,!0));R0("\\message",(u)=>{var B=u.consumeArgs(1)[0];return console.log(B.reverse().map((E)=>E.text).join("")),""});R0("\\errmessage",(u)=>{var B=u.consumeArgs(1)[0];return console.error(B.reverse().map((E)=>E.text).join("")),""});R0("\\show",(u)=>{var B=u.popToken(),E=B.text;return console.log(B,u.macros.get(E),qf[E],u9.math[E],u9.text[E]),""});R0("\\bgroup","{");R0("\\egroup","}");R0("~","\\nobreakspace");R0("\\lq","`");R0("\\rq","'");R0("\\aa","\\r a");R0("\\AA","\\r A");R0("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}");R0("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");R0("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}");R0("","\\mathscr{B}");R0("","\\mathscr{E}");R0("","\\mathscr{F}");R0("","\\mathscr{H}");R0("","\\mathscr{I}");R0("","\\mathscr{L}");R0("","\\mathscr{M}");R0("","\\mathscr{R}");R0("","\\mathfrak{C}");R0("","\\mathfrak{H}");R0("","\\mathfrak{Z}");R0("\\Bbbk","\\Bbb{k}");R0("\\llap","\\mathllap{\\textrm{#1}}");R0("\\rlap","\\mathrlap{\\textrm{#1}}");R0("\\clap","\\mathclap{\\textrm{#1}}");R0("\\mathstrut","\\vphantom{(}");R0("\\underbar","\\underline{\\text{#1}}");R0("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}\\nobreak}{\\char"338}');R0("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}");R0("\\ne","\\neq");R0("≠","\\neq");R0("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}"+"{\\mathrel{\\char`∉}}");R0("∉","\\notin");R0("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}"+"}{\\mathrel{\\char`≘}}");R0("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}");R0("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}");R0("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}"+"{\\mathrel{\\char`≛}}");R0("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}"+"{\\mathrel{\\char`≝}}");R0("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}"+"{\\mathrel{\\char`≞}}");R0("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}");R0("⟂","\\perp");R0("‼","\\mathclose{!\\mkern-0.8mu!}");R0("∌","\\notni");R0("⌜","\\ulcorner");R0("⌝","\\urcorner");R0("⌞","\\llcorner");R0("⌟","\\lrcorner");R0("©","\\copyright");R0("®","\\textregistered");R0("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');R0("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');R0("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');R0("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');R0("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");R0("⋮","\\vdots");R0("\\varGamma","\\mathit{\\Gamma}");R0("\\varDelta","\\mathit{\\Delta}");R0("\\varTheta","\\mathit{\\Theta}");R0("\\varLambda","\\mathit{\\Lambda}");R0("\\varXi","\\mathit{\\Xi}");R0("\\varPi","\\mathit{\\Pi}");R0("\\varSigma","\\mathit{\\Sigma}");R0("\\varUpsilon","\\mathit{\\Upsilon}");R0("\\varPhi","\\mathit{\\Phi}");R0("\\varPsi","\\mathit{\\Psi}");R0("\\varOmega","\\mathit{\\Omega}");R0("\\substack","\\begin{subarray}{c}#1\\end{subarray}");R0("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");R0("\\boxed","\\fbox{$\\displaystyle{#1}$}");R0("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");R0("\\implies","\\DOTSB\\;\\Longrightarrow\\;");R0("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");R0("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");R0("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");RG0={",":"\\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"},T34=new Set(["bin","rel"]);R0("\\dots",function(u){var B="\\dotso",E=u.expandAfterFuture().text;if(E in RG0)B=RG0[E];else if(E.slice(0,4)==="\\not")B="\\dotsb";else if(E in u9.math){if(T34.has(u9.math[E].group))B="\\dotsb"}return B});Qt={")":!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};R0("\\dotso",function(u){var B=u.future().text;if(B in Qt)return"\\ldots\\,";else return"\\ldots"});R0("\\dotsc",function(u){var B=u.future().text;if(B in Qt&&B!==",")return"\\ldots\\,";else return"\\ldots"});R0("\\cdots",function(u){var B=u.future().text;if(B in Qt)return"\\@cdots\\,";else return"\\@cdots"});R0("\\dotsb","\\cdots");R0("\\dotsm","\\cdots");R0("\\dotsi","\\!\\cdots");R0("\\dotsx","\\ldots\\,");R0("\\DOTSI","\\relax");R0("\\DOTSB","\\relax");R0("\\DOTSX","\\relax");R0("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");R0("\\,","\\tmspace+{3mu}{.1667em}");R0("\\thinspace","\\,");R0("\\>","\\mskip{4mu}");R0("\\:","\\tmspace+{4mu}{.2222em}");R0("\\medspace","\\:");R0("\\;","\\tmspace+{5mu}{.2777em}");R0("\\thickspace","\\;");R0("\\!","\\tmspace-{3mu}{.1667em}");R0("\\negthinspace","\\!");R0("\\negmedspace","\\tmspace-{4mu}{.2222em}");R0("\\negthickspace","\\tmspace-{5mu}{.277em}");R0("\\enspace","\\kern.5em ");R0("\\enskip","\\hskip.5em\\relax");R0("\\quad","\\hskip1em\\relax");R0("\\qquad","\\hskip2em\\relax");R0("\\tag","\\@ifstar\\tag@literal\\tag@paren");R0("\\tag@paren","\\tag@literal{({#1})}");R0("\\tag@literal",(u)=>{if(u.macros.get("\\df@tag"))throw new B4("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});R0("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");R0("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");R0("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");R0("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");R0("\\newline","\\\\\\relax");R0("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");vH0=z4(eD["Main-Regular"][84][1]-0.7*eD["Main-Regular"][65][1]);R0("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+vH0+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");R0("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+vH0+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");R0("\\hspace","\\@ifstar\\@hspacer\\@hspace");R0("\\@hspace","\\hskip #1\\relax");R0("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");R0("\\ordinarycolon",":");R0("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");R0("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');R0("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');R0("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');R0("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');R0("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');R0("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');R0("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');R0("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');R0("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');R0("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');R0("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');R0("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');R0("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');R0("∷","\\dblcolon");R0("∹","\\eqcolon");R0("≔","\\coloneqq");R0("≕","\\eqqcolon");R0("⩴","\\Coloneqq");R0("\\ratio","\\vcentcolon");R0("\\coloncolon","\\dblcolon");R0("\\colonequals","\\coloneqq");R0("\\coloncolonequals","\\Coloneqq");R0("\\equalscolon","\\eqqcolon");R0("\\equalscoloncolon","\\Eqqcolon");R0("\\colonminus","\\coloneq");R0("\\coloncolonminus","\\Coloneq");R0("\\minuscolon","\\eqcolon");R0("\\minuscoloncolon","\\Eqcolon");R0("\\coloncolonapprox","\\Colonapprox");R0("\\coloncolonsim","\\Colonsim");R0("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");R0("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");R0("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");R0("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");R0("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}");R0("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");R0("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");R0("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");R0("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");R0("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");R0("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");R0("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");R0("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");R0("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}");R0("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}");R0("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}");R0("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}");R0("\\nleqq","\\html@mathml{\\@nleqq}{≰}");R0("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}");R0("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}");R0("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}");R0("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}");R0("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}");R0("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}");R0("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}");R0("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}");R0("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}");R0("\\imath","\\html@mathml{\\@imath}{ı}");R0("\\jmath","\\html@mathml{\\@jmath}{ȷ}");R0("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}"+"{\\mathopen{\\char`⟦}}");R0("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}"+"{\\mathclose{\\char`⟧}}");R0("⟦","\\llbracket");R0("⟧","\\rrbracket");R0("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}"+"{\\mathopen{\\char`⦃}}");R0("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}"+"{\\mathclose{\\char`⦄}}");R0("⦃","\\lBrace");R0("⦄","\\rBrace");R0("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}"+"{\\char`⦵}}");R0("⦵","\\minuso");R0("\\darr","\\downarrow");R0("\\dArr","\\Downarrow");R0("\\Darr","\\Downarrow");R0("\\lang","\\langle");R0("\\rang","\\rangle");R0("\\uarr","\\uparrow");R0("\\uArr","\\Uparrow");R0("\\Uarr","\\Uparrow");R0("\\N","\\mathbb{N}");R0("\\R","\\mathbb{R}");R0("\\Z","\\mathbb{Z}");R0("\\alef","\\aleph");R0("\\alefsym","\\aleph");R0("\\Alpha","\\mathrm{A}");R0("\\Beta","\\mathrm{B}");R0("\\bull","\\bullet");R0("\\Chi","\\mathrm{X}");R0("\\clubs","\\clubsuit");R0("\\cnums","\\mathbb{C}");R0("\\Complex","\\mathbb{C}");R0("\\Dagger","\\ddagger");R0("\\diamonds","\\diamondsuit");R0("\\empty","\\emptyset");R0("\\Epsilon","\\mathrm{E}");R0("\\Eta","\\mathrm{H}");R0("\\exist","\\exists");R0("\\harr","\\leftrightarrow");R0("\\hArr","\\Leftrightarrow");R0("\\Harr","\\Leftrightarrow");R0("\\hearts","\\heartsuit");R0("\\image","\\Im");R0("\\infin","\\infty");R0("\\Iota","\\mathrm{I}");R0("\\isin","\\in");R0("\\Kappa","\\mathrm{K}");R0("\\larr","\\leftarrow");R0("\\lArr","\\Leftarrow");R0("\\Larr","\\Leftarrow");R0("\\lrarr","\\leftrightarrow");R0("\\lrArr","\\Leftrightarrow");R0("\\Lrarr","\\Leftrightarrow");R0("\\Mu","\\mathrm{M}");R0("\\natnums","\\mathbb{N}");R0("\\Nu","\\mathrm{N}");R0("\\Omicron","\\mathrm{O}");R0("\\plusmn","\\pm");R0("\\rarr","\\rightarrow");R0("\\rArr","\\Rightarrow");R0("\\Rarr","\\Rightarrow");R0("\\real","\\Re");R0("\\reals","\\mathbb{R}");R0("\\Reals","\\mathbb{R}");R0("\\Rho","\\mathrm{P}");R0("\\sdot","\\cdot");R0("\\sect","\\S");R0("\\spades","\\spadesuit");R0("\\sub","\\subset");R0("\\sube","\\subseteq");R0("\\supe","\\supseteq");R0("\\Tau","\\mathrm{T}");R0("\\thetasym","\\vartheta");R0("\\weierp","\\wp");R0("\\Zeta","\\mathrm{Z}");R0("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");R0("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");R0("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");R0("\\bra","\\mathinner{\\langle{#1}|}");R0("\\ket","\\mathinner{|{#1}\\rangle}");R0("\\braket","\\mathinner{\\langle{#1}\\rangle}");R0("\\Bra","\\left\\langle#1\\right|");R0("\\Ket","\\left|#1\\right\\rangle");R0("\\bra@ket",SH0(!1));R0("\\bra@set",SH0(!0));R0("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");R0("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");R0("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");R0("\\angln","{\\angl n}");R0("\\blue","\\textcolor{##6495ed}{#1}");R0("\\orange","\\textcolor{##ffa500}{#1}");R0("\\pink","\\textcolor{##ff00af}{#1}");R0("\\red","\\textcolor{##df0030}{#1}");R0("\\green","\\textcolor{##28ae7b}{#1}");R0("\\gray","\\textcolor{gray}{#1}");R0("\\purple","\\textcolor{##9d38bd}{#1}");R0("\\blueA","\\textcolor{##ccfaff}{#1}");R0("\\blueB","\\textcolor{##80f6ff}{#1}");R0("\\blueC","\\textcolor{##63d9ea}{#1}");R0("\\blueD","\\textcolor{##11accd}{#1}");R0("\\blueE","\\textcolor{##0c7f99}{#1}");R0("\\tealA","\\textcolor{##94fff5}{#1}");R0("\\tealB","\\textcolor{##26edd5}{#1}");R0("\\tealC","\\textcolor{##01d1c1}{#1}");R0("\\tealD","\\textcolor{##01a995}{#1}");R0("\\tealE","\\textcolor{##208170}{#1}");R0("\\greenA","\\textcolor{##b6ffb0}{#1}");R0("\\greenB","\\textcolor{##8af281}{#1}");R0("\\greenC","\\textcolor{##74cf70}{#1}");R0("\\greenD","\\textcolor{##1fab54}{#1}");R0("\\greenE","\\textcolor{##0d923f}{#1}");R0("\\goldA","\\textcolor{##ffd0a9}{#1}");R0("\\goldB","\\textcolor{##ffbb71}{#1}");R0("\\goldC","\\textcolor{##ff9c39}{#1}");R0("\\goldD","\\textcolor{##e07d10}{#1}");R0("\\goldE","\\textcolor{##a75a05}{#1}");R0("\\redA","\\textcolor{##fca9a9}{#1}");R0("\\redB","\\textcolor{##ff8482}{#1}");R0("\\redC","\\textcolor{##f9685d}{#1}");R0("\\redD","\\textcolor{##e84d39}{#1}");R0("\\redE","\\textcolor{##bc2612}{#1}");R0("\\maroonA","\\textcolor{##ffbde0}{#1}");R0("\\maroonB","\\textcolor{##ff92c6}{#1}");R0("\\maroonC","\\textcolor{##ed5fa6}{#1}");R0("\\maroonD","\\textcolor{##ca337c}{#1}");R0("\\maroonE","\\textcolor{##9e034e}{#1}");R0("\\purpleA","\\textcolor{##ddd7ff}{#1}");R0("\\purpleB","\\textcolor{##c6b9fc}{#1}");R0("\\purpleC","\\textcolor{##aa87ff}{#1}");R0("\\purpleD","\\textcolor{##7854ab}{#1}");R0("\\purpleE","\\textcolor{##543b78}{#1}");R0("\\mintA","\\textcolor{##f5f9e8}{#1}");R0("\\mintB","\\textcolor{##edf2df}{#1}");R0("\\mintC","\\textcolor{##e0e5cc}{#1}");R0("\\grayA","\\textcolor{##f6f7f7}{#1}");R0("\\grayB","\\textcolor{##f0f1f2}{#1}");R0("\\grayC","\\textcolor{##e3e5e6}{#1}");R0("\\grayD","\\textcolor{##d6d8da}{#1}");R0("\\grayE","\\textcolor{##babec2}{#1}");R0("\\grayF","\\textcolor{##888d93}{#1}");R0("\\grayG","\\textcolor{##626569}{#1}");R0("\\grayH","\\textcolor{##3b3e40}{#1}");R0("\\grayI","\\textcolor{##21242c}{#1}");R0("\\kaBlue","\\textcolor{##314453}{#1}");R0("\\kaGreen","\\textcolor{##71B307}{#1}");WH0={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};TG0=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,cP=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","ᵝ":"β","ᵞ":"γ","ᵟ":"δ","ᵠ":"ϕ","ᵡ":"χ","ᶿ":"θ"}),ho={"́":{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"}},OG0={"á":"á","à":"à","ä":"ä","ǟ":"ǟ","ã":"ã","ā":"ā","ă":"ă","ắ":"ắ","ằ":"ằ","ẵ":"ẵ","ǎ":"ǎ","â":"â","ấ":"ấ","ầ":"ầ","ẫ":"ẫ","ȧ":"ȧ","ǡ":"ǡ","å":"å","ǻ":"ǻ","ḃ":"ḃ","ć":"ć","ḉ":"ḉ","č":"č","ĉ":"ĉ","ċ":"ċ","ç":"ç","ď":"ď","ḋ":"ḋ","ḑ":"ḑ","é":"é","è":"è","ë":"ë","ẽ":"ẽ","ē":"ē","ḗ":"ḗ","ḕ":"ḕ","ĕ":"ĕ","ḝ":"ḝ","ě":"ě","ê":"ê","ế":"ế","ề":"ề","ễ":"ễ","ė":"ė","ȩ":"ȩ","ḟ":"ḟ","ǵ":"ǵ","ḡ":"ḡ","ğ":"ğ","ǧ":"ǧ","ĝ":"ĝ","ġ":"ġ","ģ":"ģ","ḧ":"ḧ","ȟ":"ȟ","ĥ":"ĥ","ḣ":"ḣ","ḩ":"ḩ","í":"í","ì":"ì","ï":"ï","ḯ":"ḯ","ĩ":"ĩ","ī":"ī","ĭ":"ĭ","ǐ":"ǐ","î":"î","ǰ":"ǰ","ĵ":"ĵ","ḱ":"ḱ","ǩ":"ǩ","ķ":"ķ","ĺ":"ĺ","ľ":"ľ","ļ":"ļ","ḿ":"ḿ","ṁ":"ṁ","ń":"ń","ǹ":"ǹ","ñ":"ñ","ň":"ň","ṅ":"ṅ","ņ":"ņ","ó":"ó","ò":"ò","ö":"ö","ȫ":"ȫ","õ":"õ","ṍ":"ṍ","ṏ":"ṏ","ȭ":"ȭ","ō":"ō","ṓ":"ṓ","ṑ":"ṑ","ŏ":"ŏ","ǒ":"ǒ","ô":"ô","ố":"ố","ồ":"ồ","ỗ":"ỗ","ȯ":"ȯ","ȱ":"ȱ","ő":"ő","ṕ":"ṕ","ṗ":"ṗ","ŕ":"ŕ","ř":"ř","ṙ":"ṙ","ŗ":"ŗ","ś":"ś","ṥ":"ṥ","š":"š","ṧ":"ṧ","ŝ":"ŝ","ṡ":"ṡ","ş":"ş","ẗ":"ẗ","ť":"ť","ṫ":"ṫ","ţ":"ţ","ú":"ú","ù":"ù","ü":"ü","ǘ":"ǘ","ǜ":"ǜ","ǖ":"ǖ","ǚ":"ǚ","ũ":"ũ","ṹ":"ṹ","ū":"ū","ṻ":"ṻ","ŭ":"ŭ","ǔ":"ǔ","û":"û","ů":"ů","ű":"ű","ṽ":"ṽ","ẃ":"ẃ","ẁ":"ẁ","ẅ":"ẅ","ŵ":"ŵ","ẇ":"ẇ","ẘ":"ẘ","ẍ":"ẍ","ẋ":"ẋ","ý":"ý","ỳ":"ỳ","ÿ":"ÿ","ỹ":"ỹ","ȳ":"ȳ","ŷ":"ŷ","ẏ":"ẏ","ẙ":"ẙ","ź":"ź","ž":"ž","ẑ":"ẑ","ż":"ż","Á":"Á","À":"À","Ä":"Ä","Ǟ":"Ǟ","Ã":"Ã","Ā":"Ā","Ă":"Ă","Ắ":"Ắ","Ằ":"Ằ","Ẵ":"Ẵ","Ǎ":"Ǎ","Â":"Â","Ấ":"Ấ","Ầ":"Ầ","Ẫ":"Ẫ","Ȧ":"Ȧ","Ǡ":"Ǡ","Å":"Å","Ǻ":"Ǻ","Ḃ":"Ḃ","Ć":"Ć","Ḉ":"Ḉ","Č":"Č","Ĉ":"Ĉ","Ċ":"Ċ","Ç":"Ç","Ď":"Ď","Ḋ":"Ḋ","Ḑ":"Ḑ","É":"É","È":"È","Ë":"Ë","Ẽ":"Ẽ","Ē":"Ē","Ḗ":"Ḗ","Ḕ":"Ḕ","Ĕ":"Ĕ","Ḝ":"Ḝ","Ě":"Ě","Ê":"Ê","Ế":"Ế","Ề":"Ề","Ễ":"Ễ","Ė":"Ė","Ȩ":"Ȩ","Ḟ":"Ḟ","Ǵ":"Ǵ","Ḡ":"Ḡ","Ğ":"Ğ","Ǧ":"Ǧ","Ĝ":"Ĝ","Ġ":"Ġ","Ģ":"Ģ","Ḧ":"Ḧ","Ȟ":"Ȟ","Ĥ":"Ĥ","Ḣ":"Ḣ","Ḩ":"Ḩ","Í":"Í","Ì":"Ì","Ï":"Ï","Ḯ":"Ḯ","Ĩ":"Ĩ","Ī":"Ī","Ĭ":"Ĭ","Ǐ":"Ǐ","Î":"Î","İ":"İ","Ĵ":"Ĵ","Ḱ":"Ḱ","Ǩ":"Ǩ","Ķ":"Ķ","Ĺ":"Ĺ","Ľ":"Ľ","Ļ":"Ļ","Ḿ":"Ḿ","Ṁ":"Ṁ","Ń":"Ń","Ǹ":"Ǹ","Ñ":"Ñ","Ň":"Ň","Ṅ":"Ṅ","Ņ":"Ņ","Ó":"Ó","Ò":"Ò","Ö":"Ö","Ȫ":"Ȫ","Õ":"Õ","Ṍ":"Ṍ","Ṏ":"Ṏ","Ȭ":"Ȭ","Ō":"Ō","Ṓ":"Ṓ","Ṑ":"Ṑ","Ŏ":"Ŏ","Ǒ":"Ǒ","Ô":"Ô","Ố":"Ố","Ồ":"Ồ","Ỗ":"Ỗ","Ȯ":"Ȯ","Ȱ":"Ȱ","Ő":"Ő","Ṕ":"Ṕ","Ṗ":"Ṗ","Ŕ":"Ŕ","Ř":"Ř","Ṙ":"Ṙ","Ŗ":"Ŗ","Ś":"Ś","Ṥ":"Ṥ","Š":"Š","Ṧ":"Ṧ","Ŝ":"Ŝ","Ṡ":"Ṡ","Ş":"Ş","Ť":"Ť","Ṫ":"Ṫ","Ţ":"Ţ","Ú":"Ú","Ù":"Ù","Ü":"Ü","Ǘ":"Ǘ","Ǜ":"Ǜ","Ǖ":"Ǖ","Ǚ":"Ǚ","Ũ":"Ũ","Ṹ":"Ṹ","Ū":"Ū","Ṻ":"Ṻ","Ŭ":"Ŭ","Ǔ":"Ǔ","Û":"Û","Ů":"Ů","Ű":"Ű","Ṽ":"Ṽ","Ẃ":"Ẃ","Ẁ":"Ẁ","Ẅ":"Ẅ","Ŵ":"Ŵ","Ẇ":"Ẇ","Ẍ":"Ẍ","Ẋ":"Ẋ","Ý":"Ý","Ỳ":"Ỳ","Ÿ":"Ÿ","Ỹ":"Ỹ","Ȳ":"Ȳ","Ŷ":"Ŷ","Ẏ":"Ẏ","Ź":"Ź","Ž":"Ž","Ẑ":"Ẑ","Ż":"Ż","ά":"ά","ὰ":"ὰ","ᾱ":"ᾱ","ᾰ":"ᾰ","έ":"έ","ὲ":"ὲ","ή":"ή","ὴ":"ὴ","ί":"ί","ὶ":"ὶ","ϊ":"ϊ","ΐ":"ΐ","ῒ":"ῒ","ῑ":"ῑ","ῐ":"ῐ","ό":"ό","ὸ":"ὸ","ύ":"ύ","ὺ":"ὺ","ϋ":"ϋ","ΰ":"ΰ","ῢ":"ῢ","ῡ":"ῡ","ῠ":"ῠ","ώ":"ώ","ὼ":"ὼ","Ύ":"Ύ","Ὺ":"Ὺ","Ϋ":"Ϋ","Ῡ":"Ῡ","Ῠ":"Ῠ","Ώ":"Ώ","Ὼ":"Ὼ"};Zj.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."),Ht=function(){throw new B4("KaTeX doesn't work in quirks mode.")}}jH0={Span:wZ,Anchor:dx,SymbolNode:eB,SvgNode:uF,PathNode:Zz,LineNode:oP},O34={version:PH0,render:Ht,renderToString:RH0,ParseError:B4,SETTINGS_SCHEMA:dP,__parse:TH0,__renderToDomTree:Jj,__renderToHTMLTree:IH0,__setFontMetrics:VG0,__defineSymbol:s,__defineFunction:G4,__defineMacro:R0,__domTree:jH0}});function oH0(){oB.addHook("beforeSanitizeAttributes",(B)=>{if(B.tagName==="A"&&B.hasAttribute("target"))B.setAttribute("data-temp-href-target",B.getAttribute("target")??"")}),oB.addHook("afterSanitizeAttributes",(B)=>{if(B.tagName==="A"&&B.hasAttribute("data-temp-href-target")){if(B.setAttribute("target",B.getAttribute("data-temp-href-target")??""),B.removeAttribute("data-temp-href-target"),B.getAttribute("target")==="_blank")B.setAttribute("rel","noopener")}})}function qj(u){return[...u.cssRules].map((B)=>B.cssText).join(`
`)}var Lt,E9,DF="#ffffff",FF="#f2f2f2",G3,I34,P34,j34,N34,i34,S7,a34,V34,h34,m34,r34,$34,y34,c34,g34,_34,n34,p34,d34,s34,o34,t34,CF,n5,rH0,$H0,e34,t4,u14,B14,ex,Xt,GZ,_E,u8,Qj,QZ,tx,uv,yH0,cH0,gH0,xt,vt,F4,_H0,nH0,Bv,E14,aH0,pH0,A14,Hj,w1,St,aQ,C14,Wt,Wf,Ev,Lj,dH0,sH0,HZ,D14,F14,tH0,VH0,C3,U14,z14,k14,f14,eH0,LZ,l14,b14,UF,qt,M14,Z14,hH0,wj,A9,VQ,J14,hQ,yu,w14,K14,y3,zF,Kj,Q14,G14,uL0,Xj,Yt="",Rt="",Tt="",Ot,D3,w3,H3,L3,q3,T3,X3,mH0,H14,$0,Av,xj,vj,Cv,L14,Gj,Dv,Sj,q14;var s4=g(()=>{o4();Y4();K2();K2();K2();K2();K2();K2();K2();K2();K2();K2();K2();K2();WQ();Lt=X((u,B,{depth:E=2}={})=>{let A={depth:E};if(Array.isArray(B)&&!Array.isArray(u))return B.forEach((C)=>Lt(u,C,A)),u;else if(Array.isArray(B)&&Array.isArray(u))return B.forEach((C)=>{if(!u.includes(C))u.push(C)}),u;if(u===void 0||u===null||E<=0)if(u!==void 0&&u!==null&&typeof u==="object"&&typeof B==="object")return Object.assign(u,B);else return B;if(B!==void 0&&B!==null&&typeof u==="object"&&typeof B==="object"){let C=u;Object.entries(B).forEach(([D,F])=>{if(typeof F==="object"){if(F===null)return;if(!Object.hasOwn(u,D))Object.defineProperty(u,D,{value:void 0,writable:!0,enumerable:!0,configurable:!0});if(C[D]===void 0)C[D]=Array.isArray(F)?[]:{};if(typeof C[D]==="object")C[D]=Lt(C[D],F,{depth:E-1})}else if(typeof C[D]!=="object")if(Object.hasOwn(u,D))C[D]=F;else Object.defineProperty(u,D,{value:F,writable:!0,enumerable:!0,configurable:!0})})}return u},"assignWithDepth"),E9=Lt,G3=X((u,B)=>B?Q0(u,{s:-40,l:10}):Q0(u,{s:-40,l:-10}),"mkBorder"),I34=class{static{X(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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(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||Ju(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||wu(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||wu(this.mainBkg,10);else this.rowOdd=this.rowOdd||Ju(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Ju(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||Q0(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Q0(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Q0(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Q0(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Q0(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Q0(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Q0(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Q0(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Q0(this.primaryColor,{h:330}),this.darkMode)for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=wu(this["cScale"+B],75);else for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=wu(this["cScale"+B],25);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleInv"+B]=this["cScaleInv"+B]||Cu(this["cScale"+B]);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)if(this.darkMode)this["cScalePeer"+B]=this["cScalePeer"+B]||Ju(this["cScale"+B],10);else this["cScalePeer"+B]=this["cScalePeer"+B]||wu(this["cScale"+B],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleLabel"+B]=this["cScaleLabel"+B]||this.scaleLabelColor;let u=this.darkMode?-4:-1;for(let B=0;B<5;B++)this["surface"+B]=this["surface"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(5+B*3)}),this["surfacePeer"+B]=this["surfacePeer"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(8+B*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||Q0(this.primaryColor,{h:64}),this.fillType3=this.fillType3||Q0(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||Q0(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||Q0(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||Q0(this.primaryColor,{h:128}),this.fillType7=this.fillType7||Q0(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||Q0(this.primaryColor,{l:-10}),this.pie5=this.pie5||Q0(this.secondaryColor,{l:-10}),this.pie6=this.pie6||Q0(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||Q0(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Q0(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Q0(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Q0(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||Q0(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||Q0(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??Q0(this.primaryColor,{l:-30}),this.venn2=this.venn2??Q0(this.secondaryColor,{l:-30}),this.venn3=this.venn3??Q0(this.tertiaryColor,{l:-30}),this.venn4=this.venn4??Q0(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??Q0(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??Q0(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??Q0(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??Q0(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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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?wu(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||Q0(this.primaryColor,{h:-30}),this.git4=this.git4||Q0(this.primaryColor,{h:-60}),this.git5=this.git5||Q0(this.primaryColor,{h:-90}),this.git6=this.git6||Q0(this.primaryColor,{h:60}),this.git7=this.git7||Q0(this.primaryColor,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},P34=X((u)=>{let B=new I34;return B.calculate(u),B},"getThemeVariables"),j34=class{static{X(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ju(this.primaryColor,16),this.tertiaryColor=Q0(this.primaryColor,{h:-160}),this.primaryBorderColor=Cu(this.background),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.tertiaryColor),this.lineColor=Cu(this.background),this.textColor=Cu(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ju(Cu("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=u2(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=wu("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=wu(this.sectionBkgColor,10),this.taskBorderColor=u2(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=u2(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||Ju(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||wu(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=Ju(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=Ju(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=Ju(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=Cu(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=Q0(this.primaryColor,{h:64}),this.fillType3=Q0(this.secondaryColor,{h:64}),this.fillType4=Q0(this.primaryColor,{h:-64}),this.fillType5=Q0(this.secondaryColor,{h:-64}),this.fillType6=Q0(this.primaryColor,{h:128}),this.fillType7=Q0(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||Q0(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Q0(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Q0(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Q0(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Q0(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Q0(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Q0(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Q0(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Q0(this.primaryColor,{h:330});for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleInv"+u]=this["cScaleInv"+u]||Cu(this["cScale"+u]);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScalePeer"+u]=this["cScalePeer"+u]||Ju(this["cScale"+u],10);for(let u=0;u<5;u++)this["surface"+u]=this["surface"+u]||Q0(this.mainBkg,{h:30,s:-30,l:-(-10+u*4)}),this["surfacePeer"+u]=this["surfacePeer"+u]||Q0(this.mainBkg,{h:30,s:-30,l:-(-7+u*4)});this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleLabel"+u]=this["cScaleLabel"+u]||this.scaleLabelColor;for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["pie"+u]=this["cScale"+u];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 u=0;u<8;u++)this["venn"+(u+1)]=this["venn"+(u+1)]??Ju(this["cScale"+u],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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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?wu(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=Ju(this.secondaryColor,20),this.git1=Ju(this.pie2||this.secondaryColor,20),this.git2=Ju(this.pie3||this.tertiaryColor,20),this.git3=Ju(this.pie4||Q0(this.primaryColor,{h:-30}),20),this.git4=Ju(this.pie5||Q0(this.primaryColor,{h:-60}),20),this.git5=Ju(this.pie6||Q0(this.primaryColor,{h:-90}),10),this.git6=Ju(this.pie7||Q0(this.primaryColor,{h:60}),10),this.git7=Ju(this.pie8||Q0(this.primaryColor,{h:120}),20),this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||Cu(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||Cu(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||Ju("#5a3d5c",10),this.emProcessorStroke=this.emProcessorStroke||"#8a6d8c",this.emReadModelFill=this.emReadModelFill||Ju("#3d5a2d",10),this.emReadModelStroke=this.emReadModelStroke||"#6d8c5c",this.emCommandFill=this.emCommandFill||Ju("#2d3d5a",10),this.emCommandStroke=this.emCommandStroke||"#5c6d8c",this.emEventFill=this.emEventFill||Ju("#5a452d",10),this.emEventStroke=this.emEventStroke||"#8c755c",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||Ju(this.background,5),this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||Ju(this.background,12),this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||Ju(this.background,12),this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||Ju(this.background,2),this.nodeBorder=this.nodeBorder||"#999"}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},N34=X((u)=>{let B=new j34;return B.calculate(u),B},"getThemeVariables"),i34=class{static{X(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Q0(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Q0(this.primaryColor,{h:-160}),this.primaryBorderColor=G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.tertiaryColor),this.lineColor=Cu(this.background),this.textColor=Cu(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.primaryBorderColor=G3(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=u2(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||Q0(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Q0(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Q0(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Q0(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Q0(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Q0(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Q0(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Q0(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Q0(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||wu(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||wu(this.tertiaryColor,40);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScale"+u]=wu(this["cScale"+u],10),this["cScalePeer"+u]=this["cScalePeer"+u]||wu(this["cScale"+u],25);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleInv"+u]=this["cScaleInv"+u]||Q0(this["cScale"+u],{h:180});for(let u=0;u<5;u++)this["surface"+u]=this["surface"+u]||Q0(this.mainBkg,{h:30,l:-(5+u*5)}),this["surfacePeer"+u]=this["surfacePeer"+u]||Q0(this.mainBkg,{h:30,l:-(7+u*5)});if(this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor,this.labelTextColor!=="calculated"){this.cScaleLabel0=this.cScaleLabel0||Cu(this.labelTextColor),this.cScaleLabel3=this.cScaleLabel3||Cu(this.labelTextColor);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleLabel"+u]=this["cScaleLabel"+u]||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||Ju(this.primaryColor,75)||"#ffffff",this.rowEven=this.rowEven||Ju(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=Q0(this.primaryColor,{h:64}),this.fillType3=Q0(this.secondaryColor,{h:64}),this.fillType4=Q0(this.primaryColor,{h:-64}),this.fillType5=Q0(this.secondaryColor,{h:-64}),this.fillType6=Q0(this.primaryColor,{h:128}),this.fillType7=Q0(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||Q0(this.tertiaryColor,{l:-40}),this.pie4=this.pie4||Q0(this.primaryColor,{l:-10}),this.pie5=this.pie5||Q0(this.secondaryColor,{l:-30}),this.pie6=this.pie6||Q0(this.tertiaryColor,{l:-20}),this.pie7=this.pie7||Q0(this.primaryColor,{h:60,l:-20}),this.pie8=this.pie8||Q0(this.primaryColor,{h:-60,l:-40}),this.pie9=this.pie9||Q0(this.primaryColor,{h:120,l:-40}),this.pie10=this.pie10||Q0(this.primaryColor,{h:60,l:-40}),this.pie11=this.pie11||Q0(this.primaryColor,{h:-90,l:-40}),this.pie12=this.pie12||Q0(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??Q0(this.primaryColor,{l:-30}),this.venn2=this.venn2??Q0(this.secondaryColor,{l:-30}),this.venn3=this.venn3??Q0(this.tertiaryColor,{l:-40}),this.venn4=this.venn4??Q0(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??Q0(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??Q0(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??Q0(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??Q0(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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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||Q0(this.primaryColor,{h:-30}),this.git4=this.git4||Q0(this.primaryColor,{h:-60}),this.git5=this.git5||Q0(this.primaryColor,{h:-90}),this.git6=this.git6||Q0(this.primaryColor,{h:60}),this.git7=this.git7||Q0(this.primaryColor,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||wu(Cu(this.git0),25),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||Cu(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(Object.keys(this).forEach((E)=>{if(this[E]==="calculated")this[E]=void 0}),typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},S7=X((u)=>{let B=new i34;return B.calculate(u),B},"getThemeVariables"),a34=class{static{X(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=Ju("#cde498",10),this.primaryBorderColor=G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.primaryColor),this.lineColor=Cu(this.background),this.textColor=Cu(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=wu(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||Q0(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Q0(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Q0(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Q0(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Q0(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Q0(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Q0(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Q0(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Q0(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||wu(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||wu(this.tertiaryColor,40);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScale"+u]=wu(this["cScale"+u],10),this["cScalePeer"+u]=this["cScalePeer"+u]||wu(this["cScale"+u],25);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleInv"+u]=this["cScaleInv"+u]||Q0(this["cScale"+u],{h:180});this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor;for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleLabel"+u]=this["cScaleLabel"+u]||this.scaleLabelColor;for(let u=0;u<5;u++)this["surface"+u]=this["surface"+u]||Q0(this.mainBkg,{h:30,s:-30,l:-(5+u*5)}),this["surfacePeer"+u]=this["surfacePeer"+u]||Q0(this.mainBkg,{h:30,s:-30,l:-(8+u*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||Ju(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Ju(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=Q0(this.primaryColor,{h:64}),this.fillType3=Q0(this.secondaryColor,{h:64}),this.fillType4=Q0(this.primaryColor,{h:-64}),this.fillType5=Q0(this.secondaryColor,{h:-64}),this.fillType6=Q0(this.primaryColor,{h:128}),this.fillType7=Q0(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||Q0(this.primaryColor,{l:-30}),this.pie5=this.pie5||Q0(this.secondaryColor,{l:-30}),this.pie6=this.pie6||Q0(this.tertiaryColor,{h:40,l:-40}),this.pie7=this.pie7||Q0(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Q0(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Q0(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Q0(this.primaryColor,{h:60,l:-50}),this.pie11=this.pie11||Q0(this.primaryColor,{h:-60,l:-50}),this.pie12=this.pie12||Q0(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??Q0(this.primaryColor,{l:-30}),this.venn2=this.venn2??Q0(this.secondaryColor,{l:-30}),this.venn3=this.venn3??Q0(this.tertiaryColor,{l:-30}),this.venn4=this.venn4??Q0(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??Q0(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??Q0(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??Q0(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??Q0(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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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||Q0(this.primaryColor,{h:-30}),this.git4=this.git4||Q0(this.primaryColor,{h:-60}),this.git5=this.git5||Q0(this.primaryColor,{h:-90}),this.git6=this.git6||Q0(this.primaryColor,{h:60}),this.git7=this.git7||Q0(this.primaryColor,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||Cu(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},V34=X((u)=>{let B=new a34;return B.calculate(u),B},"getThemeVariables"),h34=class{static{X(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Ju(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Q0(this.primaryColor,{h:-160}),this.primaryBorderColor=G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.tertiaryColor),this.lineColor=Cu(this.background),this.textColor=Cu(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||Ju(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=Ju(this.contrast,55),this.border2=this.contrast,this.actorBorder=Ju(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 u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleInv"+u]=this["cScaleInv"+u]||Cu(this["cScale"+u]);for(let u=0;u<this.THEME_COLOR_LIMIT;u++)if(this.darkMode)this["cScalePeer"+u]=this["cScalePeer"+u]||Ju(this["cScale"+u],10);else this["cScalePeer"+u]=this["cScalePeer"+u]||wu(this["cScale"+u],10);this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor),this.cScaleLabel0=this.cScaleLabel0||this.cScale1,this.cScaleLabel2=this.cScaleLabel2||this.cScale1;for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["cScaleLabel"+u]=this["cScaleLabel"+u]||this.scaleLabelColor;for(let u=0;u<5;u++)this["surface"+u]=this["surface"+u]||Q0(this.mainBkg,{l:-(5+u*5)}),this["surfacePeer"+u]=this["surfacePeer"+u]||Q0(this.mainBkg,{l:-(8+u*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=Ju(this.contrast,30),this.sectionBkgColor2=Ju(this.contrast,30),this.taskBorderColor=wu(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=Ju(this.border1,30),this.doneTaskBkgColor=this.done,this.doneTaskBorderColor=this.lineColor,this.critBkgColor=this.critical,this.critBorderColor=wu(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=Q0(this.primaryColor,{h:64}),this.fillType3=Q0(this.secondaryColor,{h:64}),this.fillType4=Q0(this.primaryColor,{h:-64}),this.fillType5=Q0(this.secondaryColor,{h:-64}),this.fillType6=Q0(this.primaryColor,{h:128}),this.fillType7=Q0(this.secondaryColor,{h:128});for(let u=0;u<this.THEME_COLOR_LIMIT;u++)this["pie"+u]=this["cScale"+u];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 u=0;u<8;u++)this["venn"+(u+1)]=this["venn"+(u+1)]??this["cScale"+u];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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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=wu(this.pie1,25)||this.primaryColor,this.git1=this.pie2||this.secondaryColor,this.git2=this.pie3||this.tertiaryColor,this.git3=this.pie4||Q0(this.primaryColor,{h:-30}),this.git4=this.pie5||Q0(this.primaryColor,{h:-60}),this.git5=this.pie6||Q0(this.primaryColor,{h:-90}),this.git6=this.pie7||Q0(this.primaryColor,{h:60}),this.git7=this.pie8||Q0(this.primaryColor,{h:120}),this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},m34=X((u)=>{let B=new h34;return B.calculate(u),B},"getThemeVariables"),r34=class{static{X(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=G3(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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let u="#ECECFE",B="#E9E9F1",E=Q0(u,{h:180,l:5});if(this.sectionBkgColor=this.sectionBkgColor||E,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||B,this.sectionBkgColor2=this.sectionBkgColor2||u,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||u,this.activeTaskBorderColor=this.activeTaskBorderColor||u,this.activeTaskBkgColor=this.activeTaskBkgColor||Ju(u,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||u,this.cScale1=this.cScale1||B,this.cScale2=this.cScale2||E,this.cScale3=this.cScale3||Q0(u,{h:30}),this.cScale4=this.cScale4||Q0(u,{h:60}),this.cScale5=this.cScale5||Q0(u,{h:90}),this.cScale6=this.cScale6||Q0(u,{h:120}),this.cScale7=this.cScale7||Q0(u,{h:150}),this.cScale8=this.cScale8||Q0(u,{h:210,l:150}),this.cScale9=this.cScale9||Q0(u,{h:270}),this.cScale10=this.cScale10||Q0(u,{h:300}),this.cScale11=this.cScale11||Q0(u,{h:330}),this.darkMode)for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScale"+C]=wu(this["cScale"+C],75);else for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScale"+C]=wu(this["cScale"+C],25);for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScaleInv"+C]=this["cScaleInv"+C]||Cu(this["cScale"+C]);for(let C=0;C<this.THEME_COLOR_LIMIT;C++)if(this.darkMode)this["cScalePeer"+C]=this["cScalePeer"+C]||Ju(this["cScale"+C],10);else this["cScalePeer"+C]=this["cScalePeer"+C]||wu(this["cScale"+C],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScaleLabel"+C]=this["cScaleLabel"+C]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let C=0;C<5;C++)this["surface"+C]=this["surface"+C]||Q0(this.mainBkg,{h:180,s:-15,l:A*(5+C*3)}),this["surfacePeer"+C]=this["surfacePeer"+C]||Q0(this.mainBkg,{h:180,s:-15,l:A*(8+C*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||u,this.fillType1=this.fillType1||B,this.fillType2=this.fillType2||Q0(u,{h:64}),this.fillType3=this.fillType3||Q0(B,{h:64}),this.fillType4=this.fillType4||Q0(u,{h:-64}),this.fillType5=this.fillType5||Q0(B,{h:-64}),this.fillType6=this.fillType6||Q0(u,{h:128}),this.fillType7=this.fillType7||Q0(B,{h:128}),this.pie1=this.pie1||u,this.pie2=this.pie2||B,this.pie3=this.pie3||E,this.pie4=this.pie4||Q0(u,{l:-10}),this.pie5=this.pie5||Q0(B,{l:-10}),this.pie6=this.pie6||Q0(E,{l:-10}),this.pie7=this.pie7||Q0(u,{h:60,l:-10}),this.pie8=this.pie8||Q0(u,{h:-60,l:-10}),this.pie9=this.pie9||Q0(u,{h:120,l:0}),this.pie10=this.pie10||Q0(u,{h:60,l:-20}),this.pie11=this.pie11||Q0(u,{h:-60,l:-20}),this.pie12=this.pie12||Q0(u,{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||u,this.quadrant2Fill=this.quadrant2Fill||Q0(u,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(u,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(u,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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||u,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?wu(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||u,this.git1=this.git1||B,this.git2=this.git2||E,this.git3=this.git3||Q0(u,{h:-30}),this.git4=this.git4||Q0(u,{h:-60}),this.git5=this.git5||Q0(u,{h:-90}),this.git6=this.git6||Q0(u,{h:60}),this.git7=this.git7||Q0(u,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},$34=X((u)=>{let B=new r34;return B.calculate(u),B},"getThemeVariables"),y34=class{static{X(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ju(this.primaryColor,16),this.tertiaryColor=Q0(this.primaryColor,{h:-160}),this.primaryBorderColor=Cu(this.background),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.tertiaryColor),this.mainBkg="#2a2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ju(Cu("#323D47"),10),this.border1="#ccc",this.border2=u2(255,255,255,0.25),this.arrowheadColor=Cu(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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(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||Ju(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||Q0(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Q0(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Q0(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Q0(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Q0(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Q0(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Q0(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Q0(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Q0(this.primaryColor,{h:330}),this.darkMode)for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=wu(this["cScale"+B],75);else for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=wu(this["cScale"+B],25);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleInv"+B]=this["cScaleInv"+B]||Cu(this["cScale"+B]);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)if(this.darkMode)this["cScalePeer"+B]=this["cScalePeer"+B]||Ju(this["cScale"+B],10);else this["cScalePeer"+B]=this["cScalePeer"+B]||wu(this["cScale"+B],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleLabel"+B]=this["cScaleLabel"+B]||this.scaleLabelColor;let u=this.darkMode?-4:-1;for(let B=0;B<5;B++)this["surface"+B]=this["surface"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(5+B*3)}),this["surfacePeer"+B]=this["surfacePeer"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(8+B*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||Q0(this.primaryColor,{h:64}),this.fillType3=this.fillType3||Q0(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||Q0(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||Q0(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||Q0(this.primaryColor,{h:128}),this.fillType7=this.fillType7||Q0(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||Q0(this.primaryColor,{l:-10}),this.pie5=this.pie5||Q0(this.secondaryColor,{l:-10}),this.pie6=this.pie6||Q0(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||Q0(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Q0(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Q0(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Q0(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||Q0(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||Q0(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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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?wu(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=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},c34=X((u)=>{let B=new y34;return B.calculate(u),B},"getThemeVariables"),g34=class{static{X(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=G3("#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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#FEF9C3",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let u="#ECECFE",B="#E9E9F1",E=Q0(u,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||E,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||B,this.sectionBkgColor2=this.sectionBkgColor2||u,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||u,this.activeTaskBorderColor=this.activeTaskBorderColor||u,this.activeTaskBkgColor=this.activeTaskBkgColor||Ju(u,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 C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScale"+C]=this.mainBkg;if(this.darkMode)for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScale"+C]=wu(this["cScale"+C],75);else for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScale"+C]=wu(this["cScale"+C],25);for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScaleInv"+C]=this["cScaleInv"+C]||Cu(this["cScale"+C]);for(let C=0;C<this.THEME_COLOR_LIMIT;C++)if(this.darkMode)this["cScalePeer"+C]=this["cScalePeer"+C]||Ju(this["cScale"+C],10);else this["cScalePeer"+C]=this["cScalePeer"+C]||wu(this["cScale"+C],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScaleLabel"+C]=this["cScaleLabel"+C]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let C=0;C<5;C++)this["surface"+C]=this["surface"+C]||Q0(this.mainBkg,{h:180,s:-15,l:A*(5+C*3)}),this["surfacePeer"+C]=this["surfacePeer"+C]||Q0(this.mainBkg,{h:180,s:-15,l:A*(8+C*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||u,this.fillType1=this.fillType1||B,this.fillType2=this.fillType2||Q0(u,{h:64}),this.fillType3=this.fillType3||Q0(B,{h:64}),this.fillType4=this.fillType4||Q0(u,{h:-64}),this.fillType5=this.fillType5||Q0(B,{h:-64}),this.fillType6=this.fillType6||Q0(u,{h:128}),this.fillType7=this.fillType7||Q0(B,{h:128}),this.pie1=this.pie1||u,this.pie2=this.pie2||B,this.pie3=this.pie3||E,this.pie4=this.pie4||Q0(u,{l:-10}),this.pie5=this.pie5||Q0(B,{l:-10}),this.pie6=this.pie6||Q0(E,{l:-10}),this.pie7=this.pie7||Q0(u,{h:60,l:-10}),this.pie8=this.pie8||Q0(u,{h:-60,l:-10}),this.pie9=this.pie9||Q0(u,{h:120,l:0}),this.pie10=this.pie10||Q0(u,{h:60,l:-20}),this.pie11=this.pie11||Q0(u,{h:-60,l:-20}),this.pie12=this.pie12||Q0(u,{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||u,this.quadrant2Fill=this.quadrant2Fill||Q0(u,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(u,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(u,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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||u,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?wu(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.requirementEdgeLabelBackground="#FFFFFF",this.git0=this.git0||u,this.git1=this.git1||B,this.git2=this.git2||E,this.git3=this.git3||Q0(u,{h:-30}),this.git4=this.git4||Q0(u,{h:-60}),this.git5=this.git5||Q0(u,{h:-90}),this.git6=this.git6||Q0(u,{h:60}),this.git7=this.git7||Q0(u,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},_34=X((u)=>{let B=new g34;return B.calculate(u),B},"getThemeVariables"),n34=class{static{X(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ju(this.primaryColor,16),this.tertiaryColor=Q0(this.primaryColor,{h:-160}),this.primaryBorderColor=Cu(this.background),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ju(Cu("#323D47"),10),this.border1="#ccc",this.border2=u2(255,255,255,0.25),this.arrowheadColor=Cu(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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(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||Ju(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||Q0(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Q0(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Q0(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Q0(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Q0(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Q0(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Q0(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Q0(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Q0(this.primaryColor,{h:330}),this.darkMode)for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=wu(this["cScale"+B],75);else for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScale"+B]=wu(this["cScale"+B],25);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleInv"+B]=this["cScaleInv"+B]||Cu(this["cScale"+B]);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)if(this.darkMode)this["cScalePeer"+B]=this["cScalePeer"+B]||Ju(this["cScale"+B],10);else this["cScalePeer"+B]=this["cScalePeer"+B]||wu(this["cScale"+B],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleLabel"+B]=this["cScaleLabel"+B]||this.scaleLabelColor;let u=this.darkMode?-4:-1;for(let B=0;B<5;B++)this["surface"+B]=this["surface"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(5+B*3)}),this["surfacePeer"+B]=this["surfacePeer"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(8+B*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||Q0(this.primaryColor,{h:64}),this.fillType3=this.fillType3||Q0(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||Q0(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||Q0(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||Q0(this.primaryColor,{h:128}),this.fillType7=this.fillType7||Q0(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||Q0(this.primaryColor,{l:-10}),this.pie5=this.pie5||Q0(this.secondaryColor,{l:-10}),this.pie6=this.pie6||Q0(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||Q0(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Q0(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Q0(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Q0(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||Q0(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||Q0(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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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?wu(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||Q0(this.primaryColor,{h:-30}),this.git4=this.git4||Q0(this.primaryColor,{h:-60}),this.git5=this.git5||Q0(this.primaryColor,{h:-90}),this.git6=this.git6||Q0(this.primaryColor,{h:60}),this.git7=this.git7||Q0(this.primaryColor,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},p34=X((u)=>{let B=new n34;return B.calculate(u),B},"getThemeVariables"),d34=class{static{X(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=G3(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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let u="#ECECFE",B="#E9E9F1",E=Q0(u,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||E,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||B,this.sectionBkgColor2=this.sectionBkgColor2||u,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||u,this.activeTaskBorderColor=this.activeTaskBorderColor||u,this.activeTaskBkgColor=this.activeTaskBkgColor||Ju(u,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 C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScaleInv"+C]=this["cScaleInv"+C]||Cu(this["cScale"+C]);for(let C=0;C<this.THEME_COLOR_LIMIT;C++)if(this.darkMode)this["cScalePeer"+C]=this["cScalePeer"+C]||Ju(this["cScale"+C],10);else this["cScalePeer"+C]=this["cScalePeer"+C]||wu(this["cScale"+C],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let C=0;C<this.THEME_COLOR_LIMIT;C++)this["cScaleLabel"+C]=this["cScaleLabel"+C]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let C=0;C<5;C++)this["surface"+C]=this["surface"+C]||Q0(this.mainBkg,{h:180,s:-15,l:A*(5+C*3)}),this["surfacePeer"+C]=this["surfacePeer"+C]||Q0(this.mainBkg,{h:180,s:-15,l:A*(8+C*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||u,this.fillType1=this.fillType1||B,this.fillType2=this.fillType2||Q0(u,{h:64}),this.fillType3=this.fillType3||Q0(B,{h:64}),this.fillType4=this.fillType4||Q0(u,{h:-64}),this.fillType5=this.fillType5||Q0(B,{h:-64}),this.fillType6=this.fillType6||Q0(u,{h:128}),this.fillType7=this.fillType7||Q0(B,{h:128}),this.pie1=this.pie1||u,this.pie2=this.pie2||B,this.pie3=this.pie3||E,this.pie4=this.pie4||Q0(u,{l:-10}),this.pie5=this.pie5||Q0(B,{l:-10}),this.pie6=this.pie6||Q0(E,{l:-10}),this.pie7=this.pie7||Q0(u,{h:60,l:-10}),this.pie8=this.pie8||Q0(u,{h:-60,l:-10}),this.pie9=this.pie9||Q0(u,{h:120,l:0}),this.pie10=this.pie10||Q0(u,{h:60,l:-20}),this.pie11=this.pie11||Q0(u,{h:-60,l:-20}),this.pie12=this.pie12||Q0(u,{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||u,this.quadrant2Fill=this.quadrant2Fill||Q0(u,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(u,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(u,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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||u,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?wu(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||u,this.git1=this.git1||B,this.git2=this.git2||E,this.git3=this.git3||Q0(u,{h:-30}),this.git4=this.git4||Q0(u,{h:-60}),this.git5=this.git5||Q0(u,{h:-90}),this.git6=this.git6||Q0(u,{h:60}),this.git7=this.git7||Q0(u,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},s34=X((u)=>{let B=new d34;return B.calculate(u),B},"getThemeVariables"),o34=class{static{X(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ju(this.primaryColor,16),this.tertiaryColor=Q0(this.primaryColor,{h:-160}),this.primaryBorderColor=Cu(this.background),this.secondaryBorderColor=G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=G3(this.tertiaryColor,this.darkMode),this.primaryTextColor=Cu(this.primaryColor),this.secondaryTextColor=Cu(this.secondaryColor),this.tertiaryTextColor=Cu(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ju(Cu("#323D47"),10),this.border1="#ccc",this.border2=u2(255,255,255,0.25),this.arrowheadColor=Cu(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||Q0(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Q0(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||G3(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||G3(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||G3(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||G3(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||Cu(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Cu(this.tertiaryColor),this.lineColor=this.lineColor||Cu(this.background),this.arrowheadColor=this.arrowheadColor||Cu(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?wu(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||wu(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Cu(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||Ju(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 B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleInv"+B]=this["cScaleInv"+B]||Cu(this["cScale"+B]);for(let B=0;B<this.THEME_COLOR_LIMIT;B++)if(this.darkMode)this["cScalePeer"+B]=this["cScalePeer"+B]||Ju(this["cScale"+B],10);else this["cScalePeer"+B]=this["cScalePeer"+B]||wu(this["cScale"+B],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let B=0;B<this.THEME_COLOR_LIMIT;B++)this["cScaleLabel"+B]=wu(this["cScale"+B],75);let u=this.darkMode?-4:-1;for(let B=0;B<5;B++)this["surface"+B]=this["surface"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(5+B*3)}),this["surfacePeer"+B]=this["surfacePeer"+B]||Q0(this.mainBkg,{h:180,s:-15,l:u*(8+B*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||Q0(this.primaryColor,{h:64}),this.fillType3=this.fillType3||Q0(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||Q0(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||Q0(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||Q0(this.primaryColor,{h:128}),this.fillType7=this.fillType7||Q0(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||Q0(this.primaryColor,{l:-10}),this.pie5=this.pie5||Q0(this.secondaryColor,{l:-10}),this.pie6=this.pie6||Q0(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||Q0(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Q0(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Q0(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Q0(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||Q0(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||Q0(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||Q0(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Q0(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Q0(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Q0(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Q0(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Q0(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||_1(this.quadrant1Fill)?Ju(this.quadrant1Fill):wu(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?wu(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||Q0(this.primaryColor,{h:-30}),this.git4=this.git4||Q0(this.primaryColor,{h:-60}),this.git5=this.git5||Q0(this.primaryColor,{h:-90}),this.git6=this.git6||Q0(this.primaryColor,{h:60}),this.git7=this.git7||Q0(this.primaryColor,{h:120}),this.darkMode)this.git0=Ju(this.git0,25),this.git1=Ju(this.git1,25),this.git2=Ju(this.git2,25),this.git3=Ju(this.git3,25),this.git4=Ju(this.git4,25),this.git5=Ju(this.git5,25),this.git6=Ju(this.git6,25),this.git7=Ju(this.git7,25);else this.git0=wu(this.git0,25),this.git1=wu(this.git1,25),this.git2=wu(this.git2,25),this.git3=wu(this.git3,25),this.git4=wu(this.git4,25),this.git5=wu(this.git5,25),this.git6=wu(this.git6,25),this.git7=wu(this.git7,25);this.gitInv0=this.gitInv0||Cu(this.git0),this.gitInv1=this.gitInv1||Cu(this.git1),this.gitInv2=this.gitInv2||Cu(this.git2),this.gitInv3=this.gitInv3||Cu(this.git3),this.gitInv4=this.gitInv4||Cu(this.git4),this.gitInv5=this.gitInv5||Cu(this.git5),this.gitInv6=this.gitInv6||Cu(this.git6),this.gitInv7=this.gitInv7||Cu(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||DF,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||FF}calculate(u){if(typeof u!=="object"){this.updateColors();return}let B=Object.keys(u);B.forEach((E)=>{this[E]=u[E]}),this.updateColors(),B.forEach((E)=>{this[E]=u[E]})}},t34=X((u)=>{let B=new o34;return B.calculate(u),B},"getThemeVariables"),CF={base:{getThemeVariables:P34},dark:{getThemeVariables:N34},default:{getThemeVariables:S7},forest:{getThemeVariables:V34},neutral:{getThemeVariables:m34},neo:{getThemeVariables:$34},"neo-dark":{getThemeVariables:c34},redux:{getThemeVariables:_34},"redux-dark":{getThemeVariables:p34},"redux-color":{getThemeVariables:s34},"redux-dark-color":{getThemeVariables:t34}},n5={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},rH0={...n5,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:CF.default.getThemeVariables(),sequence:{...n5.sequence,messageFont:X(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:X(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:X(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1,hierarchicalNamespaces:!0},gantt:{...n5.gantt,tickInterval:void 0,useWidth:void 0},c4:{...n5.c4,useWidth:void 0,personFont:X(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:{...n5.flowchart,inheritDir:!1},external_personFont:X(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:X(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:X(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:X(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:X(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:X(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:X(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:X(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:X(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:X(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:X(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:X(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:X(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:X(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:X(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:X(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:X(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:X(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:X(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:X(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:X(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...n5.pie,useWidth:984},xyChart:{...n5.xyChart,useWidth:void 0},requirement:{...n5.requirement,useWidth:void 0},packet:{...n5.packet},eventmodeling:{...n5.eventmodeling},treeView:{...n5.treeView,useWidth:void 0},radar:{...n5.radar},railroad:{...n5.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:{...n5.ishikawa},sankey:{...n5.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:{...n5.venn},cynefin:{...n5.cynefin}},$H0=X((u,B="")=>Object.keys(u).reduce((E,A)=>{if(Array.isArray(u[A]))return E;else if(typeof u[A]==="object"&&u[A]!==null)return[...E,B+A,...$H0(u[A],"")];return[...E,B+A]},[]),"keyify"),e34=new Set($H0(rH0,"")),t4=rH0,u14={nodeColors:/^#[\da-f]{3,8}$|^rgb\([\d\s%,.]+\)$|^hsl\([\d\s%,.]+\)$|^[a-z]+$/i,filenameIcons:/^[\w-]+(?::[\w-]+)?$/,extensionIcons:/^[\w-]+(?::[\w-]+)?$/},B14=X((u,B)=>{for(let E of Object.keys(u)){let A=u[E];if(E.startsWith("__")||E.includes("proto")||E.includes("constr")||typeof A!=="string"||!B.test(A))z0.debug("sanitize deleting dictionary entry:",E,A),delete u[E]}},"sanitizeDictionaryConfig"),ex=X((u)=>{if(z0.debug("sanitizeDirective called with",u),typeof u!=="object"||u==null)return;if(Array.isArray(u)){u.forEach((B)=>ex(B));return}for(let B of Object.keys(u)){if(z0.debug("Checking key",B),B.startsWith("__")||B.includes("proto")||B.includes("constr")||!e34.has(B)||u[B]==null){z0.debug("sanitize deleting key: ",B),delete u[B];continue}if(typeof u[B]==="object"){let A=u14[B];if(A)B14(u[B],A);else z0.debug("sanitizing object",B),ex(u[B]);continue}let E=["themeCSS","fontFamily","altFontFamily"];for(let A of E)if(B.includes(A))z0.debug("sanitizing css option",B),u[B]=Xt(u[B])}if(u.themeVariables)for(let B of Object.keys(u.themeVariables)){let E=u.themeVariables[B];if(E?.match&&!E.match(/^[\d "#%(),.;A-Za-z]+$/))u.themeVariables[B]=""}z0.debug("After sanitization",u)},"sanitizeDirective"),Xt=X((u)=>{let B=0,E=0;for(let A of u){if(B<E)return"{ /* ERROR: Unbalanced CSS */ }";if(A==="{")B++;else if(A==="}")E++}if(B!==E)return"{ /* ERROR: Unbalanced CSS */ }";return u},"sanitizeCss"),GZ=Object.freeze(t4),_E=X((u)=>u===!1||["false","null","0"].includes(String(u).trim().toLowerCase())?!1:!0,"evaluate"),u8=E9({},GZ),QZ=[],tx=E9({},GZ),uv=X((u,B)=>{let E=E9({},u),A={};for(let C of B)_H0(C),A=E9(A,C);if(E=E9(E,A),A.theme&&A.theme in CF){let C=E9({},Qj),D=E9(C.themeVariables||{},A.themeVariables);if(E.theme&&E.theme in CF)E.themeVariables=CF[E.theme].getThemeVariables(D)}return tx=E,A14(tx),tx},"updateCurrentConfig"),yH0=X((u)=>{if(u8=E9({},GZ),u8=E9(u8,u),u.theme&&CF[u.theme])u8.themeVariables=CF[u.theme].getThemeVariables(u.themeVariables);return uv(u8,QZ),u8},"setSiteConfig"),cH0=X((u)=>{Qj=E9({},u)},"saveConfigFromInitialize"),gH0=X((u)=>{return u8=E9(u8,u),uv(u8,QZ),u8},"updateSiteConfig"),xt=X(()=>{return E9({},u8)},"getSiteConfig"),vt=X((u)=>{return uv(tx,[u]),F4()},"setConfig"),F4=X(()=>{return E9({},tx)},"getConfig"),_H0=X((u)=>{if(!u)return;["secure",...u8.secure??[]].forEach((B)=>{if(Object.hasOwn(u,B))z0.debug(`Denied attempt to modify a secure key ${B}`,u[B]),delete u[B]}),Object.keys(u).forEach((B)=>{if(B.startsWith("__"))delete u[B]}),Object.keys(u).forEach((B)=>{if(typeof u[B]==="string"&&(u[B].includes("<")||u[B].includes(">")||u[B].includes("url(data:")))delete u[B];if(typeof u[B]==="object")_H0(u[B])})},"sanitize"),nH0=X((u)=>{if(ex(u),u.fontFamily&&!u.themeVariables?.fontFamily)u.themeVariables={...u.themeVariables,fontFamily:u.fontFamily};QZ.push(u),uv(u8,QZ)},"addDirective"),Bv=X((u=u8)=>{QZ=[],uv(u,QZ)},"reset"),E14={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."},aH0={},pH0=X((u)=>{if(aH0[u])return;z0.warn(E14[u]),aH0[u]=!0},"issueWarning"),A14=X((u)=>{if(!u)return;if(u.lazyLoadedDiagrams||u.loadExternalDiagramsAtStartup)pH0("LAZY_LOAD_DEPRECATED")},"checkConfig"),Hj=X(()=>{let u={};if(Qj)u=E9(u,Qj);for(let B of QZ)u=E9(u,B);return u},"getUserDefinedConfig"),w1=X((u)=>{if(u.flowchart?.htmlLabels!=null)pH0("FLOWCHART_HTML_LABELS_DEPRECATED");return _E(u.htmlLabels??u.flowchart?.htmlLabels??!0)},"getEffectiveHtmlLabels"),St=/^([^\S\n\r]*)-{3}\s*[\n\r](.*?)[\n\r]\1-{3}\s*[\n\r]+/s,aQ=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,C14=/\s*%%.*\n/gm,Wt=class extends Error{static{X(this,"UnknownDiagramError")}constructor(u){super(u);this.name="UnknownDiagramError"}},Wf={},Ev=X(function(u,B){u=u.replace(St,"").replace(aQ,"").replace(C14,`
`);for(let[E,{detector:A}]of Object.entries(Wf))if(A(u,B))return E;throw new Wt(`No diagram type detected matching given configuration for text: ${u}`)},"detectType"),Lj=X((...u)=>{for(let{id:B,detector:E,loader:A}of u)dH0(B,E,A)},"registerLazyLoadedDiagrams"),dH0=X((u,B,E)=>{if(Wf[u])z0.warn(`Detector with key ${u} already exists. Overwriting.`);Wf[u]={detector:B,loader:E},z0.debug(`Detector with key ${u} added${E?" with loader":""}`)},"addDetector"),sH0=X((u)=>{return Wf[u].loader},"getDiagramLoader"),HZ=/<br\s*\/?>/gi,D14=X((u)=>{if(!u)return[""];return eH0(u).replace(/\\n/g,"#br#").split("#br#")},"getRows"),F14=(()=>{let u=!1;return()=>{if(!u)oH0(),u=!0}})();X(oH0,"setupDompurifyHooks");tH0=X((u)=>{return F14(),oB.sanitize(u)},"removeScript"),VH0=X((u,B)=>{if(w1(B)){let E=B.securityLevel;if(E==="antiscript"||E==="strict"||E==="sandbox")u=tH0(u);else if(E!=="loose")u=eH0(u),u=u.replace(/</g,"&lt;").replace(/>/g,"&gt;"),u=u.replace(/=/g,"&equals;"),u=f14(u)}return u},"sanitizeMore"),C3=X((u,B)=>{if(!u)return u;if(B.dompurifyConfig)u=oB.sanitize(VH0(u,B),B.dompurifyConfig).toString();else u=oB.sanitize(VH0(u,B),{FORBID_TAGS:["style"]}).toString();return u},"sanitizeText"),U14=X((u,B)=>{if(typeof u==="string")return C3(u,B);return u.flat().map((E)=>C3(E,B))},"sanitizeTextOrArray"),z14=X((u)=>{return HZ.test(u)},"hasBreaks"),k14=X((u)=>{return u.split(HZ)},"splitBreaks"),f14=X((u)=>{return u.replace(/#br#/g,"<br/>")},"placeholderToBreak"),eH0=X((u)=>{return u.replace(HZ,"#br#")},"breakToPlaceholder"),LZ=X((u)=>{let B="";if(u)B=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,B=CSS.escape(B);return B},"getUrl"),l14=X(function(...u){let B=u.filter((E)=>{return!isNaN(E)});return Math.max(...B)},"getMax"),b14=X(function(...u){let B=u.filter((E)=>{return!isNaN(E)});return Math.min(...B)},"getMin"),UF=X(function(u){let B=u.split(/(,)/),E=[];for(let A=0;A<B.length;A++){let C=B[A];if(C===","&&A>0&&A+1<B.length){let D=B[A-1],F=B[A+1];if(M14(D,F))C=D+","+F,A++,E.pop()}E.push(Z14(C))}return E.join("")},"parseGenericTypes"),qt=X((u,B)=>{return Math.max(0,u.split(B).length-1)},"countOccurrence"),M14=X((u,B)=>{let E=qt(u,"~"),A=qt(B,"~");return E===1&&A===1},"shouldCombineSets"),Z14=X((u)=>{let B=qt(u,"~"),E=!1;if(B<=1)return u;if(B%2!==0&&u.startsWith("~"))u=u.substring(1),E=!0;let A=[...u],C=A.indexOf("~"),D=A.lastIndexOf("~");while(C!==-1&&D!==-1&&C!==D)A[C]="<",A[D]=">",C=A.indexOf("~"),D=A.lastIndexOf("~");if(E)A.unshift("~");return A.join("")},"processSet"),hH0=X(()=>window.MathMLElement!==void 0,"isMathMLSupported"),wj=/\$\$(.*?)\$\$/g,A9=X((u)=>(u.match(wj)?.length??0)>0,"hasKatex"),VQ=X(async(u,B)=>{let E=document.createElement("div");E.innerHTML=await hQ(u,B),E.id="katex-temp",E.style.visibility="hidden",E.style.position="absolute",E.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",E);let C={width:E.clientWidth,height:E.clientHeight};return E.remove(),C},"calculateMathMLDimensions"),J14=X(async(u,B)=>{if(!A9(u))return u;if(!(hH0()||B.legacyMathML||B.forceLegacyMathML))return u.replace(wj,"MathML is unsupported in this environment.");{let{default:E}=await Promise.resolve().then(() => (iH0(),NH0)),A=B.forceLegacyMathML||!hH0()&&B.legacyMathML?"htmlAndMathml":"mathml";return u.split(HZ).map((C)=>A9(C)?`<div style="display: flex; align-items: center; justify-content: center; white-space: nowrap;">${C}</div>`:`<div>${C}</div>`).join("").replace(wj,(C,D)=>E.renderToString(D,{throwOnError:!0,displayMode:!0,output:A}).replace(/\n/g," ").replace(/<annotation.*<\/annotation>/g,""))}return u.replace(wj,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")},"renderKatexUnsanitized"),hQ=X(async(u,B)=>{return C3(await J14(u,B),B)},"renderKatexSanitized"),yu={getRows:D14,sanitizeText:C3,sanitizeTextOrArray:U14,hasBreaks:z14,splitBreaks:k14,lineBreakRegex:HZ,removeScript:tH0,getUrl:LZ,evaluate:_E,getMax:l14,getMin:b14},w14=X(function(u,B){for(let E of B)u.attr(E[0],E[1])},"d3Attrs"),K14=X(function(u,B,E){let A=new Map;if(E)A.set("width","100%"),A.set("style",`max-width: ${B}px;`);else A.set("height",u),A.set("width",B);return A},"calculateSvgSizeAttrs"),y3=X(function(u,B,E,A){let C=K14(B,E,A);w14(u,C)},"configureSvgSize"),zF=X(function(u,B,E,A){let C=B.node().getBBox(),D=C.width,F=C.height;z0.info(`SVG bounds: ${D}x${F}`,C);let U=0,z=0;z0.info(`Graph bounds: ${U}x${z}`,u),U=D+E*2,z=F+E*2,z0.info(`Calculated bounds: ${U}x${z}`),y3(B,z,U,A);let k=`${C.x-E} ${C.y-E} ${C.width+2*E} ${C.height+2*E}`;B.attr("viewBox",k)},"setupGraphViewbox"),Kj={};X(qj,"cssStyleSheetToString");Q14=X((u,B,E,A)=>{let C="";if(u in Kj&&Kj[u])C=Kj[u]({...E,svgId:A});else z0.warn(`No theme found for ${u}`);return`& {
font-family: ${E.fontFamily};
font-size: ${E.fontSize};
fill: ${E.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: ${E.errorBkgColor};
}
& .error-text {
fill: ${E.errorTextColor};
stroke: ${E.errorTextColor};
}
& .edge-thickness-normal {
stroke-width: ${E.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: ${E.lineColor};
stroke: ${E.lineColor};
}
& .marker.cross {
stroke: ${E.lineColor};
}
& svg {
font-family: ${E.fontFamily};
font-size: ${E.fontSize};
}
& p {
margin: 0
}
${C}
.node .neo-node {
stroke: ${E.nodeBorder};
}
[data-look="neo"].node rect, [data-look="neo"].cluster rect, [data-look="neo"].node polygon {
stroke: ${E.useGradient?"url("+A+"-gradient)":E.nodeBorder};
filter: ${E.dropShadow?E.dropShadow.replace("url(#drop-shadow)",`url(${A}-drop-shadow)`):"none"};
}
[data-look="neo"].swimlane.cluster rect {
filter: none;
}
[data-look="neo"].node path {
stroke: ${E.useGradient?"url("+A+"-gradient)":E.nodeBorder};
stroke-width: ${E.strokeWidth??1}px;
}
[data-look="neo"].node .outer-path {
filter: ${E.dropShadow?E.dropShadow.replace("url(#drop-shadow)",`url(${A}-drop-shadow)`):"none"};
}
[data-look="neo"].node .neo-line path {
stroke: ${E.nodeBorder};
filter: none;
}
[data-look="neo"].node circle{
stroke: ${E.useGradient?"url("+A+"-gradient)":E.nodeBorder};
filter: ${E.dropShadow?E.dropShadow.replace("url(#drop-shadow)",`url(${A}-drop-shadow)`):"none"};
}
[data-look="neo"].node circle .state-start{
fill: #000000;
}
[data-look="neo"].icon-shape .icon {
fill: ${E.useGradient?"url("+A+"-gradient)":E.nodeBorder};
filter: ${E.dropShadow?E.dropShadow.replace("url(#drop-shadow)",`url(${A}-drop-shadow)`):"none"};
}
[data-look="neo"].icon-shape .icon-neo path {
stroke: ${E.useGradient?"url("+A+"-gradient)":E.nodeBorder};
filter: ${E.dropShadow?E.dropShadow.replace("url(#drop-shadow)",`url(${A}-drop-shadow)`):"none"};
}
${B}
`},"getStyles"),G14=X((u,B)=>{if(B!==void 0)Kj[u]=B},"addStylesForDiagram"),uL0=Q14,Xj={};Gf(Xj,{clear:()=>D3,getAccDescription:()=>q3,getAccTitle:()=>H3,getDiagramTitle:()=>X3,setAccDescription:()=>L3,setAccTitle:()=>w3,setDiagramTitle:()=>T3});Ot=X((u)=>C3(u,F4()),"sanitizeText"),D3=X(()=>{Yt="",Tt="",Rt=""},"clear"),w3=X((u)=>{Yt=Ot(u).replace(/^\s+/g,"")},"setAccTitle"),H3=X(()=>Yt,"getAccTitle"),L3=X((u)=>{Tt=Ot(u).replace(/\n\s+/g,`
`)},"setAccDescription"),q3=X(()=>Tt,"getAccDescription"),T3=X((u)=>{Rt=Ot(u)},"setDiagramTitle"),X3=X(()=>Rt,"getDiagramTitle"),mH0=z0,H14=Ix,$0=F4,Av=vt,xj=GZ,vj=X((u)=>C3(u,$0()),"sanitizeText"),Cv=zF,L14=X(()=>{return Xj},"getCommonDb"),Gj={},Dv=X((u,B,E)=>{if(Gj[u])mH0.warn(`Diagram with id ${u} already registered. Overwriting.`);if(Gj[u]=B,E)dH0(u,E);G14(u,B.styles),B.injectUtils?.(mH0,H14,$0,vj,Cv,L14(),()=>{})},"registerDiagram"),Sj=X((u)=>{if(u in Gj)return Gj[u];throw new q14(u)},"getDiagram"),q14=class extends Error{static{X(this,"DiagramNotFoundError")}constructor(u){super(`Diagram ${u} not found.`)}}});function qZ(u,B){return u==null||B==null?NaN:u<B?-1:u>B?1:u>=B?0:NaN}function It(u,B){return u==null||B==null?NaN:B<u?-1:B>u?1:B>=u?0:NaN}function XZ(u){let B,E,A;if(u.length!==2)B=qZ,E=(U,z)=>qZ(u(U),z),A=(U,z)=>u(U)-z;else B=u===qZ||u===It?u:X14,E=u,A=u;function C(U,z,k=0,f=U.length){if(k<f){if(B(z,z)!==0)return f;do{let l=k+f>>>1;if(E(U[l],z)<0)k=l+1;else f=l}while(k<f)}return k}function D(U,z,k=0,f=U.length){if(k<f){if(B(z,z)!==0)return f;do{let l=k+f>>>1;if(E(U[l],z)<=0)k=l+1;else f=l}while(k<f)}return k}function F(U,z,k=0,f=U.length){let l=C(U,z,k,f-1);return l>k&&A(U[l-1],z)>-A(U[l],z)?l-1:l}return{left:C,center:F,right:D}}function X14(){return 0}var Pt=()=>{};function jt(u){return u===null?NaN:+u}var BL0,EL0,x14,v14,Nt;var AL0=g(()=>{Pt();BL0=XZ(qZ),EL0=BL0.right,x14=BL0.left,v14=XZ(jt).center,Nt=EL0});function CL0({_intern:u,_key:B},E){let A=B(E);return u.has(A)?u.get(A):E}function S14({_intern:u,_key:B},E){let A=B(E);if(u.has(A))return u.get(A);return u.set(A,E),E}function W14({_intern:u,_key:B},E){let A=B(E);if(u.has(A))E=u.get(A),u.delete(A);return E}function Y14(u){return u!==null&&typeof u==="object"?u.valueOf():u}var Fv;var DL0=g(()=>{Fv=class Fv extends Map{constructor(u,B=Y14){super();if(Object.defineProperties(this,{_intern:{value:new Map},_key:{value:B}}),u!=null)for(let[E,A]of u)this.set(E,A)}get(u){return super.get(CL0(this,u))}has(u){return super.has(CL0(this,u))}set(u,B){return super.set(S14(this,u),B)}delete(u){return super.delete(W14(this,u))}}});function Wj(u,B,E){let A=(B-u)/Math.max(0,E),C=Math.floor(Math.log10(A)),D=A/Math.pow(10,C),F=D>=R14?10:D>=T14?5:D>=O14?2:1,U,z,k;if(C<0){if(k=Math.pow(10,-C)/F,U=Math.round(u*k),z=Math.round(B*k),U/k<u)++U;if(z/k>B)--z;k=-k}else{if(k=Math.pow(10,C)*F,U=Math.round(u/k),z=Math.round(B/k),U*k<u)++U;if(z*k>B)--z}if(z<U&&0.5<=E&&E<2)return Wj(u,B,E*2);return[U,z,k]}function Yj(u,B,E){if(B=+B,u=+u,E=+E,!(E>0))return[];if(u===B)return[u];let A=B<u,[C,D,F]=A?Wj(B,u,E):Wj(u,B,E);if(!(D>=C))return[];let U=D-C+1,z=Array(U);if(A)if(F<0)for(let k=0;k<U;++k)z[k]=(D-k)/-F;else for(let k=0;k<U;++k)z[k]=(D-k)*F;else if(F<0)for(let k=0;k<U;++k)z[k]=(C+k)/-F;else for(let k=0;k<U;++k)z[k]=(C+k)*F;return z}function Uv(u,B,E){return B=+B,u=+u,E=+E,Wj(u,B,E)[2]}function mQ(u,B,E){B=+B,u=+u,E=+E;let A=B<u,C=A?Uv(B,u,E):Uv(u,B,E);return(A?-1:1)*(C<0?1/-C:C)}var R14,T14,O14;var FL0=g(()=>{R14=Math.sqrt(50),T14=Math.sqrt(10),O14=Math.sqrt(2)});function Rj(u,B){let E;if(B===void 0){for(let A of u)if(A!=null&&(E<A||E===void 0&&A>=A))E=A}else{let A=-1;for(let C of u)if((C=B(C,++A,u))!=null&&(E<C||E===void 0&&C>=C))E=C}return E}function Tj(u,B){let E;if(B===void 0){for(let A of u)if(A!=null&&(E>A||E===void 0&&A>=A))E=A}else{let A=-1;for(let C of u)if((C=B(C,++A,u))!=null&&(E>C||E===void 0&&C>=C))E=C}return E}function Oj(u,B,E){u=+u,B=+B,E=(C=arguments.length)<2?(B=u,u=0,1):C<3?1:+E;var A=-1,C=Math.max(0,Math.ceil((B-u)/E))|0,D=Array(C);while(++A<C)D[A]=u+A*E;return D}var Yf=g(()=>{AL0();Pt();FL0();DL0()});function it(u){return u}function I14(u){return"translate("+u+",0)"}function P14(u){return"translate(0,"+u+")"}function j14(u){return(B)=>+u(B)}function N14(u,B){if(B=Math.max(0,u.bandwidth()-B*2)/2,u.round())B=Math.round(B);return(E)=>+u(E)+B}function i14(){return!this.__axis}function zL0(u,B){var E=[],A=null,C=null,D=6,F=6,U=3,z=typeof window<"u"&&window.devicePixelRatio>1?0:0.5,k=u===Pj||u===Ij?-1:1,f=u===Ij||u===at?"x":"y",l=u===Pj||u===Vt?I14:P14;function b(M){var Z=A==null?B.ticks?B.ticks.apply(B,E):B.domain():A,J=C==null?B.tickFormat?B.tickFormat.apply(B,E):it:C,w=Math.max(D,0)+U,K=B.range(),Q=+K[0]+z,G=+K[K.length-1]+z,L=(B.bandwidth?N14:j14)(B.copy(),z),H=M.selection?M.selection():M,q=H.selectAll(".domain").data([null]),x=H.selectAll(".tick").data(Z,B).order(),v=x.exit(),W=x.enter().append("g").attr("class","tick"),S=x.select("line"),T=x.select("text");if(q=q.merge(q.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),x=x.merge(W),S=S.merge(W.append("line").attr("stroke","currentColor").attr(f+"2",k*D)),T=T.merge(W.append("text").attr("fill","currentColor").attr(f,k*w).attr("dy",u===Pj?"0em":u===Vt?"0.71em":"0.32em")),M!==H)q=q.transition(M),x=x.transition(M),S=S.transition(M),T=T.transition(M),v=v.transition(M).attr("opacity",UL0).attr("transform",function(R){return isFinite(R=L(R))?l(R+z):this.getAttribute("transform")}),W.attr("opacity",UL0).attr("transform",function(R){var Y=this.parentNode.__axis;return l((Y&&isFinite(Y=Y(R))?Y:L(R))+z)});v.remove(),q.attr("d",u===Ij||u===at?F?"M"+k*F+","+Q+"H"+z+"V"+G+"H"+k*F:"M"+z+","+Q+"V"+G:F?"M"+Q+","+k*F+"V"+z+"H"+G+"V"+k*F:"M"+Q+","+z+"H"+G),x.attr("opacity",1).attr("transform",function(R){return l(L(R)+z)}),S.attr(f+"2",k*D),T.attr(f,k*w).text(J),H.filter(i14).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",u===at?"start":u===Ij?"end":"middle"),H.each(function(){this.__axis=L})}return b.scale=function(M){return arguments.length?(B=M,b):B},b.ticks=function(){return E=Array.from(arguments),b},b.tickArguments=function(M){return arguments.length?(E=M==null?[]:Array.from(M),b):E.slice()},b.tickValues=function(M){return arguments.length?(A=M==null?null:Array.from(M),b):A&&A.slice()},b.tickFormat=function(M){return arguments.length?(C=M,b):C},b.tickSize=function(M){return arguments.length?(D=F=+M,b):D},b.tickSizeInner=function(M){return arguments.length?(D=+M,b):D},b.tickSizeOuter=function(M){return arguments.length?(F=+M,b):F},b.tickPadding=function(M){return arguments.length?(U=+M,b):U},b.offset=function(M){return arguments.length?(z=+M,b):z},b}function ht(u){return zL0(Pj,u)}function mt(u){return zL0(Vt,u)}var Pj=1,at=2,Vt=3,Ij=4,UL0=0.000001;var kL0=()=>{};var fL0=g(()=>{kL0()});function bL0(){for(var u=0,B=arguments.length,E={},A;u<B;++u){if(!(A=arguments[u]+"")||A in E||/[\s.]/.test(A))throw Error("illegal type: "+A);E[A]=[]}return new jj(E)}function jj(u){this._=u}function V14(u,B){return u.trim().split(/^|\s+/).map(function(E){var A="",C=E.indexOf(".");if(C>=0)A=E.slice(C+1),E=E.slice(0,C);if(E&&!B.hasOwnProperty(E))throw Error("unknown type: "+E);return{type:E,name:A}})}function h14(u,B){for(var E=0,A=u.length,C;E<A;++E)if((C=u[E]).name===B)return C.value}function lL0(u,B,E){for(var A=0,C=u.length;A<C;++A)if(u[A].name===B){u[A]=a14,u=u.slice(0,A).concat(u.slice(A+1));break}if(E!=null)u.push({name:B,value:E});return u}var a14,rt;var ML0=g(()=>{a14={value:()=>{}};jj.prototype=bL0.prototype={constructor:jj,on:function(u,B){var E=this._,A=V14(u+"",E),C,D=-1,F=A.length;if(arguments.length<2){while(++D<F)if((C=(u=A[D]).type)&&(C=h14(E[C],u.name)))return C;return}if(B!=null&&typeof B!=="function")throw Error("invalid callback: "+B);while(++D<F)if(C=(u=A[D]).type)E[C]=lL0(E[C],u.name,B);else if(B==null)for(C in E)E[C]=lL0(E[C],u.name,null);return this},copy:function(){var u={},B=this._;for(var E in B)u[E]=B[E].slice();return new jj(u)},call:function(u,B){if((C=arguments.length-2)>0)for(var E=Array(C),A=0,C,D;A<C;++A)E[A]=arguments[A+2];if(!this._.hasOwnProperty(u))throw Error("unknown type: "+u);for(D=this._[u],A=0,C=D.length;A<C;++A)D[A].value.apply(B,E)},apply:function(u,B,E){if(!this._.hasOwnProperty(u))throw Error("unknown type: "+u);for(var A=this._[u],C=0,D=A.length;C<D;++C)A[C].value.apply(B,E)}};rt=bL0});var $t=g(()=>{ML0()});var Nj="http://www.w3.org/1999/xhtml",yt;var ct=g(()=>{yt={svg:"http://www.w3.org/2000/svg",xhtml:Nj,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function kF(u){var B=u+="",E=B.indexOf(":");if(E>=0&&(B=u.slice(0,E))!=="xmlns")u=u.slice(E+1);return yt.hasOwnProperty(B)?{space:yt[B],local:u}:u}var ij=g(()=>{ct()});function m14(u){return function(){var B=this.ownerDocument,E=this.namespaceURI;return E===Nj&&B.documentElement.namespaceURI===Nj?B.createElement(u):B.createElementNS(E,u)}}function r14(u){return function(){return this.ownerDocument.createElementNS(u.space,u.local)}}function zv(u){var B=kF(u);return(B.local?r14:m14)(B)}var gt=g(()=>{ij();ct()});function $14(){}function Rf(u){return u==null?$14:function(){return this.querySelector(u)}}function _t(u){if(typeof u!=="function")u=Rf(u);for(var B=this._groups,E=B.length,A=Array(E),C=0;C<E;++C)for(var D=B[C],F=D.length,U=A[C]=Array(F),z,k,f=0;f<F;++f)if((z=D[f])&&(k=u.call(z,z.__data__,f,D))){if("__data__"in z)k.__data__=z.__data__;U[f]=k}return new j9(A,this._parents)}var ZL0=g(()=>{FC()});function nt(u){return u==null?[]:Array.isArray(u)?u:Array.from(u)}function y14(){return[]}function rQ(u){return u==null?y14:function(){return this.querySelectorAll(u)}}function c14(u){return function(){return nt(u.apply(this,arguments))}}function pt(u){if(typeof u==="function")u=c14(u);else u=rQ(u);for(var B=this._groups,E=B.length,A=[],C=[],D=0;D<E;++D)for(var F=B[D],U=F.length,z,k=0;k<U;++k)if(z=F[k])A.push(u.call(z,z.__data__,k,F)),C.push(z);return new j9(A,C)}var JL0=g(()=>{FC()});function $Q(u){return function(){return this.matches(u)}}function aj(u){return function(B){return B.matches(u)}}function _14(u){return function(){return g14.call(this.children,u)}}function n14(){return this.firstElementChild}function dt(u){return this.select(u==null?n14:_14(typeof u==="function"?u:aj(u)))}var g14;var wL0=g(()=>{g14=Array.prototype.find});function d14(){return Array.from(this.children)}function s14(u){return function(){return p14.call(this.children,u)}}function st(u){return this.selectAll(u==null?d14:s14(typeof u==="function"?u:aj(u)))}var p14;var KL0=g(()=>{p14=Array.prototype.filter});function ot(u){if(typeof u!=="function")u=$Q(u);for(var B=this._groups,E=B.length,A=Array(E),C=0;C<E;++C)for(var D=B[C],F=D.length,U=A[C]=[],z,k=0;k<F;++k)if((z=D[k])&&u.call(z,z.__data__,k,D))U.push(z);return new j9(A,this._parents)}var QL0=g(()=>{FC()});function kv(u){return Array(u.length)}function tt(){return new j9(this._enter||this._groups.map(kv),this._parents)}function fv(u,B){this.ownerDocument=u.ownerDocument,this.namespaceURI=u.namespaceURI,this._next=null,this._parent=u,this.__data__=B}var et=g(()=>{FC();fv.prototype={constructor:fv,appendChild:function(u){return this._parent.insertBefore(u,this._next)},insertBefore:function(u,B){return this._parent.insertBefore(u,B)},querySelector:function(u){return this._parent.querySelector(u)},querySelectorAll:function(u){return this._parent.querySelectorAll(u)}}});function ue(u){return function(){return u}}function o14(u,B,E,A,C,D){var F=0,U,z=B.length,k=D.length;for(;F<k;++F)if(U=B[F])U.__data__=D[F],A[F]=U;else E[F]=new fv(u,D[F]);for(;F<z;++F)if(U=B[F])C[F]=U}function t14(u,B,E,A,C,D,F){var U,z,k=new Map,f=B.length,l=D.length,b=Array(f),M;for(U=0;U<f;++U)if(z=B[U])if(b[U]=M=F.call(z,z.__data__,U,B)+"",k.has(M))C[U]=z;else k.set(M,z);for(U=0;U<l;++U)if(M=F.call(u,D[U],U,D)+"",z=k.get(M))A[U]=z,z.__data__=D[U],k.delete(M);else E[U]=new fv(u,D[U]);for(U=0;U<f;++U)if((z=B[U])&&k.get(b[U])===z)C[U]=z}function e14(u){return u.__data__}function Be(u,B){if(!arguments.length)return Array.from(this,e14);var E=B?t14:o14,A=this._parents,C=this._groups;if(typeof u!=="function")u=ue(u);for(var D=C.length,F=Array(D),U=Array(D),z=Array(D),k=0;k<D;++k){var f=A[k],l=C[k],b=l.length,M=u64(u.call(f,f&&f.__data__,k,A)),Z=M.length,J=U[k]=Array(Z),w=F[k]=Array(Z),K=z[k]=Array(b);E(f,l,J,w,K,M,B);for(var Q=0,G=0,L,H;Q<Z;++Q)if(L=J[Q]){if(Q>=G)G=Q+1;while(!(H=w[G])&&++G<Z);L._next=H||null}}return F=new j9(F,A),F._enter=U,F._exit=z,F}function u64(u){return typeof u==="object"&&"length"in u?u:Array.from(u)}var GL0=g(()=>{FC();et()});function Ee(){return new j9(this._exit||this._groups.map(kv),this._parents)}var HL0=g(()=>{FC()});function Ae(u,B,E){var A=this.enter(),C=this,D=this.exit();if(typeof u==="function"){if(A=u(A),A)A=A.selection()}else A=A.append(u+"");if(B!=null){if(C=B(C),C)C=C.selection()}if(E==null)D.remove();else E(D);return A&&C?A.merge(C).order():C}function Ce(u){var B=u.selection?u.selection():u;for(var E=this._groups,A=B._groups,C=E.length,D=A.length,F=Math.min(C,D),U=Array(C),z=0;z<F;++z)for(var k=E[z],f=A[z],l=k.length,b=U[z]=Array(l),M,Z=0;Z<l;++Z)if(M=k[Z]||f[Z])b[Z]=M;for(;z<C;++z)U[z]=E[z];return new j9(U,this._parents)}var LL0=g(()=>{FC()});function De(){for(var u=this._groups,B=-1,E=u.length;++B<E;)for(var A=u[B],C=A.length-1,D=A[C],F;--C>=0;)if(F=A[C]){if(D&&F.compareDocumentPosition(D)^4)D.parentNode.insertBefore(F,D);D=F}return this}function Fe(u){if(!u)u=B64;function B(l,b){return l&&b?u(l.__data__,b.__data__):!l-!b}for(var E=this._groups,A=E.length,C=Array(A),D=0;D<A;++D){for(var F=E[D],U=F.length,z=C[D]=Array(U),k,f=0;f<U;++f)if(k=F[f])z[f]=k;z.sort(B)}return new j9(C,this._parents).order()}function B64(u,B){return u<B?-1:u>B?1:u>=B?0:NaN}var qL0=g(()=>{FC()});function Ue(){var u=arguments[0];return arguments[0]=this,u.apply(null,arguments),this}function ze(){return Array.from(this)}function ke(){for(var u=this._groups,B=0,E=u.length;B<E;++B)for(var A=u[B],C=0,D=A.length;C<D;++C){var F=A[C];if(F)return F}return null}function fe(){let u=0;for(let B of this)++u;return u}function le(){return!this.node()}function be(u){for(var B=this._groups,E=0,A=B.length;E<A;++E)for(var C=B[E],D=0,F=C.length,U;D<F;++D)if(U=C[D])u.call(U,U.__data__,D,C);return this}function E64(u){return function(){this.removeAttribute(u)}}function A64(u){return function(){this.removeAttributeNS(u.space,u.local)}}function C64(u,B){return function(){this.setAttribute(u,B)}}function D64(u,B){return function(){this.setAttributeNS(u.space,u.local,B)}}function F64(u,B){return function(){var E=B.apply(this,arguments);if(E==null)this.removeAttribute(u);else this.setAttribute(u,E)}}function U64(u,B){return function(){var E=B.apply(this,arguments);if(E==null)this.removeAttributeNS(u.space,u.local);else this.setAttributeNS(u.space,u.local,E)}}function Me(u,B){var E=kF(u);if(arguments.length<2){var A=this.node();return E.local?A.getAttributeNS(E.space,E.local):A.getAttribute(E)}return this.each((B==null?E.local?A64:E64:typeof B==="function"?E.local?U64:F64:E.local?D64:C64)(E,B))}var XL0=g(()=>{ij()});function lv(u){return u.ownerDocument&&u.ownerDocument.defaultView||u.document&&u||u.defaultView}function z64(u){return function(){this.style.removeProperty(u)}}function k64(u,B,E){return function(){this.style.setProperty(u,B,E)}}function f64(u,B,E){return function(){var A=B.apply(this,arguments);if(A==null)this.style.removeProperty(u);else this.style.setProperty(u,A,E)}}function Ze(u,B,E){return arguments.length>1?this.each((B==null?z64:typeof B==="function"?f64:k64)(u,B,E==null?"":E)):Tf(this.node(),u)}function Tf(u,B){return u.style.getPropertyValue(B)||lv(u).getComputedStyle(u,null).getPropertyValue(B)}var Je=()=>{};function l64(u){return function(){delete this[u]}}function b64(u,B){return function(){this[u]=B}}function M64(u,B){return function(){var E=B.apply(this,arguments);if(E==null)delete this[u];else this[u]=E}}function we(u,B){return arguments.length>1?this.each((B==null?l64:typeof B==="function"?M64:b64)(u,B)):this.node()[u]}function xL0(u){return u.trim().split(/^|\s+/)}function Ke(u){return u.classList||new vL0(u)}function vL0(u){this._node=u,this._names=xL0(u.getAttribute("class")||"")}function SL0(u,B){var E=Ke(u),A=-1,C=B.length;while(++A<C)E.add(B[A])}function WL0(u,B){var E=Ke(u),A=-1,C=B.length;while(++A<C)E.remove(B[A])}function Z64(u){return function(){SL0(this,u)}}function J64(u){return function(){WL0(this,u)}}function w64(u,B){return function(){(B.apply(this,arguments)?SL0:WL0)(this,u)}}function Qe(u,B){var E=xL0(u+"");if(arguments.length<2){var A=Ke(this.node()),C=-1,D=E.length;while(++C<D)if(!A.contains(E[C]))return!1;return!0}return this.each((typeof B==="function"?w64:B?Z64:J64)(E,B))}var YL0=g(()=>{vL0.prototype={add:function(u){var B=this._names.indexOf(u);if(B<0)this._names.push(u),this._node.setAttribute("class",this._names.join(" "))},remove:function(u){var B=this._names.indexOf(u);if(B>=0)this._names.splice(B,1),this._node.setAttribute("class",this._names.join(" "))},contains:function(u){return this._names.indexOf(u)>=0}}});function K64(){this.textContent=""}function Q64(u){return function(){this.textContent=u}}function G64(u){return function(){var B=u.apply(this,arguments);this.textContent=B==null?"":B}}function Ge(u){return arguments.length?this.each(u==null?K64:(typeof u==="function"?G64:Q64)(u)):this.node().textContent}function H64(){this.innerHTML=""}function L64(u){return function(){this.innerHTML=u}}function q64(u){return function(){var B=u.apply(this,arguments);this.innerHTML=B==null?"":B}}function He(u){return arguments.length?this.each(u==null?H64:(typeof u==="function"?q64:L64)(u)):this.node().innerHTML}function X64(){if(this.nextSibling)this.parentNode.appendChild(this)}function Le(){return this.each(X64)}function x64(){if(this.previousSibling)this.parentNode.insertBefore(this,this.parentNode.firstChild)}function qe(){return this.each(x64)}function Xe(u){var B=typeof u==="function"?u:zv(u);return this.select(function(){return this.appendChild(B.apply(this,arguments))})}var RL0=g(()=>{gt()});function v64(){return null}function xe(u,B){var E=typeof u==="function"?u:zv(u),A=B==null?v64:typeof B==="function"?B:Rf(B);return this.select(function(){return this.insertBefore(E.apply(this,arguments),A.apply(this,arguments)||null)})}var TL0=g(()=>{gt()});function S64(){var u=this.parentNode;if(u)u.removeChild(this)}function ve(){return this.each(S64)}function W64(){var u=this.cloneNode(!1),B=this.parentNode;return B?B.insertBefore(u,this.nextSibling):u}function Y64(){var u=this.cloneNode(!0),B=this.parentNode;return B?B.insertBefore(u,this.nextSibling):u}function Se(u){return this.select(u?Y64:W64)}function We(u){return arguments.length?this.property("__data__",u):this.node().__data__}function R64(u){return function(B){u.call(this,B,this.__data__)}}function T64(u){return u.trim().split(/^|\s+/).map(function(B){var E="",A=B.indexOf(".");if(A>=0)E=B.slice(A+1),B=B.slice(0,A);return{type:B,name:E}})}function O64(u){return function(){var B=this.__on;if(!B)return;for(var E=0,A=-1,C=B.length,D;E<C;++E)if(D=B[E],(!u.type||D.type===u.type)&&D.name===u.name)this.removeEventListener(D.type,D.listener,D.options);else B[++A]=D;if(++A)B.length=A;else delete this.__on}}function I64(u,B,E){return function(){var A=this.__on,C,D=R64(B);if(A){for(var F=0,U=A.length;F<U;++F)if((C=A[F]).type===u.type&&C.name===u.name){this.removeEventListener(C.type,C.listener,C.options),this.addEventListener(C.type,C.listener=D,C.options=E),C.value=B;return}}if(this.addEventListener(u.type,D,E),C={type:u.type,name:u.name,value:B,listener:D,options:E},!A)this.__on=[C];else A.push(C)}}function Ye(u,B,E){var A=T64(u+""),C,D=A.length,F;if(arguments.length<2){var U=this.node().__on;if(U){for(var z=0,k=U.length,f;z<k;++z)for(C=0,f=U[z];C<D;++C)if((F=A[C]).type===f.type&&F.name===f.name)return f.value}return}U=B?I64:O64;for(C=0;C<D;++C)this.each(U(A[C],B,E));return this}function OL0(u,B,E){var A=lv(u),C=A.CustomEvent;if(typeof C==="function")C=new C(B,E);else if(C=A.document.createEvent("Event"),E)C.initEvent(B,E.bubbles,E.cancelable),C.detail=E.detail;else C.initEvent(B,!1,!1);u.dispatchEvent(C)}function P64(u,B){return function(){return OL0(this,u,B)}}function j64(u,B){return function(){return OL0(this,u,B.apply(this,arguments))}}function Re(u,B){return this.each((typeof B==="function"?j64:P64)(u,B))}var IL0=()=>{};function*Te(){for(var u=this._groups,B=0,E=u.length;B<E;++B)for(var A=u[B],C=0,D=A.length,F;C<D;++C)if(F=A[C])yield F}function j9(u,B){this._groups=u,this._parents=B}function PL0(){return new j9([[document.documentElement]],Oe)}function N64(){return this}var Oe,Qz;var FC=g(()=>{ZL0();JL0();wL0();KL0();QL0();GL0();et();HL0();LL0();qL0();XL0();Je();YL0();RL0();TL0();IL0();Oe=[null];j9.prototype=PL0.prototype={constructor:j9,select:_t,selectAll:pt,selectChild:dt,selectChildren:st,filter:ot,data:Be,enter:tt,exit:Ee,join:Ae,merge:Ce,selection:N64,order:De,sort:Fe,call:Ue,nodes:ze,node:ke,size:fe,empty:le,each:be,attr:Me,style:Ze,property:we,classed:Qe,text:Ge,html:He,raise:Le,lower:qe,append:Xe,insert:xe,remove:ve,clone:Se,datum:We,on:Ye,dispatch:Re,[Symbol.iterator]:Te};Qz=PL0});function Ku(u){return typeof u==="string"?new j9([[document.querySelector(u)]],[document.documentElement]):new j9([[u]],Oe)}var jL0=g(()=>{FC()});var UC=g(()=>{ij();jL0();FC();Je()});var NL0=()=>{};function Of(u,B,E){u.prototype=B.prototype=E,E.constructor=u}function yQ(u,B){var E=Object.create(u.prototype);for(var A in B)E[A]=B[A];return E}function If(){}function aL0(){return this.rgb().formatHex()}function y64(){return this.rgb().formatHex8()}function c64(){return cL0(this).formatHsl()}function VL0(){return this.rgb().formatRgb()}function kC(u){var B,E;return u=(u+"").trim().toLowerCase(),(B=i64.exec(u))?(E=B[1].length,B=parseInt(B[1],16),E===6?hL0(B):E===3?new p5(B>>8&15|B>>4&240,B>>4&15|B&240,(B&15)<<4|B&15,1):E===8?Vj(B>>24&255,B>>16&255,B>>8&255,(B&255)/255):E===4?Vj(B>>12&15|B>>8&240,B>>8&15|B>>4&240,B>>4&15|B&240,((B&15)<<4|B&15)/255):null):(B=a64.exec(u))?new p5(B[1],B[2],B[3],1):(B=V64.exec(u))?new p5(B[1]*255/100,B[2]*255/100,B[3]*255/100,1):(B=h64.exec(u))?Vj(B[1],B[2],B[3],B[4]):(B=m64.exec(u))?Vj(B[1]*255/100,B[2]*255/100,B[3]*255/100,B[4]):(B=r64.exec(u))?$L0(B[1],B[2]/100,B[3]/100,1):(B=$64.exec(u))?$L0(B[1],B[2]/100,B[3]/100,B[4]):iL0.hasOwnProperty(u)?hL0(iL0[u]):u==="transparent"?new p5(NaN,NaN,NaN,0):null}function hL0(u){return new p5(u>>16&255,u>>8&255,u&255,1)}function Vj(u,B,E,A){if(A<=0)u=B=E=NaN;return new p5(u,B,E,A)}function Pe(u){if(!(u instanceof If))u=kC(u);if(!u)return new p5;return u=u.rgb(),new p5(u.r,u.g,u.b,u.opacity)}function gQ(u,B,E,A){return arguments.length===1?Pe(u):new p5(u,B,E,A==null?1:A)}function p5(u,B,E,A){this.r=+u,this.g=+B,this.b=+E,this.opacity=+A}function mL0(){return`#${xZ(this.r)}${xZ(this.g)}${xZ(this.b)}`}function g64(){return`#${xZ(this.r)}${xZ(this.g)}${xZ(this.b)}${xZ((isNaN(this.opacity)?1:this.opacity)*255)}`}function rL0(){let u=rj(this.opacity);return`${u===1?"rgb(":"rgba("}${vZ(this.r)}, ${vZ(this.g)}, ${vZ(this.b)}${u===1?")":`, ${u})`}`}function rj(u){return isNaN(u)?1:Math.max(0,Math.min(1,u))}function vZ(u){return Math.max(0,Math.min(255,Math.round(u)||0))}function xZ(u){return u=vZ(u),(u<16?"0":"")+u.toString(16)}function $L0(u,B,E,A){if(A<=0)u=B=E=NaN;else if(E<=0||E>=1)u=B=NaN;else if(B<=0)u=NaN;return new zC(u,B,E,A)}function cL0(u){if(u instanceof zC)return new zC(u.h,u.s,u.l,u.opacity);if(!(u instanceof If))u=kC(u);if(!u)return new zC;if(u instanceof zC)return u;u=u.rgb();var B=u.r/255,E=u.g/255,A=u.b/255,C=Math.min(B,E,A),D=Math.max(B,E,A),F=NaN,U=D-C,z=(D+C)/2;if(U){if(B===D)F=(E-A)/U+(E<A)*6;else if(E===D)F=(A-B)/U+2;else F=(B-E)/U+4;U/=z<0.5?D+C:2-D-C,F*=60}else U=z>0&&z<1?0:F;return new zC(F,U,z,u.opacity)}function gL0(u,B,E,A){return arguments.length===1?cL0(u):new zC(u,B,E,A==null?1:A)}function zC(u,B,E,A){this.h=+u,this.s=+B,this.l=+E,this.opacity=+A}function yL0(u){return u=(u||0)%360,u<0?u+360:u}function hj(u){return Math.max(0,Math.min(1,u||0))}function Ie(u,B,E){return(u<60?B+(E-B)*u/60:u<180?E:u<240?B+(E-B)*(240-u)/60:B)*255}var bv=0.7,mj,cQ="\\s*([+-]?\\d+)\\s*",Mv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",fF="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",i64,a64,V64,h64,m64,r64,$64,iL0;var je=g(()=>{mj=1/bv,i64=/^#([0-9a-f]{3,8})$/,a64=new RegExp(`^rgb\\(${cQ},${cQ},${cQ}\\)$`),V64=new RegExp(`^rgb\\(${fF},${fF},${fF}\\)$`),h64=new RegExp(`^rgba\\(${cQ},${cQ},${cQ},${Mv}\\)$`),m64=new RegExp(`^rgba\\(${fF},${fF},${fF},${Mv}\\)$`),r64=new RegExp(`^hsl\\(${Mv},${fF},${fF}\\)$`),$64=new RegExp(`^hsla\\(${Mv},${fF},${fF},${Mv}\\)$`),iL0={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};Of(If,kC,{copy(u){return Object.assign(new this.constructor,this,u)},displayable(){return this.rgb().displayable()},hex:aL0,formatHex:aL0,formatHex8:y64,formatHsl:c64,formatRgb:VL0,toString:VL0});Of(p5,gQ,yQ(If,{brighter(u){return u=u==null?mj:Math.pow(mj,u),new p5(this.r*u,this.g*u,this.b*u,this.opacity)},darker(u){return u=u==null?bv:Math.pow(bv,u),new p5(this.r*u,this.g*u,this.b*u,this.opacity)},rgb(){return this},clamp(){return new p5(vZ(this.r),vZ(this.g),vZ(this.b),rj(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:mL0,formatHex:mL0,formatHex8:g64,formatRgb:rL0,toString:rL0}));Of(zC,gL0,yQ(If,{brighter(u){return u=u==null?mj:Math.pow(mj,u),new zC(this.h,this.s,this.l*u,this.opacity)},darker(u){return u=u==null?bv:Math.pow(bv,u),new zC(this.h,this.s,this.l*u,this.opacity)},rgb(){var u=this.h%360+(this.h<0)*360,B=isNaN(u)||isNaN(this.s)?0:this.s,E=this.l,A=E+(E<0.5?E:1-E)*B,C=2*E-A;return new p5(Ie(u>=240?u-240:u+120,C,A),Ie(u,C,A),Ie(u<120?u+240:u-120,C,A),this.opacity)},clamp(){return new zC(yL0(this.h),hj(this.s),hj(this.l),rj(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 u=rj(this.opacity);return`${u===1?"hsl(":"hsla("}${yL0(this.h)}, ${hj(this.s)*100}%, ${hj(this.l)*100}%${u===1?")":`, ${u})`}`}}))});var _L0,nL0;var pL0=g(()=>{_L0=Math.PI/180,nL0=180/Math.PI});function uq0(u){if(u instanceof lF)return new lF(u.l,u.a,u.b,u.opacity);if(u instanceof Gz)return Bq0(u);if(!(u instanceof p5))u=Pe(u);var B=Ve(u.r),E=Ve(u.g),A=Ve(u.b),C=Ne((0.2225045*B+0.7168786*E+0.0606169*A)/sL0),D,F;if(B===E&&E===A)D=F=C;else D=Ne((0.4360747*B+0.3850649*E+0.1430804*A)/dL0),F=Ne((0.0139322*B+0.0971045*E+0.7141733*A)/oL0);return new lF(116*C-16,500*(D-C),200*(C-F),u.opacity)}function he(u,B,E,A){return arguments.length===1?uq0(u):new lF(u,B,E,A==null?1:A)}function lF(u,B,E,A){this.l=+u,this.a=+B,this.b=+E,this.opacity=+A}function Ne(u){return u>_64?Math.pow(u,0.3333333333333333):u/eL0+tL0}function ie(u){return u>_Q?u*u*u:eL0*(u-tL0)}function ae(u){return 255*(u<=0.0031308?12.92*u:1.055*Math.pow(u,0.4166666666666667)-0.055)}function Ve(u){return(u/=255)<=0.04045?u/12.92:Math.pow((u+0.055)/1.055,2.4)}function n64(u){if(u instanceof Gz)return new Gz(u.h,u.c,u.l,u.opacity);if(!(u instanceof lF))u=uq0(u);if(u.a===0&&u.b===0)return new Gz(NaN,0<u.l&&u.l<100?0:NaN,u.l,u.opacity);var B=Math.atan2(u.b,u.a)*nL0;return new Gz(B<0?B+360:B,Math.sqrt(u.a*u.a+u.b*u.b),u.l,u.opacity)}function Zv(u,B,E,A){return arguments.length===1?n64(u):new Gz(u,B,E,A==null?1:A)}function Gz(u,B,E,A){this.h=+u,this.c=+B,this.l=+E,this.opacity=+A}function Bq0(u){if(isNaN(u.h))return new lF(u.l,0,0,u.opacity);var B=u.h*_L0;return new lF(u.l,Math.cos(B)*u.c,Math.sin(B)*u.c,u.opacity)}var $j=18,dL0=0.96422,sL0=1,oL0=0.82521,tL0=0.13793103448275862,_Q=0.20689655172413793,eL0,_64;var Eq0=g(()=>{je();pL0();eL0=3*_Q*_Q,_64=_Q*_Q*_Q;Of(lF,he,yQ(If,{brighter(u){return new lF(this.l+$j*(u==null?1:u),this.a,this.b,this.opacity)},darker(u){return new lF(this.l-$j*(u==null?1:u),this.a,this.b,this.opacity)},rgb(){var u=(this.l+16)/116,B=isNaN(this.a)?u:u+this.a/500,E=isNaN(this.b)?u:u-this.b/200;return B=dL0*ie(B),u=sL0*ie(u),E=oL0*ie(E),new p5(ae(3.1338561*B-1.6168667*u-0.4906146*E),ae(-0.9787684*B+1.9161415*u+0.033454*E),ae(0.0719453*B-0.2289914*u+1.4052427*E),this.opacity)}}));Of(Gz,Zv,yQ(If,{brighter(u){return new Gz(this.h,this.c,this.l+$j*(u==null?1:u),this.opacity)},darker(u){return new Gz(this.h,this.c,this.l-$j*(u==null?1:u),this.opacity)},rgb(){return Bq0(this).rgb()}}))});var nQ=g(()=>{je();Eq0()});function me(u,B,E,A,C){var D=u*u,F=D*u;return((1-3*u+3*D-F)*B+(4-6*D+3*F)*E+(1+3*u+3*D-3*F)*A+F*C)/6}function re(u){var B=u.length-1;return function(E){var A=E<=0?E=0:E>=1?(E=1,B-1):Math.floor(E*B),C=u[A],D=u[A+1],F=A>0?u[A-1]:2*C-D,U=A<B-1?u[A+2]:2*D-C;return me((E-A/B)*B,F,C,D,U)}}function $e(u){var B=u.length;return function(E){var A=Math.floor(((E%=1)<0?++E:E)*B),C=u[(A+B-1)%B],D=u[A%B],F=u[(A+1)%B],U=u[(A+2)%B];return me((E-A/B)*B,C,D,F,U)}}var Aq0=()=>{};var pQ=(u)=>()=>u;function Cq0(u,B){return function(E){return u+E*B}}function p64(u,B,E){return u=Math.pow(u,E),B=Math.pow(B,E)-u,E=1/E,function(A){return Math.pow(u+A*B,E)}}function Dq0(u,B){var E=B-u;return E?Cq0(u,E>180||E<-180?E-360*Math.round(E/360):E):pQ(isNaN(u)?B:u)}function Fq0(u){return(u=+u)===1?Hz:function(B,E){return E-B?p64(B,E,u):pQ(isNaN(B)?E:B)}}function Hz(u,B){var E=B-u;return E?Cq0(u,E):pQ(isNaN(u)?B:u)}var ye=()=>{};function Uq0(u){return function(B){var E=B.length,A=Array(E),C=Array(E),D=Array(E),F,U;for(F=0;F<E;++F)U=gQ(B[F]),A[F]=U.r||0,C[F]=U.g||0,D[F]=U.b||0;return A=u(A),C=u(C),D=u(D),U.opacity=1,function(z){return U.r=A(z),U.g=C(z),U.b=D(z),U+""}}}var SZ,d64,s64;var ce=g(()=>{nQ();Aq0();ye();SZ=function u(B){var E=Fq0(B);function A(C,D){var F=E((C=gQ(C)).r,(D=gQ(D)).r),U=E(C.g,D.g),z=E(C.b,D.b),k=Hz(C.opacity,D.opacity);return function(f){return C.r=F(f),C.g=U(f),C.b=z(f),C.opacity=k(f),C+""}}return A.gamma=u,A}(1);d64=Uq0(re),s64=Uq0($e)});function ge(u,B){if(!B)B=[];var E=u?Math.min(B.length,u.length):0,A=B.slice(),C;return function(D){for(C=0;C<E;++C)A[C]=u[C]*(1-D)+B[C]*D;return A}}function zq0(u){return ArrayBuffer.isView(u)&&!(u instanceof DataView)}function kq0(u,B){var E=B?B.length:0,A=u?Math.min(E,u.length):0,C=Array(A),D=Array(E),F;for(F=0;F<A;++F)C[F]=Pf(u[F],B[F]);for(;F<E;++F)D[F]=B[F];return function(U){for(F=0;F<A;++F)D[F]=C[F](U);return D}}var fq0=g(()=>{yj()});function _e(u,B){var E=new Date;return u=+u,B=+B,function(A){return E.setTime(u*(1-A)+B*A),E}}function L5(u,B){return u=+u,B=+B,function(E){return u*(1-E)+B*E}}function ne(u,B){var E={},A={},C;if(u===null||typeof u!=="object")u={};if(B===null||typeof B!=="object")B={};for(C in B)if(C in u)E[C]=Pf(u[C],B[C]);else A[C]=B[C];return function(D){for(C in E)A[C]=E[C](D);return A}}var lq0=g(()=>{yj()});function o64(u){return function(){return u}}function t64(u){return function(B){return u(B)+""}}function dQ(u,B){var E=de.lastIndex=pe.lastIndex=0,A,C,D,F=-1,U=[],z=[];u=u+"",B=B+"";while((A=de.exec(u))&&(C=pe.exec(B))){if((D=C.index)>E)if(D=B.slice(E,D),U[F])U[F]+=D;else U[++F]=D;if((A=A[0])===(C=C[0]))if(U[F])U[F]+=C;else U[++F]=C;else U[++F]=null,z.push({i:F,x:L5(A,C)});E=pe.lastIndex}if(E<B.length)if(D=B.slice(E),U[F])U[F]+=D;else U[++F]=D;return U.length<2?z[0]?t64(z[0].x):o64(B):(B=z.length,function(k){for(var f=0,l;f<B;++f)U[(l=z[f]).i]=l.x(k);return U.join("")})}var de,pe;var se=g(()=>{de=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,pe=new RegExp(de.source,"g")});function Pf(u,B){var E=typeof B,A;return B==null||E==="boolean"?pQ(B):(E==="number"?L5:E==="string"?(A=kC(B))?(B=A,SZ):dQ:B instanceof kC?SZ:B instanceof Date?_e:zq0(B)?ge:Array.isArray(B)?kq0:typeof B.valueOf!=="function"&&typeof B.toString!=="function"||isNaN(B)?ne:L5)(u,B)}var yj=g(()=>{nQ();ce();fq0();lq0();se()});function cj(u,B){return u=+u,B=+B,function(E){return Math.round(u*(1-E)+B*E)}}function _j(u,B,E,A,C,D){var F,U,z;if(F=Math.sqrt(u*u+B*B))u/=F,B/=F;if(z=u*E+B*A)E-=u*z,A-=B*z;if(U=Math.sqrt(E*E+A*A))E/=U,A/=U,z/=U;if(u*A<B*E)u=-u,B=-B,z=-z,F=-F;return{translateX:C,translateY:D,rotate:Math.atan2(B,u)*bq0,skewX:Math.atan(z)*bq0,scaleX:F,scaleY:U}}var bq0,gj;var Mq0=g(()=>{bq0=180/Math.PI,gj={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function Zq0(u){let B=new(typeof DOMMatrix==="function"?DOMMatrix:WebKitCSSMatrix)(u+"");return B.isIdentity?gj:_j(B.a,B.b,B.c,B.d,B.e,B.f)}function Jq0(u){if(u==null)return gj;if(!nj)nj=document.createElementNS("http://www.w3.org/2000/svg","g");if(nj.setAttribute("transform",u),!(u=nj.transform.baseVal.consolidate()))return gj;return u=u.matrix,_j(u.a,u.b,u.c,u.d,u.e,u.f)}var nj;var wq0=g(()=>{Mq0()});function Kq0(u,B,E,A){function C(k){return k.length?k.pop()+" ":""}function D(k,f,l,b,M,Z){if(k!==l||f!==b){var J=M.push("translate(",null,B,null,E);Z.push({i:J-4,x:L5(k,l)},{i:J-2,x:L5(f,b)})}else if(l||b)M.push("translate("+l+B+b+E)}function F(k,f,l,b){if(k!==f){if(k-f>180)f+=360;else if(f-k>180)k+=360;b.push({i:l.push(C(l)+"rotate(",null,A)-2,x:L5(k,f)})}else if(f)l.push(C(l)+"rotate("+f+A)}function U(k,f,l,b){if(k!==f)b.push({i:l.push(C(l)+"skewX(",null,A)-2,x:L5(k,f)});else if(f)l.push(C(l)+"skewX("+f+A)}function z(k,f,l,b,M,Z){if(k!==l||f!==b){var J=M.push(C(M)+"scale(",null,",",null,")");Z.push({i:J-4,x:L5(k,l)},{i:J-2,x:L5(f,b)})}else if(l!==1||b!==1)M.push(C(M)+"scale("+l+","+b+")")}return function(k,f){var l=[],b=[];return k=u(k),f=u(f),D(k.translateX,k.translateY,f.translateX,f.translateY,l,b),F(k.rotate,f.rotate,l,b),U(k.skewX,f.skewX,l,b),z(k.scaleX,k.scaleY,f.scaleX,f.scaleY,l,b),k=f=null,function(M){var Z=-1,J=b.length,w;while(++Z<J)l[(w=b[Z]).i]=w.x(M);return l.join("")}}}var oe,te;var Qq0=g(()=>{wq0();oe=Kq0(Zq0,"px, ","px)","deg)"),te=Kq0(Jq0,", ",")",")")});function Gq0(u){return function(B,E){var A=u((B=Zv(B)).h,(E=Zv(E)).h),C=Hz(B.c,E.c),D=Hz(B.l,E.l),F=Hz(B.opacity,E.opacity);return function(U){return B.h=A(U),B.c=C(U),B.l=D(U),B.opacity=F(U),B+""}}}var ee,e64;var Hq0=g(()=>{nQ();ye();ee=Gq0(Dq0),e64=Gq0(Hz)});var sQ=g(()=>{yj();se();Qq0();ce();Hq0()});function Hv(){return WZ||(Xq0(u94),WZ=Qv.now()+sj)}function u94(){WZ=0}function Gv(){this._call=this._time=this._next=null}function oj(u,B,E){var A=new Gv;return A.restart(u,B,E),A}function xq0(){Hv(),++oQ;var u=pj,B;while(u){if((B=WZ-u._time)>=0)u._call.call(void 0,B);u=u._next}--oQ}function Lq0(){WZ=(dj=Qv.now())+sj,oQ=wv=0;try{xq0()}finally{oQ=0,E94(),WZ=0}}function B94(){var u=Qv.now(),B=u-dj;if(B>qq0)sj-=B,dj=u}function E94(){var u,B=pj,E,A=1/0;while(B)if(B._call){if(A>B._time)A=B._time;u=B,B=B._next}else E=B._next,B._next=null,B=u?u._next=E:pj=E;Kv=u,u00(A)}function u00(u){if(oQ)return;if(wv)wv=clearTimeout(wv);var B=u-WZ;if(B>24){if(u<1/0)wv=setTimeout(Lq0,u-Qv.now()-sj);if(Jv)Jv=clearInterval(Jv)}else{if(!Jv)dj=Qv.now(),Jv=setInterval(B94,qq0);oQ=1,Xq0(Lq0)}}var oQ=0,wv=0,Jv=0,qq0=1000,pj,Kv,dj=0,WZ=0,sj=0,Qv,Xq0;var B00=g(()=>{Qv=typeof performance==="object"&&performance.now?performance:Date,Xq0=typeof window==="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(u){setTimeout(u,17)};Gv.prototype=oj.prototype={constructor:Gv,restart:function(u,B,E){if(typeof u!=="function")throw TypeError("callback is not a function");if(E=(E==null?Hv():+E)+(B==null?0:+B),!this._next&&Kv!==this){if(Kv)Kv._next=this;else pj=this;Kv=this}this._call=u,this._time=E,u00()},stop:function(){if(this._call)this._call=null,this._time=1/0,u00()}}});function Lv(u,B,E){var A=new Gv;return B=B==null?0:+B,A.restart((C)=>{A.stop(),u(C+B)},B,E),A}var vq0=g(()=>{B00()});var tj=g(()=>{B00();vq0()});function Lz(u,B,E,A,C,D){var F=u.__transition;if(!F)u.__transition={};else if(E in F)return;D94(u,E,{name:B,index:A,group:C,on:A94,tween:C94,time:D.time,delay:D.delay,duration:D.duration,ease:D.ease,timer:null,state:Yq0})}function Xv(u,B){var E=n2(u,B);if(E.state>Yq0)throw Error("too late; already scheduled");return E}function d5(u,B){var E=n2(u,B);if(E.state>ej)throw Error("too late; already running");return E}function n2(u,B){var E=u.__transition;if(!E||!(E=E[B]))throw Error("transition not found");return E}function D94(u,B,E){var A=u.__transition,C;A[B]=E,E.timer=oj(D,0,E.time);function D(k){if(E.state=Sq0,E.timer.restart(F,E.delay,E.time),E.delay<=k)F(k-E.delay)}function F(k){var f,l,b,M;if(E.state!==Sq0)return z();for(f in A){if(M=A[f],M.name!==E.name)continue;if(M.state===ej)return Lv(F);if(M.state===Wq0)M.state=qv,M.timer.stop(),M.on.call("interrupt",u,u.__data__,M.index,M.group),delete A[f];else if(+f<B)M.state=qv,M.timer.stop(),M.on.call("cancel",u,u.__data__,M.index,M.group),delete A[f]}if(Lv(function(){if(E.state===ej)E.state=Wq0,E.timer.restart(U,E.delay,E.time),U(k)}),E.state=uN,E.on.call("start",u,u.__data__,E.index,E.group),E.state!==uN)return;E.state=ej,C=Array(b=E.tween.length);for(f=0,l=-1;f<b;++f)if(M=E.tween[f].value.call(u,u.__data__,E.index,E.group))C[++l]=M;C.length=l+1}function U(k){var f=k<E.duration?E.ease.call(null,k/E.duration):(E.timer.restart(z),E.state=BN,1),l=-1,b=C.length;while(++l<b)C[l].call(u,f);if(E.state===BN)E.on.call("end",u,u.__data__,E.index,E.group),z()}function z(){E.state=qv,E.timer.stop(),delete A[B];for(var k in A)return;delete u.__transition}}var A94,C94,Yq0=0,Sq0=1,uN=2,ej=3,Wq0=4,BN=5,qv=6;var B8=g(()=>{$t();tj();A94=rt("start","end","cancel","interrupt"),C94=[]});function xv(u,B){var E=u.__transition,A,C,D=!0,F;if(!E)return;B=B==null?null:B+"";for(F in E){if((A=E[F]).name!==B){D=!1;continue}C=A.state>uN&&A.state<BN,A.state=qv,A.timer.stop(),A.on.call(C?"interrupt":"cancel",u,u.__data__,A.index,A.group),delete E[F]}if(D)delete u.__transition}var Rq0=g(()=>{B8()});function E00(u){return this.each(function(){xv(this,u)})}var Tq0=g(()=>{Rq0()});function F94(u,B){var E,A;return function(){var C=d5(this,u),D=C.tween;if(D!==E){A=E=D;for(var F=0,U=A.length;F<U;++F)if(A[F].name===B){A=A.slice(),A.splice(F,1);break}}C.tween=A}}function U94(u,B,E){var A,C;if(typeof E!=="function")throw Error();return function(){var D=d5(this,u),F=D.tween;if(F!==A){C=(A=F).slice();for(var U={name:B,value:E},z=0,k=C.length;z<k;++z)if(C[z].name===B){C[z]=U;break}if(z===k)C.push(U)}D.tween=C}}function A00(u,B){var E=this._id;if(u+="",arguments.length<2){var A=n2(this.node(),E).tween;for(var C=0,D=A.length,F;C<D;++C)if((F=A[C]).name===u)return F.value;return null}return this.each((B==null?F94:U94)(E,u,B))}function tQ(u,B,E){var A=u._id;return u.each(function(){var C=d5(this,A);(C.value||(C.value={}))[B]=E.apply(this,arguments)}),function(C){return n2(C,A).value[B]}}var vv=g(()=>{B8()});function Sv(u,B){var E;return(typeof B==="number"?L5:B instanceof kC?SZ:(E=kC(B))?(B=E,SZ):dQ)(u,B)}var C00=g(()=>{nQ();sQ()});function z94(u){return function(){this.removeAttribute(u)}}function k94(u){return function(){this.removeAttributeNS(u.space,u.local)}}function f94(u,B,E){var A,C=E+"",D;return function(){var F=this.getAttribute(u);return F===C?null:F===A?D:D=B(A=F,E)}}function l94(u,B,E){var A,C=E+"",D;return function(){var F=this.getAttributeNS(u.space,u.local);return F===C?null:F===A?D:D=B(A=F,E)}}function b94(u,B,E){var A,C,D;return function(){var F,U=E(this),z;if(U==null)return void this.removeAttribute(u);return F=this.getAttribute(u),z=U+"",F===z?null:F===A&&z===C?D:(C=z,D=B(A=F,U))}}function M94(u,B,E){var A,C,D;return function(){var F,U=E(this),z;if(U==null)return void this.removeAttributeNS(u.space,u.local);return F=this.getAttributeNS(u.space,u.local),z=U+"",F===z?null:F===A&&z===C?D:(C=z,D=B(A=F,U))}}function D00(u,B){var E=kF(u),A=E==="transform"?te:Sv;return this.attrTween(u,typeof B==="function"?(E.local?M94:b94)(E,A,tQ(this,"attr."+u,B)):B==null?(E.local?k94:z94)(E):(E.local?l94:f94)(E,A,B))}var Oq0=g(()=>{sQ();UC();vv();C00()});function Z94(u,B){return function(E){this.setAttribute(u,B.call(this,E))}}function J94(u,B){return function(E){this.setAttributeNS(u.space,u.local,B.call(this,E))}}function w94(u,B){var E,A;function C(){var D=B.apply(this,arguments);if(D!==A)E=(A=D)&&J94(u,D);return E}return C._value=B,C}function K94(u,B){var E,A;function C(){var D=B.apply(this,arguments);if(D!==A)E=(A=D)&&Z94(u,D);return E}return C._value=B,C}function F00(u,B){var E="attr."+u;if(arguments.length<2)return(E=this.tween(E))&&E._value;if(B==null)return this.tween(E,null);if(typeof B!=="function")throw Error();var A=kF(u);return this.tween(E,(A.local?w94:K94)(A,B))}var Iq0=g(()=>{UC()});function Q94(u,B){return function(){Xv(this,u).delay=+B.apply(this,arguments)}}function G94(u,B){return B=+B,function(){Xv(this,u).delay=B}}function U00(u){var B=this._id;return arguments.length?this.each((typeof u==="function"?Q94:G94)(B,u)):n2(this.node(),B).delay}var Pq0=g(()=>{B8()});function H94(u,B){return function(){d5(this,u).duration=+B.apply(this,arguments)}}function L94(u,B){return B=+B,function(){d5(this,u).duration=B}}function z00(u){var B=this._id;return arguments.length?this.each((typeof u==="function"?H94:L94)(B,u)):n2(this.node(),B).duration}var jq0=g(()=>{B8()});function q94(u,B){if(typeof B!=="function")throw Error();return function(){d5(this,u).ease=B}}function k00(u){var B=this._id;return arguments.length?this.each(q94(B,u)):n2(this.node(),B).ease}var Nq0=g(()=>{B8()});function X94(u,B){return function(){var E=B.apply(this,arguments);if(typeof E!=="function")throw Error();d5(this,u).ease=E}}function f00(u){if(typeof u!=="function")throw Error();return this.each(X94(this._id,u))}var iq0=g(()=>{B8()});function l00(u){if(typeof u!=="function")u=$Q(u);for(var B=this._groups,E=B.length,A=Array(E),C=0;C<E;++C)for(var D=B[C],F=D.length,U=A[C]=[],z,k=0;k<F;++k)if((z=D[k])&&u.call(z,z.__data__,k,D))U.push(z);return new kB(A,this._parents,this._name,this._id)}var aq0=g(()=>{UC();YZ()});function b00(u){if(u._id!==this._id)throw Error();for(var B=this._groups,E=u._groups,A=B.length,C=E.length,D=Math.min(A,C),F=Array(A),U=0;U<D;++U)for(var z=B[U],k=E[U],f=z.length,l=F[U]=Array(f),b,M=0;M<f;++M)if(b=z[M]||k[M])l[M]=b;for(;U<A;++U)F[U]=B[U];return new kB(F,this._parents,this._name,this._id)}var Vq0=g(()=>{YZ()});function x94(u){return(u+"").trim().split(/^|\s+/).every(function(B){var E=B.indexOf(".");if(E>=0)B=B.slice(0,E);return!B||B==="start"})}function v94(u,B,E){var A,C,D=x94(B)?Xv:d5;return function(){var F=D(this,u),U=F.on;if(U!==A)(C=(A=U).copy()).on(B,E);F.on=C}}function M00(u,B){var E=this._id;return arguments.length<2?n2(this.node(),E).on.on(u):this.each(v94(E,u,B))}var hq0=g(()=>{B8()});function S94(u){return function(){var B=this.parentNode;for(var E in this.__transition)if(+E!==u)return;if(B)B.removeChild(this)}}function Z00(){return this.on("end.remove",S94(this._id))}function J00(u){var B=this._name,E=this._id;if(typeof u!=="function")u=Rf(u);for(var A=this._groups,C=A.length,D=Array(C),F=0;F<C;++F)for(var U=A[F],z=U.length,k=D[F]=Array(z),f,l,b=0;b<z;++b)if((f=U[b])&&(l=u.call(f,f.__data__,b,U))){if("__data__"in f)l.__data__=f.__data__;k[b]=l,Lz(k[b],B,E,b,k,n2(f,E))}return new kB(D,this._parents,B,E)}var mq0=g(()=>{UC();YZ();B8()});function w00(u){var B=this._name,E=this._id;if(typeof u!=="function")u=rQ(u);for(var A=this._groups,C=A.length,D=[],F=[],U=0;U<C;++U)for(var z=A[U],k=z.length,f,l=0;l<k;++l)if(f=z[l]){for(var b=u.call(f,f.__data__,l,z),M,Z=n2(f,E),J=0,w=b.length;J<w;++J)if(M=b[J])Lz(M,B,E,J,b,Z);D.push(b),F.push(f)}return new kB(D,F,B,E)}var rq0=g(()=>{UC();YZ();B8()});function K00(){return new W94(this._groups,this._parents)}var W94;var $q0=g(()=>{UC();W94=Qz.prototype.constructor});function Y94(u,B){var E,A,C;return function(){var D=Tf(this,u),F=(this.style.removeProperty(u),Tf(this,u));return D===F?null:D===E&&F===A?C:C=B(E=D,A=F)}}function yq0(u){return function(){this.style.removeProperty(u)}}function R94(u,B,E){var A,C=E+"",D;return function(){var F=Tf(this,u);return F===C?null:F===A?D:D=B(A=F,E)}}function T94(u,B,E){var A,C,D;return function(){var F=Tf(this,u),U=E(this),z=U+"";if(U==null)z=U=(this.style.removeProperty(u),Tf(this,u));return F===z?null:F===A&&z===C?D:(C=z,D=B(A=F,U))}}function O94(u,B){var E,A,C,D="style."+B,F="end."+D,U;return function(){var z=d5(this,u),k=z.on,f=z.value[D]==null?U||(U=yq0(B)):void 0;if(k!==E||C!==f)(A=(E=k).copy()).on(F,C=f);z.on=A}}function Q00(u,B,E){var A=(u+="")==="transform"?oe:Sv;return B==null?this.styleTween(u,Y94(u,A)).on("end.style."+u,yq0(u)):typeof B==="function"?this.styleTween(u,T94(u,A,tQ(this,"style."+u,B))).each(O94(this._id,u)):this.styleTween(u,R94(u,A,B),E).on("end.style."+u,null)}var cq0=g(()=>{sQ();UC();B8();vv();C00()});function I94(u,B,E){return function(A){this.style.setProperty(u,B.call(this,A),E)}}function P94(u,B,E){var A,C;function D(){var F=B.apply(this,arguments);if(F!==C)A=(C=F)&&I94(u,F,E);return A}return D._value=B,D}function G00(u,B,E){var A="style."+(u+="");if(arguments.length<2)return(A=this.tween(A))&&A._value;if(B==null)return this.tween(A,null);if(typeof B!=="function")throw Error();return this.tween(A,P94(u,B,E==null?"":E))}function j94(u){return function(){this.textContent=u}}function N94(u){return function(){var B=u(this);this.textContent=B==null?"":B}}function H00(u){return this.tween("text",typeof u==="function"?N94(tQ(this,"text",u)):j94(u==null?"":u+""))}var gq0=g(()=>{vv()});function i94(u){return function(B){this.textContent=u.call(this,B)}}function a94(u){var B,E;function A(){var C=u.apply(this,arguments);if(C!==E)B=(E=C)&&i94(C);return B}return A._value=u,A}function L00(u){var B="text";if(arguments.length<1)return(B=this.tween(B))&&B._value;if(u==null)return this.tween(B,null);if(typeof u!=="function")throw Error();return this.tween(B,a94(u))}function q00(){var u=this._name,B=this._id,E=EN();for(var A=this._groups,C=A.length,D=0;D<C;++D)for(var F=A[D],U=F.length,z,k=0;k<U;++k)if(z=F[k]){var f=n2(z,B);Lz(z,u,E,k,F,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new kB(A,this._parents,u,E)}var _q0=g(()=>{YZ();B8()});function X00(){var u,B,E=this,A=E._id,C=E.size();return new Promise(function(D,F){var U={value:F},z={value:function(){if(--C===0)D()}};if(E.each(function(){var k=d5(this,A),f=k.on;if(f!==u)B=(u=f).copy(),B._.cancel.push(U),B._.interrupt.push(U),B._.end.push(z);k.on=B}),C===0)D()})}var nq0=g(()=>{B8()});function kB(u,B,E,A){this._groups=u,this._parents=B,this._name=E,this._id=A}function pq0(u){return Qz().transition(u)}function EN(){return++V94}var V94=0,qz;var YZ=g(()=>{UC();Oq0();Iq0();Pq0();jq0();Nq0();iq0();aq0();Vq0();hq0();mq0();rq0();$q0();cq0();gq0();_q0();vv();nq0();qz=Qz.prototype;kB.prototype=pq0.prototype={constructor:kB,select:J00,selectAll:w00,selectChild:qz.selectChild,selectChildren:qz.selectChildren,filter:l00,merge:b00,selection:K00,transition:q00,call:qz.call,nodes:qz.nodes,node:qz.node,size:qz.size,empty:qz.empty,each:qz.each,on:M00,attr:D00,attrTween:F00,style:Q00,styleTween:G00,text:H00,textTween:L00,remove:Z00,tween:A00,delay:U00,duration:z00,ease:k00,easeVarying:f00,end:X00,[Symbol.iterator]:qz[Symbol.iterator]}});function AN(u){return((u*=2)<=1?u*u*u:(u-=2)*u*u+2)/2}var x00=()=>{};function m94(u,B){var E;while(!(E=u.__transition)||!(E=E[B]))if(!(u=u.parentNode))throw Error(`transition ${B} not found`);return E}function v00(u){var B,E;if(u instanceof kB)B=u._id,u=u._name;else B=EN(),(E=h94).time=Hv(),u=u==null?null:u+"";for(var A=this._groups,C=A.length,D=0;D<C;++D)for(var F=A[D],U=F.length,z,k=0;k<U;++k)if(z=F[k])Lz(z,u,B,k,F,E||m94(z,B));return new kB(A,this._parents,u,B)}var h94;var dq0=g(()=>{YZ();B8();x00();tj();h94={time:null,delay:0,duration:250,ease:AN}});var sq0=g(()=>{UC();Tq0();dq0();Qz.prototype.interrupt=E00;Qz.prototype.transition=v00});var CN=g(()=>{sq0()});function oq0(u){return[+u[0],+u[1]]}function r94(u){return[oq0(u[0]),oq0(u[1])]}function S00(u){return{type:u}}var IX3,PX3,jX3;var tq0=g(()=>{CN();IX3={name:"x",handles:["w","e"].map(S00),input:function(u,B){return u==null?null:[[+u[0],B[0][1]],[+u[1],B[1][1]]]},output:function(u){return u&&[u[0][0],u[1][0]]}},PX3={name:"y",handles:["n","s"].map(S00),input:function(u,B){return u==null?null:[[B[0][0],+u[0]],[B[1][0],+u[1]]]},output:function(u){return u&&[u[0][1],u[1][1]]}},jX3={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(S00),input:function(u){return u==null?null:r94(u)},output:function(u){return u}}});var eq0=g(()=>{tq0()});function uX0(u){this._+=u[0];for(let B=1,E=u.length;B<E;++B)this._+=arguments[B]+u[B]}function y94(u){let B=Math.floor(u);if(!(B>=0))throw Error(`invalid digits: ${u}`);if(B>15)return uX0;let E=10**B;return function(A){this._+=A[0];for(let C=1,D=A.length;C<D;++C)this._+=Math.round(arguments[C]*E)/E+A[C]}}class eQ{constructor(u){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=u==null?uX0:y94(u)}moveTo(u,B){this._append`M${this._x0=this._x1=+u},${this._y0=this._y1=+B}`}closePath(){if(this._x1!==null)this._x1=this._x0,this._y1=this._y0,this._append`Z`}lineTo(u,B){this._append`L${this._x1=+u},${this._y1=+B}`}quadraticCurveTo(u,B,E,A){this._append`Q${+u},${+B},${this._x1=+E},${this._y1=+A}`}bezierCurveTo(u,B,E,A,C,D){this._append`C${+u},${+B},${+E},${+A},${this._x1=+C},${this._y1=+D}`}arcTo(u,B,E,A,C){if(u=+u,B=+B,E=+E,A=+A,C=+C,C<0)throw Error(`negative radius: ${C}`);let D=this._x1,F=this._y1,U=E-u,z=A-B,k=D-u,f=F-B,l=k*k+f*f;if(this._x1===null)this._append`M${this._x1=u},${this._y1=B}`;else if(!(l>0.000001));else if(!(Math.abs(f*U-z*k)>0.000001)||!C)this._append`L${this._x1=u},${this._y1=B}`;else{let b=E-D,M=A-F,Z=U*U+z*z,J=b*b+M*M,w=Math.sqrt(Z),K=Math.sqrt(l),Q=C*Math.tan((W00-Math.acos((Z+l-J)/(2*w*K)))/2),G=Q/K,L=Q/w;if(Math.abs(G-1)>0.000001)this._append`L${u+G*k},${B+G*f}`;this._append`A${C},${C},0,0,${+(f*b>k*M)},${this._x1=u+L*U},${this._y1=B+L*z}`}}arc(u,B,E,A,C,D){if(u=+u,B=+B,E=+E,D=!!D,E<0)throw Error(`negative radius: ${E}`);let F=E*Math.cos(A),U=E*Math.sin(A),z=u+F,k=B+U,f=1^D,l=D?A-C:C-A;if(this._x1===null)this._append`M${z},${k}`;else if(Math.abs(this._x1-z)>0.000001||Math.abs(this._y1-k)>0.000001)this._append`L${z},${k}`;if(!E)return;if(l<0)l=l%Y00+Y00;if(l>$94)this._append`A${E},${E},0,1,${f},${u-F},${B-U}A${E},${E},0,1,${f},${this._x1=z},${this._y1=k}`;else if(l>0.000001)this._append`A${E},${E},0,${+(l>=W00)},${f},${this._x1=u+E*Math.cos(C)},${this._y1=B+E*Math.sin(C)}`}rect(u,B,E,A){this._append`M${this._x0=this._x1=+u},${this._y0=this._y1=+B}h${E=+E}v${+A}h${-E}Z`}toString(){return this._}}function BX0(){return new eQ}var W00,Y00,$94;var EX0=g(()=>{W00=Math.PI,Y00=2*W00,$94=Y00-0.000001;BX0.prototype=eQ.prototype});var R00=g(()=>{EX0()});var AX0=()=>{};var CX0=()=>{};var DX0=()=>{};var FX0=()=>{};var UX0=()=>{};var zX0=()=>{};var kX0=()=>{};function T00(u){return Math.abs(u=Math.round(u))>=1000000000000000000000?u.toLocaleString("en").replace(/,/g,""):u.toString(10)}function RZ(u,B){if(!isFinite(u)||u===0)return null;var E=(u=B?u.toExponential(B-1):u.toExponential()).indexOf("e"),A=u.slice(0,E);return[A.length>1?A[0]+A.slice(2):A,+u.slice(E+1)]}function fC(u){return u=RZ(Math.abs(u)),u?u[1]:NaN}var Wv=()=>{};function O00(u,B){return function(E,A){var C=E.length,D=[],F=0,U=u[0],z=0;while(C>0&&U>0){if(z+U+1>A)U=Math.max(1,A-z);if(D.push(E.substring(C-=U,C+U)),(z+=U+1)>A)break;U=u[F=(F+1)%u.length]}return D.reverse().join(B)}}function I00(u){return function(B){return B.replace(/[0-9]/g,function(E){return u[+E]})}}function jf(u){if(!(B=c94.exec(u)))throw Error("invalid format: "+u);var B;return new DN({fill:B[1],align:B[2],sign:B[3],symbol:B[4],zero:B[5],width:B[6],comma:B[7],precision:B[8]&&B[8].slice(1),trim:B[9],type:B[10]})}function DN(u){this.fill=u.fill===void 0?" ":u.fill+"",this.align=u.align===void 0?">":u.align+"",this.sign=u.sign===void 0?"-":u.sign+"",this.symbol=u.symbol===void 0?"":u.symbol+"",this.zero=!!u.zero,this.width=u.width===void 0?void 0:+u.width,this.comma=!!u.comma,this.precision=u.precision===void 0?void 0:+u.precision,this.trim=!!u.trim,this.type=u.type===void 0?"":u.type+""}var c94;var P00=g(()=>{c94=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;jf.prototype=DN.prototype;DN.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 j00(u){u:for(var B=u.length,E=1,A=-1,C;E<B;++E)switch(u[E]){case".":A=C=E;break;case"0":if(A===0)A=E;C=E;break;default:if(!+u[E])break u;if(A>0)A=0;break}return A>0?u.slice(0,A)+u.slice(C+1):u}function N00(u,B){var E=RZ(u,B);if(!E)return Yv=void 0,u.toPrecision(B);var A=E[0],C=E[1],D=C-(Yv=Math.max(-8,Math.min(8,Math.floor(C/3)))*3)+1,F=A.length;return D===F?A:D>F?A+Array(D-F+1).join("0"):D>0?A.slice(0,D)+"."+A.slice(D):"0."+Array(1-D).join("0")+RZ(u,Math.max(0,B+D-1))[0]}var Yv;var i00=()=>{};function FN(u,B){var E=RZ(u,B);if(!E)return u+"";var A=E[0],C=E[1];return C<0?"0."+Array(-C).join("0")+A:A.length>C+1?A.slice(0,C+1)+"."+A.slice(C+1):A+Array(C-A.length+2).join("0")}var fX0=()=>{};var a00;var lX0=g(()=>{i00();fX0();a00={"%":(u,B)=>(u*100).toFixed(B),b:(u)=>Math.round(u).toString(2),c:(u)=>u+"",d:T00,e:(u,B)=>u.toExponential(B),f:(u,B)=>u.toFixed(B),g:(u,B)=>u.toPrecision(B),o:(u)=>Math.round(u).toString(8),p:(u,B)=>FN(u*100,B),r:FN,s:N00,X:(u)=>Math.round(u).toString(16).toUpperCase(),x:(u)=>Math.round(u).toString(16)}});function UN(u){return u}function V00(u){var B=u.grouping===void 0||u.thousands===void 0?UN:O00(bX0.call(u.grouping,Number),u.thousands+""),E=u.currency===void 0?"":u.currency[0]+"",A=u.currency===void 0?"":u.currency[1]+"",C=u.decimal===void 0?".":u.decimal+"",D=u.numerals===void 0?UN:I00(bX0.call(u.numerals,String)),F=u.percent===void 0?"%":u.percent+"",U=u.minus===void 0?"":u.minus+"",z=u.nan===void 0?"NaN":u.nan+"";function k(l,b){l=jf(l);var{fill:M,align:Z,sign:J,symbol:w,zero:K,width:Q,comma:G,precision:L,trim:H,type:q}=l;if(q==="n")G=!0,q="g";else if(!a00[q])L===void 0&&(L=12),H=!0,q="g";if(K||M==="0"&&Z==="=")K=!0,M="0",Z="=";var x=(b&&b.prefix!==void 0?b.prefix:"")+(w==="$"?E:w==="#"&&/[boxX]/.test(q)?"0"+q.toLowerCase():""),v=(w==="$"?A:/[%p]/.test(q)?F:"")+(b&&b.suffix!==void 0?b.suffix:""),W=a00[q],S=/[defgprs%]/.test(q);L=L===void 0?6:/[gprs]/.test(q)?Math.max(1,Math.min(21,L)):Math.max(0,Math.min(20,L));function T(R){var Y=x,a=v,I,O,i;if(q==="c")a=W(R)+a,R="";else{R=+R;var N=R<0||1/R<0;if(R=isNaN(R)?z:W(Math.abs(R),L),H)R=j00(R);if(N&&+R===0&&J!=="+")N=!1;if(Y=(N?J==="("?J:U:J==="-"||J==="("?"":J)+Y,a=(q==="s"&&!isNaN(R)&&Yv!==void 0?MX0[8+Yv/3]:"")+a+(N&&J==="("?")":""),S){I=-1,O=R.length;while(++I<O)if(i=R.charCodeAt(I),48>i||i>57){a=(i===46?C+R.slice(I+1):R.slice(I))+a,R=R.slice(0,I);break}}}if(G&&!K)R=B(R,1/0);var V=Y.length+R.length+a.length,h=V<Q?Array(Q-V+1).join(M):"";if(G&&K)R=B(h+R,h.length?Q-a.length:1/0),h="";switch(Z){case"<":R=Y+R+a+h;break;case"=":R=Y+h+R+a;break;case"^":R=h.slice(0,V=h.length>>1)+Y+R+a+h.slice(V);break;default:R=h+Y+R+a;break}return D(R)}return T.toString=function(){return l+""},T}function f(l,b){var M=Math.max(-8,Math.min(8,Math.floor(fC(b)/3)))*3,Z=Math.pow(10,-M),J=k((l=jf(l),l.type="f",l),{suffix:MX0[8+M/3]});return function(w){return J(Z*w)}}return{format:k,formatPrefix:f}}var bX0,MX0;var ZX0=g(()=>{Wv();P00();lX0();i00();bX0=Array.prototype.map,MX0=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"]});function h00(u){return zN=V00(u),bF=zN.format,kN=zN.formatPrefix,zN}var zN,bF,kN;var JX0=g(()=>{ZX0();h00({thousands:",",grouping:[3],currency:["$",""]})});function fN(u){return Math.max(0,-fC(Math.abs(u)))}var wX0=g(()=>{Wv()});function lN(u,B){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(fC(B)/3)))*3-fC(Math.abs(u)))}var KX0=g(()=>{Wv()});function bN(u,B){return u=Math.abs(u),B=Math.abs(B)-u,Math.max(0,fC(B)-fC(u))+1}var QX0=g(()=>{Wv()});var m00=g(()=>{JX0();P00();wX0();KX0();QX0()});var GX0=()=>{};function g94(u){var B=0,E=u.children,A=E&&E.length;if(!A)B=1;else while(--A>=0)B+=E[A].value;u.value=B}function r00(){return this.eachAfter(g94)}function $00(u,B){let E=-1;for(let A of this)u.call(B,A,++E,this);return this}function y00(u,B){var E=this,A=[E],C,D,F=-1;while(E=A.pop())if(u.call(B,E,++F,this),C=E.children)for(D=C.length-1;D>=0;--D)A.push(C[D]);return this}function c00(u,B){var E=this,A=[E],C=[],D,F,U,z=-1;while(E=A.pop())if(C.push(E),D=E.children)for(F=0,U=D.length;F<U;++F)A.push(D[F]);while(E=C.pop())u.call(B,E,++z,this);return this}function g00(u,B){let E=-1;for(let A of this)if(u.call(B,A,++E,this))return A}function _00(u){return this.eachAfter(function(B){var E=+u(B.data)||0,A=B.children,C=A&&A.length;while(--C>=0)E+=A[C].value;B.value=E})}function n00(u){return this.eachBefore(function(B){if(B.children)B.children.sort(u)})}function p00(u){var B=this,E=_94(B,u),A=[B];while(B!==E)B=B.parent,A.push(B);var C=A.length;while(u!==E)A.splice(C,0,u),u=u.parent;return A}function _94(u,B){if(u===B)return u;var E=u.ancestors(),A=B.ancestors(),C=null;u=E.pop(),B=A.pop();while(u===B)C=u,u=E.pop(),B=A.pop();return C}function d00(){var u=this,B=[u];while(u=u.parent)B.push(u);return B}function s00(){return Array.from(this)}function o00(){var u=[];return this.eachBefore(function(B){if(!B.children)u.push(B)}),u}function t00(){var u=this,B=[];return u.each(function(E){if(E!==u)B.push({source:E.parent,target:E})}),B}function*e00(){var u=this,B,E=[u],A,C,D;do{B=E.reverse(),E=[];while(u=B.pop())if(yield u,A=u.children)for(C=0,D=A.length;C<D;++C)E.push(A[C])}while(E.length)}function uG(u,B){if(u instanceof Map){if(u=[void 0,u],B===void 0)B=d94}else if(B===void 0)B=p94;var E=new Rv(u),A,C=[E],D,F,U,z;while(A=C.pop())if((F=B(A.data))&&(z=(F=Array.from(F)).length)){A.children=F;for(U=z-1;U>=0;--U)C.push(D=F[U]=new Rv(F[U])),D.parent=A,D.depth=A.depth+1}return E.eachBefore(o94)}function n94(){return uG(this).eachBefore(s94)}function p94(u){return u.children}function d94(u){return Array.isArray(u)?u[1]:null}function s94(u){if(u.data.value!==void 0)u.value=u.data.value;u.data=u.data.data}function o94(u){var B=0;do u.height=B;while((u=u.parent)&&u.height<++B)}function Rv(u){this.data=u,this.depth=this.height=0,this.parent=null}var HX0=g(()=>{Rv.prototype=uG.prototype={constructor:Rv,count:r00,each:$00,eachAfter:c00,eachBefore:y00,find:g00,sum:_00,sort:n00,path:p00,ancestors:d00,descendants:s00,leaves:o00,links:t00,copy:n94,[Symbol.iterator]:e00}});function LX0(u){if(typeof u!=="function")throw Error();return u}function BG(){return 0}function TZ(u){return function(){return u}}function uu0(u){u.x0=Math.round(u.x0),u.y0=Math.round(u.y0),u.x1=Math.round(u.x1),u.y1=Math.round(u.y1)}function Bu0(u,B,E,A,C){var D=u.children,F,U=-1,z=D.length,k=u.value&&(A-B)/u.value;while(++U<z)F=D[U],F.y0=E,F.y1=C,F.x0=B,F.x1=B+=F.value*k}function Eu0(u,B,E,A,C){var D=u.children,F,U=-1,z=D.length,k=u.value&&(C-E)/u.value;while(++U<z)F=D[U],F.x0=B,F.x1=A,F.y0=E,F.y1=E+=F.value*k}function e94(u,B,E,A,C,D){var F=[],U=B.children,z,k,f=0,l=0,b=U.length,M,Z,J=B.value,w,K,Q,G,L,H,q;while(f<b){M=C-E,Z=D-A;do w=U[l++].value;while(!w&&l<b);K=Q=w,H=Math.max(Z/M,M/Z)/(J*u),q=w*w*H,L=Math.max(Q/q,q/K);for(;l<b;++l){if(w+=k=U[l].value,k<K)K=k;if(k>Q)Q=k;if(q=w*w*H,G=Math.max(Q/q,q/K),G>L){w-=k;break}L=G}if(F.push(z={value:w,dice:M<Z,children:U.slice(f,l)}),z.dice)Bu0(z,E,A,C,J?A+=Z*w/J:D);else Eu0(z,E,A,J?E+=M*w/J:C,D);J-=w,f=l}return F}var t94,qX0;var XX0=g(()=>{t94=(1+Math.sqrt(5))/2;qX0=function u(B){function E(A,C,D,F,U){e94(B,A,C,D,F,U)}return E.ratio=function(A){return u((A=+A)>1?A:1)},E}(t94)});function MN(){var u=qX0,B=!1,E=1,A=1,C=[0],D=BG,F=BG,U=BG,z=BG,k=BG;function f(b){if(b.x0=b.y0=0,b.x1=E,b.y1=A,b.eachBefore(l),C=[0],B)b.eachBefore(uu0);return b}function l(b){var M=C[b.depth],Z=b.x0+M,J=b.y0+M,w=b.x1-M,K=b.y1-M;if(w<Z)Z=w=(Z+w)/2;if(K<J)J=K=(J+K)/2;if(b.x0=Z,b.y0=J,b.x1=w,b.y1=K,b.children){if(M=C[b.depth+1]=D(b)/2,Z+=k(b)-M,J+=F(b)-M,w-=U(b)-M,K-=z(b)-M,w<Z)Z=w=(Z+w)/2;if(K<J)J=K=(J+K)/2;u(b,Z,J,w,K)}}return f.round=function(b){return arguments.length?(B=!!b,f):B},f.size=function(b){return arguments.length?(E=+b[0],A=+b[1],f):[E,A]},f.tile=function(b){return arguments.length?(u=LX0(b),f):u},f.padding=function(b){return arguments.length?f.paddingInner(b).paddingOuter(b):f.paddingInner()},f.paddingInner=function(b){return arguments.length?(D=typeof b==="function"?b:TZ(+b),f):D},f.paddingOuter=function(b){return arguments.length?f.paddingTop(b).paddingRight(b).paddingBottom(b).paddingLeft(b):f.paddingTop()},f.paddingTop=function(b){return arguments.length?(F=typeof b==="function"?b:TZ(+b),f):F},f.paddingRight=function(b){return arguments.length?(U=typeof b==="function"?b:TZ(+b),f):U},f.paddingBottom=function(b){return arguments.length?(z=typeof b==="function"?b:TZ(+b),f):z},f.paddingLeft=function(b){return arguments.length?(k=typeof b==="function"?b:TZ(+b),f):k},f}var xX0=g(()=>{XX0()});var vX0=g(()=>{HX0();xX0()});var SX0=()=>{};var WX0=()=>{};function Nf(u,B){switch(arguments.length){case 0:break;case 1:this.range(u);break;default:this.range(B).domain(u);break}return this}function e8(){var u=new Fv,B=[],E=[],A=Au0;function C(D){let F=u.get(D);if(F===void 0){if(A!==Au0)return A;u.set(D,F=B.push(D)-1)}return E[F%E.length]}return C.domain=function(D){if(!arguments.length)return B.slice();B=[],u=new Fv;for(let F of D){if(u.has(F))continue;u.set(F,B.push(F)-1)}return C},C.range=function(D){return arguments.length?(E=Array.from(D),C):E.slice()},C.unknown=function(D){return arguments.length?(A=D,C):A},C.copy=function(){return e8(B,E).unknown(A)},Nf.apply(C,arguments),C}var Au0;var Cu0=g(()=>{Yf();Au0=Symbol("implicit")});function EG(){var u=e8().unknown(void 0),B=u.domain,E=u.range,A=0,C=1,D,F,U=!1,z=0,k=0,f=0.5;delete u.unknown;function l(){var b=B().length,M=C<A,Z=M?C:A,J=M?A:C;if(D=(J-Z)/Math.max(1,b-z+k*2),U)D=Math.floor(D);if(Z+=(J-Z-D*(b-z))*f,F=D*(1-z),U)Z=Math.round(Z),F=Math.round(F);var w=Oj(b).map(function(K){return Z+D*K});return E(M?w.reverse():w)}return u.domain=function(b){return arguments.length?(B(b),l()):B()},u.range=function(b){return arguments.length?([A,C]=b,A=+A,C=+C,l()):[A,C]},u.rangeRound=function(b){return[A,C]=b,A=+A,C=+C,U=!0,l()},u.bandwidth=function(){return F},u.step=function(){return D},u.round=function(b){return arguments.length?(U=!!b,l()):U},u.padding=function(b){return arguments.length?(z=Math.min(1,k=+b),l()):z},u.paddingInner=function(b){return arguments.length?(z=Math.min(1,b),l()):z},u.paddingOuter=function(b){return arguments.length?(k=+b,l()):k},u.align=function(b){return arguments.length?(f=Math.max(0,Math.min(1,b)),l()):f},u.copy=function(){return EG(B(),[A,C]).round(U).paddingInner(z).paddingOuter(k).align(f)},Nf.apply(l(),arguments)}var YX0=g(()=>{Yf();Cu0()});function Du0(u){return function(){return u}}function Fu0(u){return+u}function AG(u){return u}function Uu0(u,B){return(B-=u=+u)?function(E){return(E-u)/B}:Du0(isNaN(B)?NaN:0.5)}function u24(u,B){var E;if(u>B)E=u,u=B,B=E;return function(A){return Math.max(u,Math.min(B,A))}}function B24(u,B,E){var A=u[0],C=u[1],D=B[0],F=B[1];if(C<A)A=Uu0(C,A),D=E(F,D);else A=Uu0(A,C),D=E(D,F);return function(U){return D(A(U))}}function E24(u,B,E){var A=Math.min(u.length,B.length)-1,C=Array(A),D=Array(A),F=-1;if(u[A]<u[0])u=u.slice().reverse(),B=B.slice().reverse();while(++F<A)C[F]=Uu0(u[F],u[F+1]),D[F]=E(B[F],B[F+1]);return function(U){var z=Nt(u,U,1,A)-1;return D[z](C[z](U))}}function ZN(u,B){return B.domain(u.domain()).range(u.range()).interpolate(u.interpolate()).clamp(u.clamp()).unknown(u.unknown())}function A24(){var u=RX0,B=RX0,E=Pf,A,C,D,F=AG,U,z,k;function f(){var b=Math.min(u.length,B.length);if(F!==AG)F=u24(u[0],u[b-1]);return U=b>2?E24:B24,z=k=null,l}function l(b){return b==null||isNaN(b=+b)?D:(z||(z=U(u.map(A),B,E)))(A(F(b)))}return l.invert=function(b){return F(C((k||(k=U(B,u.map(A),L5)))(b)))},l.domain=function(b){return arguments.length?(u=Array.from(b,Fu0),f()):u.slice()},l.range=function(b){return arguments.length?(B=Array.from(b),f()):B.slice()},l.rangeRound=function(b){return B=Array.from(b),E=cj,f()},l.clamp=function(b){return arguments.length?(F=b?!0:AG,f()):F!==AG},l.interpolate=function(b){return arguments.length?(E=b,f()):E},l.unknown=function(b){return arguments.length?(D=b,l):D},function(b,M){return A=b,C=M,f()}}function Tv(){return A24()(AG,AG)}var RX0;var zu0=g(()=>{Yf();sQ();RX0=[0,1]});function ku0(u,B,E,A){var C=mQ(u,B,E),D;switch(A=jf(A==null?",f":A),A.type){case"s":{var F=Math.max(Math.abs(u),Math.abs(B));if(A.precision==null&&!isNaN(D=lN(C,F)))A.precision=D;return kN(A,F)}case"":case"e":case"g":case"p":case"r":{if(A.precision==null&&!isNaN(D=bN(C,Math.max(Math.abs(u),Math.abs(B)))))A.precision=D-(A.type==="e");break}case"f":case"%":{if(A.precision==null&&!isNaN(D=fN(C)))A.precision=D-(A.type==="%")*2;break}}return bF(A)}var TX0=g(()=>{Yf();m00()});function C24(u){var B=u.domain;return u.ticks=function(E){var A=B();return Yj(A[0],A[A.length-1],E==null?10:E)},u.tickFormat=function(E,A){var C=B();return ku0(C[0],C[C.length-1],E==null?10:E,A)},u.nice=function(E){if(E==null)E=10;var A=B(),C=0,D=A.length-1,F=A[C],U=A[D],z,k,f=10;if(U<F)k=F,F=U,U=k,k=C,C=D,D=k;while(f-- >0){if(k=Uv(F,U,E),k===z)return A[C]=F,A[D]=U,B(A);else if(k>0)F=Math.floor(F/k)*k,U=Math.ceil(U/k)*k;else if(k<0)F=Math.ceil(F*k)/k,U=Math.floor(U*k)/k;else break;z=k}return u},u}function lC(){var u=Tv();return u.copy=function(){return ZN(u,lC())},Nf.apply(u,arguments),C24(u)}var OX0=g(()=>{Yf();zu0();TX0()});function fu0(u,B){u=u.slice();var E=0,A=u.length-1,C=u[E],D=u[A],F;if(D<C)F=E,E=A,A=F,F=C,C=D,D=F;return u[E]=B.floor(C),u[A]=B.ceil(D),u}function L6(u,B,E,A){function C(D){return u(D=arguments.length===0?new Date:new Date(+D)),D}if(C.floor=(D)=>{return u(D=new Date(+D)),D},C.ceil=(D)=>{return u(D=new Date(D-1)),B(D,1),u(D),D},C.round=(D)=>{let F=C(D),U=C.ceil(D);return D-F<U-D?F:U},C.offset=(D,F)=>{return B(D=new Date(+D),F==null?1:Math.floor(F)),D},C.range=(D,F,U)=>{let z=[];if(D=C.ceil(D),U=U==null?1:Math.floor(U),!(D<F)||!(U>0))return z;let k;do z.push(k=new Date(+D)),B(D,U),u(D);while(k<D&&D<F);return z},C.filter=(D)=>{return L6((F)=>{if(F>=F)while(u(F),!D(F))F.setTime(F-1)},(F,U)=>{if(F>=F)if(U<0)while(++U<=0)while(B(F,-1),!D(F));else while(--U>=0)while(B(F,1),!D(F));})},E)C.count=(D,F)=>{return lu0.setTime(+D),bu0.setTime(+F),u(lu0),u(bu0),Math.floor(E(lu0,bu0))},C.every=(D)=>{return D=Math.floor(D),!isFinite(D)||!(D>0)?null:!(D>1)?C:C.filter(A?(F)=>A(F)%D===0:(F)=>C.count(0,F)%D===0)};return C}var lu0,bu0;var Xz=g(()=>{lu0=new Date,bu0=new Date});var MF,IX0;var Mu0=g(()=>{Xz();MF=L6(()=>{},(u,B)=>{u.setTime(+u+B)},(u,B)=>{return B-u});MF.every=(u)=>{if(u=Math.floor(u),!isFinite(u)||!(u>0))return null;if(!(u>1))return MF;return L6((B)=>{B.setTime(Math.floor(B/u)*u)},(B,E)=>{B.setTime(+B+E*u)},(B,E)=>{return(E-B)/u})};IX0=MF.range});var nE=1000,W7=60000,ZF=3600000,af=86400000,Ov=604800000,Zu0=2592000000,JN=31536000000;var uE,PX0;var Ju0=g(()=>{Xz();uE=L6((u)=>{u.setTime(u-u.getMilliseconds())},(u,B)=>{u.setTime(+u+B*nE)},(u,B)=>{return(B-u)/nE},(u)=>{return u.getUTCSeconds()}),PX0=uE.range});var xz,D24,wN,F24;var wu0=g(()=>{Xz();xz=L6((u)=>{u.setTime(u-u.getMilliseconds()-u.getSeconds()*nE)},(u,B)=>{u.setTime(+u+B*W7)},(u,B)=>{return(B-u)/W7},(u)=>{return u.getMinutes()}),D24=xz.range,wN=L6((u)=>{u.setUTCSeconds(0,0)},(u,B)=>{u.setTime(+u+B*W7)},(u,B)=>{return(B-u)/W7},(u)=>{return u.getUTCMinutes()}),F24=wN.range});var vz,U24,KN,z24;var Ku0=g(()=>{Xz();vz=L6((u)=>{u.setTime(u-u.getMilliseconds()-u.getSeconds()*nE-u.getMinutes()*W7)},(u,B)=>{u.setTime(+u+B*ZF)},(u,B)=>{return(B-u)/ZF},(u)=>{return u.getHours()}),U24=vz.range,KN=L6((u)=>{u.setUTCMinutes(0,0,0)},(u,B)=>{u.setTime(+u+B*ZF)},(u,B)=>{return(B-u)/ZF},(u)=>{return u.getUTCHours()}),z24=KN.range});var pE,k24,Iv,f24,QN,l24;var Qu0=g(()=>{Xz();pE=L6((u)=>u.setHours(0,0,0,0),(u,B)=>u.setDate(u.getDate()+B),(u,B)=>(B-u-(B.getTimezoneOffset()-u.getTimezoneOffset())*W7)/af,(u)=>u.getDate()-1),k24=pE.range,Iv=L6((u)=>{u.setUTCHours(0,0,0,0)},(u,B)=>{u.setUTCDate(u.getUTCDate()+B)},(u,B)=>{return(B-u)/af},(u)=>{return u.getUTCDate()-1}),f24=Iv.range,QN=L6((u)=>{u.setUTCHours(0,0,0,0)},(u,B)=>{u.setUTCDate(u.getUTCDate()+B)},(u,B)=>{return(B-u)/af},(u)=>{return Math.floor(u/af)}),l24=QN.range});function OZ(u){return L6((B)=>{B.setDate(B.getDate()-(B.getDay()+7-u)%7),B.setHours(0,0,0,0)},(B,E)=>{B.setDate(B.getDate()+E*7)},(B,E)=>{return(E-B-(E.getTimezoneOffset()-B.getTimezoneOffset())*W7)/Ov})}function IZ(u){return L6((B)=>{B.setUTCDate(B.getUTCDate()-(B.getUTCDay()+7-u)%7),B.setUTCHours(0,0,0,0)},(B,E)=>{B.setUTCDate(B.getUTCDate()+E*7)},(B,E)=>{return(E-B)/Ov})}var bC,Vf,GN,HN,JF,LN,qN,jX0,b24,M24,Z24,J24,w24,K24,PZ,CG,NX0,iX0,hf,aX0,VX0,hX0,Q24,G24,H24,L24,q24,X24;var Gu0=g(()=>{Xz();bC=OZ(0),Vf=OZ(1),GN=OZ(2),HN=OZ(3),JF=OZ(4),LN=OZ(5),qN=OZ(6),jX0=bC.range,b24=Vf.range,M24=GN.range,Z24=HN.range,J24=JF.range,w24=LN.range,K24=qN.range;PZ=IZ(0),CG=IZ(1),NX0=IZ(2),iX0=IZ(3),hf=IZ(4),aX0=IZ(5),VX0=IZ(6),hX0=PZ.range,Q24=CG.range,G24=NX0.range,H24=iX0.range,L24=hf.range,q24=aX0.range,X24=VX0.range});var Sz,x24,XN,v24;var Hu0=g(()=>{Xz();Sz=L6((u)=>{u.setDate(1),u.setHours(0,0,0,0)},(u,B)=>{u.setMonth(u.getMonth()+B)},(u,B)=>{return B.getMonth()-u.getMonth()+(B.getFullYear()-u.getFullYear())*12},(u)=>{return u.getMonth()}),x24=Sz.range,XN=L6((u)=>{u.setUTCDate(1),u.setUTCHours(0,0,0,0)},(u,B)=>{u.setUTCMonth(u.getUTCMonth()+B)},(u,B)=>{return B.getUTCMonth()-u.getUTCMonth()+(B.getUTCFullYear()-u.getUTCFullYear())*12},(u)=>{return u.getUTCMonth()}),v24=XN.range});var BE,S24,MC,W24;var Lu0=g(()=>{Xz();BE=L6((u)=>{u.setMonth(0,1),u.setHours(0,0,0,0)},(u,B)=>{u.setFullYear(u.getFullYear()+B)},(u,B)=>{return B.getFullYear()-u.getFullYear()},(u)=>{return u.getFullYear()});BE.every=(u)=>{return!isFinite(u=Math.floor(u))||!(u>0)?null:L6((B)=>{B.setFullYear(Math.floor(B.getFullYear()/u)*u),B.setMonth(0,1),B.setHours(0,0,0,0)},(B,E)=>{B.setFullYear(B.getFullYear()+E*u)})};S24=BE.range,MC=L6((u)=>{u.setUTCMonth(0,1),u.setUTCHours(0,0,0,0)},(u,B)=>{u.setUTCFullYear(u.getUTCFullYear()+B)},(u,B)=>{return B.getUTCFullYear()-u.getUTCFullYear()},(u)=>{return u.getUTCFullYear()});MC.every=(u)=>{return!isFinite(u=Math.floor(u))||!(u>0)?null:L6((B)=>{B.setUTCFullYear(Math.floor(B.getUTCFullYear()/u)*u),B.setUTCMonth(0,1),B.setUTCHours(0,0,0,0)},(B,E)=>{B.setUTCFullYear(B.getUTCFullYear()+E*u)})};W24=MC.range});function mX0(u,B,E,A,C,D){let F=[[uE,1,nE],[uE,5,5*nE],[uE,15,15*nE],[uE,30,30*nE],[D,1,W7],[D,5,5*W7],[D,15,15*W7],[D,30,30*W7],[C,1,ZF],[C,3,3*ZF],[C,6,6*ZF],[C,12,12*ZF],[A,1,af],[A,2,2*af],[E,1,Ov],[B,1,Zu0],[B,3,3*Zu0],[u,1,JN]];function U(k,f,l){let b=f<k;if(b)[k,f]=[f,k];let M=l&&typeof l.range==="function"?l:z(k,f,l),Z=M?M.range(k,+f+1):[];return b?Z.reverse():Z}function z(k,f,l){let b=Math.abs(f-k)/l,M=XZ(([,,w])=>w).right(F,b);if(M===F.length)return u.every(mQ(k/JN,f/JN,l));if(M===0)return MF.every(Math.max(mQ(k,f,l),1));let[Z,J]=F[b/F[M-1][2]<F[M][2]/b?M-1:M];return Z.every(J)}return[U,z]}var Y24,R24,qu0,Xu0;var rX0=g(()=>{Yf();Mu0();Ju0();wu0();Ku0();Qu0();Gu0();Hu0();Lu0();[Y24,R24]=mX0(MC,XN,PZ,QN,KN,wN),[qu0,Xu0]=mX0(BE,Sz,bC,pE,vz,xz)});var xN=g(()=>{Mu0();Ju0();wu0();Ku0();Qu0();Gu0();Hu0();Lu0();rX0()});function xu0(u){if(0<=u.y&&u.y<100){var B=new Date(-1,u.m,u.d,u.H,u.M,u.S,u.L);return B.setFullYear(u.y),B}return new Date(u.y,u.m,u.d,u.H,u.M,u.S,u.L)}function vu0(u){if(0<=u.y&&u.y<100){var B=new Date(Date.UTC(-1,u.m,u.d,u.H,u.M,u.S,u.L));return B.setUTCFullYear(u.y),B}return new Date(Date.UTC(u.y,u.m,u.d,u.H,u.M,u.S,u.L))}function Pv(u,B,E){return{y:u,m:B,d:E,H:0,M:0,S:0,L:0}}function Su0(u){var{dateTime:B,date:E,time:A,periods:C,days:D,shortDays:F,months:U,shortMonths:z}=u,k=jv(C),f=Nv(C),l=jv(D),b=Nv(D),M=jv(F),Z=Nv(F),J=jv(U),w=Nv(U),K=jv(z),Q=Nv(z),G={a:i,A:N,b:V,B:h,c:null,d:nX0,e:nX0,f:t24,g:z54,G:f54,H:d24,I:s24,j:o24,L:tX0,m:e24,M:u54,p:r,q:m,Q:sX0,s:oX0,S:B54,u:E54,U:A54,V:C54,w:D54,W:F54,x:null,X:null,y:U54,Y:k54,Z:l54,"%":dX0},L={a:$,A:y,b:p,B:e,c:null,d:pX0,e:pX0,f:J54,g:v54,G:W54,H:b54,I:M54,j:Z54,L:ux0,m:w54,M:K54,p:_,q:b0,Q:sX0,s:oX0,S:Q54,u:G54,U:H54,V:L54,w:q54,W:X54,x:null,X:null,y:x54,Y:S54,Z:Y54,"%":dX0},H={a:S,A:T,b:R,B:Y,c:a,d:gX0,e:gX0,f:g24,g:cX0,G:yX0,H:_X0,I:_X0,j:r24,L:c24,m:m24,M:$24,p:W,q:h24,Q:n24,s:p24,S:y24,u:j24,U:N24,V:i24,w:P24,W:a24,x:I,X:O,y:cX0,Y:yX0,Z:V24,"%":_24};G.x=q(E,G),G.X=q(A,G),G.c=q(B,G),L.x=q(E,L),L.X=q(A,L),L.c=q(B,L);function q(B0,k0){return function(f0){var D0=[],P0=-1,q0=0,m0=B0.length,a0,_0,w0;if(!(f0 instanceof Date))f0=new Date(+f0);while(++P0<m0)if(B0.charCodeAt(P0)===37){if(D0.push(B0.slice(q0,P0)),(_0=$X0[a0=B0.charAt(++P0)])!=null)a0=B0.charAt(++P0);else _0=a0==="e"?" ":"0";if(w0=k0[a0])a0=w0(f0,_0);D0.push(a0),q0=P0+1}return D0.push(B0.slice(q0,P0)),D0.join("")}}function x(B0,k0){return function(f0){var D0=Pv(1900,void 0,1),P0=v(D0,B0,f0+="",0),q0,m0;if(P0!=f0.length)return null;if("Q"in D0)return new Date(D0.Q);if("s"in D0)return new Date(D0.s*1000+("L"in D0?D0.L:0));if(k0&&!("Z"in D0))D0.Z=0;if("p"in D0)D0.H=D0.H%12+D0.p*12;if(D0.m===void 0)D0.m="q"in D0?D0.q:0;if("V"in D0){if(D0.V<1||D0.V>53)return null;if(!("w"in D0))D0.w=1;if("Z"in D0)q0=vu0(Pv(D0.y,0,1)),m0=q0.getUTCDay(),q0=m0>4||m0===0?CG.ceil(q0):CG(q0),q0=Iv.offset(q0,(D0.V-1)*7),D0.y=q0.getUTCFullYear(),D0.m=q0.getUTCMonth(),D0.d=q0.getUTCDate()+(D0.w+6)%7;else q0=xu0(Pv(D0.y,0,1)),m0=q0.getDay(),q0=m0>4||m0===0?Vf.ceil(q0):Vf(q0),q0=pE.offset(q0,(D0.V-1)*7),D0.y=q0.getFullYear(),D0.m=q0.getMonth(),D0.d=q0.getDate()+(D0.w+6)%7}else if("W"in D0||"U"in D0){if(!("w"in D0))D0.w="u"in D0?D0.u%7:("W"in D0)?1:0;m0="Z"in D0?vu0(Pv(D0.y,0,1)).getUTCDay():xu0(Pv(D0.y,0,1)).getDay(),D0.m=0,D0.d="W"in D0?(D0.w+6)%7+D0.W*7-(m0+5)%7:D0.w+D0.U*7-(m0+6)%7}if("Z"in D0)return D0.H+=D0.Z/100|0,D0.M+=D0.Z%100,vu0(D0);return xu0(D0)}}function v(B0,k0,f0,D0){var P0=0,q0=k0.length,m0=f0.length,a0,_0;while(P0<q0){if(D0>=m0)return-1;if(a0=k0.charCodeAt(P0++),a0===37){if(a0=k0.charAt(P0++),_0=H[a0 in $X0?k0.charAt(P0++):a0],!_0||(D0=_0(B0,f0,D0))<0)return-1}else if(a0!=f0.charCodeAt(D0++))return-1}return D0}function W(B0,k0,f0){var D0=k.exec(k0.slice(f0));return D0?(B0.p=f.get(D0[0].toLowerCase()),f0+D0[0].length):-1}function S(B0,k0,f0){var D0=M.exec(k0.slice(f0));return D0?(B0.w=Z.get(D0[0].toLowerCase()),f0+D0[0].length):-1}function T(B0,k0,f0){var D0=l.exec(k0.slice(f0));return D0?(B0.w=b.get(D0[0].toLowerCase()),f0+D0[0].length):-1}function R(B0,k0,f0){var D0=K.exec(k0.slice(f0));return D0?(B0.m=Q.get(D0[0].toLowerCase()),f0+D0[0].length):-1}function Y(B0,k0,f0){var D0=J.exec(k0.slice(f0));return D0?(B0.m=w.get(D0[0].toLowerCase()),f0+D0[0].length):-1}function a(B0,k0,f0){return v(B0,B,k0,f0)}function I(B0,k0,f0){return v(B0,E,k0,f0)}function O(B0,k0,f0){return v(B0,A,k0,f0)}function i(B0){return F[B0.getDay()]}function N(B0){return D[B0.getDay()]}function V(B0){return z[B0.getMonth()]}function h(B0){return U[B0.getMonth()]}function r(B0){return C[+(B0.getHours()>=12)]}function m(B0){return 1+~~(B0.getMonth()/3)}function $(B0){return F[B0.getUTCDay()]}function y(B0){return D[B0.getUTCDay()]}function p(B0){return z[B0.getUTCMonth()]}function e(B0){return U[B0.getUTCMonth()]}function _(B0){return C[+(B0.getUTCHours()>=12)]}function b0(B0){return 1+~~(B0.getUTCMonth()/3)}return{format:function(B0){var k0=q(B0+="",G);return k0.toString=function(){return B0},k0},parse:function(B0){var k0=x(B0+="",!1);return k0.toString=function(){return B0},k0},utcFormat:function(B0){var k0=q(B0+="",L);return k0.toString=function(){return B0},k0},utcParse:function(B0){var k0=x(B0+="",!0);return k0.toString=function(){return B0},k0}}}function j1(u,B,E){var A=u<0?"-":"",C=(A?-u:u)+"",D=C.length;return A+(D<E?Array(E-D+1).join(B)+C:C)}function I24(u){return u.replace(O24,"\\$&")}function jv(u){return new RegExp("^(?:"+u.map(I24).join("|")+")","i")}function Nv(u){return new Map(u.map((B,E)=>[B.toLowerCase(),E]))}function P24(u,B,E){var A=q5.exec(B.slice(E,E+1));return A?(u.w=+A[0],E+A[0].length):-1}function j24(u,B,E){var A=q5.exec(B.slice(E,E+1));return A?(u.u=+A[0],E+A[0].length):-1}function N24(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.U=+A[0],E+A[0].length):-1}function i24(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.V=+A[0],E+A[0].length):-1}function a24(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.W=+A[0],E+A[0].length):-1}function yX0(u,B,E){var A=q5.exec(B.slice(E,E+4));return A?(u.y=+A[0],E+A[0].length):-1}function cX0(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.y=+A[0]+(+A[0]>68?1900:2000),E+A[0].length):-1}function V24(u,B,E){var A=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(B.slice(E,E+6));return A?(u.Z=A[1]?0:-(A[2]+(A[3]||"00")),E+A[0].length):-1}function h24(u,B,E){var A=q5.exec(B.slice(E,E+1));return A?(u.q=A[0]*3-3,E+A[0].length):-1}function m24(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.m=A[0]-1,E+A[0].length):-1}function gX0(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.d=+A[0],E+A[0].length):-1}function r24(u,B,E){var A=q5.exec(B.slice(E,E+3));return A?(u.m=0,u.d=+A[0],E+A[0].length):-1}function _X0(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.H=+A[0],E+A[0].length):-1}function $24(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.M=+A[0],E+A[0].length):-1}function y24(u,B,E){var A=q5.exec(B.slice(E,E+2));return A?(u.S=+A[0],E+A[0].length):-1}function c24(u,B,E){var A=q5.exec(B.slice(E,E+3));return A?(u.L=+A[0],E+A[0].length):-1}function g24(u,B,E){var A=q5.exec(B.slice(E,E+6));return A?(u.L=Math.floor(A[0]/1000),E+A[0].length):-1}function _24(u,B,E){var A=T24.exec(B.slice(E,E+1));return A?E+A[0].length:-1}function n24(u,B,E){var A=q5.exec(B.slice(E));return A?(u.Q=+A[0],E+A[0].length):-1}function p24(u,B,E){var A=q5.exec(B.slice(E));return A?(u.s=+A[0],E+A[0].length):-1}function nX0(u,B){return j1(u.getDate(),B,2)}function d24(u,B){return j1(u.getHours(),B,2)}function s24(u,B){return j1(u.getHours()%12||12,B,2)}function o24(u,B){return j1(1+pE.count(BE(u),u),B,3)}function tX0(u,B){return j1(u.getMilliseconds(),B,3)}function t24(u,B){return tX0(u,B)+"000"}function e24(u,B){return j1(u.getMonth()+1,B,2)}function u54(u,B){return j1(u.getMinutes(),B,2)}function B54(u,B){return j1(u.getSeconds(),B,2)}function E54(u){var B=u.getDay();return B===0?7:B}function A54(u,B){return j1(bC.count(BE(u)-1,u),B,2)}function eX0(u){var B=u.getDay();return B>=4||B===0?JF(u):JF.ceil(u)}function C54(u,B){return u=eX0(u),j1(JF.count(BE(u),u)+(BE(u).getDay()===4),B,2)}function D54(u){return u.getDay()}function F54(u,B){return j1(Vf.count(BE(u)-1,u),B,2)}function U54(u,B){return j1(u.getFullYear()%100,B,2)}function z54(u,B){return u=eX0(u),j1(u.getFullYear()%100,B,2)}function k54(u,B){return j1(u.getFullYear()%1e4,B,4)}function f54(u,B){var E=u.getDay();return u=E>=4||E===0?JF(u):JF.ceil(u),j1(u.getFullYear()%1e4,B,4)}function l54(u){var B=u.getTimezoneOffset();return(B>0?"-":(B*=-1,"+"))+j1(B/60|0,"0",2)+j1(B%60,"0",2)}function pX0(u,B){return j1(u.getUTCDate(),B,2)}function b54(u,B){return j1(u.getUTCHours(),B,2)}function M54(u,B){return j1(u.getUTCHours()%12||12,B,2)}function Z54(u,B){return j1(1+Iv.count(MC(u),u),B,3)}function ux0(u,B){return j1(u.getUTCMilliseconds(),B,3)}function J54(u,B){return ux0(u,B)+"000"}function w54(u,B){return j1(u.getUTCMonth()+1,B,2)}function K54(u,B){return j1(u.getUTCMinutes(),B,2)}function Q54(u,B){return j1(u.getUTCSeconds(),B,2)}function G54(u){var B=u.getUTCDay();return B===0?7:B}function H54(u,B){return j1(PZ.count(MC(u)-1,u),B,2)}function Bx0(u){var B=u.getUTCDay();return B>=4||B===0?hf(u):hf.ceil(u)}function L54(u,B){return u=Bx0(u),j1(hf.count(MC(u),u)+(MC(u).getUTCDay()===4),B,2)}function q54(u){return u.getUTCDay()}function X54(u,B){return j1(CG.count(MC(u)-1,u),B,2)}function x54(u,B){return j1(u.getUTCFullYear()%100,B,2)}function v54(u,B){return u=Bx0(u),j1(u.getUTCFullYear()%100,B,2)}function S54(u,B){return j1(u.getUTCFullYear()%1e4,B,4)}function W54(u,B){var E=u.getUTCDay();return u=E>=4||E===0?hf(u):hf.ceil(u),j1(u.getUTCFullYear()%1e4,B,4)}function Y54(){return"+0000"}function dX0(){return"%"}function sX0(u){return+u}function oX0(u){return Math.floor(+u/1000)}var $X0,q5,T24,O24;var Ex0=g(()=>{xN();$X0={"-":"",_:" ","0":"0"},q5=/^\s*\d+/,T24=/^%/,O24=/[\\^$*+?|[\]().{}]/g});function Wu0(u){return DG=Su0(u),jZ=DG.format,Ax0=DG.parse,Cx0=DG.utcFormat,Dx0=DG.utcParse,DG}var DG,jZ,Ax0,Cx0,Dx0;var Fx0=g(()=>{Ex0();Wu0({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 Yu0=g(()=>{Fx0()});function R54(u){return new Date(u)}function T54(u){return u instanceof Date?+u:+new Date(+u)}function Ux0(u,B,E,A,C,D,F,U,z,k){var f=Tv(),l=f.invert,b=f.domain,M=k(".%L"),Z=k(":%S"),J=k("%I:%M"),w=k("%I %p"),K=k("%a %d"),Q=k("%b %d"),G=k("%B"),L=k("%Y");function H(q){return(z(q)<q?M:U(q)<q?Z:F(q)<q?J:D(q)<q?w:A(q)<q?C(q)<q?K:Q:E(q)<q?G:L)(q)}return f.invert=function(q){return new Date(l(q))},f.domain=function(q){return arguments.length?b(Array.from(q,T54)):b().map(R54)},f.ticks=function(q){var x=b();return u(x[0],x[x.length-1],q==null?10:q)},f.tickFormat=function(q,x){return x==null?H:k(x)},f.nice=function(q){var x=b();if(!q||typeof q.range!=="function")q=B(x[0],x[x.length-1],q==null?10:q);return q?b(fu0(x,q)):f},f.copy=function(){return ZN(f,Ux0(u,B,E,A,C,D,F,U,z,k))},f}function vN(){return Nf.apply(Ux0(qu0,Xu0,BE,Sz,bC,pE,vz,xz,uE,jZ).domain([new Date(2000,0,1),new Date(2000,0,2)]),arguments)}var zx0=g(()=>{xN();Yu0();zu0()});var kx0=g(()=>{YX0();OX0();Cu0();zx0()});function Ru0(u){var B=u.length/6|0,E=Array(B),A=0;while(A<B)E[A]="#"+u.slice(A*6,++A*6);return E}var Tu0;var fx0=g(()=>{Tu0=Ru0("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var lx0=g(()=>{fx0()});function m6(u){return function(){return u}}function Mx0(u){return u>1?0:u<-1?FG:Math.acos(u)}function Iu0(u){return u>=1?iv:u<=-1?-iv:Math.asin(u)}var Ou0,s5,mf,bx0,SN,ZC,NZ,X5=0.000000000001,FG,iv,UG;var WN=g(()=>{Ou0=Math.abs,s5=Math.atan2,mf=Math.cos,bx0=Math.max,SN=Math.min,ZC=Math.sin,NZ=Math.sqrt,FG=Math.PI,iv=FG/2,UG=2*FG});function YN(u){let B=3;return u.digits=function(E){if(!arguments.length)return B;if(E==null)B=null;else{let A=Math.floor(E);if(!(A>=0))throw RangeError(`invalid digits: ${E}`);B=A}return u},()=>new eQ(B)}var Pu0=g(()=>{R00()});function O54(u){return u.innerRadius}function I54(u){return u.outerRadius}function P54(u){return u.startAngle}function j54(u){return u.endAngle}function N54(u){return u&&u.padAngle}function i54(u,B,E,A,C,D,F,U){var z=E-u,k=A-B,f=F-C,l=U-D,b=l*z-f*k;if(b*b<X5)return;return b=(f*(B-D)-l*(u-C))/b,[u+b*z,B+b*k]}function RN(u,B,E,A,C,D,F){var U=u-E,z=B-A,k=(F?D:-D)/NZ(U*U+z*z),f=k*z,l=-k*U,b=u+f,M=B+l,Z=E+f,J=A+l,w=(b+Z)/2,K=(M+J)/2,Q=Z-b,G=J-M,L=Q*Q+G*G,H=C-D,q=b*J-Z*M,x=(G<0?-1:1)*NZ(bx0(0,H*H*L-q*q)),v=(q*G-Q*x)/L,W=(-q*Q-G*x)/L,S=(q*G+Q*x)/L,T=(-q*Q+G*x)/L,R=v-w,Y=W-K,a=S-w,I=T-K;if(R*R+Y*Y>a*a+I*I)v=S,W=T;return{cx:v,cy:W,x01:-f,y01:-l,x11:v*(C/H-1),y11:W*(C/H-1)}}function JC(){var u=O54,B=I54,E=m6(0),A=null,C=P54,D=j54,F=N54,U=null,z=YN(k);function k(){var f,l,b=+u.apply(this,arguments),M=+B.apply(this,arguments),Z=C.apply(this,arguments)-iv,J=D.apply(this,arguments)-iv,w=Ou0(J-Z),K=J>Z;if(!U)U=f=z();if(M<b)l=M,M=b,b=l;if(!(M>X5))U.moveTo(0,0);else if(w>UG-X5){if(U.moveTo(M*mf(Z),M*ZC(Z)),U.arc(0,0,M,Z,J,!K),b>X5)U.moveTo(b*mf(J),b*ZC(J)),U.arc(0,0,b,J,Z,K)}else{var Q=Z,G=J,L=Z,H=J,q=w,x=w,v=F.apply(this,arguments)/2,W=v>X5&&(A?+A.apply(this,arguments):NZ(b*b+M*M)),S=SN(Ou0(M-b)/2,+E.apply(this,arguments)),T=S,R=S,Y,a;if(W>X5){var I=Iu0(W/b*ZC(v)),O=Iu0(W/M*ZC(v));if((q-=I*2)>X5)I*=K?1:-1,L+=I,H-=I;else q=0,L=H=(Z+J)/2;if((x-=O*2)>X5)O*=K?1:-1,Q+=O,G-=O;else x=0,Q=G=(Z+J)/2}var i=M*mf(Q),N=M*ZC(Q),V=b*mf(H),h=b*ZC(H);if(S>X5){var r=M*mf(G),m=M*ZC(G),$=b*mf(L),y=b*ZC(L),p;if(w<FG)if(p=i54(i,N,$,y,r,m,V,h)){var e=i-p[0],_=N-p[1],b0=r-p[0],B0=m-p[1],k0=1/ZC(Mx0((e*b0+_*B0)/(NZ(e*e+_*_)*NZ(b0*b0+B0*B0)))/2),f0=NZ(p[0]*p[0]+p[1]*p[1]);T=SN(S,(b-f0)/(k0-1)),R=SN(S,(M-f0)/(k0+1))}else T=R=0}if(!(x>X5))U.moveTo(i,N);else if(R>X5)if(Y=RN($,y,i,N,M,R,K),a=RN(r,m,V,h,M,R,K),U.moveTo(Y.cx+Y.x01,Y.cy+Y.y01),R<S)U.arc(Y.cx,Y.cy,R,s5(Y.y01,Y.x01),s5(a.y01,a.x01),!K);else U.arc(Y.cx,Y.cy,R,s5(Y.y01,Y.x01),s5(Y.y11,Y.x11),!K),U.arc(0,0,M,s5(Y.cy+Y.y11,Y.cx+Y.x11),s5(a.cy+a.y11,a.cx+a.x11),!K),U.arc(a.cx,a.cy,R,s5(a.y11,a.x11),s5(a.y01,a.x01),!K);else U.moveTo(i,N),U.arc(0,0,M,Q,G,!K);if(!(b>X5)||!(q>X5))U.lineTo(V,h);else if(T>X5)if(Y=RN(V,h,r,m,b,-T,K),a=RN(i,N,$,y,b,-T,K),U.lineTo(Y.cx+Y.x01,Y.cy+Y.y01),T<S)U.arc(Y.cx,Y.cy,T,s5(Y.y01,Y.x01),s5(a.y01,a.x01),!K);else U.arc(Y.cx,Y.cy,T,s5(Y.y01,Y.x01),s5(Y.y11,Y.x11),!K),U.arc(0,0,b,s5(Y.cy+Y.y11,Y.cx+Y.x11),s5(a.cy+a.y11,a.cx+a.x11),K),U.arc(a.cx,a.cy,T,s5(a.y11,a.x11),s5(a.y01,a.x01),!K);else U.arc(0,0,b,H,L,K)}if(U.closePath(),f)return U=null,f+""||null}return k.centroid=function(){var f=(+u.apply(this,arguments)+ +B.apply(this,arguments))/2,l=(+C.apply(this,arguments)+ +D.apply(this,arguments))/2-FG/2;return[mf(l)*f,ZC(l)*f]},k.innerRadius=function(f){return arguments.length?(u=typeof f==="function"?f:m6(+f),k):u},k.outerRadius=function(f){return arguments.length?(B=typeof f==="function"?f:m6(+f),k):B},k.cornerRadius=function(f){return arguments.length?(E=typeof f==="function"?f:m6(+f),k):E},k.padRadius=function(f){return arguments.length?(A=f==null?null:typeof f==="function"?f:m6(+f),k):A},k.startAngle=function(f){return arguments.length?(C=typeof f==="function"?f:m6(+f),k):C},k.endAngle=function(f){return arguments.length?(D=typeof f==="function"?f:m6(+f),k):D},k.padAngle=function(f){return arguments.length?(F=typeof f==="function"?f:m6(+f),k):F},k.context=function(f){return arguments.length?(U=f==null?null:f,k):U},k}var Zx0=g(()=>{WN();Pu0()});function av(u){return typeof u==="object"&&"length"in u?u:Array.from(u)}var LW3;var ju0=g(()=>{LW3=Array.prototype.slice});function Jx0(u){this._context=u}function wF(u){return new Jx0(u)}var Nu0=g(()=>{Jx0.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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1,this._line?this._context.lineTo(u,B):this._context.moveTo(u,B);break;case 1:this._point=2;default:this._context.lineTo(u,B);break}}}});function wx0(u){return u[0]}function Kx0(u){return u[1]}function wC(u,B){var E=m6(!0),A=null,C=wF,D=null,F=YN(U);u=typeof u==="function"?u:u===void 0?wx0:m6(u),B=typeof B==="function"?B:B===void 0?Kx0:m6(B);function U(z){var k,f=(z=av(z)).length,l,b=!1,M;if(A==null)D=C(M=F());for(k=0;k<=f;++k){if(!(k<f&&E(l=z[k],k,z))===b)if(b=!b)D.lineStart();else D.lineEnd();if(b)D.point(+u(l,k,z),+B(l,k,z))}if(M)return D=null,M+""||null}return U.x=function(z){return arguments.length?(u=typeof z==="function"?z:m6(+z),U):u},U.y=function(z){return arguments.length?(B=typeof z==="function"?z:m6(+z),U):B},U.defined=function(z){return arguments.length?(E=typeof z==="function"?z:m6(!!z),U):E},U.curve=function(z){return arguments.length?(C=z,A!=null&&(D=C(A)),U):C},U.context=function(z){return arguments.length?(z==null?A=D=null:D=C(A=z),U):A},U}var Qx0=g(()=>{ju0();Nu0();Pu0()});function iu0(u,B){return B<u?-1:B>u?1:B>=u?0:NaN}function au0(u){return u}function TN(){var u=au0,B=iu0,E=null,A=m6(0),C=m6(UG),D=m6(0);function F(U){var z,k=(U=av(U)).length,f,l,b=0,M=Array(k),Z=Array(k),J=+A.apply(this,arguments),w=Math.min(UG,Math.max(-UG,C.apply(this,arguments)-J)),K,Q=Math.min(Math.abs(w)/k,D.apply(this,arguments)),G=Q*(w<0?-1:1),L;for(z=0;z<k;++z)if((L=Z[M[z]=z]=+u(U[z],z,U))>0)b+=L;if(B!=null)M.sort(function(H,q){return B(Z[H],Z[q])});else if(E!=null)M.sort(function(H,q){return E(U[H],U[q])});for(z=0,l=b?(w-k*G)/b:0;z<k;++z,J=K)f=M[z],L=Z[f],K=J+(L>0?L*l:0)+G,Z[f]={data:U[f],index:z,value:L,startAngle:J,endAngle:K,padAngle:Q};return Z}return F.value=function(U){return arguments.length?(u=typeof U==="function"?U:m6(+U),F):u},F.sortValues=function(U){return arguments.length?(B=U,E=null,F):B},F.sort=function(U){return arguments.length?(E=U,B=null,F):E},F.startAngle=function(U){return arguments.length?(A=typeof U==="function"?U:m6(+U),F):A},F.endAngle=function(U){return arguments.length?(C=typeof U==="function"?U:m6(+U),F):C},F.padAngle=function(U){return arguments.length?(D=typeof U==="function"?U:m6(+U),F):D},F}var Gx0=g(()=>{ju0();WN()});class Vu0{constructor(u,B){this._context=u,this._x=B}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(u,B){switch(u=+u,B=+B,this._point){case 0:{if(this._point=1,this._line)this._context.lineTo(u,B);else this._context.moveTo(u,B);break}case 1:this._point=2;default:{if(this._x)this._context.bezierCurveTo(this._x0=(this._x0+u)/2,this._y0,this._x0,B,u,B);else this._context.bezierCurveTo(this._x0,this._y0=(this._y0+B)/2,u,this._y0,u,B);break}}this._x0=u,this._y0=B}}function Vv(u){return new Vu0(u,!0)}function hv(u){return new Vu0(u,!1)}var Hx0=()=>{};function EE(){}function zG(u,B,E){u._context.bezierCurveTo((2*u._x0+u._x1)/3,(2*u._y0+u._y1)/3,(u._x0+2*u._x1)/3,(u._y0+2*u._y1)/3,(u._x0+4*u._x1+B)/6,(u._y0+4*u._y1+E)/6)}function mv(u){this._context=u}function KC(u){return new mv(u)}var rv=g(()=>{mv.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:zG(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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1,this._line?this._context.lineTo(u,B):this._context.moveTo(u,B);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:zG(this,u,B);break}this._x0=this._x1,this._x1=u,this._y0=this._y1,this._y1=B}}});function Lx0(u){this._context=u}function ON(u){return new Lx0(u)}var qx0=g(()=>{rv();Lx0.prototype={areaStart:EE,areaEnd:EE,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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1,this._x2=u,this._y2=B;break;case 1:this._point=2,this._x3=u,this._y3=B;break;case 2:this._point=3,this._x4=u,this._y4=B,this._context.moveTo((this._x0+4*this._x1+u)/6,(this._y0+4*this._y1+B)/6);break;default:zG(this,u,B);break}this._x0=this._x1,this._x1=u,this._y0=this._y1,this._y1=B}}});function Xx0(u){this._context=u}function IN(u){return new Xx0(u)}var xx0=g(()=>{rv();Xx0.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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var E=(this._x0+4*this._x1+u)/6,A=(this._y0+4*this._y1+B)/6;this._line?this._context.lineTo(E,A):this._context.moveTo(E,A);break;case 3:this._point=4;default:zG(this,u,B);break}this._x0=this._x1,this._x1=u,this._y0=this._y1,this._y1=B}}});function vx0(u,B){this._basis=new mv(u),this._beta=B}var hu0;var Sx0=g(()=>{rv();vx0.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var u=this._x,B=this._y,E=u.length-1;if(E>0){var A=u[0],C=B[0],D=u[E]-A,F=B[E]-C,U=-1,z;while(++U<=E)z=U/E,this._basis.point(this._beta*u[U]+(1-this._beta)*(A+z*D),this._beta*B[U]+(1-this._beta)*(C+z*F))}this._x=this._y=null,this._basis.lineEnd()},point:function(u,B){this._x.push(+u),this._y.push(+B)}};hu0=function u(B){function E(A){return B===1?new mv(A):new vx0(A,B)}return E.beta=function(A){return u(+A)},E}(0.85)});function kG(u,B,E){u._context.bezierCurveTo(u._x1+u._k*(u._x2-u._x0),u._y1+u._k*(u._y2-u._y0),u._x2+u._k*(u._x1-B),u._y2+u._k*(u._y1-E),u._x2,u._y2)}function PN(u,B){this._context=u,this._k=(1-B)/6}var $v;var yv=g(()=>{PN.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:kG(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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1,this._line?this._context.lineTo(u,B):this._context.moveTo(u,B);break;case 1:this._point=2,this._x1=u,this._y1=B;break;case 2:this._point=3;default:kG(this,u,B);break}this._x0=this._x1,this._x1=this._x2,this._x2=u,this._y0=this._y1,this._y1=this._y2,this._y2=B}};$v=function u(B){function E(A){return new PN(A,B)}return E.tension=function(A){return u(+A)},E}(0)});function jN(u,B){this._context=u,this._k=(1-B)/6}var mu0;var ru0=g(()=>{yv();jN.prototype={areaStart:EE,areaEnd:EE,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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1,this._x3=u,this._y3=B;break;case 1:this._point=2,this._context.moveTo(this._x4=u,this._y4=B);break;case 2:this._point=3,this._x5=u,this._y5=B;break;default:kG(this,u,B);break}this._x0=this._x1,this._x1=this._x2,this._x2=u,this._y0=this._y1,this._y1=this._y2,this._y2=B}};mu0=function u(B){function E(A){return new jN(A,B)}return E.tension=function(A){return u(+A)},E}(0)});function NN(u,B){this._context=u,this._k=(1-B)/6}var $u0;var yu0=g(()=>{yv();NN.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(u,B){switch(u=+u,B=+B,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:kG(this,u,B);break}this._x0=this._x1,this._x1=this._x2,this._x2=u,this._y0=this._y1,this._y1=this._y2,this._y2=B}};$u0=function u(B){function E(A){return new NN(A,B)}return E.tension=function(A){return u(+A)},E}(0)});function cv(u,B,E){var{_x1:A,_y1:C,_x2:D,_y2:F}=u;if(u._l01_a>X5){var U=2*u._l01_2a+3*u._l01_a*u._l12_a+u._l12_2a,z=3*u._l01_a*(u._l01_a+u._l12_a);A=(A*U-u._x0*u._l12_2a+u._x2*u._l01_2a)/z,C=(C*U-u._y0*u._l12_2a+u._y2*u._l01_2a)/z}if(u._l23_a>X5){var k=2*u._l23_2a+3*u._l23_a*u._l12_a+u._l12_2a,f=3*u._l23_a*(u._l23_a+u._l12_a);D=(D*k+u._x1*u._l23_2a-B*u._l12_2a)/f,F=(F*k+u._y1*u._l23_2a-E*u._l12_2a)/f}u._context.bezierCurveTo(A,C,D,F,u._x2,u._y2)}function Wx0(u,B){this._context=u,this._alpha=B}var gv;var iN=g(()=>{WN();yv();Wx0.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(u,B){if(u=+u,B=+B,this._point){var E=this._x2-u,A=this._y2-B;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(E*E+A*A,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(u,B):this._context.moveTo(u,B);break;case 1:this._point=2;break;case 2:this._point=3;default:cv(this,u,B);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=u,this._y0=this._y1,this._y1=this._y2,this._y2=B}};gv=function u(B){function E(A){return B?new Wx0(A,B):new PN(A,0)}return E.alpha=function(A){return u(+A)},E}(0.5)});function Yx0(u,B){this._context=u,this._alpha=B}var cu0;var Rx0=g(()=>{ru0();iN();Yx0.prototype={areaStart:EE,areaEnd:EE,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(u,B){if(u=+u,B=+B,this._point){var E=this._x2-u,A=this._y2-B;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(E*E+A*A,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=u,this._y3=B;break;case 1:this._point=2,this._context.moveTo(this._x4=u,this._y4=B);break;case 2:this._point=3,this._x5=u,this._y5=B;break;default:cv(this,u,B);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=u,this._y0=this._y1,this._y1=this._y2,this._y2=B}};cu0=function u(B){function E(A){return B?new Yx0(A,B):new jN(A,0)}return E.alpha=function(A){return u(+A)},E}(0.5)});function Tx0(u,B){this._context=u,this._alpha=B}var gu0;var Ox0=g(()=>{yu0();iN();Tx0.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(u,B){if(u=+u,B=+B,this._point){var E=this._x2-u,A=this._y2-B;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(E*E+A*A,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:cv(this,u,B);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=u,this._y0=this._y1,this._y1=this._y2,this._y2=B}};gu0=function u(B){function E(A){return B?new Tx0(A,B):new NN(A,0)}return E.alpha=function(A){return u(+A)},E}(0.5)});function Ix0(u){this._context=u}function aN(u){return new Ix0(u)}var Px0=g(()=>{Ix0.prototype={areaStart:EE,areaEnd:EE,lineStart:function(){this._point=0},lineEnd:function(){if(this._point)this._context.closePath()},point:function(u,B){if(u=+u,B=+B,this._point)this._context.lineTo(u,B);else this._point=1,this._context.moveTo(u,B)}}});function jx0(u){return u<0?-1:1}function Nx0(u,B,E){var A=u._x1-u._x0,C=B-u._x1,D=(u._y1-u._y0)/(A||C<0&&-0),F=(E-u._y1)/(C||A<0&&-0),U=(D*C+F*A)/(A+C);return(jx0(D)+jx0(F))*Math.min(Math.abs(D),Math.abs(F),0.5*Math.abs(U))||0}function ix0(u,B){var E=u._x1-u._x0;return E?(3*(u._y1-u._y0)/E-B)/2:B}function _u0(u,B,E){var{_x0:A,_y0:C,_x1:D,_y1:F}=u,U=(D-A)/3;u._context.bezierCurveTo(A+U,C+U*B,D-U,F-U*E,D,F)}function VN(u){this._context=u}function ax0(u){this._context=new Vx0(u)}function Vx0(u){this._context=u}function _v(u){return new VN(u)}function nv(u){return new ax0(u)}var hx0=g(()=>{VN.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:_u0(this,this._t0,ix0(this,this._t0));break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(u,B){var E=NaN;if(u=+u,B=+B,u===this._x1&&B===this._y1)return;switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(u,B):this._context.moveTo(u,B);break;case 1:this._point=2;break;case 2:this._point=3,_u0(this,ix0(this,E=Nx0(this,u,B)),E);break;default:_u0(this,this._t0,E=Nx0(this,u,B));break}this._x0=this._x1,this._x1=u,this._y0=this._y1,this._y1=B,this._t0=E}};(ax0.prototype=Object.create(VN.prototype)).point=function(u,B){VN.prototype.point.call(this,B,u)};Vx0.prototype={moveTo:function(u,B){this._context.moveTo(B,u)},closePath:function(){this._context.closePath()},lineTo:function(u,B){this._context.lineTo(B,u)},bezierCurveTo:function(u,B,E,A,C,D){this._context.bezierCurveTo(B,u,A,E,D,C)}}});function rx0(u){this._context=u}function mx0(u){var B,E=u.length-1,A,C=Array(E),D=Array(E),F=Array(E);C[0]=0,D[0]=2,F[0]=u[0]+2*u[1];for(B=1;B<E-1;++B)C[B]=1,D[B]=4,F[B]=4*u[B]+2*u[B+1];C[E-1]=2,D[E-1]=7,F[E-1]=8*u[E-1]+u[E];for(B=1;B<E;++B)A=C[B]/D[B-1],D[B]-=A,F[B]-=A*F[B-1];C[E-1]=F[E-1]/D[E-1];for(B=E-2;B>=0;--B)C[B]=(F[B]-C[B+1])/D[B];D[E-1]=(u[E]+C[E-1])/2;for(B=0;B<E-1;++B)D[B]=2*u[B+1]-C[B+1];return[C,D]}function fG(u){return new rx0(u)}var $x0=g(()=>{rx0.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var u=this._x,B=this._y,E=u.length;if(E)if(this._line?this._context.lineTo(u[0],B[0]):this._context.moveTo(u[0],B[0]),E===2)this._context.lineTo(u[1],B[1]);else{var A=mx0(u),C=mx0(B);for(var D=0,F=1;F<E;++D,++F)this._context.bezierCurveTo(A[0][D],C[0][D],A[1][D],C[1][D],u[F],B[F])}if(this._line||this._line!==0&&E===1)this._context.closePath();this._line=1-this._line,this._x=this._y=null},point:function(u,B){this._x.push(+u),this._y.push(+B)}}});function hN(u,B){this._context=u,this._t=B}function lG(u){return new hN(u,0.5)}function pv(u){return new hN(u,0)}function dv(u){return new hN(u,1)}var yx0=g(()=>{hN.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(u,B){switch(u=+u,B=+B,this._point){case 0:this._point=1,this._line?this._context.lineTo(u,B):this._context.moveTo(u,B);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,B),this._context.lineTo(u,B);else{var E=this._x*(1-this._t)+u*this._t;this._context.lineTo(E,this._y),this._context.lineTo(E,B)}break}}this._x=u,this._y=B}}});var cx0=g(()=>{Zx0();Qx0();Gx0();qx0();xx0();rv();Hx0();Sx0();ru0();yu0();yv();Rx0();Ox0();iN();Px0();Nu0();hx0();$x0();yx0()});function rf(u,B,E){this.k=u,this.x=B,this.y=E}function pu0(u){while(!u.__zoom)if(!(u=u.parentNode))return nu0;return u.__zoom}var nu0;var du0=g(()=>{rf.prototype={constructor:rf,scale:function(u){return u===1?this:new rf(this.k*u,this.x,this.y)},translate:function(u,B){return u===0&B===0?this:new rf(this.k,this.x+this.k*u,this.y+this.k*B)},apply:function(u){return[u[0]*this.k+this.x,u[1]*this.k+this.y]},applyX:function(u){return u*this.k+this.x},applyY:function(u){return u*this.k+this.y},invert:function(u){return[(u[0]-this.x)/this.k,(u[1]-this.y)/this.k]},invertX:function(u){return(u-this.x)/this.k},invertY:function(u){return(u-this.y)/this.k},rescaleX:function(u){return u.copy().domain(u.range().map(this.invertX,this).map(u.invert,u))},rescaleY:function(u){return u.copy().domain(u.range().map(this.invertY,this).map(u.invert,u))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};nu0=new rf(1,0,0);pu0.prototype=rf.prototype});var gx0=g(()=>{CN();du0()});var _x0=g(()=>{gx0();du0()});var i3=g(()=>{Yf();fL0();eq0();AX0();nQ();CX0();DX0();$t();NL0();FX0();x00();UX0();kX0();m00();GX0();vX0();sQ();R00();SX0();zX0();WX0();kx0();lx0();UC();cx0();xN();Yu0();tj();CN();_x0()});var N1;var E2=g(()=>{s4();Y4();i3();N1=X((u)=>{let{securityLevel:B}=$0(),E=Ku("body");if(B==="sandbox"){let D=Ku(`#i${u}`).node()?.contentDocument??document;E=Ku(D.body)}return E.select(`#${u}`)},"selectSvgElement")});function b40(u){return typeof u>"u"||u===null}function dx0(u){return typeof u==="object"&&u!==null}function sx0(u){if(Array.isArray(u))return u;else if(b40(u))return[];return[u]}function ox0(u,B){var E,A,C,D;if(B){D=Object.keys(B);for(E=0,A=D.length;E<A;E+=1)C=D[E],u[C]=B[C]}return u}function tx0(u,B){var E="",A;for(A=0;A<B;A+=1)E+=u;return E}function ex0(u){return u===0&&Number.NEGATIVE_INFINITY===1/u}function M40(u,B){var E="",A=u.reason||"(unknown reason)";if(!u.mark)return A;if(u.mark.name)E+='in "'+u.mark.name+'" ';if(E+="("+(u.mark.line+1)+":"+(u.mark.column+1)+")",!B&&u.mark.snippet)E+=`
`+u.mark.snippet;return A+" "+E}function ZG(u,B){if(Error.call(this),this.name="YAMLException",this.reason=u,this.mark=B,this.message=M40(this,!1),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor);else this.stack=Error().stack||""}function mN(u,B,E,A,C){var D="",F="",U=Math.floor(C/2)-1;if(A-B>U)D=" ... ",B=A-U+D.length;if(E-A>U)F=" ...",E=A+U-F.length;return{str:D+u.slice(B,E).replace(/\t/g,"→")+F,pos:A-B+D.length}}function rN(u,B){return p2.repeat(" ",B-u.length)+u}function uv0(u,B){if(B=Object.create(B||null),!u.buffer)return null;if(!B.maxLength)B.maxLength=79;if(typeof B.indent!=="number")B.indent=1;if(typeof B.linesBefore!=="number")B.linesBefore=3;if(typeof B.linesAfter!=="number")B.linesAfter=2;var E=/\r?\n|\r|\0/g,A=[0],C=[],D,F=-1;while(D=E.exec(u.buffer))if(C.push(D.index),A.push(D.index+D[0].length),u.position<=D.index&&F<0)F=A.length-2;if(F<0)F=A.length-1;var U="",z,k,f=Math.min(u.line+B.linesAfter,C.length).toString().length,l=B.maxLength-(B.indent+f+3);for(z=1;z<=B.linesBefore;z++){if(F-z<0)break;k=mN(u.buffer,A[F-z],C[F-z],u.position-(A[F]-A[F-z]),l),U=p2.repeat(" ",B.indent)+rN((u.line-z+1).toString(),f)+" | "+k.str+`
`+U}k=mN(u.buffer,A[F],C[F],u.position,l),U+=p2.repeat(" ",B.indent)+rN((u.line+1).toString(),f)+" | "+k.str+`
`,U+=p2.repeat("-",B.indent+f+3+k.pos)+`^
`;for(z=1;z<=B.linesAfter;z++){if(F+z>=C.length)break;k=mN(u.buffer,A[F+z],C[F+z],u.position-(A[F]-A[F+z]),l),U+=p2.repeat(" ",B.indent)+rN((u.line+z+1).toString(),f)+" | "+k.str+`
`}return U.replace(/\n$/,"")}function Bv0(u){var B={};if(u!==null)Object.keys(u).forEach(function(E){u[E].forEach(function(A){B[String(A)]=E})});return B}function Ev0(u,B){if(B=B||{},Object.keys(B).forEach(function(E){if(c54.indexOf(E)===-1)throw new E8('Unknown option "'+E+'" is met in definition of "'+u+'" YAML type.')}),this.options=B,this.tag=u,this.kind=B.kind||null,this.resolve=B.resolve||function(){return!0},this.construct=B.construct||function(E){return E},this.instanceOf=B.instanceOf||null,this.predicate=B.predicate||null,this.represent=B.represent||null,this.representName=B.representName||null,this.defaultStyle=B.defaultStyle||null,this.multi=B.multi||!1,this.styleAliases=Bv0(B.styleAliases||null),g54.indexOf(this.kind)===-1)throw new E8('Unknown kind "'+this.kind+'" is specified for "'+u+'" YAML type.')}function ou0(u,B){var E=[];return u[B].forEach(function(A){var C=E.length;E.forEach(function(D,F){if(D.tag===A.tag&&D.kind===A.kind&&D.multi===A.multi)C=F}),E[C]=A}),E}function Av0(){var u={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},B,E;function A(C){if(C.multi)u.multi[C.kind].push(C),u.multi.fallback.push(C);else u[C.kind][C.tag]=u.fallback[C.tag]=C}X(A,"collectType");for(B=0,E=arguments.length;B<E;B+=1)arguments[B].forEach(A);return u}function $N(u){return this.extend(u)}function Cv0(u){if(u===null)return!0;var B=u.length;return B===1&&u==="~"||B===4&&(u==="null"||u==="Null"||u==="NULL")}function Dv0(){return null}function Fv0(u){return u===null}function Uv0(u){if(u===null)return!1;var B=u.length;return B===4&&(u==="true"||u==="True"||u==="TRUE")||B===5&&(u==="false"||u==="False"||u==="FALSE")}function zv0(u){return u==="true"||u==="True"||u==="TRUE"}function kv0(u){return Object.prototype.toString.call(u)==="[object Boolean]"}function fv0(u){return 48<=u&&u<=57||65<=u&&u<=70||97<=u&&u<=102}function lv0(u){return 48<=u&&u<=55}function bv0(u){return 48<=u&&u<=57}function Mv0(u){if(u===null)return!1;var B=u.length,E=0,A=!1,C;if(!B)return!1;if(C=u[E],C==="-"||C==="+")C=u[++E];if(C==="0"){if(E+1===B)return!0;if(C=u[++E],C==="b"){E++;for(;E<B;E++){if(C=u[E],C==="_")continue;if(C!=="0"&&C!=="1")return!1;A=!0}return A&&C!=="_"}if(C==="x"){E++;for(;E<B;E++){if(C=u[E],C==="_")continue;if(!fv0(u.charCodeAt(E)))return!1;A=!0}return A&&C!=="_"}if(C==="o"){E++;for(;E<B;E++){if(C=u[E],C==="_")continue;if(!lv0(u.charCodeAt(E)))return!1;A=!0}return A&&C!=="_"}}if(C==="_")return!1;for(;E<B;E++){if(C=u[E],C==="_")continue;if(!bv0(u.charCodeAt(E)))return!1;A=!0}if(!A||C==="_")return!1;return!0}function Zv0(u){var B=u,E=1,A;if(B.indexOf("_")!==-1)B=B.replace(/_/g,"");if(A=B[0],A==="-"||A==="+"){if(A==="-")E=-1;B=B.slice(1),A=B[0]}if(B==="0")return 0;if(A==="0"){if(B[1]==="b")return E*parseInt(B.slice(2),2);if(B[1]==="x")return E*parseInt(B.slice(2),16);if(B[1]==="o")return E*parseInt(B.slice(2),8)}return E*parseInt(B,10)}function Jv0(u){return Object.prototype.toString.call(u)==="[object Number]"&&(u%1===0&&!p2.isNegativeZero(u))}function wv0(u){if(u===null)return!1;if(!u74.test(u)||u[u.length-1]==="_")return!1;return!0}function Kv0(u){var B,E;if(B=u.replace(/_/g,"").toLowerCase(),E=B[0]==="-"?-1:1,"+-".indexOf(B[0])>=0)B=B.slice(1);if(B===".inf")return E===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY;else if(B===".nan")return NaN;return E*parseFloat(B,10)}function Qv0(u,B){var E;if(isNaN(u))switch(B){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===u)switch(B){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===u)switch(B){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(p2.isNegativeZero(u))return"-0.0";return E=u.toString(10),B74.test(E)?E.replace("e",".e"):E}function Gv0(u){return Object.prototype.toString.call(u)==="[object Number]"&&(u%1!==0||p2.isNegativeZero(u))}function Xv0(u){if(u===null)return!1;if(Lv0.exec(u)!==null)return!0;if(qv0.exec(u)!==null)return!0;return!1}function xv0(u){var B,E,A,C,D,F,U,z=0,k=null,f,l,b;if(B=Lv0.exec(u),B===null)B=qv0.exec(u);if(B===null)throw Error("Date resolve error");if(E=+B[1],A=+B[2]-1,C=+B[3],!B[4])return new Date(Date.UTC(E,A,C));if(D=+B[4],F=+B[5],U=+B[6],B[7]){z=B[7].slice(0,3);while(z.length<3)z+="0";z=+z}if(B[9]){if(f=+B[10],l=+(B[11]||0),k=(f*60+l)*60000,B[9]==="-")k=-k}if(b=new Date(Date.UTC(E,A,C,D,F,U,z)),k)b.setTime(b.getTime()-k);return b}function vv0(u){return u.toISOString()}function Sv0(u){return u==="<<"||u===null}function Wv0(u){if(u===null)return!1;var B,E,A=0,C=u.length,D=Z40;for(E=0;E<C;E++){if(B=D.indexOf(u.charAt(E)),B>64)continue;if(B<0)return!1;A+=6}return A%8===0}function Yv0(u){var B,E,A=u.replace(/[\r\n=]/g,""),C=A.length,D=Z40,F=0,U=[];for(B=0;B<C;B++){if(B%4===0&&B)U.push(F>>16&255),U.push(F>>8&255),U.push(F&255);F=F<<6|D.indexOf(A.charAt(B))}if(E=C%4*6,E===0)U.push(F>>16&255),U.push(F>>8&255),U.push(F&255);else if(E===18)U.push(F>>10&255),U.push(F>>2&255);else if(E===12)U.push(F>>4&255);return new Uint8Array(U)}function Rv0(u){var B="",E=0,A,C,D=u.length,F=Z40;for(A=0;A<D;A++){if(A%3===0&&A)B+=F[E>>18&63],B+=F[E>>12&63],B+=F[E>>6&63],B+=F[E&63];E=(E<<8)+u[A]}if(C=D%3,C===0)B+=F[E>>18&63],B+=F[E>>12&63],B+=F[E>>6&63],B+=F[E&63];else if(C===2)B+=F[E>>10&63],B+=F[E>>4&63],B+=F[E<<2&63],B+=F[64];else if(C===1)B+=F[E>>2&63],B+=F[E<<4&63],B+=F[64],B+=F[64];return B}function Tv0(u){return Object.prototype.toString.call(u)==="[object Uint8Array]"}function Ov0(u){if(u===null)return!0;var B=[],E,A,C,D,F,U=u;for(E=0,A=U.length;E<A;E+=1){if(C=U[E],F=!1,z74.call(C)!=="[object Object]")return!1;for(D in C)if(U74.call(C,D))if(!F)F=!0;else return!1;if(!F)return!1;if(B.indexOf(D)===-1)B.push(D);else return!1}return!0}function Iv0(u){return u!==null?u:[]}function Pv0(u){if(u===null)return!0;var B,E,A,C,D,F=u;D=Array(F.length);for(B=0,E=F.length;B<E;B+=1){if(A=F[B],f74.call(A)!=="[object Object]")return!1;if(C=Object.keys(A),C.length!==1)return!1;D[B]=[C[0],A[C[0]]]}return!0}function jv0(u){if(u===null)return[];var B,E,A,C,D,F=u;D=Array(F.length);for(B=0,E=F.length;B<E;B+=1)A=F[B],C=Object.keys(A),D[B]=[C[0],A[C[0]]];return D}function Nv0(u){if(u===null)return!0;var B,E=u;for(B in E)if(b74.call(E,B)){if(E[B]!==null)return!1}return!0}function iv0(u){return u!==null?u:{}}function tu0(u){return Object.prototype.toString.call(u)}function QC(u){return u===10||u===13}function $f(u){return u===9||u===32}function fB(u){return u===9||u===32||u===10||u===13}function aZ(u){return u===44||u===91||u===93||u===123||u===125}function $v0(u){var B;if(48<=u&&u<=57)return u-48;if(B=u|32,97<=B&&B<=102)return B-97+10;return-1}function yv0(u){if(u===120)return 2;if(u===117)return 4;if(u===85)return 8;return 0}function cv0(u){if(48<=u&&u<=57)return u-48;return-1}function eu0(u){return u===48?"\x00":u===97?"\x07":u===98?"\b":u===116?"\t":u===9?"\t":u===110?`
`:u===118?"\v":u===102?"\f":u===114?"\r":u===101?"\x1B":u===32?" ":u===34?'"':u===47?"/":u===92?"\\":u===78?"…":u===95?" ":u===76?"\u2028":u===80?"\u2029":""}function gv0(u){if(u<=65535)return String.fromCharCode(u);return String.fromCharCode((u-65536>>10)+55296,(u-65536&1023)+56320)}function J40(u,B,E){if(B==="__proto__")Object.defineProperty(u,B,{configurable:!0,enumerable:!0,writable:!0,value:E});else u[B]=E}function pv0(u,B){this.input=u,this.filename=B.filename||null,this.schema=B.schema||av0,this.onWarning=B.onWarning||null,this.legacy=B.legacy||!1,this.json=B.json||!1,this.listener=B.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=u.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function w40(u,B){var E={name:u.filename,buffer:u.input.slice(0,-1),position:u.position,line:u.line,column:u.position-u.lineStart};return E.snippet=y54(E),new E8(B,E)}function _4(u,B){throw w40(u,B)}function sv(u,B){if(u.onWarning)u.onWarning.call(null,w40(u,B))}function Wz(u,B,E,A){var C,D,F,U;if(B<E){if(U=u.input.slice(B,E),A){for(C=0,D=U.length;C<D;C+=1)if(F=U.charCodeAt(C),!(F===9||32<=F&&F<=1114111))_4(u,"expected valid JSON character")}else if(J74.test(U))_4(u,"the stream contains non-printable characters");u.result+=U}}function u40(u,B,E,A){var C,D,F,U;if(!p2.isObject(E))_4(u,"cannot merge mappings; the provided source object is unacceptable");C=Object.keys(E);for(F=0,U=C.length;F<U;F+=1)if(D=C[F],!yf.call(B,D))J40(B,D,E[D]),A[D]=!0}function VZ(u,B,E,A,C,D,F,U,z){var k,f;if(Array.isArray(C)){C=Array.prototype.slice.call(C);for(k=0,f=C.length;k<f;k+=1){if(Array.isArray(C[k]))_4(u,"nested arrays are not supported inside keys");if(typeof C==="object"&&tu0(C[k])==="[object Object]")C[k]="[object Object]"}}if(typeof C==="object"&&tu0(C)==="[object Object]")C="[object Object]";if(C=String(C),B===null)B={};if(A==="tag:yaml.org,2002:merge")if(Array.isArray(D))for(k=0,f=D.length;k<f;k+=1)u40(u,B,D[k],E);else u40(u,B,D,E);else{if(!u.json&&!yf.call(E,C)&&yf.call(B,C))u.line=F||u.line,u.lineStart=U||u.lineStart,u.position=z||u.position,_4(u,"duplicated mapping key");J40(B,C,D),delete E[C]}return B}function pN(u){var B=u.input.charCodeAt(u.position);if(B===10)u.position++;else if(B===13){if(u.position++,u.input.charCodeAt(u.position)===10)u.position++}else _4(u,"a line break is expected");u.line+=1,u.lineStart=u.position,u.firstTabInLine=-1}function A2(u,B,E){var A=0,C=u.input.charCodeAt(u.position);while(C!==0){while($f(C)){if(C===9&&u.firstTabInLine===-1)u.firstTabInLine=u.position;C=u.input.charCodeAt(++u.position)}if(B&&C===35)do C=u.input.charCodeAt(++u.position);while(C!==10&&C!==13&&C!==0);if(QC(C)){pN(u),C=u.input.charCodeAt(u.position),A++,u.lineIndent=0;while(C===32)u.lineIndent++,C=u.input.charCodeAt(++u.position)}else break}if(E!==-1&&A!==0&&u.lineIndent<E)sv(u,"deficient indentation");return A}function uS(u){var B=u.position,E;if(E=u.input.charCodeAt(B),(E===45||E===46)&&E===u.input.charCodeAt(B+1)&&E===u.input.charCodeAt(B+2)){if(B+=3,E=u.input.charCodeAt(B),E===0||fB(E))return!0}return!1}function dN(u,B){if(B===1)u.result+=" ";else if(B>1)u.result+=p2.repeat(`
`,B-1)}function dv0(u,B,E){var A,C,D,F,U,z,k,f,l=u.kind,b=u.result,M;if(M=u.input.charCodeAt(u.position),fB(M)||aZ(M)||M===35||M===38||M===42||M===33||M===124||M===62||M===39||M===34||M===37||M===64||M===96)return!1;if(M===63||M===45){if(C=u.input.charCodeAt(u.position+1),fB(C)||E&&aZ(C))return!1}u.kind="scalar",u.result="",D=F=u.position,U=!1;while(M!==0){if(M===58){if(C=u.input.charCodeAt(u.position+1),fB(C)||E&&aZ(C))break}else if(M===35){if(A=u.input.charCodeAt(u.position-1),fB(A))break}else if(u.position===u.lineStart&&uS(u)||E&&aZ(M))break;else if(QC(M))if(z=u.line,k=u.lineStart,f=u.lineIndent,A2(u,!1,-1),u.lineIndent>=B){U=!0,M=u.input.charCodeAt(u.position);continue}else{u.position=F,u.line=z,u.lineStart=k,u.lineIndent=f;break}if(U)Wz(u,D,F,!1),dN(u,u.line-z),D=F=u.position,U=!1;if(!$f(M))F=u.position+1;M=u.input.charCodeAt(++u.position)}if(Wz(u,D,F,!1),u.result)return!0;return u.kind=l,u.result=b,!1}function sv0(u,B){var E,A,C;if(E=u.input.charCodeAt(u.position),E!==39)return!1;u.kind="scalar",u.result="",u.position++,A=C=u.position;while((E=u.input.charCodeAt(u.position))!==0)if(E===39)if(Wz(u,A,u.position,!0),E=u.input.charCodeAt(++u.position),E===39)A=u.position,u.position++,C=u.position;else return!0;else if(QC(E))Wz(u,A,C,!0),dN(u,A2(u,!1,B)),A=C=u.position;else if(u.position===u.lineStart&&uS(u))_4(u,"unexpected end of the document within a single quoted scalar");else u.position++,C=u.position;_4(u,"unexpected end of the stream within a single quoted scalar")}function ov0(u,B){var E,A,C,D,F,U;if(U=u.input.charCodeAt(u.position),U!==34)return!1;u.kind="scalar",u.result="",u.position++,E=A=u.position;while((U=u.input.charCodeAt(u.position))!==0)if(U===34)return Wz(u,E,u.position,!0),u.position++,!0;else if(U===92){if(Wz(u,E,u.position,!0),U=u.input.charCodeAt(++u.position),QC(U))A2(u,!1,B);else if(U<256&&_v0[U])u.result+=nv0[U],u.position++;else if((F=yv0(U))>0){C=F,D=0;for(;C>0;C--)if(U=u.input.charCodeAt(++u.position),(F=$v0(U))>=0)D=(D<<4)+F;else _4(u,"expected hexadecimal character");u.result+=gv0(D),u.position++}else _4(u,"unknown escape sequence");E=A=u.position}else if(QC(U))Wz(u,E,A,!0),dN(u,A2(u,!1,B)),E=A=u.position;else if(u.position===u.lineStart&&uS(u))_4(u,"unexpected end of the document within a double quoted scalar");else u.position++,A=u.position;_4(u,"unexpected end of the stream within a double quoted scalar")}function tv0(u,B){var E=!0,A,C,D,F=u.tag,U,z=u.anchor,k,f,l,b,M,Z=Object.create(null),J,w,K,Q;if(Q=u.input.charCodeAt(u.position),Q===91)f=93,M=!1,U=[];else if(Q===123)f=125,M=!0,U={};else return!1;if(u.anchor!==null)u.anchorMap[u.anchor]=U;Q=u.input.charCodeAt(++u.position);while(Q!==0){if(A2(u,!0,B),Q=u.input.charCodeAt(u.position),Q===f)return u.position++,u.tag=F,u.anchor=z,u.kind=M?"mapping":"sequence",u.result=U,!0;else if(!E)_4(u,"missed comma between flow collection entries");else if(Q===44)_4(u,"expected the node content, but found ','");if(w=J=K=null,l=b=!1,Q===63){if(k=u.input.charCodeAt(u.position+1),fB(k))l=b=!0,u.position++,A2(u,!0,B)}if(A=u.line,C=u.lineStart,D=u.position,hZ(u,B,yN,!1,!0),w=u.tag,J=u.result,A2(u,!0,B),Q=u.input.charCodeAt(u.position),(b||u.line===A)&&Q===58)l=!0,Q=u.input.charCodeAt(++u.position),A2(u,!0,B),hZ(u,B,yN,!1,!0),K=u.result;if(M)VZ(u,U,Z,w,J,K,A,C,D);else if(l)U.push(VZ(u,null,Z,w,J,K,A,C,D));else U.push(J);if(A2(u,!0,B),Q=u.input.charCodeAt(u.position),Q===44)E=!0,Q=u.input.charCodeAt(++u.position);else E=!1}_4(u,"unexpected end of the stream within a flow collection")}function ev0(u,B){var E,A,C=su0,D=!1,F=!1,U=B,z=0,k=!1,f,l;if(l=u.input.charCodeAt(u.position),l===124)A=!1;else if(l===62)A=!0;else return!1;u.kind="scalar",u.result="";while(l!==0)if(l=u.input.charCodeAt(++u.position),l===43||l===45)if(su0===C)C=l===43?nx0:Z74;else _4(u,"repeat of a chomping mode identifier");else if((f=cv0(l))>=0)if(f===0)_4(u,"bad explicit indentation width of a block scalar; it cannot be less than one");else if(!F)U=B+f-1,F=!0;else _4(u,"repeat of an indentation width identifier");else break;if($f(l)){do l=u.input.charCodeAt(++u.position);while($f(l));if(l===35)do l=u.input.charCodeAt(++u.position);while(!QC(l)&&l!==0)}while(l!==0){pN(u),u.lineIndent=0,l=u.input.charCodeAt(u.position);while((!F||u.lineIndent<U)&&l===32)u.lineIndent++,l=u.input.charCodeAt(++u.position);if(!F&&u.lineIndent>U)U=u.lineIndent;if(QC(l)){z++;continue}if(u.lineIndent<U){if(C===nx0)u.result+=p2.repeat(`
`,D?1+z:z);else if(C===su0){if(D)u.result+=`
`}break}if(A)if($f(l))k=!0,u.result+=p2.repeat(`
`,D?1+z:z);else if(k)k=!1,u.result+=p2.repeat(`
`,z+1);else if(z===0){if(D)u.result+=" "}else u.result+=p2.repeat(`
`,z);else u.result+=p2.repeat(`
`,D?1+z:z);D=!0,F=!0,z=0,E=u.position;while(!QC(l)&&l!==0)l=u.input.charCodeAt(++u.position);Wz(u,E,u.position,!1)}return!0}function B40(u,B){var E,A=u.tag,C=u.anchor,D=[],F,U=!1,z;if(u.firstTabInLine!==-1)return!1;if(u.anchor!==null)u.anchorMap[u.anchor]=D;z=u.input.charCodeAt(u.position);while(z!==0){if(u.firstTabInLine!==-1)u.position=u.firstTabInLine,_4(u,"tab characters must not be used in indentation");if(z!==45)break;if(F=u.input.charCodeAt(u.position+1),!fB(F))break;if(U=!0,u.position++,A2(u,!0,-1)){if(u.lineIndent<=B){D.push(null),z=u.input.charCodeAt(u.position);continue}}if(E=u.line,hZ(u,B,hv0,!1,!0),D.push(u.result),A2(u,!0,-1),z=u.input.charCodeAt(u.position),(u.line===E||u.lineIndent>B)&&z!==0)_4(u,"bad indentation of a sequence entry");else if(u.lineIndent<B)break}if(U)return u.tag=A,u.anchor=C,u.kind="sequence",u.result=D,!0;return!1}function uS0(u,B,E){var A,C,D,F,U,z,k=u.tag,f=u.anchor,l={},b=Object.create(null),M=null,Z=null,J=null,w=!1,K=!1,Q;if(u.firstTabInLine!==-1)return!1;if(u.anchor!==null)u.anchorMap[u.anchor]=l;Q=u.input.charCodeAt(u.position);while(Q!==0){if(!w&&u.firstTabInLine!==-1)u.position=u.firstTabInLine,_4(u,"tab characters must not be used in indentation");if(A=u.input.charCodeAt(u.position+1),D=u.line,(Q===63||Q===58)&&fB(A)){if(Q===63){if(w)VZ(u,l,b,M,Z,null,F,U,z),M=Z=J=null;K=!0,w=!0,C=!0}else if(w)w=!1,C=!0;else _4(u,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line");u.position+=1,Q=A}else{if(F=u.line,U=u.lineStart,z=u.position,!hZ(u,E,Vv0,!1,!0))break;if(u.line===D){Q=u.input.charCodeAt(u.position);while($f(Q))Q=u.input.charCodeAt(++u.position);if(Q===58){if(Q=u.input.charCodeAt(++u.position),!fB(Q))_4(u,"a whitespace character is expected after the key-value separator within a block mapping");if(w)VZ(u,l,b,M,Z,null,F,U,z),M=Z=J=null;K=!0,w=!1,C=!1,M=u.tag,Z=u.result}else if(K)_4(u,"can not read an implicit mapping pair; a colon is missed");else return u.tag=k,u.anchor=f,!0}else if(K)_4(u,"can not read a block mapping entry; a multiline key may not be an implicit key");else return u.tag=k,u.anchor=f,!0}if(u.line===D||u.lineIndent>B){if(w)F=u.line,U=u.lineStart,z=u.position;if(hZ(u,B,cN,!0,C))if(w)Z=u.result;else J=u.result;if(!w)VZ(u,l,b,M,Z,J,F,U,z),M=Z=J=null;A2(u,!0,-1),Q=u.input.charCodeAt(u.position)}if((u.line===D||u.lineIndent>B)&&Q!==0)_4(u,"bad indentation of a mapping entry");else if(u.lineIndent<B)break}if(w)VZ(u,l,b,M,Z,null,F,U,z);if(K)u.tag=k,u.anchor=f,u.kind="mapping",u.result=l;return K}function BS0(u){var B,E=!1,A=!1,C,D,F;if(F=u.input.charCodeAt(u.position),F!==33)return!1;if(u.tag!==null)_4(u,"duplication of a tag property");if(F=u.input.charCodeAt(++u.position),F===60)E=!0,F=u.input.charCodeAt(++u.position);else if(F===33)A=!0,C="!!",F=u.input.charCodeAt(++u.position);else C="!";if(B=u.position,E){do F=u.input.charCodeAt(++u.position);while(F!==0&&F!==62);if(u.position<u.length)D=u.input.slice(B,u.position),F=u.input.charCodeAt(++u.position);else _4(u,"unexpected end of the stream within a verbatim tag")}else{while(F!==0&&!fB(F)){if(F===33)if(!A){if(C=u.input.slice(B-1,u.position+1),!mv0.test(C))_4(u,"named tag handle cannot contain such characters");A=!0,B=u.position+1}else _4(u,"tag suffix cannot contain exclamation marks");F=u.input.charCodeAt(++u.position)}if(D=u.input.slice(B,u.position),K74.test(D))_4(u,"tag suffix cannot contain flow indicator characters")}if(D&&!rv0.test(D))_4(u,"tag name cannot contain such characters: "+D);try{D=decodeURIComponent(D)}catch(U){_4(u,"tag name is malformed: "+D)}if(E)u.tag=D;else if(yf.call(u.tagMap,C))u.tag=u.tagMap[C]+D;else if(C==="!")u.tag="!"+D;else if(C==="!!")u.tag="tag:yaml.org,2002:"+D;else _4(u,'undeclared tag handle "'+C+'"');return!0}function ES0(u){var B,E;if(E=u.input.charCodeAt(u.position),E!==38)return!1;if(u.anchor!==null)_4(u,"duplication of an anchor property");E=u.input.charCodeAt(++u.position),B=u.position;while(E!==0&&!fB(E)&&!aZ(E))E=u.input.charCodeAt(++u.position);if(u.position===B)_4(u,"name of an anchor node must contain at least one character");return u.anchor=u.input.slice(B,u.position),!0}function AS0(u){var B,E,A;if(A=u.input.charCodeAt(u.position),A!==42)return!1;A=u.input.charCodeAt(++u.position),B=u.position;while(A!==0&&!fB(A)&&!aZ(A))A=u.input.charCodeAt(++u.position);if(u.position===B)_4(u,"name of an alias node must contain at least one character");if(E=u.input.slice(B,u.position),!yf.call(u.anchorMap,E))_4(u,'unidentified alias "'+E+'"');return u.result=u.anchorMap[E],A2(u,!0,-1),!0}function hZ(u,B,E,A,C){var D,F,U,z=1,k=!1,f=!1,l,b,M,Z,J,w;if(u.listener!==null)u.listener("open",u);if(u.tag=null,u.anchor=null,u.kind=null,u.result=null,D=F=U=cN===E||hv0===E,A){if(A2(u,!0,-1)){if(k=!0,u.lineIndent>B)z=1;else if(u.lineIndent===B)z=0;else if(u.lineIndent<B)z=-1}}if(z===1)while(BS0(u)||ES0(u))if(A2(u,!0,-1)){if(k=!0,U=D,u.lineIndent>B)z=1;else if(u.lineIndent===B)z=0;else if(u.lineIndent<B)z=-1}else U=!1;if(U)U=k||C;if(z===1||cN===E){if(yN===E||Vv0===E)J=B;else J=B+1;if(w=u.position-u.lineStart,z===1)if(U&&(B40(u,w)||uS0(u,w,J))||tv0(u,J))f=!0;else{if(F&&ev0(u,J)||sv0(u,J)||ov0(u,J))f=!0;else if(AS0(u)){if(f=!0,u.tag!==null||u.anchor!==null)_4(u,"alias node should not have any properties")}else if(dv0(u,J,yN===E)){if(f=!0,u.tag===null)u.tag="?"}if(u.anchor!==null)u.anchorMap[u.anchor]=u.result}else if(z===0)f=U&&B40(u,w)}if(u.tag===null){if(u.anchor!==null)u.anchorMap[u.anchor]=u.result}else if(u.tag==="?"){if(u.result!==null&&u.kind!=="scalar")_4(u,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+u.kind+'"');for(l=0,b=u.implicitTypes.length;l<b;l+=1)if(Z=u.implicitTypes[l],Z.resolve(u.result)){if(u.result=Z.construct(u.result),u.tag=Z.tag,u.anchor!==null)u.anchorMap[u.anchor]=u.result;break}}else if(u.tag!=="!"){if(yf.call(u.typeMap[u.kind||"fallback"],u.tag))Z=u.typeMap[u.kind||"fallback"][u.tag];else{Z=null,M=u.typeMap.multi[u.kind||"fallback"];for(l=0,b=M.length;l<b;l+=1)if(u.tag.slice(0,M[l].tag.length)===M[l].tag){Z=M[l];break}}if(!Z)_4(u,"unknown tag !<"+u.tag+">");if(u.result!==null&&Z.kind!==u.kind)_4(u,"unacceptable node kind for !<"+u.tag+'> tag; it should be "'+Z.kind+'", not "'+u.kind+'"');if(!Z.resolve(u.result,u.tag))_4(u,"cannot resolve a node with !<"+u.tag+"> explicit tag");else if(u.result=Z.construct(u.result,u.tag),u.anchor!==null)u.anchorMap[u.anchor]=u.result}if(u.listener!==null)u.listener("close",u);return u.tag!==null||u.anchor!==null||f}function CS0(u){var B=u.position,E,A,C,D=!1,F;u.version=null,u.checkLineBreaks=u.legacy,u.tagMap=Object.create(null),u.anchorMap=Object.create(null);while((F=u.input.charCodeAt(u.position))!==0){if(A2(u,!0,-1),F=u.input.charCodeAt(u.position),u.lineIndent>0||F!==37)break;D=!0,F=u.input.charCodeAt(++u.position),E=u.position;while(F!==0&&!fB(F))F=u.input.charCodeAt(++u.position);if(A=u.input.slice(E,u.position),C=[],A.length<1)_4(u,"directive name must not be less than one character in length");while(F!==0){while($f(F))F=u.input.charCodeAt(++u.position);if(F===35){do F=u.input.charCodeAt(++u.position);while(F!==0&&!QC(F));break}if(QC(F))break;E=u.position;while(F!==0&&!fB(F))F=u.input.charCodeAt(++u.position);C.push(u.input.slice(E,u.position))}if(F!==0)pN(u);if(yf.call(px0,A))px0[A](u,A,C);else sv(u,'unknown document directive "'+A+'"')}if(A2(u,!0,-1),u.lineIndent===0&&u.input.charCodeAt(u.position)===45&&u.input.charCodeAt(u.position+1)===45&&u.input.charCodeAt(u.position+2)===45)u.position+=3,A2(u,!0,-1);else if(D)_4(u,"directives end mark is expected");if(hZ(u,u.lineIndent-1,cN,!1,!0),A2(u,!0,-1),u.checkLineBreaks&&w74.test(u.input.slice(B,u.position)))sv(u,"non-ASCII line breaks are interpreted as content");if(u.documents.push(u.result),u.position===u.lineStart&&uS(u)){if(u.input.charCodeAt(u.position)===46)u.position+=3,A2(u,!0,-1);return}if(u.position<u.length-1)_4(u,"end of the stream or a document separator is expected");else return}function K40(u,B){if(u=String(u),B=B||{},u.length!==0){if(u.charCodeAt(u.length-1)!==10&&u.charCodeAt(u.length-1)!==13)u+=`
`;if(u.charCodeAt(0)===65279)u=u.slice(1)}var E=new pv0(u,B),A=u.indexOf("\x00");if(A!==-1)E.position=A,_4(E,"null byte is not allowed in input");E.input+="\x00";while(E.input.charCodeAt(E.position)===32)E.lineIndent+=1,E.position+=1;while(E.position<E.length-1)CS0(E);return E.documents}function DS0(u,B,E){if(B!==null&&typeof B==="object"&&typeof E>"u")E=B,B=null;var A=K40(u,E);if(typeof B!=="function")return A;for(var C=0,D=A.length;C<D;C+=1)B(A[C])}function FS0(u,B){var E=K40(u,B);if(E.length===0)return;else if(E.length===1)return E[0];throw new E8("expected a single document in the stream, but found more")}function JS0(u,B){var E,A,C,D,F,U,z;if(B===null)return{};E={},A=Object.keys(B);for(C=0,D=A.length;C<D;C+=1){if(F=A[C],U=String(B[F]),F.slice(0,2)==="!!")F="tag:yaml.org,2002:"+F.slice(2);if(z=u.compiledTypeMap.fallback[F],z&&kS0.call(z.styleAliases,U))U=z.styleAliases[U];E[F]=U}return E}function wS0(u){var B,E,A;if(B=u.toString(16).toUpperCase(),u<=255)E="x",A=2;else if(u<=65535)E="u",A=4;else if(u<=4294967295)E="U",A=8;else throw new E8("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+E+p2.repeat("0",A-B.length)+B}function KS0(u){this.schema=u.schema||av0,this.indent=Math.max(1,u.indent||2),this.noArrayIndent=u.noArrayIndent||!1,this.skipInvalid=u.skipInvalid||!1,this.flowLevel=p2.isNothing(u.flowLevel)?-1:u.flowLevel,this.styleMap=JS0(this.schema,u.styles||null),this.sortKeys=u.sortKeys||!1,this.lineWidth=u.lineWidth||80,this.noRefs=u.noRefs||!1,this.noCompatMode=u.noCompatMode||!1,this.condenseFlow=u.condenseFlow||!1,this.quotingType=u.quotingType==='"'?tv:V74,this.forceQuotes=u.forceQuotes||!1,this.replacer=typeof u.replacer==="function"?u.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function A40(u,B){var E=p2.repeat(" ",B),A=0,C=-1,D="",F,U=u.length;while(A<U){if(C=u.indexOf(`
`,A),C===-1)F=u.slice(A),A=U;else F=u.slice(A,C+1),A=C+1;if(F.length&&F!==`
`)D+=E;D+=F}return D}function _N(u,B){return`
`+p2.repeat(" ",u.indent*B)}function QS0(u,B){var E,A,C;for(E=0,A=u.implicitTypes.length;E<A;E+=1)if(C=u.implicitTypes[E],C.resolve(B))return!0;return!1}function ev(u){return u===q74||u===H74}function JG(u){return 32<=u&&u<=126||161<=u&&u<=55295&&u!==8232&&u!==8233||57344<=u&&u<=65533&&u!==Q40||65536<=u&&u<=1114111}function C40(u){return JG(u)&&u!==Q40&&u!==L74&&u!==ov}function D40(u,B,E){var A=C40(u),C=A&&!ev(u);return(E?A:A&&u!==fS0&&u!==lS0&&u!==bS0&&u!==MS0&&u!==ZS0)&&u!==E40&&!(B===gN&&!C)||C40(B)&&!ev(B)&&u===E40||B===gN&&C}function GS0(u){return JG(u)&&u!==Q40&&!ev(u)&&u!==R74&&u!==I74&&u!==gN&&u!==fS0&&u!==lS0&&u!==bS0&&u!==MS0&&u!==ZS0&&u!==E40&&u!==S74&&u!==Y74&&u!==X74&&u!==N74&&u!==T74&&u!==O74&&u!==W74&&u!==x74&&u!==v74&&u!==P74&&u!==j74}function HS0(u){return!ev(u)&&u!==gN}function MG(u,B){var E=u.charCodeAt(B),A;if(E>=55296&&E<=56319&&B+1<u.length){if(A=u.charCodeAt(B+1),A>=56320&&A<=57343)return(E-55296)*1024+A-56320+65536}return E}function G40(u){var B=/^\n* /;return B.test(u)}function xS0(u,B,E,A,C,D,F,U){var z,k=0,f=null,l=!1,b=!1,M=A!==-1,Z=-1,J=GS0(MG(u,0))&&HS0(MG(u,u.length-1));if(B||F)for(z=0;z<u.length;k>=65536?z+=2:z++){if(k=MG(u,z),!JG(k))return bG;J=J&&D40(k,f,U),f=k}else{for(z=0;z<u.length;k>=65536?z+=2:z++){if(k=MG(u,z),k===ov){if(l=!0,M)b=b||z-Z-1>A&&u[Z+1]!==" ",Z=z}else if(!JG(k))return bG;J=J&&D40(k,f,U),f=k}b=b||M&&(z-Z-1>A&&u[Z+1]!==" ")}if(!l&&!b){if(J&&!F&&!C(u))return LS0;return D===tv?bG:F40}if(E>9&&G40(u))return bG;if(!F)return b?XS0:qS0;return D===tv?bG:F40}function vS0(u,B,E,A,C){u.dump=function(){if(B.length===0)return u.quotingType===tv?'""':"''";if(!u.noCompatMode){if(i74.indexOf(B)!==-1||a74.test(B))return u.quotingType===tv?'"'+B+'"':"'"+B+"'"}var D=u.indent*Math.max(1,E),F=u.lineWidth===-1?-1:Math.max(Math.min(u.lineWidth,40),u.lineWidth-D),U=A||u.flowLevel>-1&&E>=u.flowLevel;function z(k){return QS0(u,k)}switch(X(z,"testAmbiguity"),xS0(B,U,u.indent,F,z,u.quotingType,u.forceQuotes&&!A,C)){case LS0:return B;case F40:return"'"+B.replace(/'/g,"''")+"'";case qS0:return"|"+U40(B,u.indent)+z40(A40(B,D));case XS0:return">"+U40(B,u.indent)+z40(A40(SS0(B,F),D));case bG:return'"'+WS0(B)+'"';default:throw new E8("impossible error: invalid scalar style")}}()}function U40(u,B){var E=G40(u)?String(B):"",A=u[u.length-1]===`
`,C=A&&(u[u.length-2]===`
`||u===`
`),D=C?"+":A?"":"-";return E+D+`
`}function z40(u){return u[u.length-1]===`
`?u.slice(0,-1):u}function SS0(u,B){var E=/(\n+)([^\n]*)/g,A=function(){var k=u.indexOf(`
`);return k=k!==-1?k:u.length,E.lastIndex=k,k40(u.slice(0,k),B)}(),C=u[0]===`
`||u[0]===" ",D,F;while(F=E.exec(u)){var U=F[1],z=F[2];D=z[0]===" ",A+=U+(!C&&!D&&z!==""?`
`:"")+k40(z,B),C=D}return A}function k40(u,B){if(u===""||u[0]===" ")return u;var E=/ [^ ]/g,A,C=0,D,F=0,U=0,z="";while(A=E.exec(u)){if(U=A.index,U-C>B)D=F>C?F:U,z+=`
`+u.slice(C,D),C=D+1;F=U}if(z+=`
`,u.length-C>B&&F>C)z+=u.slice(C,F)+`
`+u.slice(F+1);else z+=u.slice(C);return z.slice(1)}function WS0(u){var B="",E=0,A;for(var C=0;C<u.length;E>=65536?C+=2:C++)if(E=MG(u,C),A=R7[E],!A&&JG(E)){if(B+=u[C],E>=65536)B+=u[C+1]}else B+=A||wS0(E);return B}function YS0(u,B,E){var A="",C=u.tag,D,F,U;for(D=0,F=E.length;D<F;D+=1){if(U=E[D],u.replacer)U=u.replacer.call(E,String(D),U);if(KF(u,B,U,!1,!1)||typeof U>"u"&&KF(u,B,null,!1,!1)){if(A!=="")A+=","+(!u.condenseFlow?" ":"");A+=u.dump}}u.tag=C,u.dump="["+A+"]"}function f40(u,B,E,A){var C="",D=u.tag,F,U,z;for(F=0,U=E.length;F<U;F+=1){if(z=E[F],u.replacer)z=u.replacer.call(E,String(F),z);if(KF(u,B+1,z,!0,!0,!1,!0)||typeof z>"u"&&KF(u,B+1,null,!0,!0,!1,!0)){if(!A||C!=="")C+=_N(u,B);if(u.dump&&ov===u.dump.charCodeAt(0))C+="-";else C+="- ";C+=u.dump}}u.tag=D,u.dump=C||"[]"}function RS0(u,B,E){var A="",C=u.tag,D=Object.keys(E),F,U,z,k,f;for(F=0,U=D.length;F<U;F+=1){if(f="",A!=="")f+=", ";if(u.condenseFlow)f+='"';if(z=D[F],k=E[z],u.replacer)k=u.replacer.call(E,z,k);if(!KF(u,B,z,!1,!1))continue;if(u.dump.length>1024)f+="? ";if(f+=u.dump+(u.condenseFlow?'"':"")+":"+(u.condenseFlow?"":" "),!KF(u,B,k,!1,!1))continue;f+=u.dump,A+=f}u.tag=C,u.dump="{"+A+"}"}function TS0(u,B,E,A){var C="",D=u.tag,F=Object.keys(E),U,z,k,f,l,b;if(u.sortKeys===!0)F.sort();else if(typeof u.sortKeys==="function")F.sort(u.sortKeys);else if(u.sortKeys)throw new E8("sortKeys must be a boolean or a function");for(U=0,z=F.length;U<z;U+=1){if(b="",!A||C!=="")b+=_N(u,B);if(k=F[U],f=E[k],u.replacer)f=u.replacer.call(E,k,f);if(!KF(u,B+1,k,!0,!0,!0))continue;if(l=u.tag!==null&&u.tag!=="?"||u.dump&&u.dump.length>1024,l)if(u.dump&&ov===u.dump.charCodeAt(0))b+="?";else b+="? ";if(b+=u.dump,l)b+=_N(u,B);if(!KF(u,B+1,f,!0,l))continue;if(u.dump&&ov===u.dump.charCodeAt(0))b+=":";else b+=": ";b+=u.dump,C+=b}u.tag=D,u.dump=C||"{}"}function l40(u,B,E){var A,C,D,F,U,z;C=E?u.explicitTypes:u.implicitTypes;for(D=0,F=C.length;D<F;D+=1)if(U=C[D],(U.instanceOf||U.predicate)&&(!U.instanceOf||typeof B==="object"&&B instanceof U.instanceOf)&&(!U.predicate||U.predicate(B))){if(E)if(U.multi&&U.representName)u.tag=U.representName(B);else u.tag=U.tag;else u.tag="?";if(U.represent){if(z=u.styleMap[U.tag]||U.defaultStyle,zS0.call(U.represent)==="[object Function]")A=U.represent(B,z);else if(kS0.call(U.represent,z))A=U.represent[z](B,z);else throw new E8("!<"+U.tag+'> tag resolver accepts not "'+z+'" style');u.dump=A}return!0}return!1}function KF(u,B,E,A,C,D,F){if(u.tag=null,u.dump=E,!l40(u,E,!1))l40(u,E,!0);var U=zS0.call(u.dump),z=A,k;if(A)A=u.flowLevel<0||u.flowLevel>B;var f=U==="[object Object]"||U==="[object Array]",l,b;if(f)l=u.duplicates.indexOf(E),b=l!==-1;if(u.tag!==null&&u.tag!=="?"||b||u.indent!==2&&B>0)C=!1;if(b&&u.usedDuplicates[l])u.dump="*ref_"+l;else{if(f&&b&&!u.usedDuplicates[l])u.usedDuplicates[l]=!0;if(U==="[object Object]"){if(A&&Object.keys(u.dump).length!==0){if(TS0(u,B,u.dump,C),b)u.dump="&ref_"+l+u.dump}else if(RS0(u,B,u.dump),b)u.dump="&ref_"+l+" "+u.dump}else if(U==="[object Array]"){if(A&&u.dump.length!==0){if(u.noArrayIndent&&!F&&B>0)f40(u,B-1,u.dump,C);else f40(u,B,u.dump,C);if(b)u.dump="&ref_"+l+u.dump}else if(YS0(u,B,u.dump),b)u.dump="&ref_"+l+" "+u.dump}else if(U==="[object String]"){if(u.tag!=="?")vS0(u,u.dump,B,D,z)}else if(U==="[object Undefined]")return!1;else{if(u.skipInvalid)return!1;throw new E8("unacceptable kind of an object to dump "+U)}if(u.tag!==null&&u.tag!=="?"){if(k=encodeURI(u.tag[0]==="!"?u.tag.slice(1):u.tag).replace(/!/g,"%21"),u.tag[0]==="!")k="!"+k;else if(k.slice(0,18)==="tag:yaml.org,2002:")k="!!"+k.slice(18);else k="!<"+k+">";u.dump=k+" "+u.dump}}return!0}function OS0(u,B){var E=[],A=[],C,D;nN(u,E,A);for(C=0,D=A.length;C<D;C+=1)B.duplicates.push(E[A[C]]);B.usedDuplicates=Array(D)}function nN(u,B,E){var A,C,D;if(u!==null&&typeof u==="object")if(C=B.indexOf(u),C!==-1){if(E.indexOf(C)===-1)E.push(C)}else if(B.push(u),Array.isArray(u))for(C=0,D=u.length;C<D;C+=1)nN(u[C],B,E);else{A=Object.keys(u);for(C=0,D=A.length;C<D;C+=1)nN(u[A[C]],B,E)}}function IS0(u,B){B=B||{};var E=new KS0(B);if(!E.noRefs)OS0(u,E);var A=u;if(E.replacer)A=E.replacer.call({"":A},"",A);if(KF(E,0,A,!0,!0))return E.dump+`
`;return""}function sN(u,B){return function(){throw Error("Function yaml."+u+" is removed in js-yaml 4. Use yaml."+B+" instead, which is now safe by default.")}}var a54,V54,h54,m54,r54,$54,p2,E8,y54,c54,g54,Y7,_54,n54,p54,d54,s54,o54,t54,e54,u74,B74,E74,Hv0,A74,Lv0,qv0,C74,D74,Z40=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
\r`,F74,U74,z74,k74,f74,l74,b74,M74,av0,yf,yN=1,Vv0=2,hv0=3,cN=4,su0=1,Z74=2,nx0=3,J74,w74,K74,mv0,rv0,_v0,nv0,iZ,px0,Q74,G74,US0,zS0,kS0,Q40=65279,H74=9,ov=10,L74=13,q74=32,X74=33,x74=34,E40=35,v74=37,S74=38,W74=39,Y74=42,fS0=44,R74=45,gN=58,T74=61,O74=62,I74=63,P74=64,lS0=91,bS0=93,j74=96,MS0=123,N74=124,ZS0=125,R7,i74,a74,V74=1,tv=2,LS0=1,F40=2,qS0=3,XS0=4,bG=5,h74,m74,cf,gf,iR3,aR3,VR3,hR3,mR3;var mZ=g(()=>{Y4();X(b40,"isNothing");X(dx0,"isObject");X(sx0,"toArray");X(ox0,"extend");X(tx0,"repeat");X(ex0,"isNegativeZero");a54=b40,V54=dx0,h54=sx0,m54=tx0,r54=ex0,$54=ox0,p2={isNothing:a54,isObject:V54,toArray:h54,repeat:m54,isNegativeZero:r54,extend:$54};X(M40,"formatError");X(ZG,"YAMLException$1");ZG.prototype=Object.create(Error.prototype);ZG.prototype.constructor=ZG;ZG.prototype.toString=X(function(B){return this.name+": "+M40(this,B)},"toString");E8=ZG;X(mN,"getLine");X(rN,"padStart");X(uv0,"makeSnippet");y54=uv0,c54=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],g54=["scalar","sequence","mapping"];X(Bv0,"compileStyleAliases");X(Ev0,"Type$1");Y7=Ev0;X(ou0,"compileList");X(Av0,"compileMap");X($N,"Schema$1");$N.prototype.extend=X(function(B){var E=[],A=[];if(B instanceof Y7)A.push(B);else if(Array.isArray(B))A=A.concat(B);else if(B&&(Array.isArray(B.implicit)||Array.isArray(B.explicit))){if(B.implicit)E=E.concat(B.implicit);if(B.explicit)A=A.concat(B.explicit)}else throw new E8("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");E.forEach(function(D){if(!(D instanceof Y7))throw new E8("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(D.loadKind&&D.loadKind!=="scalar")throw new E8("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(D.multi)throw new E8("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),A.forEach(function(D){if(!(D instanceof Y7))throw new E8("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var C=Object.create($N.prototype);return C.implicit=(this.implicit||[]).concat(E),C.explicit=(this.explicit||[]).concat(A),C.compiledImplicit=ou0(C,"implicit"),C.compiledExplicit=ou0(C,"explicit"),C.compiledTypeMap=Av0(C.compiledImplicit,C.compiledExplicit),C},"extend");_54=$N,n54=new Y7("tag:yaml.org,2002:str",{kind:"scalar",construct:X(function(u){return u!==null?u:""},"construct")}),p54=new Y7("tag:yaml.org,2002:seq",{kind:"sequence",construct:X(function(u){return u!==null?u:[]},"construct")}),d54=new Y7("tag:yaml.org,2002:map",{kind:"mapping",construct:X(function(u){return u!==null?u:{}},"construct")}),s54=new _54({explicit:[n54,p54,d54]});X(Cv0,"resolveYamlNull");X(Dv0,"constructYamlNull");X(Fv0,"isNull");o54=new Y7("tag:yaml.org,2002:null",{kind:"scalar",resolve:Cv0,construct:Dv0,predicate:Fv0,represent:{canonical:X(function(){return"~"},"canonical"),lowercase:X(function(){return"null"},"lowercase"),uppercase:X(function(){return"NULL"},"uppercase"),camelcase:X(function(){return"Null"},"camelcase"),empty:X(function(){return""},"empty")},defaultStyle:"lowercase"});X(Uv0,"resolveYamlBoolean");X(zv0,"constructYamlBoolean");X(kv0,"isBoolean");t54=new Y7("tag:yaml.org,2002:bool",{kind:"scalar",resolve:Uv0,construct:zv0,predicate:kv0,represent:{lowercase:X(function(u){return u?"true":"false"},"lowercase"),uppercase:X(function(u){return u?"TRUE":"FALSE"},"uppercase"),camelcase:X(function(u){return u?"True":"False"},"camelcase")},defaultStyle:"lowercase"});X(fv0,"isHexCode");X(lv0,"isOctCode");X(bv0,"isDecCode");X(Mv0,"resolveYamlInteger");X(Zv0,"constructYamlInteger");X(Jv0,"isInteger");e54=new Y7("tag:yaml.org,2002:int",{kind:"scalar",resolve:Mv0,construct:Zv0,predicate:Jv0,represent:{binary:X(function(u){return u>=0?"0b"+u.toString(2):"-0b"+u.toString(2).slice(1)},"binary"),octal:X(function(u){return u>=0?"0o"+u.toString(8):"-0o"+u.toString(8).slice(1)},"octal"),decimal:X(function(u){return u.toString(10)},"decimal"),hexadecimal:X(function(u){return u>=0?"0x"+u.toString(16).toUpperCase():"-0x"+u.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),u74=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");X(wv0,"resolveYamlFloat");X(Kv0,"constructYamlFloat");B74=/^[-+]?[0-9]+e/;X(Qv0,"representYamlFloat");X(Gv0,"isFloat");E74=new Y7("tag:yaml.org,2002:float",{kind:"scalar",resolve:wv0,construct:Kv0,predicate:Gv0,represent:Qv0,defaultStyle:"lowercase"}),Hv0=s54.extend({implicit:[o54,t54,e54,E74]}),A74=Hv0,Lv0=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),qv0=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]))?))?$");X(Xv0,"resolveYamlTimestamp");X(xv0,"constructYamlTimestamp");X(vv0,"representYamlTimestamp");C74=new Y7("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Xv0,construct:xv0,instanceOf:Date,represent:vv0});X(Sv0,"resolveYamlMerge");D74=new Y7("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Sv0});X(Wv0,"resolveYamlBinary");X(Yv0,"constructYamlBinary");X(Rv0,"representYamlBinary");X(Tv0,"isBinary");F74=new Y7("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Wv0,construct:Yv0,predicate:Tv0,represent:Rv0}),U74=Object.prototype.hasOwnProperty,z74=Object.prototype.toString;X(Ov0,"resolveYamlOmap");X(Iv0,"constructYamlOmap");k74=new Y7("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Ov0,construct:Iv0}),f74=Object.prototype.toString;X(Pv0,"resolveYamlPairs");X(jv0,"constructYamlPairs");l74=new Y7("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Pv0,construct:jv0}),b74=Object.prototype.hasOwnProperty;X(Nv0,"resolveYamlSet");X(iv0,"constructYamlSet");M74=new Y7("tag:yaml.org,2002:set",{kind:"mapping",resolve:Nv0,construct:iv0}),av0=A74.extend({implicit:[C74,D74],explicit:[F74,k74,l74,M74]}),yf=Object.prototype.hasOwnProperty,J74=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,w74=/[\x85\u2028\u2029]/,K74=/[,\[\]\{\}]/,mv0=/^(?:!|!!|![a-z\-]+!)$/i,rv0=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;X(tu0,"_class");X(QC,"is_EOL");X($f,"is_WHITE_SPACE");X(fB,"is_WS_OR_EOL");X(aZ,"is_FLOW_INDICATOR");X($v0,"fromHexCode");X(yv0,"escapedHexLen");X(cv0,"fromDecimalCode");X(eu0,"simpleEscapeSequence");X(gv0,"charFromCodepoint");X(J40,"setProperty");_v0=Array(256),nv0=Array(256);for(iZ=0;iZ<256;iZ++)_v0[iZ]=eu0(iZ)?1:0,nv0[iZ]=eu0(iZ);X(pv0,"State$1");X(w40,"generateError");X(_4,"throwError");X(sv,"throwWarning");px0={YAML:X(function(B,E,A){var C,D,F;if(B.version!==null)_4(B,"duplication of %YAML directive");if(A.length!==1)_4(B,"YAML directive accepts exactly one argument");if(C=/^([0-9]+)\.([0-9]+)$/.exec(A[0]),C===null)_4(B,"ill-formed argument of the YAML directive");if(D=parseInt(C[1],10),F=parseInt(C[2],10),D!==1)_4(B,"unacceptable YAML version of the document");if(B.version=A[0],B.checkLineBreaks=F<2,F!==1&&F!==2)sv(B,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:X(function(B,E,A){var C,D;if(A.length!==2)_4(B,"TAG directive accepts exactly two arguments");if(C=A[0],D=A[1],!mv0.test(C))_4(B,"ill-formed tag handle (first argument) of the TAG directive");if(yf.call(B.tagMap,C))_4(B,'there is a previously declared suffix for "'+C+'" tag handle');if(!rv0.test(D))_4(B,"ill-formed tag prefix (second argument) of the TAG directive");try{D=decodeURIComponent(D)}catch(F){_4(B,"tag prefix is malformed: "+D)}B.tagMap[C]=D},"handleTagDirective")};X(Wz,"captureSegment");X(u40,"mergeMappings");X(VZ,"storeMappingPair");X(pN,"readLineBreak");X(A2,"skipSeparationSpace");X(uS,"testDocumentSeparator");X(dN,"writeFoldedLines");X(dv0,"readPlainScalar");X(sv0,"readSingleQuotedScalar");X(ov0,"readDoubleQuotedScalar");X(tv0,"readFlowCollection");X(ev0,"readBlockScalar");X(B40,"readBlockSequence");X(uS0,"readBlockMapping");X(BS0,"readTagProperty");X(ES0,"readAnchorProperty");X(AS0,"readAlias");X(hZ,"composeNode");X(CS0,"readDocument");X(K40,"loadDocuments");X(DS0,"loadAll$1");X(FS0,"load$1");Q74=DS0,G74=FS0,US0={loadAll:Q74,load:G74},zS0=Object.prototype.toString,kS0=Object.prototype.hasOwnProperty,R7={};R7[0]="\\0";R7[7]="\\a";R7[8]="\\b";R7[9]="\\t";R7[10]="\\n";R7[11]="\\v";R7[12]="\\f";R7[13]="\\r";R7[27]="\\e";R7[34]="\\\"";R7[92]="\\\\";R7[133]="\\N";R7[160]="\\_";R7[8232]="\\L";R7[8233]="\\P";i74=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],a74=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;X(JS0,"compileStyleMap");X(wS0,"encodeHex");X(KS0,"State");X(A40,"indentString");X(_N,"generateNextLine");X(QS0,"testImplicitResolving");X(ev,"isWhitespace");X(JG,"isPrintable");X(C40,"isNsCharOrWhitespace");X(D40,"isPlainSafe");X(GS0,"isPlainSafeFirst");X(HS0,"isPlainSafeLast");X(MG,"codePointAt");X(G40,"needIndentIndicator");X(xS0,"chooseScalarStyle");X(vS0,"writeScalar");X(U40,"blockHeader");X(z40,"dropEndingNewline");X(SS0,"foldString");X(k40,"foldLine");X(WS0,"escapeString");X(YS0,"writeFlowSequence");X(f40,"writeBlockSequence");X(RS0,"writeFlowMapping");X(TS0,"writeBlockMapping");X(l40,"detectType");X(KF,"writeNode");X(OS0,"getDuplicateReferences");X(nN,"inspectNode");X(IS0,"dump$1");h74=IS0,m74={dump:h74};X(sN,"renamed");cf=Hv0,gf=US0.load,iR3=US0.loadAll,aR3=m74.dump,VR3=sN("safeLoad","load"),hR3=sN("safeLoadAll","loadAll"),mR3=sN("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 PS0,rZ,r74,BS,H4,S4,$74;var o5=g(()=>{s4();Y4();PS0=X((u)=>{let{handDrawnSeed:B}=$0();return{fill:u,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:0.7,stroke:u,seed:B}},"solidStateFill"),rZ=X((u)=>{let B=r74([...u.cssCompiledStyles||[],...u.cssStyles||[],...u.labelStyle||[]]);return{stylesMap:B,stylesArray:[...B]}},"compileStyles"),r74=X((u)=>{let B=new Map;return u.forEach((E)=>{let[A,C]=E.split(":");B.set(A.trim(),C?.trim())}),B},"styles2Map"),BS=X((u)=>{return u==="color"||u==="font-size"||u==="font-family"||u==="font-weight"||u==="font-style"||u==="text-decoration"||u==="text-align"||u==="text-transform"||u==="line-height"||u==="letter-spacing"||u==="word-spacing"||u==="text-shadow"||u==="text-overflow"||u==="white-space"||u==="word-wrap"||u==="word-break"||u==="overflow-wrap"||u==="hyphens"},"isLabelStyle"),H4=X((u)=>{let{stylesArray:B}=rZ(u),E=[],A=[],C=[],D=[];return B.forEach((F)=>{let U=F[0];if(BS(U))E.push(F.join(":")+" !important");else{if(A.push(F.join(":")+" !important"),U.includes("stroke"))C.push(F.join(":")+" !important");if(U==="fill")D.push(F.join(":")+" !important")}}),{labelStyles:E.join(";"),nodeStyles:A.join(";"),stylesArray:B,borderStyles:C,backgroundStyles:D}},"styles2String"),S4=X((u,B)=>{let{themeVariables:E,handDrawnSeed:A}=$0(),{nodeBorder:C,mainBkg:D}=E,{stylesMap:F}=rZ(u);return Object.assign({roughness:0.7,fill:F.get("fill")||D,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:F.get("stroke")||C,seed:A,strokeWidth:F.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:$74(F.get("stroke-dasharray"))},B)},"userNodeOverrides"),$74=X((u)=>{if(!u)return[0,0];let B=u.trim().split(/\s+/).map(Number);if(B.length===1){let C=isNaN(B[0])?0:B[0];return[C,C]}let E=isNaN(B[0])?0:B[0],A=isNaN(B[1])?0:B[1];return[E,A]},"getStrokeDashArray")});var iS0=P1((jS0)=>{Object.defineProperty(jS0,"__esModule",{value:!0});jS0.BLANK_URL=jS0.relativeFirstCharacters=jS0.whitespaceEscapeCharsRegex=jS0.urlSchemeRegex=jS0.ctrlCharactersRegex=jS0.htmlCtrlEntityRegex=jS0.htmlEntitiesRegex=jS0.invalidProtocolRegex=void 0;jS0.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;jS0.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;jS0.htmlCtrlEntityRegex=/&(newline|tab);/gi;jS0.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;jS0.urlSchemeRegex=/^.+(:|&colon;)/gim;jS0.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;jS0.relativeFirstCharacters=[".","/"];jS0.BLANK_URL="about:blank"});var wG=P1((VS0)=>{Object.defineProperty(VS0,"__esModule",{value:!0});VS0.sanitizeUrl=e74;var T7=iS0();function s74(u){return T7.relativeFirstCharacters.indexOf(u[0])>-1}function o74(u){var B=u.replace(T7.ctrlCharactersRegex,"");return B.replace(T7.htmlEntitiesRegex,function(E,A){return String.fromCharCode(A)})}function t74(u){return URL.canParse(u)}function aS0(u){try{return decodeURIComponent(u)}catch(B){return u}}function e74(u){if(!u)return T7.BLANK_URL;var B,E=aS0(u.trim());do E=o74(E).replace(T7.htmlCtrlEntityRegex,"").replace(T7.ctrlCharactersRegex,"").replace(T7.whitespaceEscapeCharsRegex,"").trim(),E=aS0(E),B=E.match(T7.ctrlCharactersRegex)||E.match(T7.htmlEntitiesRegex)||E.match(T7.htmlCtrlEntityRegex)||E.match(T7.whitespaceEscapeCharsRegex);while(B&&B.length>0);var A=E;if(!A)return T7.BLANK_URL;if(s74(A))return A;var C=A.trimStart(),D=C.match(T7.urlSchemeRegex);if(!D)return A;var F=D[0].toLowerCase().trim();if(T7.invalidProtocolRegex.test(F))return T7.BLANK_URL;var U=C.replace(/\\/g,"/");if(F==="mailto:"||F.includes("://"))return U;if(F==="http:"||F==="https:"){if(!t74(U))return T7.BLANK_URL;var z=new URL(U);return z.protocol=z.protocol.toLowerCase(),z.hostname=z.hostname.toLowerCase(),z.toString()}return U}});function $Z(u,B){if(typeof u!=="function"||B!=null&&typeof B!=="function")throw TypeError("Expected a function");let E=function(...A){let C=B?B.apply(this,A):A[0],D=E.cache;if(D.has(C))return D.get(C);let F=u.apply(this,A);return E.cache=D.set(C,F)||D,F};return E.cache=new($Z.Cache||Map),E}var hS0=g(()=>{$Z.Cache=Map});function _f(u){return u==null||typeof u!=="object"&&typeof u!=="function"}var ES=()=>{};function Yz(u){if(u==null)return u===void 0?"[object Undefined]":"[object Null]";return Object.prototype.toString.call(u)}var AS=()=>{};var oN="[object RegExp]",KG="[object String]",QG="[object Number]",GG="[object Boolean]",HG="[object Arguments]",tN="[object Symbol]",eN="[object Date]",ui="[object Map]",Bi="[object Set]",Ei="[object Array]",Ai="[object ArrayBuffer]",Ci="[object Object]",Di="[object DataView]",Fi="[object Uint8Array]",Ui="[object Uint8ClampedArray]",zi="[object Uint16Array]",ki="[object Uint32Array]",fi="[object Int8Array]",li="[object Int16Array]",bi="[object Int32Array]",Mi="[object Float32Array]",Zi="[object Float64Array]";var Ji=()=>{};function mS0(u){return Array.isArray(u)}var rS0=()=>{};function LG(u){return ArrayBuffer.isView(u)&&!(u instanceof DataView)}var wi=()=>{};function nf(u){return LG(u)}var Ki=g(()=>{wi()});function L40(u){if(_f(u))return u;let B=Yz(u);if(!BB4(u))return{};if(mS0(u)){let A=Array.from(u);if(u.length>0&&typeof u[0]==="string"&&Object.hasOwn(u,"index"))A.index=u.index,A.input=u.input;return A}if(nf(u)){let A=u;return new A.constructor(A.buffer,A.byteOffset,A.length)}if(B==="[object ArrayBuffer]")return new ArrayBuffer(u.byteLength);if(B==="[object DataView]"){let A=u,C=A.buffer,D=A.byteOffset,F=A.byteLength,U=new ArrayBuffer(F),z=new Uint8Array(C,D,F);return new Uint8Array(U).set(z),new DataView(U)}if(B==="[object Boolean]"||B==="[object Number]"||B==="[object String]"){let C=new u.constructor(u.valueOf());if(B==="[object String]")AB4(C,u);else H40(C,u);return C}if(B==="[object Date]")return new Date(Number(u));if(B==="[object RegExp]"){let A=u,C=new RegExp(A.source,A.flags);return C.lastIndex=A.lastIndex,C}if(B==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(u));if(B==="[object Map]"){let A=u,C=new Map;return A.forEach((D,F)=>{C.set(F,D)}),C}if(B==="[object Set]"){let A=u,C=new Set;return A.forEach((D)=>{C.add(D)}),C}if(B==="[object Arguments]"){let A=u,C={};return H40(C,A),C.length=A.length,C[Symbol.iterator]=A[Symbol.iterator],C}let E={};return CB4(E,u),H40(E,u),EB4(E,u),E}function BB4(u){switch(Yz(u)){case HG:case Ei:case Ai:case Di:case GG:case eN:case Mi:case Zi:case fi:case li:case bi:case ui:case QG:case Ci:case oN:case Bi:case KG:case tN:case Fi:case Ui:case zi:case ki:return!0;default:return!1}}function H40(u,B){for(let E in B)if(Object.hasOwn(B,E))u[E]=B[E]}function EB4(u,B){let E=Object.getOwnPropertySymbols(B);for(let A=0;A<E.length;A++){let C=E[A];if(Object.prototype.propertyIsEnumerable.call(B,C))u[C]=B[C]}}function AB4(u,B){let E=B.valueOf().length;for(let A in B)if(Object.hasOwn(B,A)&&(Number.isNaN(Number(A))||Number(A)>=E))u[A]=B[A]}function CB4(u,B){let E=Object.getPrototypeOf(B);if(E!==null){if(typeof B.constructor==="function")Object.setPrototypeOf(u,E)}}var $S0=g(()=>{ES();AS();Ji();rS0();Ki()});function yS0(){}var cS0=()=>{};function gS0(u){if(_f(u))return u;if(Array.isArray(u)||LG(u)||u instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&u instanceof SharedArrayBuffer)return u.slice(0);let B=Object.getPrototypeOf(u);if(B==null)return Object.assign(Object.create(B),u);let E=B.constructor;if(u instanceof Date||u instanceof Map||u instanceof Set)return new E(u);if(u instanceof RegExp){let A=new E(u);return A.lastIndex=u.lastIndex,A}if(u instanceof DataView)return new E(u.buffer.slice(0));if(u instanceof Error){let A;if(u instanceof AggregateError)A=new E(u.errors,u.message,{cause:u.cause});else A=new E(u.message,{cause:u.cause});return A.stack=u.stack,Object.assign(A,u),A}if(typeof File<"u"&&u instanceof File)return new E([u],u.name,{type:u.type,lastModified:u.lastModified});if(typeof u==="object")return Object.assign(Object.create(B),u);return u}var _S0=g(()=>{ES();wi()});function Qi(u){return Object.getOwnPropertySymbols(u).filter((B)=>Object.prototype.propertyIsEnumerable.call(u,B))}var q40=()=>{};var X40;var nS0=g(()=>{X40=typeof globalThis==="object"&&globalThis||typeof window==="object"&&window||typeof self==="object"&&self||typeof global==="object"&&global||function(){return this}()});function qG(u){return typeof X40.Buffer<"u"&&X40.Buffer.isBuffer(u)}var Gi=g(()=>{nS0()});function pS0(u){return u==="__proto__"}var dS0=()=>{};function Hi(u){if(typeof u!=="object")return!1;if(u==null)return!1;if(Object.getPrototypeOf(u)===null)return!0;if(Object.prototype.toString.call(u)!=="[object Object]"){let E=u[Symbol.toStringTag];if(E==null)return!1;if(!Object.getOwnPropertyDescriptor(u,Symbol.toStringTag)?.writable)return!1;return u.toString()===`[object ${E}]`}let B=u;while(Object.getPrototypeOf(B)!==null)B=Object.getPrototypeOf(B);return Object.getPrototypeOf(u)===B}var sS0=()=>{};function oS0(u,B){return XG(u,void 0,u,new Map,B)}function XG(u,B,E,A=new Map,C=void 0){let D=C?.(u,B,E,A);if(D!==void 0)return D;if(_f(u))return u;if(A.has(u))return A.get(u);if(Array.isArray(u)){let F=Array(u.length);A.set(u,F);for(let U=0;U<u.length;U++)F[U]=XG(u[U],U,E,A,C);if(Object.hasOwn(u,"index"))F.index=u.index;if(Object.hasOwn(u,"input"))F.input=u.input;return F}if(u instanceof Date)return new Date(u.getTime());if(u instanceof RegExp){let F=new RegExp(u.source,u.flags);return F.lastIndex=u.lastIndex,F}if(u instanceof Map){let F=new Map;A.set(u,F);for(let[U,z]of u)F.set(U,XG(z,U,E,A,C));return F}if(u instanceof Set){let F=new Set;A.set(u,F);for(let U of u)F.add(XG(U,void 0,E,A,C));return F}if(qG(u))return u.subarray();if(LG(u)){let F=new(Object.getPrototypeOf(u)).constructor(u.length);A.set(u,F);for(let U=0;U<u.length;U++)F[U]=XG(u[U],U,E,A,C);return F}if(u instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&u instanceof SharedArrayBuffer)return u.slice(0);if(u instanceof DataView){let F=new DataView(u.buffer.slice(0),u.byteOffset,u.byteLength);return A.set(u,F),dE(F,u,E,A,C),F}if(typeof File<"u"&&u instanceof File){let F=new File([u],u.name,{type:u.type});return A.set(u,F),dE(F,u,E,A,C),F}if(typeof Blob<"u"&&u instanceof Blob){let F=new Blob([u],{type:u.type});return A.set(u,F),dE(F,u,E,A,C),F}if(u instanceof Error){let F=structuredClone(u);return A.set(u,F),F.message=u.message,F.name=u.name,F.stack=u.stack,F.cause=u.cause,F.constructor=u.constructor,dE(F,u,E,A,C),F}if(u instanceof Boolean){let F=new Boolean(u.valueOf());return A.set(u,F),dE(F,u,E,A,C),F}if(u instanceof Number){let F=new Number(u.valueOf());return A.set(u,F),dE(F,u,E,A,C),F}if(u instanceof String){let F=new String(u.valueOf());return A.set(u,F),dE(F,u,E,A,C),F}if(typeof u==="object"&&DB4(u)){let F=Object.create(Object.getPrototypeOf(u));return A.set(u,F),dE(F,u,E,A,C),F}return u}function dE(u,B,E=u,A,C){let D=[...Object.keys(B),...Qi(B)];for(let F=0;F<D.length;F++){let U=D[F],z=Object.getOwnPropertyDescriptor(u,U);if(z==null||z.writable)u[U]=XG(B[U],U,E,A,C)}}function DB4(u){switch(Yz(u)){case HG:case Ei:case Ai:case Di:case GG:case eN:case Mi:case Zi:case fi:case li:case bi:case ui:case QG:case Ci:case oN:case Bi:case KG:case tN:case Fi:case Ui:case zi:case ki:return!0;default:return!1}}var tS0=g(()=>{ES();wi();q40();AS();Ji();Gi()});function eS0(u,B){return oS0(u,(E,A,C,D)=>{let F=B?.(E,A,C,D);if(F!==void 0)return F;if(typeof u!=="object")return;if(Yz(u)==="[object Object]"&&typeof u.constructor!=="function"){let U={};return D.set(u,U),dE(U,u,C,D),U}switch(Object.prototype.toString.call(u)){case QG:case KG:case GG:{let U=new u.constructor(u?.valueOf());return dE(U,u),U}case HG:{let U={};return dE(U,u),U.length=u.length,U[Symbol.iterator]=u[Symbol.iterator],U}default:return}})}var uW0=g(()=>{AS();Ji();tS0()});function x40(u){return eS0(u)}var BW0=g(()=>{uW0()});function CS(u){return u!==null&&typeof u==="object"&&Yz(u)==="[object Arguments]"}var v40=g(()=>{AS()});function DS(u){return typeof u==="object"&&u!==null}var S40=()=>{};function EW0(u){return Number.isSafeInteger(u)&&u>=0}var AW0=()=>{};function Li(u){return u!=null&&typeof u!=="function"&&EW0(u.length)}var W40=g(()=>{AW0()});function CW0(u){return DS(u)&&Li(u)}var DW0=g(()=>{W40();S40()});function FW0(u,...B){let E=B.slice(0,-1),A=B[B.length-1],C=u;for(let D=0;D<E.length;D++){let F=E[D];C=qi(C,F,A,new Map)}return C}function qi(u,B,E,A){if(_f(u))u=Object(u);if(B==null||typeof B!=="object")return u;if(A.has(B))return gS0(A.get(B));if(A.set(B,u),Array.isArray(B)){B=B.slice();for(let D=0;D<B.length;D++)if(!(D in B))B[D]=void 0}let C=[...Object.keys(B),...Qi(B)];for(let D=0;D<C.length;D++){let F=C[D];if(pS0(F))continue;let U=B[F],z=u[F];if(CS(U))U={...U};if(CS(z))z={...z};if(qG(U))U=x40(U);if(Array.isArray(U))if(Array.isArray(z)){let f=[],l=Reflect.ownKeys(z);for(let b=0;b<l.length;b++){let M=l[b];f[M]=z[M]}z=f}else if(CW0(z)){let f=[];for(let l=0;l<z.length;l++)f[l]=z[l];z=f}else z=[];let k=E(z,U,F,u,B,A);if(k!==void 0)u[F]=k;else if(Array.isArray(U))u[F]=qi(z,U,E,A);else if(DS(z)&&DS(U)&&(Hi(z)||Hi(U)||nf(z)||nf(U)))u[F]=qi(z,U,E,A);else if(z==null&&Hi(U))u[F]=qi({},U,E,A);else if(z==null&&nf(U))u[F]=x40(U);else if(z===void 0||U!==void 0)u[F]=U}return u}var UW0=g(()=>{ES();_S0();q40();Gi();dS0();sS0();BW0();v40();S40();DW0();Ki()});function Y40(u,...B){return FW0(u,...B,yS0)}var zW0=g(()=>{cS0();UW0()});function kW0(u){let B=u?.constructor;return u===(typeof B==="function"?B.prototype:Object.prototype)}var fW0=()=>{};function Xi(u){if(u==null)return!0;if(Li(u)){if(typeof u.splice!=="function"&&typeof u!=="string"&&!qG(u)&&!nf(u)&&!CS(u))return!1;return u.length===0}if(typeof u==="object"||typeof u==="function"){if(u instanceof Map||u instanceof Set)return u.size===0;let B=Object.keys(u);if(kW0(u))return B.filter((E)=>E!=="constructor").length===0;return B.length===0}return!0}var lW0=g(()=>{Gi();W40();v40();fW0();Ki()});var xi=g(()=>{hS0();$S0();zW0();lW0()});function Wi(u,B){if(!u)return B;let E=`curve${u.charAt(0).toUpperCase()+u.slice(1)}`;return FB4[E]??B}function KW0(u,B){let E=u.trim();if(!E)return;if(B.securityLevel!=="loose")return ZW0.sanitizeUrl(E);return E}function T40(u,B){if(!u||!B)return 0;return Math.sqrt(Math.pow(B.x-u.x,2)+Math.pow(B.y-u.y,2))}function QW0(u){let B,E=0;u.forEach((C)=>{E+=T40(C,B),B=C});let A=E/2;return O40(u,A)}function GW0(u){if(u.length===1)return u[0];return QW0(u)}function HW0(u,B,E){let A=structuredClone(E);if(z0.info("our points",A),B!=="start_left"&&B!=="start_right")A.reverse();let C=25+u,D=O40(A,C),F=10+u*0.5,U=Math.atan2(A[0].y-D.y,A[0].x-D.x),z={x:0,y:0};if(B==="start_left")z.x=Math.sin(U+Math.PI)*F+(A[0].x+D.x)/2,z.y=-Math.cos(U+Math.PI)*F+(A[0].y+D.y)/2;else if(B==="end_right")z.x=Math.sin(U-Math.PI)*F+(A[0].x+D.x)/2-5,z.y=-Math.cos(U-Math.PI)*F+(A[0].y+D.y)/2-5;else if(B==="end_left")z.x=Math.sin(U)*F+(A[0].x+D.x)/2-5,z.y=-Math.cos(U)*F+(A[0].y+D.y)/2-5;else z.x=Math.sin(U)*F+(A[0].x+D.x)/2,z.y=-Math.cos(U)*F+(A[0].y+D.y)/2;return z}function Yi(u){let B="",E="";for(let A of u)if(A!==void 0)if(A.startsWith("color:")||A.startsWith("text-align:"))E=E+A+";";else B=B+A+";";return{style:B,labelStyle:E}}function LW0(u){let B="",E="0123456789abcdef",A=E.length;for(let C=0;C<u;C++)B+=E.charAt(Math.floor(Math.random()*A));return B}function FS(u,B){return US(u,B).height}function t5(u,B){return US(u,B).width}function Ri(u){return"str"in u}function B1(u,B){return Y40({},u,B)}function L2(u){return u??null}function XW0(u,B){let E=Math.round(u.x),A=Math.round(u.y),C=B.replace(/(\d+\.\d+)/g,(D)=>Math.round(parseFloat(D)).toString());return C.includes(E.toString())||C.includes(A.toString())}var ZW0,R40="",FB4,UB4,zB4,JW0,wW0,kB4,fB4,bW0,O40,lB4,MW0=0,I40,P40,bB4,MB4,yZ,ZB4,US,JB4,Si,wB4,KB4,A8,R4,qW0,AE,QF;var t3=g(()=>{s4();o4();Y4();i3();xi();ZW0=Eu(wG(),1),FB4={curveBasis:KC,curveBasisClosed:ON,curveBasisOpen:IN,curveBumpX:Vv,curveBumpY:hv,curveBundle:hu0,curveCardinalClosed:mu0,curveCardinalOpen:$u0,curveCardinal:$v,curveCatmullRomClosed:cu0,curveCatmullRomOpen:gu0,curveCatmullRom:gv,curveLinear:wF,curveLinearClosed:aN,curveMonotoneX:_v,curveMonotoneY:nv,curveNatural:fG,curveStep:lG,curveStepAfter:dv,curveStepBefore:pv},UB4=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,zB4=X(function(u,B){let E=JW0(u,/(?:init\b)|(?:initialize\b)/),A={};if(Array.isArray(E)){let F=E.map((U)=>U.args);ex(F),A=E9(A,[...F])}else A=E.args;if(!A)return;let C=Ev(u,B),D="config";if(A[D]!==void 0){if(C==="flowchart-v2")C="flowchart";A[C]=A[D],delete A[D]}return A},"detectInit"),JW0=X(function(u,B=null){try{let E=new RegExp(`[%]{2}(?![{]${UB4.source})(?=[}][%]{2}).*
`,"ig");u=u.trim().replace(E,"").replace(/'/gm,'"'),z0.debug(`Detecting diagram directive${B!==null?" type:"+B:""} based on the text:${u}`);let A,C=[];while((A=aQ.exec(u))!==null){if(A.index===aQ.lastIndex)aQ.lastIndex++;if(A&&!B||B&&A[1]?.match(B)||B&&A[2]?.match(B)){let D=A[1]?A[1]:A[2],F=A[3]?A[3].trim():A[4]?JSON.parse(A[4].trim()):null;C.push({type:D,args:F})}}if(C.length===0)return{type:u,args:null};return C.length===1?C[0]:C}catch(E){return z0.error(`ERROR: ${E.message} - Unable to parse directive type: '${B}' based on the text: '${u}'`),{type:void 0,args:null}}},"detectDirective"),wW0=X(function(u){return u.replace(aQ,"")},"removeDirectives"),kB4=X(function(u,B){for(let[E,A]of B.entries())if(A.match(u))return E;return-1},"isSubstringInArray");X(Wi,"interpolateToCurve");X(KW0,"formatUrl");fB4=X((u,...B)=>{let E=u.split("."),A=E.length-1,C=E[A],D=window;for(let F=0;F<A;F++)if(D=D[E[F]],!D){z0.error(`Function name: ${u} not found in window`);return}D[C](...B)},"runFunc");X(T40,"distance");X(QW0,"traverseEdge");X(GW0,"calcLabelPosition");bW0=X((u,B=2)=>{let E=Math.pow(10,B);return Math.round(u*E)/E},"roundNumber"),O40=X((u,B)=>{let E=void 0,A=B;for(let C of u){if(E){let D=T40(C,E);if(D===0)return E;if(D<A)A-=D;else{let F=A/D;if(F<=0)return E;if(F>=1)return{x:C.x,y:C.y};if(F>0&&F<1)return{x:bW0((1-F)*E.x+F*C.x,5),y:bW0((1-F)*E.y+F*C.y,5)}}}E=C}throw Error("Could not find a suitable point for the given distance")},"calculatePoint"),lB4=X((u,B,E)=>{if(z0.info(`our points ${JSON.stringify(B)}`),B[0]!==E)B=B.reverse();let C=O40(B,25),D=u?10:5,F=Math.atan2(B[0].y-C.y,B[0].x-C.x),U={x:0,y:0};return U.x=Math.sin(F)*D+(B[0].x+C.x)/2,U.y=-Math.cos(F)*D+(B[0].y+C.y)/2,U},"calcCardinalityPosition");X(HW0,"calcTerminalLabelPosition");X(Yi,"getStylesFromArray");I40=X(()=>{return MW0++,"id-"+Math.random().toString(36).substr(2,12)+"-"+MW0},"generateId");X(LW0,"makeRandomHex");P40=X((u)=>{return LW0(u.length)},"random"),bB4=X(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"),MB4=X(function(u,B){let E=B.text.replace(yu.lineBreakRegex," "),[,A]=A8(B.fontSize),C=u.append("text");if(C.attr("x",B.x),C.attr("y",B.y),C.style("text-anchor",B.anchor),C.style("font-family",B.fontFamily),C.style("font-size",A),C.style("font-weight",B.fontWeight),C.attr("fill",B.fill),B.class!==void 0)C.attr("class",B.class);let D=C.append("tspan");return D.attr("x",B.x+B.textMargin*2),D.attr("fill",B.fill),D.text(E),C},"drawSimpleText"),yZ=$Z((u,B,E)=>{if(!u)return u;if(E=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},E),yu.lineBreakRegex.test(u))return u;let A=u.split(" ").filter(Boolean),C=[],D="";return A.forEach((F,U)=>{let z=t5(`${F} `,E),k=t5(D,E);if(z>B){let{hyphenatedStrings:b,remainingWord:M}=ZB4(F,B,"-",E);C.push(D,...b),D=M}else if(k+z>=B)C.push(D),D=F;else D=[D,F].filter(Boolean).join(" ");if(U+1===A.length)C.push(D)}),C.filter((F)=>F!=="").join(E.joinWith)},(u,B,E)=>`${u}${B}${E.fontSize}${E.fontWeight}${E.fontFamily}${E.joinWith}`),ZB4=$Z((u,B,E="-",A)=>{A=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},A);let C=[...u],D=[],F="";return C.forEach((U,z)=>{let k=`${F}${U}`;if(t5(k,A)>=B){let l=z+1,b=C.length===l,M=`${k}${E}`;D.push(b?k:M),F=""}else F=k}),{hyphenatedStrings:D,remainingWord:F}},(u,B,E="-",A)=>`${u}${B}${E}${A.fontSize}${A.fontWeight}${A.fontFamily}`);X(FS,"calculateTextHeight");X(t5,"calculateTextWidth");US=$Z((u,B)=>{let{fontSize:E=12,fontFamily:A="Arial",fontWeight:C=400}=B;if(!u)return{width:0,height:0};let[,D]=A8(E),F=["sans-serif",A],U=u.split(yu.lineBreakRegex),z=[],k=Ku("body");if(!k.remove)return{width:0,height:0,lineHeight:0};let f=k.append("svg");for(let b of F){let M=0,Z={width:0,height:0,lineHeight:0};for(let J of U){let w=bB4();w.text=J||R40;let K=MB4(f,w).style("font-size",D).style("font-weight",C).style("font-family",b),Q=(K._groups||K)[0][0].getBBox();if(Q.width===0&&Q.height===0)throw Error("svg element not in render tree");Z.width=Math.round(Math.max(Z.width,Q.width)),M=Math.round(Q.height),Z.height+=M,Z.lineHeight=Math.round(Math.max(Z.lineHeight,M))}z.push(Z)}f.remove();let l=isNaN(z[1].height)||isNaN(z[1].width)||isNaN(z[1].lineHeight)||z[0].height>z[1].height&&z[0].width>z[1].width&&z[0].lineHeight>z[1].lineHeight?0:1;return z[l]},(u,B)=>`${u}${B.fontSize}${B.fontWeight}${B.fontFamily}`),JB4=class{constructor(u=!1,B){this.count=0,this.count=B?B.length:0,this.next=u?()=>this.count++:()=>Date.now()}static{X(this,"InitIDGenerator")}},wB4=X(function(u){return Si=Si||document.createElement("div"),u=escape(u).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),Si.innerHTML=u,unescape(Si.textContent)},"entityDecode");X(Ri,"isDetailedError");KB4=X((u,B,E,A)=>{if(!A)return;let C=u.node()?.getBBox();if(!C)return;u.append("text").text(A).attr("text-anchor","middle").attr("x",C.x+C.width/2).attr("y",-E).attr("class",B)},"insertTitle"),A8=X((u)=>{if(typeof u==="number")return[u,u+"px"];let B=parseInt(u??"",10);if(Number.isNaN(B))return[void 0,void 0];else if(u===String(B))return[B,u+"px"];else return[B,u]},"parseFontSize");X(B1,"cleanAndMerge");R4={assignWithDepth:E9,wrapLabel:yZ,calculateTextHeight:FS,calculateTextWidth:t5,calculateTextDimensions:US,cleanAndMerge:B1,detectInit:zB4,detectDirective:JW0,isSubstringInArray:kB4,interpolateToCurve:Wi,calcLabelPosition:GW0,calcCardinalityPosition:lB4,calcTerminalLabelPosition:HW0,formatUrl:KW0,getStylesFromArray:Yi,generateId:I40,random:P40,runFunc:fB4,entityDecode:wB4,insertTitle:KB4,isLabelCoordinateInPath:XW0,parseFontSize:A8,InitIDGenerator:JB4},qW0=X(function(u){let B=u;return B=B.replace(/style.*:\S*#.*;/g,function(E){return E.substring(0,E.length-1)}),B=B.replace(/classDef.*:\S*#.*;/g,function(E){return E.substring(0,E.length-1)}),B=B.replace(/#\w+;/g,function(E){let A=E.substring(1,E.length-1);if(/^\+?\d+$/.test(A))return"fl°°"+A+"¶ß";else return"fl°"+A+"¶ß"}),B},"encodeEntities"),AE=X(function(u){return u.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),QF=X((u,B,{counter:E=0,prefix:A,suffix:C},D)=>{if(D)return D;return`${A?`${A}_`:""}${u}_${B}_${E}${C?`_${C}`:""}`},"getEdgeId");X(L2,"handleUndefinedAttr");X(XW0,"isLabelCoordinateInPath")});async function zS(u,B){let E=u.getElementsByTagName("img");if(!E||E.length===0)return;let A=B.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...E].map((C)=>new Promise((D)=>{function F(){if(C.style.display="flex",C.style.flexDirection="column",A){let U=$0().fontSize?$0().fontSize:window.getComputedStyle(document.body).fontSize,z=5,[k=t4.fontSize]=A8(U),f=k*5+"px";C.style.minWidth=f,C.style.maxWidth=f}else C.style.width="100%";D(C)}X(F,"setupImage"),setTimeout(()=>{if(C.complete)F()}),C.addEventListener("error",F),C.addEventListener("load",F)})))}var GC;var e5=g(()=>{t3();s4();Y4();GC=X(({flowchart:u})=>{let B=u?.subGraphTitleMargin?.top??0,E=u?.subGraphTitleMargin?.bottom??0,A=B+E;return{subGraphTitleTopMargin:B,subGraphTitleBottomMargin:E,subGraphTitleTotalMargin:A}},"getSubGraphTitleMargins");X(zS,"configureLabelImages")});var j40=(u,B,E,A="")=>{let C=u.split(":");if(u.slice(0,1)==="@"){if(C.length<2||C.length>3)return null;A=C.shift().slice(1)}if(C.length>3||!C.length)return null;if(C.length>1){let U=C.pop(),z=C.pop(),k={provider:C.length>0?C[0]:A,prefix:z,name:U};return B&&!Ti(k)?null:k}let D=C[0],F=D.split("-");if(F.length>1){let U={provider:A,prefix:F.shift(),name:F.join("-")};return B&&!Ti(U)?null:U}if(E&&A===""){let U={provider:A,prefix:"",name:D};return B&&!Ti(U,E)?null:U}return null},Ti=(u,B)=>{if(!u)return!1;return!!((B&&u.prefix===""||!!u.prefix)&&!!u.name)};var xW0=()=>{};var QB4,xG,N40,vW0;var Oi=g(()=>{QB4=Object.freeze({left:0,top:0,width:16,height:16}),xG=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),N40=Object.freeze({...QB4,...xG}),vW0=Object.freeze({...N40,body:"",hidden:!1})});function SW0(u,B){let E={};if(!u.hFlip!==!B.hFlip)E.hFlip=!0;if(!u.vFlip!==!B.vFlip)E.vFlip=!0;let A=((u.rotate||0)+(B.rotate||0))%4;if(A)E.rotate=A;return E}var WW0=()=>{};function i40(u,B){let E=SW0(u,B);for(let A in vW0)if(A in xG){if(A in u&&!(A in E))E[A]=xG[A]}else if(A in B)E[A]=B[A];else if(A in u)E[A]=u[A];return E}var YW0=g(()=>{Oi();WW0()});function RW0(u,B){let E=u.icons,A=u.aliases||Object.create(null),C=Object.create(null);function D(F){if(E[F])return C[F]=[];if(!(F in C)){C[F]=null;let U=A[F]&&A[F].parent,z=U&&D(U);if(z)C[F]=[U].concat(z)}return C[F]}return(B||Object.keys(E).concat(Object.keys(A))).forEach(D),C}var TW0=()=>{};function OW0(u,B,E){let A=u.icons,C=u.aliases||Object.create(null),D={};function F(U){D=i40(A[U]||C[U],D)}return F(B),E.forEach(F),i40(u,D)}function a40(u,B){if(u.icons[B])return OW0(u,B,[]);let E=RW0(u,[B])[B];return E?OW0(u,B,E):null}var IW0=g(()=>{YW0();TW0()});var GB4,PW0;var jW0=g(()=>{Oi();GB4=Object.freeze({width:null,height:null}),PW0=Object.freeze({...GB4,...xG})});function V40(u,B,E){if(B===1)return u;if(E=E||100,typeof u==="number")return Math.ceil(u*B*E)/E;if(typeof u!=="string")return u;let A=u.split(HB4);if(A===null||!A.length)return u;let C=[],D=A.shift(),F=LB4.test(D);while(!0){if(F){let U=parseFloat(D);if(isNaN(U))C.push(D);else C.push(Math.ceil(U*B*E)/E)}else C.push(D);if(D=A.shift(),D===void 0)return C.join("");F=!F}}var HB4,LB4;var NW0=g(()=>{HB4=/(-?[0-9.]*[0-9]+[0-9.]*)/g,LB4=/^-?[0-9.]*[0-9]+[0-9.]*$/g});function qB4(u,B="defs"){let E="",A=u.indexOf("<"+B);while(A>=0){let C=u.indexOf(">",A),D=u.indexOf("</"+B);if(C===-1||D===-1)break;let F=u.indexOf(">",D);if(F===-1)break;E+=u.slice(C+1,D).trim(),u=u.slice(0,A).trim()+u.slice(F+1)}return{defs:E,content:u}}function XB4(u,B){return u?"<defs>"+u+"</defs>"+B:B}function iW0(u,B,E){let A=qB4(u);return XB4(A.defs,B+A.content+E)}var aW0=()=>{};function h40(u,B){let E={...N40,...u},A={...PW0,...B},C={left:E.left,top:E.top,width:E.width,height:E.height},D=E.body;[E,A].forEach((J)=>{let w=[],K=J.hFlip,Q=J.vFlip,G=J.rotate;if(K)if(Q)G+=2;else w.push("translate("+(C.width+C.left).toString()+" "+(0-C.top).toString()+")"),w.push("scale(-1 1)"),C.top=C.left=0;else if(Q)w.push("translate("+(0-C.left).toString()+" "+(C.height+C.top).toString()+")"),w.push("scale(1 -1)"),C.top=C.left=0;let L;if(G<0)G-=Math.floor(G/4)*4;switch(G=G%4,G){case 1:L=C.height/2+C.top,w.unshift("rotate(90 "+L.toString()+" "+L.toString()+")");break;case 2:w.unshift("rotate(180 "+(C.width/2+C.left).toString()+" "+(C.height/2+C.top).toString()+")");break;case 3:L=C.width/2+C.left,w.unshift("rotate(-90 "+L.toString()+" "+L.toString()+")");break}if(G%2===1){if(C.left!==C.top)L=C.left,C.left=C.top,C.top=L;if(C.width!==C.height)L=C.width,C.width=C.height,C.height=L}if(w.length)D=iW0(D,'<g transform="'+w.join(" ")+'">',"</g>")});let{width:F,height:U}=A,z=C.width,k=C.height,f,l;if(F===null)l=U===null?"1em":U==="auto"?k:U,f=V40(l,z/k);else f=F==="auto"?z:F,l=U===null?V40(f,k/z):U==="auto"?k:U;let b={},M=(J,w)=>{if(!xB4(w))b[J]=w.toString()};M("width",f),M("height",l);let Z=[C.left,C.top,z,k];return b.viewBox=Z.join(" "),{attributes:b,viewBox:Z,body:D}}var xB4=(u)=>u==="unset"||u==="undefined"||u==="none";var VW0=g(()=>{Oi();jW0();NW0();aW0()});function SB4(u){u=u.replace(/[0-9]+$/,"")||"a";let B=hW0.get(u)||0;return hW0.set(u,B+1),B?`${u}${B}`:u}function m40(u){let B=[],E;while(E=vB4.exec(u))B.push(E[1]);if(!B.length)return u;let A="suffix"+(Math.random()*16777216|Date.now()).toString(16);return B.forEach((C)=>{let D=SB4(C),F=C.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");u=u.replace(new RegExp('([#;"])('+F+')([")]|\\.[a-z])',"g"),"$1"+D+A+"$3")}),u=u.replace(new RegExp(A,"g"),""),u}var vB4,hW0;var mW0=g(()=>{vB4=/\sid="(\S+)"/g,hW0=new Map});function r40(u,B){let E=u.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let A in B)E+=" "+A+'="'+B[A]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+E+">"+u+"</svg>"}var rW0=()=>{};var $W0=g(()=>{xW0();IW0();VW0();mW0();rW0()});var y40,$40,yW0,vG,cW0,gW0,CE;var q2=g(()=>{s4();o4();Y4();$W0();y40={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},$40=new Map,yW0=new Map,vG=X((u)=>{for(let B of u){if(!B.name)throw Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(z0.debug("Registering icon pack:",B.name),"loader"in B)yW0.set(B.name,B.loader);else if("icons"in B)$40.set(B.name,B.icons);else throw z0.error("Invalid icon loader:",B),Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),cW0=X(async(u,B)=>{let E=j40(u,!0,B!==void 0);if(!E)throw Error(`Invalid icon name: ${u}`);let A=E.prefix||B;if(!A)throw Error(`Icon name must contain a prefix: ${u}`);let C=$40.get(A);if(!C){let F=yW0.get(A);if(!F)throw Error(`Icon set not found: ${E.prefix}`);try{C={...await F(),prefix:A},$40.set(A,C)}catch(U){throw z0.error(U),Error(`Failed to load icon set: ${E.prefix}`)}}let D=a40(C,E.name);if(!D)throw Error(`Icon not found: ${u}`);return D},"getRegisteredIconData"),gW0=X(async(u)=>{try{return await cW0(u),!0}catch{return!1}},"isIconAvailable"),CE=X(async(u,B,E)=>{let A;try{A=await cW0(u,B?.fallbackPrefix)}catch(F){z0.error(F),A=y40}let C=h40(A,B),D=r40(m40(C.body),{...C.attributes,...E});return C3(D,F4())},"getIconSVG")});function g40(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function tW0(u){gZ=u}function i1(u,B=""){let E=typeof u=="string"?u:u.source,A={replace:(C,D)=>{let F=typeof D=="string"?D:D.source;return F=F.replace(lB.caret,"$1"),E=E.replace(C,F),A},getRegex:()=>new RegExp(E,B)};return A}function GF(u,B){if(B){if(lB.escapeTest.test(u))return u.replace(lB.escapeReplace,pW0)}else if(lB.escapeTestNoEncode.test(u))return u.replace(lB.escapeReplaceNoEncode,pW0);return u}function dW0(u){try{u=encodeURI(u).replace(lB.percentDecode,"%")}catch{return null}return u}function sW0(u,B){let E=u.replace(lB.findPipe,(D,F,U)=>{let z=!1,k=F;for(;--k>=0&&U[k]==="\\";)z=!z;return z?"|":" |"}),A=E.split(lB.splitPipe),C=0;if(A[0].trim()||A.shift(),A.length>0&&!A.at(-1)?.trim()&&A.pop(),B)if(A.length>B)A.splice(B);else for(;A.length<B;)A.push("");for(;C<A.length;C++)A[C]=A[C].trim().replace(lB.slashPipe,"|");return A}function fS(u,B,E){let A=u.length;if(A===0)return"";let C=0;for(;C<A;){let D=u.charAt(A-C-1);if(D===B&&!E)C++;else if(D!==B&&E)C++;else break}return u.slice(0,A-C)}function U84(u,B){if(u.indexOf(B[1])===-1)return-1;let E=0;for(let A=0;A<u.length;A++)if(u[A]==="\\")A++;else if(u[A]===B[0])E++;else if(u[A]===B[1]&&(E--,E<0))return A;return E>0?-2:-1}function oW0(u,B,E,A,C){let D=B.href,F=B.title||null,U=u[1].replace(C.other.outputLinkReplace,"$1");A.state.inLink=!0;let z={type:u[0].charAt(0)==="!"?"image":"link",raw:E,href:D,title:F,text:U,tokens:A.inlineTokens(U)};return A.state.inLink=!1,z}function z84(u,B,E){let A=u.match(E.other.indentCodeCompensation);if(A===null)return B;let C=A[1];return B.split(`
`).map((D)=>{let F=D.match(E.other.beginningSpace);if(F===null)return D;let[U]=F;return U.length>=C.length?D.slice(C.length):D}).join(`
`)}function d1(u,B){return cZ.parse(u,B)}var gZ,bS,WB4,lB,YB4,RB4,TB4,MS,OB4,_40,eW0,uY0,IB4,n40,PB4,p40,jB4,NB4,ii="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",d40,iB4,BY0,aB4,s40,_W0,VB4,hB4,mB4,rB4,EY0,$B4,ai,o40,AY0,yB4,CY0,cB4,gB4,_B4,DY0,nB4,pB4,FY0="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",dB4,sB4,oB4,tB4,eB4,u84,B84,Pi,E84,UY0,zY0,A84,nW0,t40,C84,c40,D84,Ii,kS,F84,pW0=(u)=>F84[u],ji=class{options;rules;lexer;constructor(u){this.options=u||gZ}space(u){let B=this.rules.block.newline.exec(u);if(B&&B[0].length>0)return{type:"space",raw:B[0]}}code(u){let B=this.rules.block.code.exec(u);if(B){let E=B[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:B[0],codeBlockStyle:"indented",text:this.options.pedantic?E:fS(E,`
`)}}}fences(u){let B=this.rules.block.fences.exec(u);if(B){let E=B[0],A=z84(E,B[3]||"",this.rules);return{type:"code",raw:E,lang:B[2]?B[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):B[2],text:A}}}heading(u){let B=this.rules.block.heading.exec(u);if(B){let E=B[2].trim();if(this.rules.other.endingHash.test(E)){let A=fS(E,"#");(this.options.pedantic||!A||this.rules.other.endingSpaceChar.test(A))&&(E=A.trim())}return{type:"heading",raw:B[0],depth:B[1].length,text:E,tokens:this.lexer.inline(E)}}}hr(u){let B=this.rules.block.hr.exec(u);if(B)return{type:"hr",raw:fS(B[0],`
`)}}blockquote(u){let B=this.rules.block.blockquote.exec(u);if(B){let E=fS(B[0],`
`).split(`
`),A="",C="",D=[];for(;E.length>0;){let F=!1,U=[],z;for(z=0;z<E.length;z++)if(this.rules.other.blockquoteStart.test(E[z]))U.push(E[z]),F=!0;else if(!F)U.push(E[z]);else break;E=E.slice(z);let k=U.join(`
`),f=k.replace(this.rules.other.blockquoteSetextReplace,`
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");A=A?`${A}
${k}`:k,C=C?`${C}
${f}`:f;let l=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(f,D,!0),this.lexer.state.top=l,E.length===0)break;let b=D.at(-1);if(b?.type==="code")break;if(b?.type==="blockquote"){let M=b,Z=M.raw+`
`+E.join(`
`),J=this.blockquote(Z);D[D.length-1]=J,A=A.substring(0,A.length-M.raw.length)+J.raw,C=C.substring(0,C.length-M.text.length)+J.text;break}else if(b?.type==="list"){let M=b,Z=M.raw+`
`+E.join(`
`),J=this.list(Z);D[D.length-1]=J,A=A.substring(0,A.length-b.raw.length)+J.raw,C=C.substring(0,C.length-M.raw.length)+J.raw,E=Z.substring(D.at(-1).raw.length).split(`
`);continue}}return{type:"blockquote",raw:A,tokens:D,text:C}}}list(u){let B=this.rules.block.list.exec(u);if(B){let E=B[1].trim(),A=E.length>1,C={type:"list",raw:"",ordered:A,start:A?+E.slice(0,-1):"",loose:!1,items:[]};E=A?`\\d{1,9}\\${E.slice(-1)}`:`\\${E}`,this.options.pedantic&&(E=A?E:"[*+-]");let D=this.rules.other.listItemRegex(E),F=!1;for(;u;){let z=!1,k="",f="";if(!(B=D.exec(u))||this.rules.block.hr.test(u))break;k=B[0],u=u.substring(k.length);let l=B[2].split(`
`,1)[0].replace(this.rules.other.listReplaceTabs,(K)=>" ".repeat(3*K.length)),b=u.split(`
`,1)[0],M=!l.trim(),Z=0;if(this.options.pedantic?(Z=2,f=l.trimStart()):M?Z=B[1].length+1:(Z=B[2].search(this.rules.other.nonSpaceChar),Z=Z>4?1:Z,f=l.slice(Z),Z+=B[1].length),M&&this.rules.other.blankLine.test(b)&&(k+=b+`
`,u=u.substring(b.length+1),z=!0),!z){let K=this.rules.other.nextBulletRegex(Z),Q=this.rules.other.hrRegex(Z),G=this.rules.other.fencesBeginRegex(Z),L=this.rules.other.headingBeginRegex(Z),H=this.rules.other.htmlBeginRegex(Z);for(;u;){let q=u.split(`
`,1)[0],x;if(b=q,this.options.pedantic?(b=b.replace(this.rules.other.listReplaceNesting," "),x=b):x=b.replace(this.rules.other.tabCharGlobal," "),G.test(b)||L.test(b)||H.test(b)||K.test(b)||Q.test(b))break;if(x.search(this.rules.other.nonSpaceChar)>=Z||!b.trim())f+=`
`+x.slice(Z);else{if(M||l.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||G.test(l)||L.test(l)||Q.test(l))break;f+=`
`+b}!M&&!b.trim()&&(M=!0),k+=q+`
`,u=u.substring(q.length+1),l=x.slice(Z)}}C.loose||(F?C.loose=!0:this.rules.other.doubleBlankLine.test(k)&&(F=!0));let J=null,w;this.options.gfm&&(J=this.rules.other.listIsTask.exec(f),J&&(w=J[0]!=="[ ] ",f=f.replace(this.rules.other.listReplaceTask,""))),C.items.push({type:"list_item",raw:k,task:!!J,checked:w,loose:!1,text:f,tokens:[]}),C.raw+=k}let U=C.items.at(-1);if(U)U.raw=U.raw.trimEnd(),U.text=U.text.trimEnd();else return;C.raw=C.raw.trimEnd();for(let z=0;z<C.items.length;z++)if(this.lexer.state.top=!1,C.items[z].tokens=this.lexer.blockTokens(C.items[z].text,[]),!C.loose){let k=C.items[z].tokens.filter((l)=>l.type==="space"),f=k.length>0&&k.some((l)=>this.rules.other.anyLine.test(l.raw));C.loose=f}if(C.loose)for(let z=0;z<C.items.length;z++)C.items[z].loose=!0;return C}}html(u){let B=this.rules.block.html.exec(u);if(B)return{type:"html",block:!0,raw:B[0],pre:B[1]==="pre"||B[1]==="script"||B[1]==="style",text:B[0]}}def(u){let B=this.rules.block.def.exec(u);if(B){let E=B[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),A=B[2]?B[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",C=B[3]?B[3].substring(1,B[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):B[3];return{type:"def",tag:E,raw:B[0],href:A,title:C}}}table(u){let B=this.rules.block.table.exec(u);if(!B||!this.rules.other.tableDelimiter.test(B[2]))return;let E=sW0(B[1]),A=B[2].replace(this.rules.other.tableAlignChars,"").split("|"),C=B[3]?.trim()?B[3].replace(this.rules.other.tableRowBlankLine,"").split(`
`):[],D={type:"table",raw:B[0],header:[],align:[],rows:[]};if(E.length===A.length){for(let F of A)this.rules.other.tableAlignRight.test(F)?D.align.push("right"):this.rules.other.tableAlignCenter.test(F)?D.align.push("center"):this.rules.other.tableAlignLeft.test(F)?D.align.push("left"):D.align.push(null);for(let F=0;F<E.length;F++)D.header.push({text:E[F],tokens:this.lexer.inline(E[F]),header:!0,align:D.align[F]});for(let F of C)D.rows.push(sW0(F,D.header.length).map((U,z)=>({text:U,tokens:this.lexer.inline(U),header:!1,align:D.align[z]})));return D}}lheading(u){let B=this.rules.block.lheading.exec(u);if(B)return{type:"heading",raw:B[0],depth:B[2].charAt(0)==="="?1:2,text:B[1],tokens:this.lexer.inline(B[1])}}paragraph(u){let B=this.rules.block.paragraph.exec(u);if(B){let E=B[1].charAt(B[1].length-1)===`
`?B[1].slice(0,-1):B[1];return{type:"paragraph",raw:B[0],text:E,tokens:this.lexer.inline(E)}}}text(u){let B=this.rules.block.text.exec(u);if(B)return{type:"text",raw:B[0],text:B[0],tokens:this.lexer.inline(B[0])}}escape(u){let B=this.rules.inline.escape.exec(u);if(B)return{type:"escape",raw:B[0],text:B[1]}}tag(u){let B=this.rules.inline.tag.exec(u);if(B)return!this.lexer.state.inLink&&this.rules.other.startATag.test(B[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(B[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(B[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(B[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:B[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:B[0]}}link(u){let B=this.rules.inline.link.exec(u);if(B){let E=B[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(E)){if(!this.rules.other.endAngleBracket.test(E))return;let D=fS(E.slice(0,-1),"\\");if((E.length-D.length)%2===0)return}else{let D=U84(B[2],"()");if(D===-2)return;if(D>-1){let F=(B[0].indexOf("!")===0?5:4)+B[1].length+D;B[2]=B[2].substring(0,D),B[0]=B[0].substring(0,F).trim(),B[3]=""}}let A=B[2],C="";if(this.options.pedantic){let D=this.rules.other.pedanticHrefTitle.exec(A);D&&(A=D[1],C=D[3])}else C=B[3]?B[3].slice(1,-1):"";return A=A.trim(),this.rules.other.startAngleBracket.test(A)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(E)?A=A.slice(1):A=A.slice(1,-1)),oW0(B,{href:A&&A.replace(this.rules.inline.anyPunctuation,"$1"),title:C&&C.replace(this.rules.inline.anyPunctuation,"$1")},B[0],this.lexer,this.rules)}}reflink(u,B){let E;if((E=this.rules.inline.reflink.exec(u))||(E=this.rules.inline.nolink.exec(u))){let A=(E[2]||E[1]).replace(this.rules.other.multipleSpaceGlobal," "),C=B[A.toLowerCase()];if(!C){let D=E[0].charAt(0);return{type:"text",raw:D,text:D}}return oW0(E,C,E[0],this.lexer,this.rules)}}emStrong(u,B,E=""){let A=this.rules.inline.emStrongLDelim.exec(u);if(!A||A[3]&&E.match(this.rules.other.unicodeAlphaNumeric))return;if(!(A[1]||A[2])||!E||this.rules.inline.punctuation.exec(E)){let C=[...A[0]].length-1,D,F,U=C,z=0,k=A[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(k.lastIndex=0,B=B.slice(-1*u.length+C);(A=k.exec(B))!=null;){if(D=A[1]||A[2]||A[3]||A[4]||A[5]||A[6],!D)continue;if(F=[...D].length,A[3]||A[4]){U+=F;continue}else if((A[5]||A[6])&&C%3&&!((C+F)%3)){z+=F;continue}if(U-=F,U>0)continue;F=Math.min(F,F+U+z);let f=[...A[0]][0].length,l=u.slice(0,C+A.index+f+F);if(Math.min(C,F)%2){let M=l.slice(1,-1);return{type:"em",raw:l,text:M,tokens:this.lexer.inlineTokens(M)}}let b=l.slice(2,-2);return{type:"strong",raw:l,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(u){let B=this.rules.inline.code.exec(u);if(B){let E=B[2].replace(this.rules.other.newLineCharGlobal," "),A=this.rules.other.nonSpaceChar.test(E),C=this.rules.other.startingSpaceChar.test(E)&&this.rules.other.endingSpaceChar.test(E);return A&&C&&(E=E.substring(1,E.length-1)),{type:"codespan",raw:B[0],text:E}}}br(u){let B=this.rules.inline.br.exec(u);if(B)return{type:"br",raw:B[0]}}del(u){let B=this.rules.inline.del.exec(u);if(B)return{type:"del",raw:B[0],text:B[2],tokens:this.lexer.inlineTokens(B[2])}}autolink(u){let B=this.rules.inline.autolink.exec(u);if(B){let E,A;return B[2]==="@"?(E=B[1],A="mailto:"+E):(E=B[1],A=E),{type:"link",raw:B[0],text:E,href:A,tokens:[{type:"text",raw:E,text:E}]}}}url(u){let B;if(B=this.rules.inline.url.exec(u)){let E,A;if(B[2]==="@")E=B[0],A="mailto:"+E;else{let C;do C=B[0],B[0]=this.rules.inline._backpedal.exec(B[0])?.[0]??"";while(C!==B[0]);E=B[0],B[1]==="www."?A="http://"+B[0]:A=B[0]}return{type:"link",raw:B[0],text:E,href:A,tokens:[{type:"text",raw:E,text:E}]}}}inlineText(u){let B=this.rules.inline.text.exec(u);if(B){let E=this.lexer.state.inRawBlock;return{type:"text",raw:B[0],text:B[0],escaped:E}}}},HC=class u{tokens;options;state;tokenizer;inlineQueue;constructor(B){this.tokens=[],this.tokens.links=Object.create(null),this.options=B||gZ,this.options.tokenizer=this.options.tokenizer||new ji,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 E={other:lB,block:Ii.normal,inline:kS.normal};this.options.pedantic?(E.block=Ii.pedantic,E.inline=kS.pedantic):this.options.gfm&&(E.block=Ii.gfm,this.options.breaks?E.inline=kS.breaks:E.inline=kS.gfm),this.tokenizer.rules=E}static get rules(){return{block:Ii,inline:kS}}static lex(B,E){return new u(E).lex(B)}static lexInline(B,E){return new u(E).inlineTokens(B)}lex(B){B=B.replace(lB.carriageReturn,`
`),this.blockTokens(B,this.tokens);for(let E=0;E<this.inlineQueue.length;E++){let A=this.inlineQueue[E];this.inlineTokens(A.src,A.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(B,E=[],A=!1){for(this.options.pedantic&&(B=B.replace(lB.tabCharGlobal," ").replace(lB.spaceLine,""));B;){let C;if(this.options.extensions?.block?.some((F)=>(C=F.call({lexer:this},B,E))?(B=B.substring(C.raw.length),E.push(C),!0):!1))continue;if(C=this.tokenizer.space(B)){B=B.substring(C.raw.length);let F=E.at(-1);C.raw.length===1&&F!==void 0?F.raw+=`
`:E.push(C);continue}if(C=this.tokenizer.code(B)){B=B.substring(C.raw.length);let F=E.at(-1);F?.type==="paragraph"||F?.type==="text"?(F.raw+=(F.raw.endsWith(`
`)?"":`
`)+C.raw,F.text+=`
`+C.text,this.inlineQueue.at(-1).src=F.text):E.push(C);continue}if(C=this.tokenizer.fences(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.heading(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.hr(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.blockquote(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.list(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.html(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.def(B)){B=B.substring(C.raw.length);let F=E.at(-1);F?.type==="paragraph"||F?.type==="text"?(F.raw+=(F.raw.endsWith(`
`)?"":`
`)+C.raw,F.text+=`
`+C.raw,this.inlineQueue.at(-1).src=F.text):this.tokens.links[C.tag]||(this.tokens.links[C.tag]={href:C.href,title:C.title},E.push(C));continue}if(C=this.tokenizer.table(B)){B=B.substring(C.raw.length),E.push(C);continue}if(C=this.tokenizer.lheading(B)){B=B.substring(C.raw.length),E.push(C);continue}let D=B;if(this.options.extensions?.startBlock){let F=1/0,U=B.slice(1),z;this.options.extensions.startBlock.forEach((k)=>{z=k.call({lexer:this},U),typeof z=="number"&&z>=0&&(F=Math.min(F,z))}),F<1/0&&F>=0&&(D=B.substring(0,F+1))}if(this.state.top&&(C=this.tokenizer.paragraph(D))){let F=E.at(-1);A&&F?.type==="paragraph"?(F.raw+=(F.raw.endsWith(`
`)?"":`
`)+C.raw,F.text+=`
`+C.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=F.text):E.push(C),A=D.length!==B.length,B=B.substring(C.raw.length);continue}if(C=this.tokenizer.text(B)){B=B.substring(C.raw.length);let F=E.at(-1);F?.type==="text"?(F.raw+=(F.raw.endsWith(`
`)?"":`
`)+C.raw,F.text+=`
`+C.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=F.text):E.push(C);continue}if(B){let F="Infinite loop on byte: "+B.charCodeAt(0);if(this.options.silent){console.error(F);break}else throw Error(F)}}return this.state.top=!0,E}inline(B,E=[]){return this.inlineQueue.push({src:B,tokens:E}),E}inlineTokens(B,E=[]){let A=B,C=null;if(this.tokens.links){let z=Object.keys(this.tokens.links);if(z.length>0)for(;(C=this.tokenizer.rules.inline.reflinkSearch.exec(A))!=null;)z.includes(C[0].slice(C[0].lastIndexOf("[")+1,-1))&&(A=A.slice(0,C.index)+"["+"a".repeat(C[0].length-2)+"]"+A.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(C=this.tokenizer.rules.inline.anyPunctuation.exec(A))!=null;)A=A.slice(0,C.index)+"++"+A.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let D;for(;(C=this.tokenizer.rules.inline.blockSkip.exec(A))!=null;)D=C[2]?C[2].length:0,A=A.slice(0,C.index+D)+"["+"a".repeat(C[0].length-D-2)+"]"+A.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);A=this.options.hooks?.emStrongMask?.call({lexer:this},A)??A;let F=!1,U="";for(;B;){F||(U=""),F=!1;let z;if(this.options.extensions?.inline?.some((f)=>(z=f.call({lexer:this},B,E))?(B=B.substring(z.raw.length),E.push(z),!0):!1))continue;if(z=this.tokenizer.escape(B)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.tag(B)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.link(B)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.reflink(B,this.tokens.links)){B=B.substring(z.raw.length);let f=E.at(-1);z.type==="text"&&f?.type==="text"?(f.raw+=z.raw,f.text+=z.text):E.push(z);continue}if(z=this.tokenizer.emStrong(B,A,U)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.codespan(B)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.br(B)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.del(B)){B=B.substring(z.raw.length),E.push(z);continue}if(z=this.tokenizer.autolink(B)){B=B.substring(z.raw.length),E.push(z);continue}if(!this.state.inLink&&(z=this.tokenizer.url(B))){B=B.substring(z.raw.length),E.push(z);continue}let k=B;if(this.options.extensions?.startInline){let f=1/0,l=B.slice(1),b;this.options.extensions.startInline.forEach((M)=>{b=M.call({lexer:this},l),typeof b=="number"&&b>=0&&(f=Math.min(f,b))}),f<1/0&&f>=0&&(k=B.substring(0,f+1))}if(z=this.tokenizer.inlineText(k)){B=B.substring(z.raw.length),z.raw.slice(-1)!=="_"&&(U=z.raw.slice(-1)),F=!0;let f=E.at(-1);f?.type==="text"?(f.raw+=z.raw,f.text+=z.text):E.push(z);continue}if(B){let f="Infinite loop on byte: "+B.charCodeAt(0);if(this.options.silent){console.error(f);break}else throw Error(f)}}return E}},Ni=class{options;parser;constructor(u){this.options=u||gZ}space(u){return""}code({text:u,lang:B,escaped:E}){let A=(B||"").match(lB.notSpaceStart)?.[0],C=u.replace(lB.endingNewline,"")+`
`;return A?'<pre><code class="language-'+GF(A)+'">'+(E?C:GF(C,!0))+`</code></pre>
`:"<pre><code>"+(E?C:GF(C,!0))+`</code></pre>
`}blockquote({tokens:u}){return`<blockquote>
${this.parser.parse(u)}</blockquote>
`}html({text:u}){return u}def(u){return""}heading({tokens:u,depth:B}){return`<h${B}>${this.parser.parseInline(u)}</h${B}>
`}hr(u){return`<hr>
`}list(u){let{ordered:B,start:E}=u,A="";for(let F=0;F<u.items.length;F++){let U=u.items[F];A+=this.listitem(U)}let C=B?"ol":"ul",D=B&&E!==1?' start="'+E+'"':"";return"<"+C+D+`>
`+A+"</"+C+`>
`}listitem(u){let B="";if(u.task){let E=this.checkbox({checked:!!u.checked});u.loose?u.tokens[0]?.type==="paragraph"?(u.tokens[0].text=E+" "+u.tokens[0].text,u.tokens[0].tokens&&u.tokens[0].tokens.length>0&&u.tokens[0].tokens[0].type==="text"&&(u.tokens[0].tokens[0].text=E+" "+GF(u.tokens[0].tokens[0].text),u.tokens[0].tokens[0].escaped=!0)):u.tokens.unshift({type:"text",raw:E+" ",text:E+" ",escaped:!0}):B+=E+" "}return B+=this.parser.parse(u.tokens,!!u.loose),`<li>${B}</li>
`}checkbox({checked:u}){return"<input "+(u?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:u}){return`<p>${this.parser.parseInline(u)}</p>
`}table(u){let B="",E="";for(let C=0;C<u.header.length;C++)E+=this.tablecell(u.header[C]);B+=this.tablerow({text:E});let A="";for(let C=0;C<u.rows.length;C++){let D=u.rows[C];E="";for(let F=0;F<D.length;F++)E+=this.tablecell(D[F]);A+=this.tablerow({text:E})}return A&&(A=`<tbody>${A}</tbody>`),`<table>
<thead>
`+B+`</thead>
`+A+`</table>
`}tablerow({text:u}){return`<tr>
${u}</tr>
`}tablecell(u){let B=this.parser.parseInline(u.tokens),E=u.header?"th":"td";return(u.align?`<${E} align="${u.align}">`:`<${E}>`)+B+`</${E}>
`}strong({tokens:u}){return`<strong>${this.parser.parseInline(u)}</strong>`}em({tokens:u}){return`<em>${this.parser.parseInline(u)}</em>`}codespan({text:u}){return`<code>${GF(u,!0)}</code>`}br(u){return"<br>"}del({tokens:u}){return`<del>${this.parser.parseInline(u)}</del>`}link({href:u,title:B,tokens:E}){let A=this.parser.parseInline(E),C=dW0(u);if(C===null)return A;u=C;let D='<a href="'+u+'"';return B&&(D+=' title="'+GF(B)+'"'),D+=">"+A+"</a>",D}image({href:u,title:B,text:E,tokens:A}){A&&(E=this.parser.parseInline(A,this.parser.textRenderer));let C=dW0(u);if(C===null)return GF(E);u=C;let D=`<img src="${u}" alt="${E}"`;return B&&(D+=` title="${GF(B)}"`),D+=">",D}text(u){return"tokens"in u&&u.tokens?this.parser.parseInline(u.tokens):("escaped"in u)&&u.escaped?u.text:GF(u.text)}},e40=class{strong({text:u}){return u}em({text:u}){return u}codespan({text:u}){return u}del({text:u}){return u}html({text:u}){return u}text({text:u}){return u}link({text:u}){return""+u}image({text:u}){return""+u}br(){return""}},LC=class u{options;renderer;textRenderer;constructor(B){this.options=B||gZ,this.options.renderer=this.options.renderer||new Ni,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new e40}static parse(B,E){return new u(E).parse(B)}static parseInline(B,E){return new u(E).parseInline(B)}parse(B,E=!0){let A="";for(let C=0;C<B.length;C++){let D=B[C];if(this.options.extensions?.renderers?.[D.type]){let U=D,z=this.options.extensions.renderers[U.type].call({parser:this},U);if(z!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(U.type)){A+=z||"";continue}}let F=D;switch(F.type){case"space":{A+=this.renderer.space(F);continue}case"hr":{A+=this.renderer.hr(F);continue}case"heading":{A+=this.renderer.heading(F);continue}case"code":{A+=this.renderer.code(F);continue}case"table":{A+=this.renderer.table(F);continue}case"blockquote":{A+=this.renderer.blockquote(F);continue}case"list":{A+=this.renderer.list(F);continue}case"html":{A+=this.renderer.html(F);continue}case"def":{A+=this.renderer.def(F);continue}case"paragraph":{A+=this.renderer.paragraph(F);continue}case"text":{let U=F,z=this.renderer.text(U);for(;C+1<B.length&&B[C+1].type==="text";)U=B[++C],z+=`
`+this.renderer.text(U);E?A+=this.renderer.paragraph({type:"paragraph",raw:z,text:z,tokens:[{type:"text",raw:z,text:z,escaped:!0}]}):A+=z;continue}default:{let U='Token with "'+F.type+'" type was not found.';if(this.options.silent)return console.error(U),"";throw Error(U)}}}return A}parseInline(B,E=this.renderer){let A="";for(let C=0;C<B.length;C++){let D=B[C];if(this.options.extensions?.renderers?.[D.type]){let U=this.options.extensions.renderers[D.type].call({parser:this},D);if(U!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(D.type)){A+=U||"";continue}}let F=D;switch(F.type){case"escape":{A+=E.text(F);break}case"html":{A+=E.html(F);break}case"link":{A+=E.link(F);break}case"image":{A+=E.image(F);break}case"strong":{A+=E.strong(F);break}case"em":{A+=E.em(F);break}case"codespan":{A+=E.codespan(F);break}case"br":{A+=E.br(F);break}case"del":{A+=E.del(F);break}case"text":{A+=E.text(F);break}default:{let U='Token with "'+F.type+'" type was not found.';if(this.options.silent)return console.error(U),"";throw Error(U)}}}return A}},lS,k84=class{defaults=g40();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=LC;Renderer=Ni;TextRenderer=e40;Lexer=HC;Tokenizer=ji;Hooks=lS;constructor(...u){this.use(...u)}walkTokens(u,B){let E=[];for(let A of u)switch(E=E.concat(B.call(this,A)),A.type){case"table":{let C=A;for(let D of C.header)E=E.concat(this.walkTokens(D.tokens,B));for(let D of C.rows)for(let F of D)E=E.concat(this.walkTokens(F.tokens,B));break}case"list":{let C=A;E=E.concat(this.walkTokens(C.items,B));break}default:{let C=A;this.defaults.extensions?.childTokens?.[C.type]?this.defaults.extensions.childTokens[C.type].forEach((D)=>{let F=C[D].flat(1/0);E=E.concat(this.walkTokens(F,B))}):C.tokens&&(E=E.concat(this.walkTokens(C.tokens,B)))}}return E}use(...u){let B=this.defaults.extensions||{renderers:{},childTokens:{}};return u.forEach((E)=>{let A={...E};if(A.async=this.defaults.async||A.async||!1,E.extensions&&(E.extensions.forEach((C)=>{if(!C.name)throw Error("extension name required");if("renderer"in C){let D=B.renderers[C.name];D?B.renderers[C.name]=function(...F){let U=C.renderer.apply(this,F);return U===!1&&(U=D.apply(this,F)),U}:B.renderers[C.name]=C.renderer}if("tokenizer"in C){if(!C.level||C.level!=="block"&&C.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let D=B[C.level];D?D.unshift(C.tokenizer):B[C.level]=[C.tokenizer],C.start&&(C.level==="block"?B.startBlock?B.startBlock.push(C.start):B.startBlock=[C.start]:C.level==="inline"&&(B.startInline?B.startInline.push(C.start):B.startInline=[C.start]))}"childTokens"in C&&C.childTokens&&(B.childTokens[C.name]=C.childTokens)}),A.extensions=B),E.renderer){let C=this.defaults.renderer||new Ni(this.defaults);for(let D in E.renderer){if(!(D in C))throw Error(`renderer '${D}' does not exist`);if(["options","parser"].includes(D))continue;let F=D,U=E.renderer[F],z=C[F];C[F]=(...k)=>{let f=U.apply(C,k);return f===!1&&(f=z.apply(C,k)),f||""}}A.renderer=C}if(E.tokenizer){let C=this.defaults.tokenizer||new ji(this.defaults);for(let D in E.tokenizer){if(!(D in C))throw Error(`tokenizer '${D}' does not exist`);if(["options","rules","lexer"].includes(D))continue;let F=D,U=E.tokenizer[F],z=C[F];C[F]=(...k)=>{let f=U.apply(C,k);return f===!1&&(f=z.apply(C,k)),f}}A.tokenizer=C}if(E.hooks){let C=this.defaults.hooks||new lS;for(let D in E.hooks){if(!(D in C))throw Error(`hook '${D}' does not exist`);if(["options","block"].includes(D))continue;let F=D,U=E.hooks[F],z=C[F];lS.passThroughHooks.has(D)?C[F]=(k)=>{if(this.defaults.async&&lS.passThroughHooksRespectAsync.has(D))return(async()=>{let l=await U.call(C,k);return z.call(C,l)})();let f=U.call(C,k);return z.call(C,f)}:C[F]=(...k)=>{if(this.defaults.async)return(async()=>{let l=await U.apply(C,k);return l===!1&&(l=await z.apply(C,k)),l})();let f=U.apply(C,k);return f===!1&&(f=z.apply(C,k)),f}}A.hooks=C}if(E.walkTokens){let C=this.defaults.walkTokens,D=E.walkTokens;A.walkTokens=function(F){let U=[];return U.push(D.call(this,F)),C&&(U=U.concat(C.call(this,F))),U}}this.defaults={...this.defaults,...A}}),this}setOptions(u){return this.defaults={...this.defaults,...u},this}lexer(u,B){return HC.lex(u,B??this.defaults)}parser(u,B){return LC.parse(u,B??this.defaults)}parseMarkdown(u){return(B,E)=>{let A={...E},C={...this.defaults,...A},D=this.onError(!!C.silent,!!C.async);if(this.defaults.async===!0&&A.async===!1)return D(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 B>"u"||B===null)return D(Error("marked(): input parameter is undefined or null"));if(typeof B!="string")return D(Error("marked(): input parameter is of type "+Object.prototype.toString.call(B)+", string expected"));if(C.hooks&&(C.hooks.options=C,C.hooks.block=u),C.async)return(async()=>{let F=C.hooks?await C.hooks.preprocess(B):B,U=await(C.hooks?await C.hooks.provideLexer():u?HC.lex:HC.lexInline)(F,C),z=C.hooks?await C.hooks.processAllTokens(U):U;C.walkTokens&&await Promise.all(this.walkTokens(z,C.walkTokens));let k=await(C.hooks?await C.hooks.provideParser():u?LC.parse:LC.parseInline)(z,C);return C.hooks?await C.hooks.postprocess(k):k})().catch(D);try{C.hooks&&(B=C.hooks.preprocess(B));let F=(C.hooks?C.hooks.provideLexer():u?HC.lex:HC.lexInline)(B,C);C.hooks&&(F=C.hooks.processAllTokens(F)),C.walkTokens&&this.walkTokens(F,C.walkTokens);let U=(C.hooks?C.hooks.provideParser():u?LC.parse:LC.parseInline)(F,C);return C.hooks&&(U=C.hooks.postprocess(U)),U}catch(F){return D(F)}}}onError(u,B){return(E)=>{if(E.message+=`
Please report this to https://github.com/markedjs/marked.`,u){let A="<p>An error occurred:</p><pre>"+GF(E.message+"",!0)+"</pre>";return B?Promise.resolve(A):A}if(B)return Promise.reject(E);throw E}}},cZ,Bg3,Eg3,Ag3,Cg3,Dg3,Fg3,Ug3;var kY0=g(()=>{gZ=g40();bS={exec:()=>null};WB4=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),lB={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:(u)=>new RegExp(`^( {0,3}${u})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:(u)=>new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:(u)=>new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:(u)=>new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:(u)=>new RegExp(`^ {0,${Math.min(3,u-1)}}#`),htmlBeginRegex:(u)=>new RegExp(`^ {0,${Math.min(3,u-1)}}<(?:[a-z].*>|!--)`,"i")},YB4=/^(?:[ \t]*(?:\n|$))+/,RB4=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,TB4=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,MS=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,OB4=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,_40=/(?:[*+-]|\d{1,9}[.)])/,eW0=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,uY0=i1(eW0).replace(/bull/g,_40).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(),IB4=i1(eW0).replace(/bull/g,_40).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(),n40=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,PB4=/^[^\n]+/,p40=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,jB4=i1(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",p40).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),NB4=i1(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,_40).getRegex(),d40=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,iB4=i1("^ {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",d40).replace("tag",ii).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),BY0=i1(n40).replace("hr",MS).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",ii).getRegex(),aB4=i1(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",BY0).getRegex(),s40={blockquote:aB4,code:RB4,def:jB4,fences:TB4,heading:OB4,hr:MS,html:iB4,lheading:uY0,list:NB4,newline:YB4,paragraph:BY0,table:bS,text:PB4},_W0=i1("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",MS).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",ii).getRegex(),VB4={...s40,lheading:IB4,table:_W0,paragraph:i1(n40).replace("hr",MS).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",_W0).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",ii).getRegex()},hB4={...s40,html:i1(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",d40).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:bS,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:i1(n40).replace("hr",MS).replace("heading",` *#{1,6} *[^
]`).replace("lheading",uY0).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},mB4=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,rB4=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,EY0=/^( {2,}|\\)\n(?!\s*$)/,$B4=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,ai=/[\p{P}\p{S}]/u,o40=/[\s\p{P}\p{S}]/u,AY0=/[^\s\p{P}\p{S}]/u,yB4=i1(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,o40).getRegex(),CY0=/(?!~)[\p{P}\p{S}]/u,cB4=/(?!~)[\s\p{P}\p{S}]/u,gB4=/(?:[^\s\p{P}\p{S}]|~)/u,_B4=i1(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",WB4?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),DY0=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,nB4=i1(DY0,"u").replace(/punct/g,ai).getRegex(),pB4=i1(DY0,"u").replace(/punct/g,CY0).getRegex(),dB4=i1(FY0,"gu").replace(/notPunctSpace/g,AY0).replace(/punctSpace/g,o40).replace(/punct/g,ai).getRegex(),sB4=i1(FY0,"gu").replace(/notPunctSpace/g,gB4).replace(/punctSpace/g,cB4).replace(/punct/g,CY0).getRegex(),oB4=i1("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,AY0).replace(/punctSpace/g,o40).replace(/punct/g,ai).getRegex(),tB4=i1(/\\(punct)/,"gu").replace(/punct/g,ai).getRegex(),eB4=i1(/^<(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(),u84=i1(d40).replace("(?:-->|$)","-->").getRegex(),B84=i1("^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",u84).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Pi=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,E84=i1(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Pi).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),UY0=i1(/^!?\[(label)\]\[(ref)\]/).replace("label",Pi).replace("ref",p40).getRegex(),zY0=i1(/^!?\[(ref)\](?:\[\])?/).replace("ref",p40).getRegex(),A84=i1("reflink|nolink(?!\\()","g").replace("reflink",UY0).replace("nolink",zY0).getRegex(),nW0=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,t40={_backpedal:bS,anyPunctuation:tB4,autolink:eB4,blockSkip:_B4,br:EY0,code:rB4,del:bS,emStrongLDelim:nB4,emStrongRDelimAst:dB4,emStrongRDelimUnd:oB4,escape:mB4,link:E84,nolink:zY0,punctuation:yB4,reflink:UY0,reflinkSearch:A84,tag:B84,text:$B4,url:bS},C84={...t40,link:i1(/^!?\[(label)\]\((.*?)\)/).replace("label",Pi).getRegex(),reflink:i1(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Pi).getRegex()},c40={...t40,emStrongRDelimAst:sB4,emStrongLDelim:pB4,url:i1(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",nW0).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:i1(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",nW0).getRegex()},D84={...c40,br:i1(EY0).replace("{2,}","*").getRegex(),text:i1(c40.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Ii={normal:s40,gfm:VB4,pedantic:hB4},kS={normal:t40,gfm:c40,breaks:D84,pedantic:C84},F84={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};lS=class{options;block;constructor(u){this.options=u||gZ}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(u){return u}postprocess(u){return u}processAllTokens(u){return u}emStrongMask(u){return u}provideLexer(){return this.block?HC.lex:HC.lexInline}provideParser(){return this.block?LC.parse:LC.parseInline}},cZ=new k84;d1.options=d1.setOptions=function(u){return cZ.setOptions(u),d1.defaults=cZ.defaults,tW0(d1.defaults),d1};d1.getDefaults=g40;d1.defaults=gZ;d1.use=function(...u){return cZ.use(...u),d1.defaults=cZ.defaults,tW0(d1.defaults),d1};d1.walkTokens=function(u,B){return cZ.walkTokens(u,B)};d1.parseInline=cZ.parseInline;d1.Parser=LC;d1.parser=LC.parse;d1.Renderer=Ni;d1.TextRenderer=e40;d1.Lexer=HC;d1.lexer=HC.lex;d1.Tokenizer=ji;d1.Hooks=lS;d1.parse=d1;Bg3=d1.options,Eg3=d1.setOptions,Ag3=d1.use,Cg3=d1.walkTokens,Dg3=d1.parseInline,Fg3=LC.parse,Ug3=HC.lex});function Vi(u){var B=[];for(var E=1;E<arguments.length;E++)B[E-1]=arguments[E];var A=Array.from(typeof u==="string"?[u]:u);A[A.length-1]=A[A.length-1].replace(/\r?\n([\t ]*)$/,"");var C=A.reduce(function(U,z){var k=z.match(/\n([\t ]+|(?!\s).)/g);if(k)return U.concat(k.map(function(f){var l,b;return(b=(l=f.match(/[\t ]/g))===null||l===void 0?void 0:l.length)!==null&&b!==void 0?b:0}));return U},[]);if(C.length){var D=new RegExp(`
[ ]{`.concat(Math.min.apply(Math,C),"}"),"g");A=A.map(function(U){return U.replace(D,`
`)})}A[0]=A[0].replace(/^\r?\n/,"");var F=A[0];return B.forEach(function(U,z){var k=F.match(/(?:^|\n)( *)$/),f=k?k[1]:"",l=U;if(typeof U==="string"&&U.includes(`
`))l=String(U).split(`
`).map(function(b,M){return M===0?b:"".concat(f).concat(b)}).join(`
`);F+=l+A[z+1]}),F}var u30=()=>{};function lY0(u,{markdownAutoWrap:B}){let A=u.replace(/<br\/>/g,`
`).replace(/\n{2,}/g,`
`);return Vi(A)}function bY0(u){return u.split(/\\n|\n|<br\s*\/?>/gi).map((B)=>B.trim().match(/<[^>]+>|[^\s<>]+/g)?.map((E)=>({content:E,type:"normal"}))??[])}function MY0(u,B={}){let E=lY0(u,B),A=d1.lexer(E),C=[[]],D=0;function F(U,z="normal"){if(U.type==="text")U.text.split(`
`).forEach((f,l)=>{if(l!==0)D++,C.push([]);f.split(" ").forEach((b)=>{if(b=b.replace(/&#39;/g,"'"),b)C[D].push({content:b,type:z})})});else if(U.type==="strong"||U.type==="em")U.tokens.forEach((k)=>{F(k,U.type)});else if(U.type==="html")C[D].push({content:U.text,type:"normal"})}return X(F,"processNode"),A.forEach((U)=>{if(U.type==="paragraph")U.tokens?.forEach((z)=>{F(z)});else if(U.type==="html")C[D].push({content:U.text,type:"normal"});else C[D].push({content:U.raw,type:"normal"})}),C}function ZY0(u){if(!u)return"";return`<p>${u.replace(/\\n|\n/g,"<br />")}</p>`}function JY0(u,{markdownAutoWrap:B}={}){let E=d1.lexer(u);function A(C){if(C.type==="text"){if(B===!1)return C.text.replace(/\n */g,"<br/>").replace(/ /g,"&nbsp;");return C.text.replace(/\n */g,"<br/>")}else if(C.type==="strong")return`<strong>${C.tokens?.map(A).join("")}</strong>`;else if(C.type==="em")return`<em>${C.tokens?.map(A).join("")}</em>`;else if(C.type==="paragraph")return`<p>${C.tokens?.map(A).join("")}</p>`;else if(C.type==="space")return"";else if(C.type==="html")return`${C.text}`;else if(C.type==="escape")return C.text;return z0.warn(`Unsupported markdown: ${C.type}`),C.raw}return X(A,"output"),E.map(A).join("")}function wY0(u){if(Intl.Segmenter)return[...new Intl.Segmenter().segment(u)].map((B)=>B.segment);return[...u]}function KY0(u,B){let E=wY0(B.content);return A30(u,[],E,B.type)}function A30(u,B,E,A){if(E.length===0)return[{content:B.join(""),type:A},{content:"",type:A}];let[C,...D]=E,F=[...B,C];if(u([{content:F.join(""),type:A}]))return A30(u,F,D,A);if(B.length===0&&C)B.push(C),E.shift();return[{content:B.join(""),type:A},{content:E.join(""),type:A}]}function QY0(u,B){if(u.some(({content:E})=>E.includes(`
`)))throw Error("splitLineToFitWidth does not support newlines in the line");return hi(u,B)}function hi(u,B,E=[],A=[]){if(u.length===0){if(A.length>0)E.push(A);return E.length>0?E:[]}let C="";if(u[0].content===" ")C=" ",u.shift();let D=u.shift()??{content:" ",type:"normal"},F=[...A];if(C!=="")F.push({content:C,type:"normal"});if(F.push(D),B(F))return hi(u,B,E,F);if(A.length>0)E.push(A),u.unshift(D);else if(D.content){let[U,z]=KY0(B,D);if(E.push([U]),z.content)u.unshift(z)}return hi(u,B,E)}function B30(u,B){if(B)u.attr("style",B)}async function GY0(u,B,E,A,C=!1,D=F4()){let F=u.append("foreignObject");F.attr("width",`${Math.min(10*E,fY0)}px`),F.attr("height",`${Math.min(10*E,fY0)}px`);let U=F.append("xhtml:div"),z=A9(B.label)?await hQ(B.label.replace(yu.lineBreakRegex,`
`),D):C3(B.label,D),k=B.isNode?"nodeLabel":"edgeLabel",f=U.append("span");if(f.html(z),B30(f,B.labelStyle),f.attr("class",`${k} ${A}`),B30(U,B.labelStyle),U.style("display","table-cell"),U.style("white-space","nowrap"),U.style("line-height","1.5"),E!==Number.POSITIVE_INFINITY)U.style("max-width",E+"px"),U.style("text-align","center");if(U.attr("xmlns","http://www.w3.org/1999/xhtml"),C)U.attr("class","labelBkg");let l=U.node().getBoundingClientRect();if(l.width===E)U.style("display","table"),U.style("white-space","break-spaces"),U.style("width",E+"px"),l=U.node().getBoundingClientRect();return F.node()}function mi(u,B,E,A=!1){let C=u.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",B*E-0.1+"em").attr("dy",E+"em");if(A)C.attr("text-anchor","middle");return C}function HY0(u,B,E){let A=u.append("text"),C=mi(A,1,B);ri(C,E);let D=C.node().getComputedTextLength();return A.remove(),D}function C30(u,B,E){let A=u.append("text"),C=mi(A,1,B);ri(C,[{content:E,type:"normal"}]);let D=C.node()?.getBoundingClientRect();if(D)A.remove();return D}function LY0(u,B,E,A=!1,C=!1){let F=B.append("g"),U=F.insert("rect").attr("class","background").attr("style","stroke: none"),z=F.append("text").attr("y","-10.1");if(C)z.attr("text-anchor","middle");let k=0;for(let f of E){let l=X((M)=>HY0(F,1.1,M)<=u,"checkWidth"),b=l(f)?[f]:QY0(f,l);for(let M of b){let Z=mi(z,k,1.1,C);ri(Z,M),k++}}if(A){let f=z.node().getBBox(),l=2;return U.attr("x",f.x-2).attr("y",f.y-2).attr("width",f.width+4).attr("height",f.height+4),F.node()}else return z.node()}function E30(u){let B=/&(amp|lt|gt);/g;return u.replace(B,(E,A)=>{switch(A){case"amp":return"&";case"lt":return"<";case"gt":return">";default:return E}})}function ri(u,B){u.text(""),B.forEach((E,A)=>{let C=u.append("tspan").attr("font-style",E.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",E.type==="strong"?"bold":"normal");if(A===0)C.text(E30(E.content));else C.text(" "+E30(E.content))})}async function qY0(u,B={}){let E=[];u.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(C,D,F)=>{return E.push((async()=>{let U=`${D}:${F}`;if(await gW0(U))return await CE(U,void 0,{class:"label-icon"});else return`<i class='${C3(C,B).replace(":"," ")}'></i>`})()),C});let A=await Promise.all(E);return u.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>A.shift()??"")}var fY0=16384,X2;var d2=g(()=>{q2();t3();s4();o4();Y4();i3();kY0();u30();X(lY0,"preprocessMarkdown");X(bY0,"nonMarkdownToLines");X(MY0,"markdownToLines");X(ZY0,"nonMarkdownToHTML");X(JY0,"markdownToHTML");X(wY0,"splitTextToChars");X(KY0,"splitWordToFitWidth");X(A30,"splitWordToFitWidthRecursion");X(QY0,"splitLineToFitWidth");X(hi,"splitLineToFitWidthRecursion");X(B30,"applyStyle");X(GY0,"addHtmlSpan");X(mi,"createTspan");X(HY0,"computeWidthOfText");X(C30,"computeDimensionOfText");X(LY0,"createFormattedText");X(E30,"decodeHTMLEntities");X(ri,"updateTextContentAndStyles");X(qY0,"replaceIconSubstring");X2=X(async(u,B="",{style:E="",isTitle:A=!1,classes:C="",useHtmlLabels:D=!0,markdown:F=!0,isNode:U=!0,width:z=200,addSvgBackground:k=!1}={},f)=>{if(z0.debug("XYZ createText",B,E,A,C,D,U,"addSvgBackground: ",k),D){let l=F?JY0(B,f):ZY0(B),b=await qY0(AE(l),f),M=B.replace(/\\\\/g,"\\"),Z={isNode:U,label:A9(B)?M:b,labelStyle:E.replace("fill:","color:")};return await GY0(u,Z,z,C,k,f)}else{let l=AE(B.replace(/<br\s*\/?>/g,"<br/>")),b=F?MY0(l.replace("<br>","<br/>"),f):bY0(l),M=LY0(z,u,b,B?k:!1,!U);if(U){if(/stroke:/.exec(E))E=E.replace("stroke:","lineColor:");let Z=E.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Ku(M).attr("style",Z)}else{let Z=E.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Ku(M).select("rect").attr("style",Z.replace(/background:/g,"fill:"));let J=E.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Ku(M).select("text").attr("style",J)}if(A)Ku(M).selectAll("tspan.text-outer-tspan").classed("title-row",!0);else Ku(M).selectAll("tspan.text-outer-tspan").classed("row",!0);return M}},"createText")});function D30(u,B,E){if(u&&u.length){let[A,C]=B,D=Math.PI/180*E,F=Math.cos(D),U=Math.sin(D);for(let z of u){let[k,f]=z;z[0]=(k-A)*F-(f-C)*U+A,z[1]=(k-A)*U+(f-C)*F+C}}}function f84(u,B){return u[0]===B[0]&&u[1]===B[1]}function l84(u,B,E,A=1){let C=E,D=Math.max(B,0.1),F=u[0]&&u[0][0]&&typeof u[0][0]=="number"?[u]:u,U=[0,0];if(C)for(let k of F)D30(k,U,C);let z=function(k,f,l){let b=[];for(let Q of k){let G=[...Q];f84(G[0],G[G.length-1])||G.push([G[0][0],G[0][1]]),G.length>2&&b.push(G)}let M=[];f=Math.max(f,0.1);let Z=[];for(let Q of b)for(let G=0;G<Q.length-1;G++){let L=Q[G],H=Q[G+1];if(L[1]!==H[1]){let q=Math.min(L[1],H[1]);Z.push({ymin:q,ymax:Math.max(L[1],H[1]),x:q===L[1]?L[0]:H[0],islope:(H[0]-L[0])/(H[1]-L[1])})}}if(Z.sort((Q,G)=>Q.ymin<G.ymin?-1:Q.ymin>G.ymin?1:Q.x<G.x?-1:Q.x>G.x?1:Q.ymax===G.ymax?0:(Q.ymax-G.ymax)/Math.abs(Q.ymax-G.ymax)),!Z.length)return M;let J=[],w=Z[0].ymin,K=0;for(;J.length||Z.length;){if(Z.length){let Q=-1;for(let G=0;G<Z.length&&!(Z[G].ymin>w);G++)Q=G;Z.splice(0,Q+1).forEach((G)=>{J.push({s:w,edge:G})})}if(J=J.filter((Q)=>!(Q.edge.ymax<=w)),J.sort((Q,G)=>Q.edge.x===G.edge.x?0:(Q.edge.x-G.edge.x)/Math.abs(Q.edge.x-G.edge.x)),(l!==1||K%f==0)&&J.length>1)for(let Q=0;Q<J.length;Q+=2){let G=Q+1;if(G>=J.length)break;let L=J[Q].edge,H=J[G].edge;M.push([[Math.round(L.x),w],[Math.round(H.x),w]])}w+=l,J.forEach((Q)=>{Q.edge.x=Q.edge.x+l*Q.edge.islope}),K++}return M}(F,D,A);if(C){for(let k of F)D30(k,U,-C);(function(k,f,l){let b=[];k.forEach((M)=>b.push(...M)),D30(b,f,l)})(z,U,-C)}return z}function KS(u,B){var E;let A=B.hachureAngle+90,C=B.hachureGap;C<0&&(C=4*B.strokeWidth),C=Math.round(Math.max(C,0.1));let D=1;return B.roughness>=1&&(((E=B.randomizer)===null||E===void 0?void 0:E.next())||Math.random())>0.7&&(D=C),l84(u,C,A,D||1)}class si{constructor(u){this.helper=u}fillPolygons(u,B){return this._fillPolygons(u,B)}_fillPolygons(u,B){let E=KS(u,B);return{type:"fillSketch",ops:this.renderLines(E,B)}}renderLines(u,B){let E=[];for(let A of u)E.push(...this.helper.doubleLineOps(A[0][0],A[0][1],A[1][0],A[1][1],B));return E}}function oi(u){let B=u[0],E=u[1];return Math.sqrt(Math.pow(B[0]-E[0],2)+Math.pow(B[1]-E[1],2))}class PY0{constructor(u){this.helper=u}fillPolygons(u,B){let E=KS(u,B=Object.assign({},B,{hachureAngle:0}));return this.dotsOnLines(E,B)}dotsOnLines(u,B){let E=[],A=B.hachureGap;A<0&&(A=4*B.strokeWidth),A=Math.max(A,0.1);let C=B.fillWeight;C<0&&(C=B.strokeWidth/2);let D=A/4;for(let F of u){let U=oi(F),z=U/A,k=Math.ceil(z)-1,f=U-k*A,l=(F[0][0]+F[1][0])/2-A/4,b=Math.min(F[0][1],F[1][1]);for(let M=0;M<k;M++){let Z=b+f+M*A,J=l-D+2*Math.random()*D,w=Z-D+2*Math.random()*D,K=this.helper.ellipse(J,w,C,C,B);E.push(...K.ops)}}return{type:"fillSketch",ops:E}}}class jY0{constructor(u){this.helper=u}fillPolygons(u,B){let E=KS(u,B);return{type:"fillSketch",ops:this.dashedLine(E,B)}}dashedLine(u,B){let E=B.dashOffset<0?B.hachureGap<0?4*B.strokeWidth:B.hachureGap:B.dashOffset,A=B.dashGap<0?B.hachureGap<0?4*B.strokeWidth:B.hachureGap:B.dashGap,C=[];return u.forEach((D)=>{let F=oi(D),U=Math.floor(F/(E+A)),z=(F+A-U*(E+A))/2,k=D[0],f=D[1];k[0]>f[0]&&(k=D[1],f=D[0]);let l=Math.atan((f[1]-k[1])/(f[0]-k[0]));for(let b=0;b<U;b++){let M=b*(E+A),Z=M+E,J=[k[0]+M*Math.cos(l)+z*Math.cos(l),k[1]+M*Math.sin(l)+z*Math.sin(l)],w=[k[0]+Z*Math.cos(l)+z*Math.cos(l),k[1]+Z*Math.sin(l)+z*Math.sin(l)];C.push(...this.helper.doubleLineOps(J[0],J[1],w[0],w[1],B))}}),C}}class NY0{constructor(u){this.helper=u}fillPolygons(u,B){let E=B.hachureGap<0?4*B.strokeWidth:B.hachureGap,A=B.zigzagOffset<0?E:B.zigzagOffset,C=KS(u,B=Object.assign({},B,{hachureGap:E+A}));return{type:"fillSketch",ops:this.zigzagLines(C,A,B)}}zigzagLines(u,B,E){let A=[];return u.forEach((C)=>{let D=oi(C),F=Math.round(D/(2*B)),U=C[0],z=C[1];U[0]>z[0]&&(U=C[1],z=C[0]);let k=Math.atan((z[1]-U[1])/(z[0]-U[0]));for(let f=0;f<F;f++){let l=2*f*B,b=2*(f+1)*B,M=Math.sqrt(2*Math.pow(B,2)),Z=[U[0]+l*Math.cos(k),U[1]+l*Math.sin(k)],J=[U[0]+b*Math.cos(k),U[1]+b*Math.sin(k)],w=[Z[0]+M*Math.cos(k+Math.PI/4),Z[1]+M*Math.sin(k+Math.PI/4)];A.push(...this.helper.doubleLineOps(Z[0],Z[1],w[0],w[1],E),...this.helper.doubleLineOps(w[0],w[1],J[0],J[1],E))}}),A}}class iY0{constructor(u){this.seed=u}next(){return this.seed?(2147483647&(this.seed=Math.imul(48271,this.seed)))/2147483648:Math.random()}}function U30(u,B){return u.type===B}function M30(u){let B=[],E=function(F){let U=[];for(;F!=="";)if(F.match(/^([ \t\r\n,]+)/))F=F.substr(RegExp.$1.length);else if(F.match(/^([aAcChHlLmMqQsStTvVzZ])/))U[U.length]={type:b84,text:RegExp.$1},F=F.substr(RegExp.$1.length);else{if(!F.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];U[U.length]={type:F30,text:`${parseFloat(RegExp.$1)}`},F=F.substr(RegExp.$1.length)}return U[U.length]={type:XY0,text:""},U}(u),A="BOD",C=0,D=E[C];for(;!U30(D,XY0);){let F=0,U=[];if(A==="BOD"){if(D.text!=="M"&&D.text!=="m")return M30("M0,0"+u);C++,F=$i[D.text],A=D.text}else U30(D,F30)?F=$i[A]:(C++,F=$i[D.text],A=D.text);if(!(C+F<E.length))throw Error("Path data ended short");for(let z=C;z<C+F;z++){let k=E[z];if(!U30(k,F30))throw Error("Param not a number: "+A+","+k.text);U[U.length]=+k.text}if(typeof $i[A]!="number")throw Error("Bad segment: "+A);{let z={key:A,data:U};B.push(z),C+=F,D=E[C],A==="M"&&(A="L"),A==="m"&&(A="l")}}return B}function aY0(u){let B=0,E=0,A=0,C=0,D=[];for(let{key:F,data:U}of u)switch(F){case"M":D.push({key:"M",data:[...U]}),[B,E]=U,[A,C]=U;break;case"m":B+=U[0],E+=U[1],D.push({key:"M",data:[B,E]}),A=B,C=E;break;case"L":D.push({key:"L",data:[...U]}),[B,E]=U;break;case"l":B+=U[0],E+=U[1],D.push({key:"L",data:[B,E]});break;case"C":D.push({key:"C",data:[...U]}),B=U[4],E=U[5];break;case"c":{let z=U.map((k,f)=>f%2?k+E:k+B);D.push({key:"C",data:z}),B=z[4],E=z[5];break}case"Q":D.push({key:"Q",data:[...U]}),B=U[2],E=U[3];break;case"q":{let z=U.map((k,f)=>f%2?k+E:k+B);D.push({key:"Q",data:z}),B=z[2],E=z[3];break}case"A":D.push({key:"A",data:[...U]}),B=U[5],E=U[6];break;case"a":B+=U[5],E+=U[6],D.push({key:"A",data:[U[0],U[1],U[2],U[3],U[4],B,E]});break;case"H":D.push({key:"H",data:[...U]}),B=U[0];break;case"h":B+=U[0],D.push({key:"H",data:[B]});break;case"V":D.push({key:"V",data:[...U]}),E=U[0];break;case"v":E+=U[0],D.push({key:"V",data:[E]});break;case"S":D.push({key:"S",data:[...U]}),B=U[2],E=U[3];break;case"s":{let z=U.map((k,f)=>f%2?k+E:k+B);D.push({key:"S",data:z}),B=z[2],E=z[3];break}case"T":D.push({key:"T",data:[...U]}),B=U[0],E=U[1];break;case"t":B+=U[0],E+=U[1],D.push({key:"T",data:[B,E]});break;case"Z":case"z":D.push({key:"Z",data:[]}),B=A,E=C}return D}function VY0(u){let B=[],E="",A=0,C=0,D=0,F=0,U=0,z=0;for(let{key:k,data:f}of u){switch(k){case"M":B.push({key:"M",data:[...f]}),[A,C]=f,[D,F]=f;break;case"C":B.push({key:"C",data:[...f]}),A=f[4],C=f[5],U=f[2],z=f[3];break;case"L":B.push({key:"L",data:[...f]}),[A,C]=f;break;case"H":A=f[0],B.push({key:"L",data:[A,C]});break;case"V":C=f[0],B.push({key:"L",data:[A,C]});break;case"S":{let l=0,b=0;E==="C"||E==="S"?(l=A+(A-U),b=C+(C-z)):(l=A,b=C),B.push({key:"C",data:[l,b,...f]}),U=f[0],z=f[1],A=f[2],C=f[3];break}case"T":{let[l,b]=f,M=0,Z=0;E==="Q"||E==="T"?(M=A+(A-U),Z=C+(C-z)):(M=A,Z=C);let J=A+2*(M-A)/3,w=C+2*(Z-C)/3,K=l+2*(M-l)/3,Q=b+2*(Z-b)/3;B.push({key:"C",data:[J,w,K,Q,l,b]}),U=M,z=Z,A=l,C=b;break}case"Q":{let[l,b,M,Z]=f,J=A+2*(l-A)/3,w=C+2*(b-C)/3,K=M+2*(l-M)/3,Q=Z+2*(b-Z)/3;B.push({key:"C",data:[J,w,K,Q,M,Z]}),U=l,z=b,A=M,C=Z;break}case"A":{let l=Math.abs(f[0]),b=Math.abs(f[1]),M=f[2],Z=f[3],J=f[4],w=f[5],K=f[6];if(l===0||b===0)B.push({key:"C",data:[A,C,w,K,w,K]}),A=w,C=K;else if(A!==w||C!==K)hY0(A,C,w,K,l,b,M,Z,J).forEach(function(Q){B.push({key:"C",data:Q})}),A=w,C=K;break}case"Z":B.push({key:"Z",data:[]}),A=D,C=F}E=k}return B}function ZS(u,B,E){return[u*Math.cos(E)-B*Math.sin(E),u*Math.sin(E)+B*Math.cos(E)]}function hY0(u,B,E,A,C,D,F,U,z,k){let f=(l=F,Math.PI*l/180);var l;let b=[],M=0,Z=0,J=0,w=0;if(k)[M,Z,J,w]=k;else{[u,B]=ZS(u,B,-f),[E,A]=ZS(E,A,-f);let Y=(u-E)/2,a=(B-A)/2,I=Y*Y/(C*C)+a*a/(D*D);I>1&&(I=Math.sqrt(I),C*=I,D*=I);let O=C*C,i=D*D,N=O*i-O*a*a-i*Y*Y,V=O*a*a+i*Y*Y,h=(U===z?-1:1)*Math.sqrt(Math.abs(N/V));J=h*C*a/D+(u+E)/2,w=h*-D*Y/C+(B+A)/2,M=Math.asin(parseFloat(((B-w)/D).toFixed(9))),Z=Math.asin(parseFloat(((A-w)/D).toFixed(9))),u<J&&(M=Math.PI-M),E<J&&(Z=Math.PI-Z),M<0&&(M=2*Math.PI+M),Z<0&&(Z=2*Math.PI+Z),z&&M>Z&&(M-=2*Math.PI),!z&&Z>M&&(Z-=2*Math.PI)}let K=Z-M;if(Math.abs(K)>120*Math.PI/180){let Y=Z,a=E,I=A;Z=z&&Z>M?M+120*Math.PI/180*1:M+120*Math.PI/180*-1,b=hY0(E=J+C*Math.cos(Z),A=w+D*Math.sin(Z),a,I,C,D,F,0,z,[Z,Y,J,w])}K=Z-M;let Q=Math.cos(M),G=Math.sin(M),L=Math.cos(Z),H=Math.sin(Z),q=Math.tan(K/4),x=1.3333333333333333*C*q,v=1.3333333333333333*D*q,W=[u,B],S=[u+x*G,B-v*Q],T=[E+x*H,A-v*L],R=[E,A];if(S[0]=2*W[0]-S[0],S[1]=2*W[1]-S[1],k)return[S,T,R].concat(b);{b=[S,T,R].concat(b);let Y=[];for(let a=0;a<b.length;a+=3){let I=ZS(b[a][0],b[a][1],f),O=ZS(b[a+1][0],b[a+1][1],f),i=ZS(b[a+2][0],b[a+2][1],f);Y.push([I[0],I[1],O[0],O[1],i[0],i[1]])}return Y}}function mY0(u,B,E,A,C){return{type:"path",ops:pf(u,B,E,A,C)}}function gi(u,B,E){let A=(u||[]).length;if(A>2){let C=[];for(let D=0;D<A-1;D++)C.push(...pf(u[D][0],u[D][1],u[D+1][0],u[D+1][1],E));return B&&C.push(...pf(u[A-1][0],u[A-1][1],u[0][0],u[0][1],E)),{type:"path",ops:C}}return A===2?mY0(u[0][0],u[0][1],u[1][0],u[1][1],E):{type:"path",ops:[]}}function Z84(u,B,E,A,C){return function(D,F){return gi(D,!0,F)}([[u,B],[u+E,B],[u+E,B+A],[u,B+A]],C)}function xY0(u,B){if(u.length){let E=typeof u[0][0]=="number"?[u]:u,A=yi(E[0],1*(1+0.2*B.roughness),B),C=B.disableMultiStroke?[]:yi(E[0],1.5*(1+0.22*B.roughness),WY0(B));for(let D=1;D<E.length;D++){let F=E[D];if(F.length){let U=yi(F,1*(1+0.2*B.roughness),B),z=B.disableMultiStroke?[]:yi(F,1.5*(1+0.22*B.roughness),WY0(B));for(let k of U)k.op!=="move"&&A.push(k);for(let k of z)k.op!=="move"&&C.push(k)}}return{type:"path",ops:A.concat(C)}}return{type:"path",ops:[]}}function rY0(u,B,E){let A=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(u/2,2)+Math.pow(B/2,2))/2)),C=Math.ceil(Math.max(E.curveStepCount,E.curveStepCount/Math.sqrt(200)*A)),D=2*Math.PI/C,F=Math.abs(u/2),U=Math.abs(B/2),z=1-E.curveFitting;return F+=l3(F*z,E),U+=l3(U*z,E),{increment:D,rx:F,ry:U}}function f30(u,B,E,A){let[C,D]=YY0(A.increment,u,B,A.rx,A.ry,1,A.increment*ni(0.1,ni(0.4,1,E),E),E),F=pi(C,null,E);if(!E.disableMultiStroke&&E.roughness!==0){let[U]=YY0(A.increment,u,B,A.rx,A.ry,1.5,0,E),z=pi(U,null,E);F=F.concat(z)}return{estimatedPoints:D,opset:{type:"path",ops:F}}}function vY0(u,B,E,A,C,D,F,U,z){let k=u,f=B,l=Math.abs(E/2),b=Math.abs(A/2);l+=l3(0.01*l,z),b+=l3(0.01*b,z);let M=C,Z=D;for(;M<0;)M+=2*Math.PI,Z+=2*Math.PI;Z-M>2*Math.PI&&(M=0,Z=2*Math.PI);let J=2*Math.PI/z.curveStepCount,w=Math.min(J/2,(Z-M)/2),K=RY0(w,k,f,l,b,M,Z,1,z);if(!z.disableMultiStroke){let Q=RY0(w,k,f,l,b,M,Z,1.5,z);K.push(...Q)}return F&&(U?K.push(...pf(k,f,k+l*Math.cos(M),f+b*Math.sin(M),z),...pf(k,f,k+l*Math.cos(Z),f+b*Math.sin(Z),z)):K.push({op:"lineTo",data:[k,f]},{op:"lineTo",data:[k+l*Math.cos(M),f+b*Math.sin(M)]})),{type:"path",ops:K}}function SY0(u,B){let E=VY0(aY0(M30(u))),A=[],C=[0,0],D=[0,0];for(let{key:F,data:U}of E)switch(F){case"M":D=[U[0],U[1]],C=[U[0],U[1]];break;case"L":A.push(...pf(D[0],D[1],U[0],U[1],B)),D=[U[0],U[1]];break;case"C":{let[z,k,f,l,b,M]=U;A.push(...J84(z,k,f,l,b,M,D,B)),D=[b,M];break}case"Z":A.push(...pf(D[0],D[1],C[0],C[1],B)),D=[C[0],C[1]]}return{type:"path",ops:A}}function z30(u,B){let E=[];for(let A of u)if(A.length){let C=B.maxRandomnessOffset||0,D=A.length;if(D>2){E.push({op:"move",data:[A[0][0]+l3(C,B),A[0][1]+l3(C,B)]});for(let F=1;F<D;F++)E.push({op:"lineTo",data:[A[F][0]+l3(C,B),A[F][1]+l3(C,B)]})}}return{type:"fillPath",ops:E}}function SG(u,B){return function(E,A){let C=E.fillStyle||"hachure";if(!C8[C])switch(C){case"zigzag":C8[C]||(C8[C]=new OY0(A));break;case"cross-hatch":C8[C]||(C8[C]=new IY0(A));break;case"dots":C8[C]||(C8[C]=new PY0(A));break;case"dashed":C8[C]||(C8[C]=new jY0(A));break;case"zigzag-line":C8[C]||(C8[C]=new NY0(A));break;default:C="hachure",C8[C]||(C8[C]=new si(A))}return C8[C]}(B,M84).fillPolygons(u,B)}function WY0(u){let B=Object.assign({},u);return B.randomizer=void 0,u.seed&&(B.seed=u.seed+1),B}function $Y0(u){return u.randomizer||(u.randomizer=new iY0(u.seed||0)),u.randomizer.next()}function ni(u,B,E,A=1){return E.roughness*A*($Y0(E)*(B-u)+u)}function l3(u,B,E=1){return ni(-u,u,B,E)}function pf(u,B,E,A,C,D=!1){let F=D?C.disableMultiStrokeFill:C.disableMultiStroke,U=l30(u,B,E,A,C,!0,!1);if(F)return U;let z=l30(u,B,E,A,C,!0,!0);return U.concat(z)}function l30(u,B,E,A,C,D,F){let U=Math.pow(u-E,2)+Math.pow(B-A,2),z=Math.sqrt(U),k=1;k=z<200?1:z>500?0.4:-0.0016668*z+1.233334;let f=C.maxRandomnessOffset||0;f*f*100>U&&(f=z/10);let l=f/2,b=0.2+0.2*$Y0(C),M=C.bowing*C.maxRandomnessOffset*(A-B)/200,Z=C.bowing*C.maxRandomnessOffset*(u-E)/200;M=l3(M,C,k),Z=l3(Z,C,k);let J=[],w=()=>l3(l,C,k),K=()=>l3(f,C,k),Q=C.preserveVertices;return D&&(F?J.push({op:"move",data:[u+(Q?0:w()),B+(Q?0:w())]}):J.push({op:"move",data:[u+(Q?0:l3(f,C,k)),B+(Q?0:l3(f,C,k))]})),F?J.push({op:"bcurveTo",data:[M+u+(E-u)*b+w(),Z+B+(A-B)*b+w(),M+u+2*(E-u)*b+w(),Z+B+2*(A-B)*b+w(),E+(Q?0:w()),A+(Q?0:w())]}):J.push({op:"bcurveTo",data:[M+u+(E-u)*b+K(),Z+B+(A-B)*b+K(),M+u+2*(E-u)*b+K(),Z+B+2*(A-B)*b+K(),E+(Q?0:K()),A+(Q?0:K())]}),J}function yi(u,B,E){if(!u.length)return[];let A=[];A.push([u[0][0]+l3(B,E),u[0][1]+l3(B,E)]),A.push([u[0][0]+l3(B,E),u[0][1]+l3(B,E)]);for(let C=1;C<u.length;C++)A.push([u[C][0]+l3(B,E),u[C][1]+l3(B,E)]),C===u.length-1&&A.push([u[C][0]+l3(B,E),u[C][1]+l3(B,E)]);return pi(A,null,E)}function pi(u,B,E){let A=u.length,C=[];if(A>3){let D=[],F=1-E.curveTightness;C.push({op:"move",data:[u[1][0],u[1][1]]});for(let U=1;U+2<A;U++){let z=u[U];D[0]=[z[0],z[1]],D[1]=[z[0]+(F*u[U+1][0]-F*u[U-1][0])/6,z[1]+(F*u[U+1][1]-F*u[U-1][1])/6],D[2]=[u[U+1][0]+(F*u[U][0]-F*u[U+2][0])/6,u[U+1][1]+(F*u[U][1]-F*u[U+2][1])/6],D[3]=[u[U+1][0],u[U+1][1]],C.push({op:"bcurveTo",data:[D[1][0],D[1][1],D[2][0],D[2][1],D[3][0],D[3][1]]})}if(B&&B.length===2){let U=E.maxRandomnessOffset;C.push({op:"lineTo",data:[B[0]+l3(U,E),B[1]+l3(U,E)]})}}else A===3?(C.push({op:"move",data:[u[1][0],u[1][1]]}),C.push({op:"bcurveTo",data:[u[1][0],u[1][1],u[2][0],u[2][1],u[2][0],u[2][1]]})):A===2&&C.push(...l30(u[0][0],u[0][1],u[1][0],u[1][1],E,!0,!0));return C}function YY0(u,B,E,A,C,D,F,U){let z=[],k=[];if(U.roughness===0){u/=4,k.push([B+A*Math.cos(-u),E+C*Math.sin(-u)]);for(let f=0;f<=2*Math.PI;f+=u){let l=[B+A*Math.cos(f),E+C*Math.sin(f)];z.push(l),k.push(l)}k.push([B+A*Math.cos(0),E+C*Math.sin(0)]),k.push([B+A*Math.cos(u),E+C*Math.sin(u)])}else{let f=l3(0.5,U)-Math.PI/2;k.push([l3(D,U)+B+0.9*A*Math.cos(f-u),l3(D,U)+E+0.9*C*Math.sin(f-u)]);let l=2*Math.PI+f-0.01;for(let b=f;b<l;b+=u){let M=[l3(D,U)+B+A*Math.cos(b),l3(D,U)+E+C*Math.sin(b)];z.push(M),k.push(M)}k.push([l3(D,U)+B+A*Math.cos(f+2*Math.PI+0.5*F),l3(D,U)+E+C*Math.sin(f+2*Math.PI+0.5*F)]),k.push([l3(D,U)+B+0.98*A*Math.cos(f+F),l3(D,U)+E+0.98*C*Math.sin(f+F)]),k.push([l3(D,U)+B+0.9*A*Math.cos(f+0.5*F),l3(D,U)+E+0.9*C*Math.sin(f+0.5*F)])}return[k,z]}function RY0(u,B,E,A,C,D,F,U,z){let k=D+l3(0.1,z),f=[];f.push([l3(U,z)+B+0.9*A*Math.cos(k-u),l3(U,z)+E+0.9*C*Math.sin(k-u)]);for(let l=k;l<=F;l+=u)f.push([l3(U,z)+B+A*Math.cos(l),l3(U,z)+E+C*Math.sin(l)]);return f.push([B+A*Math.cos(F),E+C*Math.sin(F)]),f.push([B+A*Math.cos(F),E+C*Math.sin(F)]),pi(f,null,z)}function J84(u,B,E,A,C,D,F,U){let z=[],k=[U.maxRandomnessOffset||1,(U.maxRandomnessOffset||1)+0.3],f=[0,0],l=U.disableMultiStroke?1:2,b=U.preserveVertices;for(let M=0;M<l;M++)M===0?z.push({op:"move",data:[F[0],F[1]]}):z.push({op:"move",data:[F[0]+(b?0:l3(k[0],U)),F[1]+(b?0:l3(k[0],U))]}),f=b?[C,D]:[C+l3(k[M],U),D+l3(k[M],U)],z.push({op:"bcurveTo",data:[u+l3(k[M],U),B+l3(k[M],U),E+l3(k[M],U),A+l3(k[M],U),f[0],f[1]]});return z}function JS(u){return[...u]}function TY0(u,B=0){let E=u.length;if(E<3)throw Error("A curve must have at least three points.");let A=[];if(E===3)A.push(JS(u[0]),JS(u[1]),JS(u[2]),JS(u[2]));else{let C=[];C.push(u[0],u[0]);for(let U=1;U<u.length;U++)C.push(u[U]),U===u.length-1&&C.push(u[U]);let D=[],F=1-B;A.push(JS(C[0]));for(let U=1;U+2<C.length;U++){let z=C[U];D[0]=[z[0],z[1]],D[1]=[z[0]+(F*C[U+1][0]-F*C[U-1][0])/6,z[1]+(F*C[U+1][1]-F*C[U-1][1])/6],D[2]=[C[U+1][0]+(F*C[U][0]-F*C[U+2][0])/6,C[U+1][1]+(F*C[U][1]-F*C[U+2][1])/6],D[3]=[C[U+1][0],C[U+1][1]],A.push(D[1],D[2],D[3])}}return A}function _i(u,B){return Math.pow(u[0]-B[0],2)+Math.pow(u[1]-B[1],2)}function w84(u,B,E){let A=_i(B,E);if(A===0)return _i(u,B);let C=((u[0]-B[0])*(E[0]-B[0])+(u[1]-B[1])*(E[1]-B[1]))/A;return C=Math.max(0,Math.min(1,C)),_i(u,_Z(B,E,C))}function _Z(u,B,E){return[u[0]+(B[0]-u[0])*E,u[1]+(B[1]-u[1])*E]}function b30(u,B,E,A){let C=A||[];if(function(U,z){let k=U[z+0],f=U[z+1],l=U[z+2],b=U[z+3],M=3*f[0]-2*k[0]-b[0];M*=M;let Z=3*f[1]-2*k[1]-b[1];Z*=Z;let J=3*l[0]-2*b[0]-k[0];J*=J;let w=3*l[1]-2*b[1]-k[1];return w*=w,M<J&&(M=J),Z<w&&(Z=w),M+Z}(u,B)<E){let U=u[B+0];if(C.length)(D=C[C.length-1],F=U,Math.sqrt(_i(D,F)))>1&&C.push(U);else C.push(U);C.push(u[B+3])}else{let z=u[B+0],k=u[B+1],f=u[B+2],l=u[B+3],b=_Z(z,k,0.5),M=_Z(k,f,0.5),Z=_Z(f,l,0.5),J=_Z(b,M,0.5),w=_Z(M,Z,0.5),K=_Z(J,w,0.5);b30([z,b,J,K],0,E,C),b30([K,w,Z,l],0,E,C)}var D,F;return C}function K84(u,B){return di(u,0,u.length,B)}function di(u,B,E,A,C){let D=C||[],F=u[B],U=u[E-1],z=0,k=1;for(let f=B+1;f<E-1;++f){let l=w84(u[f],F,U);l>z&&(z=l,k=f)}return Math.sqrt(z)>A?(di(u,B,k+1,A,D),di(u,k,E,A,D)):(D.length||D.push(F),D.push(U)),D}function k30(u,B=0.15,E){let A=[],C=(u.length-1)/3;for(let D=0;D<C;D++)b30(u,3*D,B,A);return E&&E>0?di(A,0,A.length,E):A}class wS{constructor(u){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=u||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2147483648)}_o(u){return u?Object.assign({},this.defaultOptions,u):this.defaultOptions}_d(u,B,E){return{shape:u,sets:B||[],options:E||this.defaultOptions}}line(u,B,E,A,C){let D=this._o(C);return this._d("line",[mY0(u,B,E,A,D)],D)}rectangle(u,B,E,A,C){let D=this._o(C),F=[],U=Z84(u,B,E,A,D);if(D.fill){let z=[[u,B],[u+E,B],[u+E,B+A],[u,B+A]];D.fillStyle==="solid"?F.push(z30([z],D)):F.push(SG([z],D))}return D.stroke!==DE&&F.push(U),this._d("rectangle",F,D)}ellipse(u,B,E,A,C){let D=this._o(C),F=[],U=rY0(E,A,D),z=f30(u,B,D,U);if(D.fill)if(D.fillStyle==="solid"){let k=f30(u,B,D,U).opset;k.type="fillPath",F.push(k)}else F.push(SG([z.estimatedPoints],D));return D.stroke!==DE&&F.push(z.opset),this._d("ellipse",F,D)}circle(u,B,E,A){let C=this.ellipse(u,B,E,E,A);return C.shape="circle",C}linearPath(u,B){let E=this._o(B);return this._d("linearPath",[gi(u,!1,E)],E)}arc(u,B,E,A,C,D,F=!1,U){let z=this._o(U),k=[],f=vY0(u,B,E,A,C,D,F,!0,z);if(F&&z.fill)if(z.fillStyle==="solid"){let l=Object.assign({},z);l.disableMultiStroke=!0;let b=vY0(u,B,E,A,C,D,!0,!1,l);b.type="fillPath",k.push(b)}else k.push(function(l,b,M,Z,J,w,K){let Q=l,G=b,L=Math.abs(M/2),H=Math.abs(Z/2);L+=l3(0.01*L,K),H+=l3(0.01*H,K);let q=J,x=w;for(;q<0;)q+=2*Math.PI,x+=2*Math.PI;x-q>2*Math.PI&&(q=0,x=2*Math.PI);let v=(x-q)/K.curveStepCount,W=[];for(let S=q;S<=x;S+=v)W.push([Q+L*Math.cos(S),G+H*Math.sin(S)]);return W.push([Q+L*Math.cos(x),G+H*Math.sin(x)]),W.push([Q,G]),SG([W],K)}(u,B,E,A,C,D,z));return z.stroke!==DE&&k.push(f),this._d("arc",k,z)}curve(u,B){let E=this._o(B),A=[],C=xY0(u,E);if(E.fill&&E.fill!==DE)if(E.fillStyle==="solid"){let D=xY0(u,Object.assign(Object.assign({},E),{disableMultiStroke:!0,roughness:E.roughness?E.roughness+E.fillShapeRoughnessGain:0}));A.push({type:"fillPath",ops:this._mergedShape(D.ops)})}else{let D=[],F=u;if(F.length){let U=typeof F[0][0]=="number"?[F]:F;for(let z of U)z.length<3?D.push(...z):z.length===3?D.push(...k30(TY0([z[0],z[0],z[1],z[2]]),10,(1+E.roughness)/2)):D.push(...k30(TY0(z),10,(1+E.roughness)/2))}D.length&&A.push(SG([D],E))}return E.stroke!==DE&&A.push(C),this._d("curve",A,E)}polygon(u,B){let E=this._o(B),A=[],C=gi(u,!0,E);return E.fill&&(E.fillStyle==="solid"?A.push(z30([u],E)):A.push(SG([u],E))),E.stroke!==DE&&A.push(C),this._d("polygon",A,E)}path(u,B){let E=this._o(B),A=[];if(!u)return this._d("path",A,E);u=(u||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let C=E.fill&&E.fill!=="transparent"&&E.fill!==DE,D=E.stroke!==DE,F=!!(E.simplification&&E.simplification<1),U=function(k,f,l){let b=VY0(aY0(M30(k))),M=[],Z=[],J=[0,0],w=[],K=()=>{w.length>=4&&Z.push(...k30(w,f)),w=[]},Q=()=>{K(),Z.length&&(M.push(Z),Z=[])};for(let{key:L,data:H}of b)switch(L){case"M":Q(),J=[H[0],H[1]],Z.push(J);break;case"L":K(),Z.push([H[0],H[1]]);break;case"C":if(!w.length){let q=Z.length?Z[Z.length-1]:J;w.push([q[0],q[1]])}w.push([H[0],H[1]]),w.push([H[2],H[3]]),w.push([H[4],H[5]]);break;case"Z":K(),Z.push([J[0],J[1]])}if(Q(),!l)return M;let G=[];for(let L of M){let H=K84(L,l);H.length&&G.push(H)}return G}(u,1,F?4-4*(E.simplification||1):(1+E.roughness)/2),z=SY0(u,E);if(C)if(E.fillStyle==="solid")if(U.length===1){let k=SY0(u,Object.assign(Object.assign({},E),{disableMultiStroke:!0,roughness:E.roughness?E.roughness+E.fillShapeRoughnessGain:0}));A.push({type:"fillPath",ops:this._mergedShape(k.ops)})}else A.push(z30(U,E));else A.push(SG(U,E));return D&&(F?U.forEach((k)=>{A.push(gi(k,!1,E))}):A.push(z)),this._d("path",A,E)}opsToPath(u,B){let E="";for(let A of u.ops){let C=typeof B=="number"&&B>=0?A.data.map((D)=>+D.toFixed(B)):A.data;switch(A.op){case"move":E+=`M${C[0]} ${C[1]} `;break;case"bcurveTo":E+=`C${C[0]} ${C[1]}, ${C[2]} ${C[3]}, ${C[4]} ${C[5]} `;break;case"lineTo":E+=`L${C[0]} ${C[1]} `}}return E.trim()}toPaths(u){let B=u.sets||[],E=u.options||this.defaultOptions,A=[];for(let C of B){let D=null;switch(C.type){case"path":D={d:this.opsToPath(C),stroke:E.stroke,strokeWidth:E.strokeWidth,fill:DE};break;case"fillPath":D={d:this.opsToPath(C),stroke:DE,strokeWidth:0,fill:E.fill||DE};break;case"fillSketch":D=this.fillSketch(C,E)}D&&A.push(D)}return A}fillSketch(u,B){let E=B.fillWeight;return E<0&&(E=B.strokeWidth/2),{d:this.opsToPath(u),stroke:B.fill||DE,strokeWidth:E,fill:DE}}_mergedShape(u){return u.filter((B,E)=>E===0||B.op!=="move")}}class yY0{constructor(u,B){this.canvas=u,this.ctx=this.canvas.getContext("2d"),this.gen=new wS(B)}draw(u){let B=u.sets||[],E=u.options||this.getDefaultOptions(),A=this.ctx,C=u.options.fixedDecimalPlaceDigits;for(let D of B)switch(D.type){case"path":A.save(),A.strokeStyle=E.stroke==="none"?"transparent":E.stroke,A.lineWidth=E.strokeWidth,E.strokeLineDash&&A.setLineDash(E.strokeLineDash),E.strokeLineDashOffset&&(A.lineDashOffset=E.strokeLineDashOffset),this._drawToContext(A,D,C),A.restore();break;case"fillPath":{A.save(),A.fillStyle=E.fill||"";let F=u.shape==="curve"||u.shape==="polygon"||u.shape==="path"?"evenodd":"nonzero";this._drawToContext(A,D,C,F),A.restore();break}case"fillSketch":this.fillSketch(A,D,E)}}fillSketch(u,B,E){let A=E.fillWeight;A<0&&(A=E.strokeWidth/2),u.save(),E.fillLineDash&&u.setLineDash(E.fillLineDash),E.fillLineDashOffset&&(u.lineDashOffset=E.fillLineDashOffset),u.strokeStyle=E.fill||"",u.lineWidth=A,this._drawToContext(u,B,E.fixedDecimalPlaceDigits),u.restore()}_drawToContext(u,B,E,A="nonzero"){u.beginPath();for(let C of B.ops){let D=typeof E=="number"&&E>=0?C.data.map((F)=>+F.toFixed(E)):C.data;switch(C.op){case"move":u.moveTo(D[0],D[1]);break;case"bcurveTo":u.bezierCurveTo(D[0],D[1],D[2],D[3],D[4],D[5]);break;case"lineTo":u.lineTo(D[0],D[1])}}B.type==="fillPath"?u.fill(A):u.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(u,B,E,A,C){let D=this.gen.line(u,B,E,A,C);return this.draw(D),D}rectangle(u,B,E,A,C){let D=this.gen.rectangle(u,B,E,A,C);return this.draw(D),D}ellipse(u,B,E,A,C){let D=this.gen.ellipse(u,B,E,A,C);return this.draw(D),D}circle(u,B,E,A){let C=this.gen.circle(u,B,E,A);return this.draw(C),C}linearPath(u,B){let E=this.gen.linearPath(u,B);return this.draw(E),E}polygon(u,B){let E=this.gen.polygon(u,B);return this.draw(E),E}arc(u,B,E,A,C,D,F=!1,U){let z=this.gen.arc(u,B,E,A,C,D,F,U);return this.draw(z),z}curve(u,B){let E=this.gen.curve(u,B);return this.draw(E),E}path(u,B){let E=this.gen.path(u,B);return this.draw(E),E}}class cY0{constructor(u,B){this.svg=u,this.gen=new wS(B)}draw(u){let B=u.sets||[],E=u.options||this.getDefaultOptions(),A=this.svg.ownerDocument||window.document,C=A.createElementNS(ci,"g"),D=u.options.fixedDecimalPlaceDigits;for(let F of B){let U=null;switch(F.type){case"path":U=A.createElementNS(ci,"path"),U.setAttribute("d",this.opsToPath(F,D)),U.setAttribute("stroke",E.stroke),U.setAttribute("stroke-width",E.strokeWidth+""),U.setAttribute("fill","none"),E.strokeLineDash&&U.setAttribute("stroke-dasharray",E.strokeLineDash.join(" ").trim()),E.strokeLineDashOffset&&U.setAttribute("stroke-dashoffset",`${E.strokeLineDashOffset}`);break;case"fillPath":U=A.createElementNS(ci,"path"),U.setAttribute("d",this.opsToPath(F,D)),U.setAttribute("stroke","none"),U.setAttribute("stroke-width","0"),U.setAttribute("fill",E.fill||""),u.shape!=="curve"&&u.shape!=="polygon"||U.setAttribute("fill-rule","evenodd");break;case"fillSketch":U=this.fillSketch(A,F,E)}U&&C.appendChild(U)}return C}fillSketch(u,B,E){let A=E.fillWeight;A<0&&(A=E.strokeWidth/2);let C=u.createElementNS(ci,"path");return C.setAttribute("d",this.opsToPath(B,E.fixedDecimalPlaceDigits)),C.setAttribute("stroke",E.fill||""),C.setAttribute("stroke-width",A+""),C.setAttribute("fill","none"),E.fillLineDash&&C.setAttribute("stroke-dasharray",E.fillLineDash.join(" ").trim()),E.fillLineDashOffset&&C.setAttribute("stroke-dashoffset",`${E.fillLineDashOffset}`),C}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(u,B){return this.gen.opsToPath(u,B)}line(u,B,E,A,C){let D=this.gen.line(u,B,E,A,C);return this.draw(D)}rectangle(u,B,E,A,C){let D=this.gen.rectangle(u,B,E,A,C);return this.draw(D)}ellipse(u,B,E,A,C){let D=this.gen.ellipse(u,B,E,A,C);return this.draw(D)}circle(u,B,E,A){let C=this.gen.circle(u,B,E,A);return this.draw(C)}linearPath(u,B){let E=this.gen.linearPath(u,B);return this.draw(E)}polygon(u,B){let E=this.gen.polygon(u,B);return this.draw(E)}arc(u,B,E,A,C,D,F=!1,U){let z=this.gen.arc(u,B,E,A,C,D,F,U);return this.draw(z)}curve(u,B){let E=this.gen.curve(u,B);return this.draw(E)}path(u,B){let E=this.gen.path(u,B);return this.draw(E)}}var OY0,IY0,C8,b84=0,F30=1,XY0=2,$i,M84,DE="none",ci="http://www.w3.org/2000/svg",Ou;var j4=g(()=>{OY0=class OY0 extends si{fillPolygons(u,B){let E=B.hachureGap;E<0&&(E=4*B.strokeWidth),E=Math.max(E,0.1);let A=KS(u,Object.assign({},B,{hachureGap:E})),C=Math.PI/180*B.hachureAngle,D=[],F=0.5*E*Math.cos(C),U=0.5*E*Math.sin(C);for(let[z,k]of A)oi([z,k])&&D.push([[z[0]-F,z[1]+U],[...k]],[[z[0]+F,z[1]-U],[...k]]);return{type:"fillSketch",ops:this.renderLines(D,B)}}};IY0=class IY0 extends si{fillPolygons(u,B){let E=this._fillPolygons(u,B),A=Object.assign({},B,{hachureAngle:B.hachureAngle+90}),C=this._fillPolygons(u,A);return E.ops=E.ops.concat(C.ops),E}};C8={};$i={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};M84={randOffset:function(u,B){return l3(u,B)},randOffsetWithRange:function(u,B,E){return ni(u,B,E)},ellipse:function(u,B,E,A,C){let D=rY0(E,A,C);return f30(u,B,C,D).opset},doubleLineOps:function(u,B,E,A,C){return pf(u,B,E,A,C,!0)}};Ou={canvas:(u,B)=>new yY0(u,B),svg:(u,B)=>new cY0(u,B),generator:(u)=>new wS(u),newSeed:()=>wS.newSeed()}});function k1(u){let B=u.map((E,A)=>`${A===0?"M":"L"}${E.x},${E.y}`);return B.push("Z"),B.join(" ")}function df(u,B,E,A,C,D){let F=[],U=50,z=E-u,k=A-B,f=z/D,l=2*Math.PI/f,b=B+k/2;for(let M=0;M<=50;M++){let Z=M/50,J=u+Z*z,w=b+C*Math.sin(l*(J-u));F.push({x:J,y:w})}return F}function GS(u,B,E,A,C,D){let F=[],U=C*Math.PI/180,f=(D*Math.PI/180-U)/(A-1);for(let l=0;l<A;l++){let b=U+l*f,M=u+E*Math.cos(b),Z=B+E*Math.sin(b);F.push({x:-M,y:-Z})}return F}function w30(u){let B=Array.from(u.childNodes).filter((z)=>z.tagName==="path"),E=document.createElementNS("http://www.w3.org/2000/svg","path"),A=B.map((z)=>z.getAttribute("d")).filter((z)=>z!==null).join(" ");E.setAttribute("d",A);let C=B.find((z)=>z.getAttribute("fill")!=="none"),D=B.find((z)=>z.getAttribute("stroke")!=="none"),F=X((z,k)=>{return z?.getAttribute(k)??void 0},"getAttr");if(C){let z={fill:F(C,"fill"),"fill-opacity":F(C,"fill-opacity")??"1"};Object.entries(z).forEach(([k,f])=>{if(f)E.setAttribute(k,f)})}if(D){let z={stroke:F(D,"stroke"),"stroke-width":F(D,"stroke-width")??"1","stroke-opacity":F(D,"stroke-opacity")??"1"};Object.entries(z).forEach(([k,f])=>{if(f)E.setAttribute(k,f)})}let U=document.createElementNS("http://www.w3.org/2000/svg","g");return U.appendChild(E),U}function CR0(u,B){return u.intersect(B)}function DR0(u,B,E,A){var{x:C,y:D}=u,F=C-A.x,U=D-A.y,z=Math.sqrt(B*B*U*U+E*E*F*F),k=Math.abs(B*E*F/z);if(A.x<C)k=-k;var f=Math.abs(B*E*U/z);if(A.y<D)f=-f;return{x:C+k,y:D+f}}function UR0(u,B,E){return FR0(u,B,B,E)}function zR0(u,B,E,A){{let C=B.y-u.y,D=u.x-B.x,F=B.x*u.y-u.x*B.y,U=C*E.x+D*E.y+F,z=C*A.x+D*A.y+F,k=0.000001;if(U!==0&&z!==0&&K30(U,z))return;let f=A.y-E.y,l=E.x-A.x,b=A.x*E.y-E.x*A.y,M=f*u.x+l*u.y+b,Z=f*B.x+l*B.y+b;if(Math.abs(M)<0.000001&&Math.abs(Z)<0.000001&&K30(M,Z))return;let J=C*l-f*D;if(J===0)return;let w=Math.abs(J/2),K=D*b-l*F,Q=K<0?(K-w)/J:(K+w)/J;K=f*F-C*b;let G=K<0?(K-w)/J:(K+w)/J;return{x:Q,y:G}}}function K30(u,B){return u*B>0}function kR0(u,B,E){let{x:A,y:C}=u,D=[],F=Number.POSITIVE_INFINITY,U=Number.POSITIVE_INFINITY;if(typeof B.forEach==="function")B.forEach(function(f){F=Math.min(F,f.x),U=Math.min(U,f.y)});else F=Math.min(F,B.x),U=Math.min(U,B.y);let z=A-u.width/2-F,k=C-u.height/2-U;for(let f=0;f<B.length;f++){let l=B[f],b=B[f<B.length-1?f+1:0],M=R84(u,E,{x:z+l.x,y:k+l.y},{x:z+b.x,y:k+b.y});if(M)D.push(M)}if(!D.length)return u;if(D.length>1)D.sort(function(f,l){let b=f.x-E.x,M=f.y-E.y,Z=Math.sqrt(b*b+M*M),J=l.x-E.x,w=l.y-E.y,K=Math.sqrt(J*J+w*w);return Z<K?-1:Z===K?0:1});return D[0]}function fR0(u,B){let{labelStyles:E}=H4(B);B.labelStyle=E;let A=z3(B),C=A;if(!A)C="anchor";let D=u.insert("g").attr("class",C).attr("id",B.domId||B.id),F=1,{cssStyles:U}=B,z=Ou.svg(D),k=S4(B,{fill:"black",stroke:"none",fillStyle:"solid"});if(B.look!=="handDrawn")k.roughness=0;let f=z.circle(0,0,F*2,k),l=D.insert(()=>f,":first-child");return l.attr("class","anchor").attr("style",L2(U)),a4(B,l),B.intersect=function(b){return z0.info("Circle intersect",B,F,b),L4.circle(B,F,b)},D}function Q30(u,B,E,A,C,D,F){let z=(u+E)/2,k=(B+A)/2,f=Math.atan2(A-B,E-u),l=(E-u)/2,b=(A-B)/2,M=l/C,Z=b/D,J=Math.sqrt(M**2+Z**2);if(J>1)throw Error("The given radii are too small to create an arc between the points.");let w=Math.sqrt(1-J**2),K=z+w*D*Math.sin(f)*(F?-1:1),Q=k-w*C*Math.cos(f)*(F?-1:1),G=Math.atan2((B-Q)/D,(u-K)/C),H=Math.atan2((A-Q)/D,(E-K)/C)-G;if(F&&H<0)H+=2*Math.PI;if(!F&&H>0)H-=2*Math.PI;let q=[];for(let x=0;x<20;x++){let v=x/19,W=G+v*H,S=K+C*Math.cos(W),T=Q+D*Math.sin(W);q.push({x:S,y:T})}return q}function lR0(u,B,E){let[A,C]=[B,E].sort((D,F)=>F-D);return C*(1-Math.sqrt(1-(u/A/2)**2))}async function bR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C,U=X((W)=>W+F,"calcTotalHeight"),z=X((W)=>{let S=W/2;return[S/(2.5+W/50),S]},"calcEllipseRadius"),{shapeSvg:k,bbox:f}=await b3(u,B,z3(B)),l=U(B?.height?B?.height:f.height),[b,M]=z(l),Z=lR0(l,b,M),w=(B?.width?B?.width:f.width)+D*2+Z-Z,K=l,{cssStyles:Q}=B,G=[{x:w/2,y:-K/2},{x:-w/2,y:-K/2},...Q30(-w/2,-K/2,-w/2,K/2,b,M,!1),{x:w/2,y:K/2},...Q30(w/2,K/2,w/2,-K/2,b,M,!0)],L=Ou.svg(k),H=S4(B,{});if(B.look!=="handDrawn")H.roughness=0,H.fillStyle="solid";let q=k1(G),x=L.path(q,H),v=k.insert(()=>x,":first-child");if(v.attr("class","basic label-container outer-path"),Q&&B.look!=="handDrawn")v.selectAll("path").attr("style",Q);if(A&&B.look!=="handDrawn")v.selectAll("path").attr("style",A);return v.attr("transform",`translate(${b/2}, 0)`),a4(B,v),B.intersect=function(W){return L4.polygon(B,G,W)},k}function Iz(u,B,E,A){return u.insert("polygon",":first-child").attr("points",A.map(function(C){return C.x+","+C.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-B/2+","+E/2+")")}async function MR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?28:C,F=B.look==="neo"?24:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.width??z.width)+(B.look==="neo"?D*2:D+ti),f=(B?.height??z.height)+(B.look==="neo"?F*2:F),l=0,b=k,M=-f,Z=0,J=[{x:l+ti,y:M},{x:b,y:M},{x:b,y:Z},{x:l,y:Z},{x:l,y:M+ti},{x:l+ti,y:M}],w,{cssStyles:K}=B;if(B.look==="handDrawn"){let Q=Ou.svg(U),G=S4(B,{}),L=k1(J),H=Q.path(L,G);if(w=U.insert(()=>H,":first-child").attr("transform",`translate(${-k/2}, ${f/2})`),K)w.attr("style",K)}else w=Iz(U,k,f,J);if(A)w.attr("style",A);return a4(B,w),B.intersect=function(Q){return L4.polygon(B,J,Q)},U}function ZR0(u,B){let{nodeStyles:E}=H4(B);B.label="";let A=u.insert("g").attr("class",z3(B)).attr("id",B.domId??B.id),{cssStyles:C}=B,D=Math.max(28,B.width??0),F=[{x:0,y:D/2},{x:D/2,y:0},{x:0,y:-D/2},{x:-D/2,y:0}],U=Ou.svg(A),z=S4(B,{});if(B.look!=="handDrawn")z.roughness=0,z.fillStyle="solid";let k=k1(F),f=U.path(k,z),l=A.insert(()=>f,":first-child");if(C&&B.look!=="handDrawn")l.selectAll("path").attr("style",C);if(E&&B.look!=="handDrawn")l.selectAll("path").attr("style",E);return B.width=28,B.height=28,B.intersect=function(b){return L4.polygon(B,F,b)},A}async function G30(u,B,E){let{labelStyles:A,nodeStyles:C}=H4(B);B.labelStyle=A;let{shapeSvg:D,bbox:F,halfPadding:U}=await b3(u,B,z3(B)),z=16,k=E?.padding??U,f=B.look==="neo"?F.width/2+z*2:F.width/2+k,l,{cssStyles:b}=B;if(B.look==="handDrawn"){let M=Ou.svg(D),Z=S4(B,{}),J=M.circle(0,0,f*2,Z);l=D.insert(()=>J,":first-child"),l.attr("class","basic label-container").attr("style",L2(b))}else l=D.insert("circle",":first-child").attr("class","basic label-container").attr("style",C).attr("r",f).attr("cx",0).attr("cy",0);return a4(B,l),B.calcIntersect=function(M,Z){let J=M.width/2;return L4.circle(M,J,Z)},B.intersect=function(M){return z0.info("Circle intersect",B,f,M),L4.circle(B,f,M)},D}function JR0(u){let B=Math.cos(Math.PI/4),E=Math.sin(Math.PI/4),A=u*2,C={x:A/2*B,y:A/2*E},D={x:-(A/2)*B,y:A/2*E},F={x:-(A/2)*B,y:-(A/2)*E},U={x:A/2*B,y:-(A/2)*E};return`M ${D.x},${D.y} L ${U.x},${U.y}
M ${C.x},${C.y} L ${F.x},${F.y}`}function wR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E,B.label="";let C=u.insert("g").attr("class",z3(B)).attr("id",B.domId??B.id),D=Math.max(30,B?.width??0),{cssStyles:F}=B,U=Ou.svg(C),z=S4(B,{});if(B.look!=="handDrawn")z.roughness=0,z.fillStyle="solid";let k=U.circle(0,0,D*2,z),f=JR0(D),l=U.path(f,z),b=C.insert(()=>k,":first-child");if(b.insert(()=>l),b.attr("class","outer-path"),F&&B.look!=="handDrawn")b.selectAll("path").attr("style",F);if(A&&B.look!=="handDrawn")b.selectAll("path").attr("style",A);return a4(B,b),B.intersect=function(M){return z0.info("crossedCircle intersect",B,{radius:D,point:M}),L4.circle(B,D,M)},C}function Rz(u,B,E,A=100,C=0,D=180){let F=[],U=C*Math.PI/180,f=(D*Math.PI/180-U)/(A-1);for(let l=0;l<A;l++){let b=U+l*f,M=u+E*Math.cos(b),Z=B+E*Math.sin(b);F.push({x:-M,y:-Z})}return F}async function KR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,label:F}=await b3(u,B,z3(B)),U=B.look==="neo"?18:B.padding??0,z=B.look==="neo"?12:B.padding??0,k=D.width+U,f=D.height+z,l=Math.max(5,f*0.1),{cssStyles:b}=B,M=[...Rz(k/2,-f/2,l,30,-90,0),{x:-k/2-l,y:l},...Rz(k/2+l*2,-l,l,20,-180,-270),...Rz(k/2+l*2,l,l,20,-90,-180),{x:-k/2-l,y:-f/2},...Rz(k/2,f/2,l,20,0,90)],Z=[{x:k/2,y:-f/2-l},{x:-k/2,y:-f/2-l},...Rz(k/2,-f/2,l,20,-90,0),{x:-k/2-l,y:-l},...Rz(k/2+k*0.1,-l,l,20,-180,-270),...Rz(k/2+k*0.1,l,l,20,-90,-180),{x:-k/2-l,y:f/2},...Rz(k/2,f/2,l,20,0,90),{x:-k/2,y:f/2+l},{x:k/2,y:f/2+l}],J=Ou.svg(C),w=S4(B,{fill:"none"});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let Q=k1(M).replace("Z",""),G=J.path(Q,w),L=k1(Z),H=J.path(L,{...w}),q=C.insert("g",":first-child");if(q.insert(()=>H,":first-child").attr("stroke-opacity",0),q.insert(()=>G,":first-child"),q.attr("class","text"),b&&B.look!=="handDrawn")q.selectAll("path").attr("style",b);if(A&&B.look!=="handDrawn")q.selectAll("path").attr("style",A);return q.attr("transform",`translate(${l}, 0)`),F.attr("transform",`translate(${-k/2+l-(D.x-(D.left??0))},${-f/2+(B.padding??0)/2-(D.y-(D.top??0))})`),a4(B,q),B.intersect=function(x){return L4.polygon(B,Z,x)},C}function Tz(u,B,E,A=100,C=0,D=180){let F=[],U=C*Math.PI/180,f=(D*Math.PI/180-U)/(A-1);for(let l=0;l<A;l++){let b=U+l*f,M=u+E*Math.cos(b),Z=B+E*Math.sin(b);F.push({x:M,y:Z})}return F}async function QR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,label:F}=await b3(u,B,z3(B)),U=B.look==="neo"?18:B.padding??0,z=B.look==="neo"?12:B.padding??0,k=D.width+(B.look==="neo"?U*2:U),f=D.height+(B.look==="neo"?z*2:z),l=Math.max(5,f*0.1),{cssStyles:b}=B,M=[...Tz(k/2,-f/2,l,20,-90,0),{x:k/2+l,y:-l},...Tz(k/2+l*2,-l,l,20,-180,-270),...Tz(k/2+l*2,l,l,20,-90,-180),{x:k/2+l,y:f/2},...Tz(k/2,f/2,l,20,0,90)],Z=[{x:-k/2,y:-f/2-l},{x:k/2,y:-f/2-l},...Tz(k/2,-f/2,l,20,-90,0),{x:k/2+l,y:-l},...Tz(k/2+l*2,-l,l,20,-180,-270),...Tz(k/2+l*2,l,l,20,-90,-180),{x:k/2+l,y:f/2},...Tz(k/2,f/2,l,20,0,90),{x:k/2,y:f/2+l},{x:-k/2,y:f/2+l}],J=Ou.svg(C),w=S4(B,{fill:"none"});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let Q=k1(M).replace("Z",""),G=J.path(Q,w),L=k1(Z),H=J.path(L,{...w}),q=C.insert("g",":first-child");if(q.insert(()=>H,":first-child").attr("stroke-opacity",0),q.insert(()=>G,":first-child"),q.attr("class","text"),b&&B.look!=="handDrawn")q.selectAll("path").attr("style",b);if(A&&B.look!=="handDrawn")q.selectAll("path").attr("style",A);return q.attr("transform",`translate(${-l}, 0)`),F.attr("transform",`translate(${-k/2+(B.padding??0)/2-(D.x-(D.left??0))},${-f/2+(B.padding??0)/2-(D.y-(D.top??0))})`),a4(B,q),B.intersect=function(x){return L4.polygon(B,Z,x)},C}function u7(u,B,E,A=100,C=0,D=180){let F=[],U=C*Math.PI/180,f=(D*Math.PI/180-U)/(A-1);for(let l=0;l<A;l++){let b=U+l*f,M=u+E*Math.cos(b),Z=B+E*Math.sin(b);F.push({x:-M,y:-Z})}return F}async function GR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,label:F}=await b3(u,B,z3(B)),U=B.look==="neo"?18:B.padding??0,z=B.look==="neo"?12:B.padding??0,k=D.width+(B.look==="neo"?U*2:U),f=D.height+(B.look==="neo"?z*2:z),l=Math.max(5,f*0.1),{cssStyles:b}=B,M=[...u7(k/2,-f/2,l,30,-90,0),{x:-k/2-l,y:l},...u7(k/2+l*2,-l,l,20,-180,-270),...u7(k/2+l*2,l,l,20,-90,-180),{x:-k/2-l,y:-f/2},...u7(k/2,f/2,l,20,0,90)],Z=[...u7(-k/2+l+l/2,-f/2,l,20,-90,-180),{x:k/2-l/2,y:l},...u7(-k/2-l/2,-l,l,20,0,90),...u7(-k/2-l/2,l,l,20,-90,0),{x:k/2-l/2,y:-l},...u7(-k/2+l+l/2,f/2,l,30,-180,-270)],J=[{x:k/2,y:-f/2-l},{x:-k/2,y:-f/2-l},...u7(k/2,-f/2,l,20,-90,0),{x:-k/2-l,y:-l},...u7(k/2+l*2,-l,l,20,-180,-270),...u7(k/2+l*2,l,l,20,-90,-180),{x:-k/2-l,y:f/2},...u7(k/2,f/2,l,20,0,90),{x:-k/2,y:f/2+l},{x:k/2-l-l/2,y:f/2+l},...u7(-k/2+l+l/2,-f/2,l,20,-90,-180),{x:k/2-l/2,y:l},...u7(-k/2-l/2,-l,l,20,0,90),...u7(-k/2-l/2,l,l,20,-90,0),{x:k/2-l/2,y:-l},...u7(-k/2+l+l/2,f/2,l,30,-180,-270)],w=Ou.svg(C),K=S4(B,{fill:"none"});if(B.look!=="handDrawn")K.roughness=0,K.fillStyle="solid";let G=k1(M).replace("Z",""),L=w.path(G,K),q=k1(Z).replace("Z",""),x=w.path(q,K),v=k1(J),W=w.path(v,{...K}),S=C.insert("g",":first-child");if(S.insert(()=>W,":first-child").attr("stroke-opacity",0),S.insert(()=>L,":first-child"),S.insert(()=>x,":first-child"),S.attr("class","text"),b&&B.look!=="handDrawn")S.selectAll("path").attr("style",b);if(A&&B.look!=="handDrawn")S.selectAll("path").attr("style",A);return S.attr("transform",`translate(${l-l/4}, 0)`),F.attr("transform",`translate(${-k/2+(B.padding??0)/2-(D.x-(D.left??0))},${-f/2+(B.padding??0)/2-(D.y-(D.top??0))})`),a4(B,S),B.intersect=function(T){return L4.polygon(B,J,T)},C}async function HR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C,U=20,z=5,{shapeSvg:k,bbox:f}=await b3(u,B,z3(B)),l=Math.max(U,(f.width+D*2)*1.25,B?.width??0),b=Math.max(z,f.height+F*2,B?.height??0),M=b/2,{cssStyles:Z}=B,J=Ou.svg(k),w=S4(B,{});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let K=l,Q=b,G=K-M,L=Q/4,H=[{x:G,y:0},{x:L,y:0},{x:0,y:Q/2},{x:L,y:Q},{x:G,y:Q},...GS(-G,-Q/2,M,50,270,90)],q=k1(H),x=J.path(q,w),v=k.insert(()=>x,":first-child");if(v.attr("class","basic label-container outer-path"),Z&&B.look!=="handDrawn")v.selectChildren("path").attr("style",Z);if(A&&B.look!=="handDrawn")v.selectChildren("path").attr("style",A);return v.attr("transform",`translate(${-l/2}, ${-b/2})`),a4(B,v),B.intersect=function(W){return L4.polygon(B,H,W)},k}async function LR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?24:C,F=B.look==="neo"?24:C;if(B.width||B.height){let w=B.width??0;if(B.width=(B.width??0)-F,B.width<_Y0)B.width=_Y0;let Q=w/2/(2.5+w/50);if(B.height=(B.height??0)-D-Q*3,B.height<gY0)B.height=gY0}let{shapeSvg:U,bbox:z,label:k}=await b3(u,B,z3(B)),f=(B.width?B.width:z.width)+F,l=f/2,b=l/(2.5+f/50),M=(B.height?B.height:z.height)+D+b,Z,{cssStyles:J}=B;if(B.look==="handDrawn"){let w=Ou.svg(U),K=I84(0,0,f,M,l,b),Q=P84(0,b,f,M,l,b),G=S4(B,{}),L=w.path(K,G),H=w.path(Q,S4(B,{fill:"none"}));if(Z=U.insert(()=>H,":first-child"),Z=U.insert(()=>L,":first-child"),Z.attr("class","basic label-container"),J)Z.attr("style",J)}else{let w=O84(0,0,f,M,l,b);Z=U.insert("path",":first-child").attr("d",w).attr("class","basic label-container outer-path").attr("style",L2(J)).attr("style",A)}return Z.attr("label-offset-y",b),Z.attr("transform",`translate(${-f/2}, ${-(M/2+b)})`),a4(B,Z),k.attr("transform",`translate(${-(z.width/2)-(z.x-(z.left??0))}, ${-(z.height/2)+(B.padding??0)/1.5-(z.y-(z.top??0))})`),B.intersect=function(w){let K=L4.rect(B,w),Q=K.x-(B.x??0);if(l!=0&&(Math.abs(Q)<(B.width??0)/2||Math.abs(Q)==(B.width??0)/2&&Math.abs(K.y-(B.y??0))>(B.height??0)/2-b)){let G=b*b*(1-Q*Q/(l*l));if(G>0)G=Math.sqrt(G);if(G=b-G,w.y-(B.y??0)>0)G=-G;K.y+=G}return K},U}async function TG(u,B,E){let{labelStyles:A,nodeStyles:C}=H4(B);B.labelStyle=A;let{shapeSvg:D,bbox:F}=await b3(u,B,z3(B)),U=Math.max(F.width+E.labelPaddingX*2,B?.width||0),z=Math.max(F.height+E.labelPaddingY*2,B?.height||0),k=-U/2,f=-z/2,l,{rx:b,ry:M}=B,{cssStyles:Z}=B;if(E?.rx&&E.ry)b=E.rx,M=E.ry;if(B.look==="handDrawn"){let J=Ou.svg(D),w=S4(B,{}),K=b||M?J.path(sf(k,f,U,z,b||0),w):J.rectangle(k,f,U,z,w);l=D.insert(()=>K,":first-child"),l.attr("class","basic label-container").attr("style",L2(Z))}else l=D.insert("rect",":first-child"),l.attr("class","basic label-container").attr("style",C).attr("rx",L2(b)).attr("ry",L2(M)).attr("x",k).attr("y",f).attr("width",U).attr("height",z);return a4(B,l),B.calcIntersect=function(J,w){return L4.rect(J,w)},B.intersect=function(J){return L4.rect(B,J)},D}async function qR0(u,B){let{cssClasses:E,labelPaddingX:A,labelPaddingY:C,padding:D,width:F,height:U}=B,z={rx:0,ry:0,classes:E??"",labelPaddingX:A??(D??0)*2,labelPaddingY:C??D??0},k=await TG(u,B,z);if(B.look==="handDrawn"){let M=Ou.svg(k),Z=S4(B,{}),J=k.select(".basic.label-container > path:nth-child(2)"),w=J.node();if(!w)return k;let K=null;if(w instanceof SVGGraphicsElement)K=w.getBBox();else return k;return k.insert(()=>M.line(K.x,K.y,K.x+K.width,K.y,Z),".basic.label-container g.label"),k.insert(()=>M.line(K.x,K.y+K.height,K.x+K.width,K.y+K.height,Z),".basic.label-container g.label"),J.remove(),k}let f=k.select(".basic.label-container"),l=(Number(f.attr("width"))||F)??0,b=(Number(f.attr("height"))||U)??0;if(l>0&&b>0)f.attr("stroke-dasharray",`${l} ${b}`);return k}async function XR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.look==="neo"?16:B.padding??0,D=B.look==="neo"?16:B.padding??0,{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=U.width+C,f=U.height+D,l=f*0.2,b=-k/2,M=-f/2-l/2,{cssStyles:Z}=B,J=Ou.svg(F),w=S4(B,{});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let K=[{x:b,y:M+l},{x:-b,y:M+l},{x:-b,y:-M},{x:b,y:-M},{x:b,y:M},{x:-b,y:M},{x:-b,y:M+l}],Q=J.polygon(K.map((L)=>[L.x,L.y]),w),G=F.insert(()=>Q,":first-child");if(G.attr("class","basic label-container outer-path"),Z&&B.look!=="handDrawn")G.selectAll("path").attr("style",Z);if(A&&B.look!=="handDrawn")G.selectAll("path").attr("style",A);return z.attr("transform",`translate(${b+(B.padding??0)/2-(U.x-(U.left??0))}, ${M+l+(B.padding??0)/2-(U.y-(U.top??0))})`),a4(B,G),B.intersect=function(L){return L4.rect(B,L)},F}async function xR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B),C=B.look==="neo"?12:5;B.labelStyle=E;let D=B.padding??0,F=B.look==="neo"?16:D,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.width?B?.width/2:z.width/2)+(F??0),f=k-C,l,{cssStyles:b}=B;if(B.look==="handDrawn"){let M=Ou.svg(U),Z=S4(B,{roughness:0.2,strokeWidth:2.5}),J=S4(B,{roughness:0.2,strokeWidth:1.5}),w=M.circle(0,0,k*2,Z),K=M.circle(0,0,f*2,J);l=U.insert("g",":first-child"),l.attr("class",L2(B.cssClasses)).attr("style",L2(b)),l.node()?.appendChild(w),l.node()?.appendChild(K)}else{l=U.insert("g",":first-child");let M=l.insert("circle",":first-child"),Z=l.insert("circle");l.attr("class","basic label-container").attr("style",A),M.attr("class","outer-circle").attr("style",A).attr("r",k).attr("cx",0).attr("cy",0),Z.attr("class","inner-circle").attr("style",A).attr("r",f).attr("cx",0).attr("cy",0)}return a4(B,l),B.intersect=function(M){return z0.info("DoubleCircle intersect",B,k,M),L4.circle(B,k,M)},U}function vR0(u,B,{config:{themeVariables:E}}){let{labelStyles:A,nodeStyles:C}=H4(B);B.label="",B.labelStyle=A;let D=u.insert("g").attr("class",z3(B)).attr("id",B.domId??B.id),F=7,{cssStyles:U}=B,z=Ou.svg(D),{nodeBorder:k}=E,f=S4(B,{fillStyle:"solid"});if(B.look!=="handDrawn")f.roughness=0;let l=z.circle(0,0,F*2,f),b=D.insert(()=>l,":first-child");if(b.selectAll("path").attr("style",`fill: ${k} !important;`),U&&U.length>0&&B.look!=="handDrawn")b.selectAll("path").attr("style",U);if(C&&B.look!=="handDrawn")b.selectAll("path").attr("style",C);return a4(B,b),B.intersect=function(M){return z0.info("filledCircle intersect",B,{radius:F,point:M}),L4.circle(B,F,M)},D}async function SR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?C*2:C;if(B.width||B.height){if(B.height=B?.height??0,B.height<nY0)B.height=nY0;if(B.width=(B?.width??0)-D-D/2,B.width<pY0)B.width=pY0}let{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=(B?.width?B?.width:U.width)+(D??0),f=B?.height?B?.height:k+U.height,l=f,b=[{x:0,y:-f},{x:l,y:-f},{x:l/2,y:0}],{cssStyles:M}=B,Z=Ou.svg(F),J=S4(B,{});if(B.look!=="handDrawn")J.roughness=0,J.fillStyle="solid";let w=k1(b),K=Z.path(w,J),Q=F.insert(()=>K,":first-child").attr("transform",`translate(${-f/2}, ${f/2})`).attr("class","outer-path");if(M&&B.look!=="handDrawn")Q.selectChildren("path").attr("style",M);if(A&&B.look!=="handDrawn")Q.selectChildren("path").attr("style",A);return B.width=k,B.height=f,a4(B,Q),z.attr("transform",`translate(${-U.width/2-(U.x-(U.left??0))}, ${-f/2+(B.padding??0)/2+(U.y-(U.top??0))})`),B.intersect=function(G){return z0.info("Triangle intersect",B,b,G),L4.polygon(B,b,G)},F}function WR0(u,B,{dir:E,config:{state:A,themeVariables:C}}){let{nodeStyles:D}=H4(B);B.label="";let F=u.insert("g").attr("class",z3(B)).attr("id",B.domId??B.id),{cssStyles:U}=B,z=Math.max(70,B?.width??0),k=Math.max(10,B?.height??0);if(E==="LR")z=Math.max(10,B?.width??0),k=Math.max(70,B?.height??0);let f=-1*z/2,l=-1*k/2,b=Ou.svg(F),M=S4(B,{stroke:C.lineColor,fill:C.lineColor});if(B.look!=="handDrawn")M.roughness=0,M.fillStyle="solid";let Z=b.rectangle(f,l,z,k,M),J=F.insert(()=>Z,":first-child");if(U&&B.look!=="handDrawn")J.selectAll("path").attr("style",U);if(D&&B.look!=="handDrawn")J.selectAll("path").attr("style",D);a4(B,J);let w=A?.padding??0;if(B.width&&B.height)B.width+=w/2||0,B.height+=w/2||0;return B.intersect=function(K){return L4.rect(B,K)},F}async function YR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=15,D=10,F=B.look==="neo"?16:B.padding??0,U=B.look==="neo"?12:B.padding??0;if(B.width||B.height){if(B.height=(B?.height??0)-U*2,B.height<D)B.height=D;if(B.width=(B?.width??0)-F*2,B.width<C)B.width=C}let{shapeSvg:z,bbox:k}=await b3(u,B,z3(B)),f=(B?.width?B?.width:Math.max(C,k.width))+F*2,l=(B?.height?B?.height:Math.max(D,k.height))+U*2,b=l/2,{cssStyles:M}=B,Z=Ou.svg(z),J=S4(B,{});if(B.look!=="handDrawn")J.roughness=0,J.fillStyle="solid";let w=[{x:-f/2,y:-l/2},{x:f/2-b,y:-l/2},...GS(-f/2+b,0,b,50,90,270),{x:f/2-b,y:l/2},{x:-f/2,y:l/2}],K=k1(w),Q=Z.path(K,J),G=z.insert(()=>Q,":first-child");if(G.attr("class","basic label-container outer-path"),M&&B.look!=="handDrawn")G.selectChildren("path").attr("style",M);if(A&&B.look!=="handDrawn")G.selectChildren("path").attr("style",A);return a4(B,G),B.intersect=function(L){return z0.info("Pill intersect",B,{radius:b,point:L}),L4.polygon(B,w,L)},z}async function RR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B),C=B.look==="neo"?3.5:4;B.labelStyle=E;let D=B.padding??0,F=70,U=32,z=B.look==="neo"?F:D,k=B.look==="neo"?U:D;if(B.width||B.height){let G=(B.height??0)/C;B.width=(B?.width??0)-2*G-k,B.height=(B.height??0)-z}let{shapeSvg:f,bbox:l}=await b3(u,B,z3(B)),b=(B?.height?B?.height:l.height)+z,M=b/C,Z=(B?.width?B?.width:l.width)+2*M+k,J=[{x:M,y:0},{x:Z-M,y:0},{x:Z,y:-b/2},{x:Z-M,y:-b},{x:M,y:-b},{x:0,y:-b/2}],w,{cssStyles:K}=B;if(B.look==="handDrawn"){let Q=Ou.svg(f),G=S4(B,{}),L=j84(0,0,Z,b,M),H=Q.path(L,G);if(w=f.insert(()=>H,":first-child").attr("transform",`translate(${-Z/2}, ${b/2})`),K)w.attr("style",K)}else w=Iz(f,Z,b,J);if(A)w.attr("style",A);return B.width=Z,B.height=b,a4(B,w),B.intersect=function(Q){return L4.polygon(B,J,Q)},f}async function TR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.label="",B.labelStyle=E;let{shapeSvg:C}=await b3(u,B,z3(B)),D=Math.max(30,B?.width??0),F=Math.max(30,B?.height??0),{cssStyles:U}=B,z=Ou.svg(C),k=S4(B,{});if(B.look!=="handDrawn")k.roughness=0,k.fillStyle="solid";let f=[{x:0,y:0},{x:D,y:0},{x:0,y:F},{x:D,y:F}],l=k1(f),b=z.path(l,k),M=C.insert(()=>b,":first-child");if(M.attr("class","basic label-container outer-path"),U&&B.look!=="handDrawn")M.selectChildren("path").attr("style",U);if(A&&B.look!=="handDrawn")M.selectChildren("path").attr("style",A);return M.attr("transform",`translate(${-D/2}, ${-F/2})`),a4(B,M),B.intersect=function(Z){return z0.info("Pill intersect",B,{points:f}),L4.polygon(B,f,Z)},C}async function OR0(u,B,{config:{themeVariables:E,flowchart:A}}){let{labelStyles:C}=H4(B);B.labelStyle=C;let D=B.assetHeight??48,F=B.assetWidth??48,U=Math.max(D,F),z=A?.wrappingWidth;B.width=Math.max(U,z??0);let{shapeSvg:k,bbox:f,label:l}=await b3(u,B,"icon-shape default"),b=B.pos==="t",M=U,Z=U,{nodeBorder:J}=E,{stylesMap:w}=rZ(B),K=-Z/2,Q=-M/2,G=B.label?8:0,L=Ou.svg(k),H=S4(B,{stroke:"none",fill:"none"});if(B.look!=="handDrawn")H.roughness=0,H.fillStyle="solid";let q=L.rectangle(K,Q,Z,M,H),x=Math.max(Z,f.width),v=M+f.height+G,W=L.rectangle(-x/2,-v/2,x,v,{...H,fill:"transparent",stroke:"none"}),S=k.insert(()=>q,":first-child"),T=k.insert(()=>W);if(B.icon){let R=k.append("g");R.html(`<g>${await CE(B.icon,{height:U,width:U,fallbackPrefix:""})}</g>`);let Y=R.node().getBBox(),a=Y.width,I=Y.height,O=Y.x,i=Y.y;R.attr("transform",`translate(${-a/2-O},${b?f.height/2+G/2-I/2-i:-f.height/2-G/2-I/2-i})`),R.attr("style",`color: ${w.get("stroke")??J};`)}return l.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${b?-v/2:v/2-f.height})`),S.attr("transform",`translate(0,${b?f.height/2+G/2:-f.height/2-G/2})`),a4(B,T),B.intersect=function(R){if(z0.info("iconSquare intersect",B,R),!B.label)return L4.rect(B,R);let Y=B.x??0,a=B.y??0,I=B.height??0,O=[];if(b)O=[{x:Y-f.width/2,y:a-I/2},{x:Y+f.width/2,y:a-I/2},{x:Y+f.width/2,y:a-I/2+f.height+G},{x:Y+Z/2,y:a-I/2+f.height+G},{x:Y+Z/2,y:a+I/2},{x:Y-Z/2,y:a+I/2},{x:Y-Z/2,y:a-I/2+f.height+G},{x:Y-f.width/2,y:a-I/2+f.height+G}];else O=[{x:Y-Z/2,y:a-I/2},{x:Y+Z/2,y:a-I/2},{x:Y+Z/2,y:a-I/2+M},{x:Y+f.width/2,y:a-I/2+M},{x:Y+f.width/2/2,y:a+I/2},{x:Y-f.width/2,y:a+I/2},{x:Y-f.width/2,y:a-I/2+M},{x:Y-Z/2,y:a-I/2+M}];return L4.polygon(B,O,R)},k}async function IR0(u,B,{config:{themeVariables:E,flowchart:A}}){let{labelStyles:C}=H4(B);B.labelStyle=C;let D=B.assetHeight??48,F=B.assetWidth??48,U=Math.max(D,F),z=A?.wrappingWidth;B.width=Math.max(U,z??0);let{shapeSvg:k,bbox:f,label:l}=await b3(u,B,"icon-shape default"),b=20,M=B.label?8:0,Z=B.pos==="t",{nodeBorder:J,mainBkg:w}=E,{stylesMap:K}=rZ(B),Q=Ou.svg(k),G=S4(B,{});if(B.look!=="handDrawn")G.roughness=0,G.fillStyle="solid";let L=K.get("fill");G.stroke=L??w;let H=k.append("g");if(B.icon)H.html(`<g>${await CE(B.icon,{height:U,width:U,fallbackPrefix:""})}</g>`);let q=H.node().getBBox(),x=q.width,v=q.height,W=q.x,S=q.y,T=Math.max(x,v)*Math.SQRT2+b*2,R=Q.circle(0,0,T,G),Y=Math.max(T,f.width),a=T+f.height+M,I=Q.rectangle(-Y/2,-a/2,Y,a,{...G,fill:"transparent",stroke:"none"}),O=k.insert(()=>R,":first-child"),i=k.insert(()=>I);return H.attr("transform",`translate(${-x/2-W},${Z?f.height/2+M/2-v/2-S:-f.height/2-M/2-v/2-S})`),H.attr("style",`color: ${K.get("stroke")??J};`),l.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${Z?-a/2:a/2-f.height})`),O.attr("transform",`translate(0,${Z?f.height/2+M/2:-f.height/2-M/2})`),a4(B,i),B.intersect=function(N){return z0.info("iconSquare intersect",B,N),L4.rect(B,N)},k}async function PR0(u,B,{config:{themeVariables:E,flowchart:A}}){let{labelStyles:C}=H4(B);B.labelStyle=C;let D=B.assetHeight??48,F=B.assetWidth??48,U=Math.max(D,F),z=A?.wrappingWidth;B.width=Math.max(U,z??0);let{shapeSvg:k,bbox:f,halfPadding:l,label:b}=await b3(u,B,"icon-shape default"),M=B.pos==="t",Z=U+l*2,J=U+l*2,{nodeBorder:w,mainBkg:K}=E,{stylesMap:Q}=rZ(B),G=-J/2,L=-Z/2,H=B.label?8:0,q=Ou.svg(k),x=S4(B,{});if(B.look!=="handDrawn")x.roughness=0,x.fillStyle="solid";let v=Q.get("fill");x.stroke=v??K;let W=q.path(sf(G,L,J,Z,5),x),S=Math.max(J,f.width),T=Z+f.height+H,R=q.rectangle(-S/2,-T/2,S,T,{...x,fill:"transparent",stroke:"none"}),Y=k.insert(()=>W,":first-child").attr("class","icon-shape2"),a=k.insert(()=>R);if(B.icon){let I=k.append("g");I.html(`<g>${await CE(B.icon,{height:U,width:U,fallbackPrefix:""})}</g>`);let O=I.node().getBBox(),i=O.width,N=O.height,V=O.x,h=O.y;I.attr("transform",`translate(${-i/2-V},${M?f.height/2+H/2-N/2-h:-f.height/2-H/2-N/2-h})`),I.attr("style",`color: ${Q.get("stroke")??w};`)}return b.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${M?-T/2:T/2-f.height})`),Y.attr("transform",`translate(0,${M?f.height/2+H/2:-f.height/2-H/2})`),a4(B,a),B.intersect=function(I){if(z0.info("iconSquare intersect",B,I),!B.label)return L4.rect(B,I);let O=B.x??0,i=B.y??0,N=B.height??0,V=[];if(M)V=[{x:O-f.width/2,y:i-N/2},{x:O+f.width/2,y:i-N/2},{x:O+f.width/2,y:i-N/2+f.height+H},{x:O+J/2,y:i-N/2+f.height+H},{x:O+J/2,y:i+N/2},{x:O-J/2,y:i+N/2},{x:O-J/2,y:i-N/2+f.height+H},{x:O-f.width/2,y:i-N/2+f.height+H}];else V=[{x:O-J/2,y:i-N/2},{x:O+J/2,y:i-N/2},{x:O+J/2,y:i-N/2+Z},{x:O+f.width/2,y:i-N/2+Z},{x:O+f.width/2/2,y:i+N/2},{x:O-f.width/2,y:i+N/2},{x:O-f.width/2,y:i-N/2+Z},{x:O-J/2,y:i-N/2+Z}];return L4.polygon(B,V,I)},k}async function jR0(u,B,{config:{themeVariables:E,flowchart:A}}){let{labelStyles:C}=H4(B);B.labelStyle=C;let D=B.assetHeight??48,F=B.assetWidth??48,U=Math.max(D,F),z=A?.wrappingWidth;B.width=Math.max(U,z??0);let{shapeSvg:k,bbox:f,halfPadding:l,label:b}=await b3(u,B,"icon-shape default"),M=B.pos==="t",Z=U+l*2,J=U+l*2,{nodeBorder:w,mainBkg:K}=E,{stylesMap:Q}=rZ(B),G=-J/2,L=-Z/2,H=B.label?8:0,q=Ou.svg(k),x=S4(B,{});if(B.look!=="handDrawn")x.roughness=0,x.fillStyle="solid";let v=Q.get("fill");x.stroke=v??K;let W=q.path(sf(G,L,J,Z,0.1),x),S=Math.max(J,f.width),T=Z+f.height+H,R=q.rectangle(-S/2,-T/2,S,T,{...x,fill:"transparent",stroke:"none"}),Y=k.insert(()=>W,":first-child"),a=k.insert(()=>R);if(B.icon){let I=k.append("g");I.html(`<g>${await CE(B.icon,{height:U,width:U,fallbackPrefix:""})}</g>`);let O=I.node().getBBox(),i=O.width,N=O.height,V=O.x,h=O.y;I.attr("transform",`translate(${-i/2-V},${M?f.height/2+H/2-N/2-h:-f.height/2-H/2-N/2-h})`),I.attr("style",`color: ${Q.get("stroke")??w};`)}return b.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${M?-T/2:T/2-f.height})`),Y.attr("transform",`translate(0,${M?f.height/2+H/2:-f.height/2-H/2})`),a4(B,a),B.intersect=function(I){if(z0.info("iconSquare intersect",B,I),!B.label)return L4.rect(B,I);let O=B.x??0,i=B.y??0,N=B.height??0,V=[];if(M)V=[{x:O-f.width/2,y:i-N/2},{x:O+f.width/2,y:i-N/2},{x:O+f.width/2,y:i-N/2+f.height+H},{x:O+J/2,y:i-N/2+f.height+H},{x:O+J/2,y:i+N/2},{x:O-J/2,y:i+N/2},{x:O-J/2,y:i-N/2+f.height+H},{x:O-f.width/2,y:i-N/2+f.height+H}];else V=[{x:O-J/2,y:i-N/2},{x:O+J/2,y:i-N/2},{x:O+J/2,y:i-N/2+Z},{x:O+f.width/2,y:i-N/2+Z},{x:O+f.width/2/2,y:i+N/2},{x:O-f.width/2,y:i+N/2},{x:O-f.width/2,y:i-N/2+Z},{x:O-J/2,y:i-N/2+Z}];return L4.polygon(B,V,I)},k}async function NR0(u,B,{config:{flowchart:E}}){let A=new Image;A.src=B?.img??"",await A.decode();let C=Number(A.naturalWidth.toString().replace("px","")),D=Number(A.naturalHeight.toString().replace("px",""));B.imageAspectRatio=C/D;let{labelStyles:F}=H4(B);B.labelStyle=F;let U=E?.wrappingWidth;B.defaultWidth=E?.wrappingWidth;let z=Math.max(B.label?U??0:0,B?.assetWidth??C),k=B.constraint==="on"?B?.assetHeight?B.assetHeight*B.imageAspectRatio:z:z,f=B.constraint==="on"?k/B.imageAspectRatio:B?.assetHeight??D;B.width=Math.max(k,U??0);let{shapeSvg:l,bbox:b,label:M}=await b3(u,B,"image-shape default"),Z=B.pos==="t",J=-k/2,w=-f/2,K=B.label?8:0,Q=Ou.svg(l),G=S4(B,{});if(B.look!=="handDrawn")G.roughness=0,G.fillStyle="solid";let L=Q.rectangle(J,w,k,f,G),H=Math.max(k,b.width),q=f+b.height+K,x=Q.rectangle(-H/2,-q/2,H,q,{...G,fill:"none",stroke:"none"}),v=l.insert(()=>L,":first-child"),W=l.insert(()=>x);if(B.img){let S=l.append("image");S.attr("href",B.img),S.attr("width",k),S.attr("height",f),S.attr("preserveAspectRatio","none"),S.attr("transform",`translate(${-k/2},${Z?q/2-f:-q/2})`)}return M.attr("transform",`translate(${-b.width/2-(b.x-(b.left??0))},${Z?-f/2-b.height/2-K/2:f/2-b.height/2+K/2})`),v.attr("transform",`translate(0,${Z?b.height/2+K/2:-b.height/2-K/2})`),a4(B,W),B.intersect=function(S){if(z0.info("iconSquare intersect",B,S),!B.label)return L4.rect(B,S);let T=B.x??0,R=B.y??0,Y=B.height??0,a=[];if(Z)a=[{x:T-b.width/2,y:R-Y/2},{x:T+b.width/2,y:R-Y/2},{x:T+b.width/2,y:R-Y/2+b.height+K},{x:T+k/2,y:R-Y/2+b.height+K},{x:T+k/2,y:R+Y/2},{x:T-k/2,y:R+Y/2},{x:T-k/2,y:R-Y/2+b.height+K},{x:T-b.width/2,y:R-Y/2+b.height+K}];else a=[{x:T-k/2,y:R-Y/2},{x:T+k/2,y:R-Y/2},{x:T+k/2,y:R-Y/2+f},{x:T+b.width/2,y:R-Y/2+f},{x:T+b.width/2/2,y:R+Y/2},{x:T-b.width/2,y:R+Y/2},{x:T-b.width/2,y:R-Y/2+f},{x:T-k/2,y:R-Y/2+f}];return L4.polygon(B,a,S)},l}async function iR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=C,F=B.look==="neo"?C*2:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=Math.max(z.width+(F??0)*2,B?.width??0),f=Math.max(z.height+(D??0)*2,B?.height??0),l=[{x:0,y:0},{x:k,y:0},{x:k+3*f/6,y:-f},{x:-3*f/6,y:-f}],b,{cssStyles:M}=B;if(B.look==="handDrawn"){let Z=Ou.svg(U),J=S4(B,{}),w=k1(l),K=Z.path(w,J);if(b=U.insert(()=>K,":first-child").attr("transform",`translate(${-k/2}, ${f/2})`),M)b.attr("style",M)}else b=Iz(U,k,f,l);if(A)b.attr("style",A);return B.width=k,B.height=f,a4(B,b),B.intersect=function(Z){return L4.polygon(B,l,Z)},U}async function aR0(u,B){let{shapeSvg:E,bbox:A,label:C}=await b3(u,B,"label"),D=E.insert("rect",":first-child"),F=0.1,U=0.1;return D.attr("width",0.1).attr("height",0.1),E.attr("class","label edgeLabel"),C.attr("transform",`translate(${-(A.width/2)-(A.x-(A.left??0))}, ${-(A.height/2)-(A.y-(A.top??0))})`),a4(B,D),B.intersect=function(z){return L4.rect(B,z)},E}async function VR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=C,F=B.look==="neo"?C*2:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.height??z.height)+D,f=(B?.width??z.width)+F,l=[{x:0,y:0},{x:f+3*k/6,y:0},{x:f,y:-k},{x:-(3*k)/6,y:-k}],b,{cssStyles:M}=B;if(B.look==="handDrawn"){let Z=Ou.svg(U),J=S4(B,{}),w=k1(l),K=Z.path(w,J);if(b=U.insert(()=>K,":first-child").attr("transform",`translate(${-f/2}, ${k/2})`),M)b.attr("style",M)}else b=Iz(U,f,k,l);if(A)b.attr("style",A);return B.width=f,B.height=k,a4(B,b),B.intersect=function(Z){return L4.polygon(B,l,Z)},U}async function hR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=C,F=B.look==="neo"?C*2:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.height??z.height)+D,f=(B?.width??z.width)+F,l=[{x:-3*k/6,y:0},{x:f,y:0},{x:f+3*k/6,y:-k},{x:0,y:-k}],b,{cssStyles:M}=B;if(B.look==="handDrawn"){let Z=Ou.svg(U),J=S4(B,{}),w=k1(l),K=Z.path(w,J);if(b=U.insert(()=>K,":first-child").attr("transform",`translate(${-f/2}, ${k/2})`),M)b.attr("style",M)}else b=Iz(U,f,k,l);if(A)b.attr("style",A);return B.width=f,B.height=k,a4(B,b),B.intersect=function(Z){return L4.polygon(B,l,Z)},U}function mR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.label="",B.labelStyle=E;let C=u.insert("g").attr("class",z3(B)).attr("id",B.domId??B.id),{cssStyles:D}=B,F=Math.max(35,B?.width??0),U=Math.max(35,B?.height??0),z=7,k=[{x:F,y:0},{x:0,y:U+z/2},{x:F-2*z,y:U+z/2},{x:0,y:2*U},{x:F,y:U-z/2},{x:2*z,y:U-z/2}],f=Ou.svg(C),l=S4(B,{});if(B.look!=="handDrawn")l.roughness=0,l.fillStyle="solid";let b=k1(k),M=f.path(b,l),Z=C.insert(()=>M,":first-child");if(Z.attr("class","outer-path"),D&&B.look!=="handDrawn")Z.selectAll("path").attr("style",D);if(A&&B.look!=="handDrawn")Z.selectAll("path").attr("style",A);return Z.attr("transform",`translate(-${F/2},${-U})`),a4(B,Z),B.intersect=function(J){return z0.info("lightningBolt intersect",B,J),L4.polygon(B,k,J)},C}async function rR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?24:C;if(B.width||B.height){let K=B.width??0;if(B.width=(B.width??0)-D,B.width<sY0)B.width=sY0;let G=K/2/(2.5+K/50);if(B.height=(B.height??0)-F-G*3,B.height<dY0)B.height=dY0}let{shapeSvg:U,bbox:z,label:k}=await b3(u,B,z3(B)),f=(B?.width?B?.width:z.width)+D*2,l=f/2,b=l/(2.5+f/50),M=(B?.height?B?.height:z.height)+b+F*2,Z=M*0.1,J,{cssStyles:w}=B;if(B.look==="handDrawn"){let K=Ou.svg(U),Q=i84(0,0,f,M,l,b,Z),G=a84(0,b,f,M,l,b),L=S4(B,{}),H=K.path(Q,L),q=K.path(G,L);if(U.insert(()=>q,":first-child").attr("class","line"),J=U.insert(()=>H,":first-child"),J.attr("class","basic label-container"),w)J.attr("style",w)}else{let K=N84(0,0,f,M,l,b,Z);J=U.insert("path",":first-child").attr("d",K).attr("class","basic label-container outer-path").attr("style",L2(w)).attr("style",A)}return J.attr("label-offset-y",b),J.attr("transform",`translate(${-f/2}, ${-(M/2+b)})`),a4(B,J),k.attr("transform",`translate(${-(z.width/2)-(z.x-(z.left??0))}, ${-(z.height/2)+b-(z.y-(z.top??0))})`),B.intersect=function(K){let Q=L4.rect(B,K),G=Q.x-(B.x??0);if(l!=0&&(Math.abs(G)<(B.width??0)/2||Math.abs(G)==(B.width??0)/2&&Math.abs(Q.y-(B.y??0))>(B.height??0)/2-b)){let L=b*b*(1-G*G/(l*l));if(L>0)L=Math.sqrt(L);if(L=b-L,K.y-(B.y??0)>0)L=-L;Q.y+=L}return Q},U}async function $R0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C;if(B.width||B.height){let L=B.width;if(B.width=(L??0)*10/11-D*2,B.width<10)B.width=10;if(B.height=(B?.height??0)-F*2,B.height<10)B.height=10}let{shapeSvg:U,bbox:z,label:k}=await b3(u,B,z3(B)),f=(B?.width?B?.width:z.width)+(D??0)*2,l=(B?.height?B?.height:z.height)+(F??0)*2,b=B.look==="neo"?l/4:l/8,M=l+b,{cssStyles:Z}=B,J=Ou.svg(U),w=S4(B,{});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let K=[{x:-f/2-f/2*0.1,y:-M/2},{x:-f/2-f/2*0.1,y:M/2},...df(-f/2-f/2*0.1,M/2,f/2+f/2*0.1,M/2,b,0.8),{x:f/2+f/2*0.1,y:-M/2},{x:-f/2-f/2*0.1,y:-M/2},{x:-f/2,y:-M/2},{x:-f/2,y:M/2*1.1},{x:-f/2,y:-M/2}],Q=J.polygon(K.map((L)=>[L.x,L.y]),w),G=U.insert(()=>Q,":first-child");if(G.attr("class","basic label-container outer-path"),Z&&B.look!=="handDrawn")G.selectAll("path").attr("style",Z);if(A&&B.look!=="handDrawn")G.selectAll("path").attr("style",A);return G.attr("transform",`translate(0,${-b/2})`),k.attr("transform",`translate(${-f/2+(B.padding??0)+f/2*0.1/2-(z.x-(z.left??0))},${-l/2+(B.padding??0)-b/2-(z.y-(z.top??0))})`),a4(B,G),B.intersect=function(L){return L4.polygon(B,K,L)},U}async function yR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C,U=B.look==="neo"?10:5;if(B.width||B.height)B.width=Math.max((B?.width??0)-D*2-2*U,10),B.height=Math.max((B?.height??0)-F*2-2*U,10);let{shapeSvg:z,bbox:k,label:f}=await b3(u,B,z3(B)),l=(B?.width?B?.width:k.width)+D*2+2*U,b=(B?.height?B?.height:k.height)+F*2+2*U,M=l-2*U,Z=b-2*U,J=-M/2,w=-Z/2,{cssStyles:K}=B,Q=Ou.svg(z),G=S4(B,{}),L=[{x:J-U,y:w+U},{x:J-U,y:w+Z+U},{x:J+M-U,y:w+Z+U},{x:J+M-U,y:w+Z},{x:J+M,y:w+Z},{x:J+M,y:w+Z-U},{x:J+M+U,y:w+Z-U},{x:J+M+U,y:w-U},{x:J+U,y:w-U},{x:J+U,y:w},{x:J,y:w},{x:J,y:w+U}],H=[{x:J,y:w+U},{x:J+M-U,y:w+U},{x:J+M-U,y:w+Z},{x:J+M,y:w+Z},{x:J+M,y:w},{x:J,y:w}];if(B.look!=="handDrawn")G.roughness=0,G.fillStyle="solid";let q=k1(L),x=Q.path(q,G),v=k1(H),W=Q.path(v,G);if(B.look!=="handDrawn")x=w30(x),W=w30(W);let S=z.insert("g",":first-child");if(S.insert(()=>x),S.insert(()=>W),S.attr("class","basic label-container outer-path"),K&&B.look!=="handDrawn")S.selectAll("path").attr("style",K);if(A&&B.look!=="handDrawn")S.selectAll("path").attr("style",A);return f.attr("transform",`translate(${-(k.width/2)-U-(k.x-(k.left??0))}, ${-(k.height/2)+U-(k.y-(k.top??0))})`),a4(B,S),B.intersect=function(T){return L4.polygon(B,L,T)},z}async function cR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,label:F}=await b3(u,B,z3(B)),U=B.padding??0,z=B.look==="neo"?16:U,k=B.look==="neo"?12:U,f=!0;if(B.width||B.height)f=!1,B.width=(B?.width??0)-z*2,B.height=(B?.height??0)-k*3;let l=Math.max(D.width,B?.width??0)+z*2,b=Math.max(D.height,B?.height??0)+k*3,M=B.look==="neo"?b/4:b/8,Z=b+(f?M/2:-M/2),J=-l/2,w=-Z/2,K=10,{cssStyles:Q}=B,G=df(J-K,w+Z+K,J+l-K,w+Z+K,M,0.8),L=G?.[G.length-1],H=[{x:J-K,y:w+K},{x:J-K,y:w+Z+K},...G,{x:J+l-K,y:L.y-K},{x:J+l,y:L.y-K},{x:J+l,y:L.y-2*K},{x:J+l+K,y:L.y-2*K},{x:J+l+K,y:w-K},{x:J+K,y:w-K},{x:J+K,y:w},{x:J,y:w},{x:J,y:w+K}],q=[{x:J,y:w+K},{x:J+l-K,y:w+K},{x:J+l-K,y:L.y-K},{x:J+l,y:L.y-K},{x:J+l,y:w},{x:J,y:w}],x=Ou.svg(C),v=S4(B,{});if(B.look!=="handDrawn")v.roughness=0,v.fillStyle="solid";let W=k1(H),S=x.path(W,v),T=k1(q),R=x.path(T,v),Y=C.insert(()=>S,":first-child");if(Y.insert(()=>R),Y.attr("class","basic label-container outer-path"),Q&&B.look!=="handDrawn")Y.selectAll("path").attr("style",Q);if(A&&B.look!=="handDrawn")Y.selectAll("path").attr("style",A);return Y.attr("transform",`translate(0,${-M/2})`),F.attr("transform",`translate(${-(D.width/2)-K-(D.x-(D.left??0))}, ${-(D.height/2)+K-M/2-(D.y-(D.top??0))})`),a4(B,Y),B.intersect=function(a){return L4.polygon(B,H,a)},C}async function gR0(u,B,{config:{themeVariables:E}}){let{labelStyles:A,nodeStyles:C}=H4(B);if(B.labelStyle=A,!(B.useHtmlLabels||w1(F4())))B.centerLabel=!0;let{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=Math.max(U.width+(B.padding??0)*2,B?.width??0),f=Math.max(U.height+(B.padding??0)*2,B?.height??0),l=-k/2,b=-f/2,{cssStyles:M}=B,Z=Ou.svg(F),J=S4(B,{fill:E.noteBkgColor,stroke:E.noteBorderColor});if(B.look!=="handDrawn")J.roughness=0,J.fillStyle="solid";let w=Z.rectangle(l,b,k,f,J),K=F.insert(()=>w,":first-child");if(K.attr("class","basic label-container outer-path"),z.attr("class","label noteLabel"),M&&B.look!=="handDrawn")K.selectAll("path").attr("style",M);if(C&&B.look!=="handDrawn")K.selectAll("path").attr("style",C);return z.attr("transform",`translate(${-U.width/2-(U.x-(U.left??0))}, ${-(U.height/2)-(U.y-(U.top??0))})`),a4(B,K),B.intersect=function(Q){return L4.rect(B,Q)},F}async function _R0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D}=await b3(u,B,z3(B)),F=D.width+(B.padding??0),U=D.height+(B.padding??0),z=F+U,k=0.5,f=[{x:z/2,y:0},{x:z,y:-z/2},{x:z/2,y:-z},{x:0,y:-z/2}],l,{cssStyles:b}=B;if(B.look==="handDrawn"){let M=Ou.svg(C),Z=S4(B,{}),J=V84(0,0,z),w=M.path(J,Z);if(l=C.insert(()=>w,":first-child").attr("transform",`translate(${-z/2+k}, ${z/2})`),b)l.attr("style",b)}else l=Iz(C,z,z,f),l.attr("transform",`translate(${-z/2+k}, ${z/2})`);if(A)l.attr("style",A);return a4(B,l),B.calcIntersect=function(M,Z){let J=M.width,w=[{x:J/2,y:0},{x:J,y:-J/2},{x:J/2,y:-J},{x:0,y:-J/2}],K=L4.polygon(M,w,Z);return{x:K.x-0.5,y:K.y-0.5}},B.intersect=function(M){return this.calcIntersect(B,M)},C}async function nR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?21:C??0,F=B.look==="neo"?12:C??0,{shapeSvg:U,bbox:z,label:k}=await b3(u,B,z3(B)),f=(B?.width??z.width)+(B.look==="neo"?D*2:D),l=(B?.height??z.height)+(B.look==="neo"?F*2:F),b=-f/2,M=-l/2,Z=M/2,J=[{x:b+Z,y:M},{x:b,y:0},{x:b+Z,y:-M},{x:-b,y:-M},{x:-b,y:M}],{cssStyles:w}=B,K=Ou.svg(U),Q=S4(B,{});if(B.look!=="handDrawn")Q.roughness=0,Q.fillStyle="solid";let G=k1(J),L=K.path(G,Q),H=U.insert(()=>L,":first-child");if(H.attr("class","basic label-container outer-path"),w&&B.look!=="handDrawn")H.selectAll("path").attr("style",w);if(A&&B.look!=="handDrawn")H.selectAll("path").attr("style",A);return H.attr("transform",`translate(${-Z/2},0)`),k.attr("transform",`translate(${-Z/2-z.width/2-(z.x-(z.left??0))}, ${-(z.height/2)-(z.y-(z.top??0))})`),a4(B,H),B.intersect=function(q){return L4.polygon(B,J,q)},U}async function pR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C;if(!B.cssClasses)C="node default";else C="node "+B.cssClasses;let D=u.insert("g").attr("class",C).attr("id",B.domId||B.id),F=D.insert("g"),U=D.insert("g").attr("class","label").attr("style",A),z=B.description,k=B.label,f=await Oz(U,k,B.labelStyle,!0,!0),l={width:0,height:0};if(w1($0())){let v=f.children[0],W=Ku(f);l=v.getBoundingClientRect(),W.attr("width",l.width),W.attr("height",l.height)}z0.info("Text 2",z);let b=z||[],M=f.getBBox(),Z=await Oz(U,Array.isArray(b)?b.join("<br/>"):b,B.labelStyle,!0,!0),J=Z.children[0],w=Ku(Z);l=J.getBoundingClientRect(),w.attr("width",l.width),w.attr("height",l.height);let K=(B.padding||0)/2;Ku(Z).attr("transform","translate( "+(l.width>M.width?0:(M.width-l.width)/2)+", "+(M.height+K+5)+")"),Ku(f).attr("transform","translate( "+(l.width<M.width?0:-(M.width-l.width)/2)+", 0)"),l=U.node().getBBox(),U.attr("transform","translate("+-l.width/2+", "+(-l.height/2-K+3)+")");let Q=l.width+(B.padding||0),G=l.height+(B.padding||0),L=-l.width/2-K,H=-l.height/2-K,q,x;if(B.look==="handDrawn"){let v=Ou.svg(D),W=S4(B,{}),S=v.path(sf(L,H,Q,G,B.rx||0),W),T=v.line(-l.width/2-K,-l.height/2-K+M.height+K,l.width/2+K,-l.height/2-K+M.height+K,W);x=D.insert(()=>{return z0.debug("Rough node insert CXC",S),T},":first-child"),q=D.insert(()=>{return z0.debug("Rough node insert CXC",S),S},":first-child")}else q=F.insert("rect",":first-child"),x=F.insert("line"),q.attr("class","outer title-state").attr("style",A).attr("x",-l.width/2-K).attr("y",-l.height/2-K).attr("width",l.width+(B.padding||0)).attr("height",l.height+(B.padding||0)),x.attr("class","divider").attr("x1",-l.width/2-K).attr("x2",l.width/2+K).attr("y1",-l.height/2-K+M.height+K).attr("y2",-l.height/2-K+M.height+K);return a4(B,q),B.intersect=function(v){return L4.rect(B,v)},D}async function dR0(u,B,{config:{themeVariables:E}}){let A=E?.radius??5,C={rx:A,ry:A,classes:"",labelPaddingX:(B?.padding??0)*1,labelPaddingY:(B?.padding??0)*1};return TG(u,B,C)}async function sR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.look==="neo"?16:B.padding??0,D=B.look==="neo"?12:B.padding??0,{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=(B?.width??U.width)+C*2+(B.look==="neo"?nZ:nZ*2),f=(B?.height??U.height)+D*2,l=k-nZ,b=f,M=nZ-k/2,Z=-f/2,{cssStyles:J}=B,w=Ou.svg(F),K=S4(B,{});if(B.look!=="handDrawn")K.roughness=0,K.fillStyle="solid";let Q=[{x:M,y:Z},{x:M+l,y:Z},{x:M+l,y:Z+b},{x:M-nZ,y:Z+b},{x:M-nZ,y:Z},{x:M,y:Z},{x:M,y:Z+b}],G=w.polygon(Q.map((H)=>[H.x,H.y]),K),L=F.insert(()=>G,":first-child");if(L.attr("class","basic label-container outer-path").attr("style",L2(J)),A&&B.look!=="handDrawn")L.selectAll("path").attr("style",A);if(J&&B.look!=="handDrawn")L.selectAll("path").attr("style",A);return z.attr("transform",`translate(${nZ/2-U.width/2-(U.x-(U.left??0))}, ${-(U.height/2)-(U.y-(U.top??0))})`),a4(B,L),B.intersect=function(H){return L4.rect(B,H)},F}async function oR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C;if(B.width||B.height)B.width=Math.max((B?.width??0)-D*2,10),B.height=Math.max((B?.height??0)/1.5-F*2,10);let{shapeSvg:U,bbox:z,label:k}=await b3(u,B,z3(B)),f=(B?.width?B?.width:z.width)+D*2,l=((B?.height?B?.height:z.height)+F*2)*1.5,b=f,M=l/1.5,Z=-b/2,J=-M/2,{cssStyles:w}=B,K=Ou.svg(U),Q=S4(B,{});if(B.look!=="handDrawn")Q.roughness=0,Q.fillStyle="solid";let G=[{x:Z,y:J},{x:Z,y:J+M},{x:Z+b,y:J+M},{x:Z+b,y:J-M/2}],L=k1(G),H=K.path(L,Q),q=U.insert(()=>H,":first-child");if(q.attr("class","basic label-container outer-path"),w&&B.look!=="handDrawn")q.selectChildren("path").attr("style",w);if(A&&B.look!=="handDrawn")q.selectChildren("path").attr("style",A);return q.attr("transform",`translate(0, ${M/4})`),k.attr("transform",`translate(${-b/2+(B.padding??0)-(z.x-(z.left??0))}, ${-M/4+(B.padding??0)-(z.y-(z.top??0))})`),a4(B,q),B.intersect=function(x){return L4.polygon(B,G,x)},U}async function tR0(u,B){let E=B.padding??0,A=B.look==="neo"?16:E*2,C=B.look==="neo"?12:E,D={rx:0,ry:0,classes:"",labelPaddingX:B.labelPaddingX??A,labelPaddingY:C};return TG(u,B,D)}async function eR0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?20:C,F=B.look==="neo"?12:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=z.height+(B.look==="neo"?F*2:F),f=z.width+k/4+(B.look==="neo"?D*2:D),l=k/2,{cssStyles:b}=B,M=Ou.svg(U),Z=S4(B,{});if(B.look!=="handDrawn")Z.roughness=0,Z.fillStyle="solid";let J=[{x:-f/2+l,y:-k/2},{x:f/2-l,y:-k/2},...GS(-f/2+l,0,l,50,90,270),{x:f/2-l,y:k/2},...GS(f/2-l,0,l,50,270,450)],w=k1(J),K=M.path(w,Z),Q=U.insert(()=>K,":first-child");if(Q.attr("class","basic label-container outer-path"),b&&B.look!=="handDrawn")Q.selectChildren("path").attr("style",b);if(A&&B.look!=="handDrawn")Q.selectChildren("path").attr("style",A);return a4(B,Q),B.intersect=function(G){return L4.polygon(B,J,G)},U}async function uT0(u,B){let E={rx:B.look==="neo"?3:5,ry:B.look==="neo"?3:5,classes:"flowchart-node"};return TG(u,B,E)}function BT0(u,B,{config:{themeVariables:E}}){let{labelStyles:A,nodeStyles:C}=H4(B);B.labelStyle=A;let{cssStyles:D}=B,{lineColor:F,stateBorder:U,nodeBorder:z,nodeShadow:k}=E;if(B.width||B.height){if((B.width??0)<14)B.width=14;if((B.height??0)<14)B.height=14}if(!B.width)B.width=14;if(!B.height)B.height=14;let f=u.insert("g").attr("class","node default").attr("id",B.domId??B.id),l=Ou.svg(f),b=S4(B,{});if(B.look!=="handDrawn")b.roughness=0,b.fillStyle="solid";let M=l.circle(0,0,B.width,{...b,stroke:F,strokeWidth:2}),Z=U??z,J=(B.width??0)*5/14,w=l.circle(0,0,J,{...b,fill:Z,stroke:Z,strokeWidth:2,fillStyle:"solid"}),K=f.insert(()=>M,":first-child");if(K.insert(()=>w),B.look!=="handDrawn")K.attr("class","outer-path");if(D)K.selectAll("path").attr("style",D);if(C)K.selectAll("path").attr("style",C);if(B.width<25&&k&&B.look!=="handDrawn"){let Q=u.node()?.ownerSVGElement?.id??"",G=Q?`${Q}-drop-shadow-small`:"drop-shadow-small";K.attr("style",`filter:url(#${G})`)}return a4(B,K),B.intersect=function(Q){return L4.circle(B,(B.width??0)/2,Q)},f}function ET0(u,B,{config:{themeVariables:E}}){let{lineColor:A,nodeShadow:C}=E;if(B.width||B.height){if((B.width??0)<14)B.width=14;if((B.height??0)<14)B.height=14}if(!B.width)B.width=14;if(!B.height)B.height=14;let D=u.insert("g").attr("class","node default").attr("id",B.domId||B.id),F;if(B.look==="handDrawn"){let z=Ou.svg(D).circle(0,0,B.width,PS0(A));F=D.insert(()=>z),F.attr("class","state-start").attr("r",(B.width??7)/2).attr("width",B.width??14).attr("height",B.height??14)}else F=D.insert("circle",":first-child"),F.attr("class","state-start").attr("r",(B.width??7)/2).attr("width",B.width??14).attr("height",B.height??14);if(B.width<25&&C&&B.look!=="handDrawn"){let U=u.node()?.ownerSVGElement?.id??"",z=U?`${U}-drop-shadow-small`:"drop-shadow-small";F.attr("style",`filter:url(#${z})`)}return a4(B,F),B.intersect=function(U){return L4.circle(B,(B.width??7)/2,U)},D}async function AT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B?.padding??8,D=B.look==="neo"?28:C,F=B.look==="neo"?12:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.width??z.width)+2*WG+D,f=(B?.height??z.height)+F,l=k-2*WG,b=f,M=-k/2,Z=-f/2,J=[{x:0,y:0},{x:l,y:0},{x:l,y:-b},{x:0,y:-b},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-b},{x:-8,y:-b},{x:-8,y:0}];if(B.look==="handDrawn"){let w=Ou.svg(U),K=S4(B,{}),Q=w.rectangle(M,Z,l+16,b,K),G=w.line(M+WG,Z,M+WG,Z+b,K),L=w.line(M+WG+l,Z,M+WG+l,Z+b,K);U.insert(()=>G,":first-child"),U.insert(()=>L,":first-child");let H=U.insert(()=>Q,":first-child"),{cssStyles:q}=B;H.attr("class","basic label-container").attr("style",L2(q)),a4(B,H)}else{let w=Iz(U,l,b,J);if(A)w.attr("style",A);a4(B,w)}return B.intersect=function(w){return L4.polygon(B,J,w)},U}async function CT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C;if(B.width||B.height)B.height=Math.max((B?.height??0)-F*2,10),B.width=Math.max((B?.width??0)-D*2-J30*(B.height+F*2),10);let{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.height?B?.height:z.height)+F*2,f=J30*k,l=J30*k,M=(B?.width?B?.width:z.width)+D*2+f-f,Z=k,J=-M/2,w=-Z/2,{cssStyles:K}=B,Q=Ou.svg(U),G=S4(B,{}),L=[{x:J-f/2,y:w},{x:J+M+f/2,y:w},{x:J+M+f/2,y:w+Z},{x:J-f/2,y:w+Z}],H=[{x:J+M-f/2,y:w+Z},{x:J+M+f/2,y:w+Z},{x:J+M+f/2,y:w+Z-l}];if(B.look!=="handDrawn")G.roughness=0,G.fillStyle="solid";let q=k1(L),x=Q.path(q,G),v=k1(H),W=Q.path(v,{...G,fillStyle:"solid"}),S=U.insert(()=>W,":first-child");if(S.insert(()=>x,":first-child"),S.attr("class","basic label-container outer-path"),K&&B.look!=="handDrawn")S.selectAll("path").attr("style",K);if(A&&B.look!=="handDrawn")S.selectAll("path").attr("style",A);return a4(B,S),B.intersect=function(T){return L4.polygon(B,L,T)},U}async function DT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,label:F}=await b3(u,B,z3(B)),U=Math.max(D.width+(B.padding??0)*2,B?.width??0),z=Math.max(D.height+(B.padding??0)*2,B?.height??0),k=z/8,f=0.2*U,l=0.2*z,b=z+k,{cssStyles:M}=B,Z=Ou.svg(C),J=S4(B,{});if(B.look!=="handDrawn")J.roughness=0,J.fillStyle="solid";let w=[{x:-U/2-U/2*0.1,y:b/2},...df(-U/2-U/2*0.1,b/2,U/2+U/2*0.1,b/2,k,0.8),{x:U/2+U/2*0.1,y:-b/2},{x:-U/2-U/2*0.1,y:-b/2}],K=-U/2+U/2*0.1,Q=-b/2-l*0.4,G=[{x:K+U-f,y:(Q+z)*1.3},{x:K+U,y:Q+z-l},{x:K+U,y:(Q+z)*0.9},...df(K+U,(Q+z)*1.25,K+U-f,(Q+z)*1.3,-z*0.02,0.5)],L=k1(w),H=Z.path(L,J),q=k1(G),x=Z.path(q,{...J,fillStyle:"solid"}),v=C.insert(()=>x,":first-child");if(v.insert(()=>H,":first-child"),v.attr("class","basic label-container outer-path"),M&&B.look!=="handDrawn")v.selectAll("path").attr("style",M);if(A&&B.look!=="handDrawn")v.selectAll("path").attr("style",A);return v.attr("transform",`translate(0,${-k/2})`),F.attr("transform",`translate(${-U/2+(B.padding??0)-(D.x-(D.left??0))},${-z/2+(B.padding??0)-k/2-(D.y-(D.top??0))})`),a4(B,v),B.intersect=function(W){return L4.polygon(B,w,W)},C}async function FT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D}=await b3(u,B,z3(B)),F=Math.max(D.width+(B.padding??0),B?.width||0),U=Math.max(D.height+(B.padding??0),B?.height||0),z=-F/2,k=-U/2,f=C.insert("rect",":first-child");return f.attr("class","text").attr("style",A).attr("rx",0).attr("ry",0).attr("x",z).attr("y",k).attr("width",F).attr("height",U),a4(B,f),B.intersect=function(l){return L4.rect(B,l)},C}async function UT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?12:C/2;if(B.width||B.height){let J=B.height??0;if(B.height=(B.height??0)-D,B.height<oY0)B.height=oY0;let K=J/2/(2.5+J/50);if(B.width=(B.width??0)-D-K*3,B.width<tY0)B.width=tY0}let{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=(B.height?B.height:U.height)+D,f=k/2,l=f/(2.5+k/50),b=(B.width?B.width:U.width)+l+D,{cssStyles:M}=B,Z;if(B.look==="handDrawn"){let J=Ou.svg(F),w=m84(0,0,b,k,l,f),K=r84(0,0,b,k,l,f),Q=J.path(w,S4(B,{})),G=J.path(K,S4(B,{fill:"none"}));if(Z=F.insert(()=>G,":first-child"),Z=F.insert(()=>Q,":first-child"),Z.attr("class","basic label-container"),M)Z.attr("style",M)}else{let J=h84(0,0,b,k,l,f);if(Z=F.insert("path",":first-child").attr("d",J).attr("class","basic label-container").attr("style",L2(M)).attr("style",A),Z.attr("class","basic label-container outer-path"),M)Z.selectAll("path").attr("style",M);if(A)Z.selectAll("path").attr("style",A)}return Z.attr("label-offset-x",l),Z.attr("transform",`translate(${-b/2}, ${k/2} )`),z.attr("transform",`translate(${-(U.width/2)-l-(U.x-(U.left??0))}, ${-(U.height/2)-(U.y-(U.top??0))})`),a4(B,Z),B.intersect=function(J){let w=L4.rect(B,J),K=w.y-(B.y??0);if(f!=0&&(Math.abs(K)<(B.height??0)/2||Math.abs(K)==(B.height??0)/2&&Math.abs(w.x-(B.x??0))>(B.width??0)/2-l)){let Q=l*l*(1-K*K/(f*f));if(Q!=0)Q=Math.sqrt(Math.abs(Q));if(Q=l-Q,J.x-(B.x??0)>0)Q=-Q;w.x+=Q}return w},F}async function zT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?C:C,F=B.look==="neo"?C*2:C,{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.height??z.height)+D,f=(B?.width??z.width)+F,l=[{x:-3*k/6,y:0},{x:f+3*k/6,y:0},{x:f,y:-k},{x:0,y:-k}],b,{cssStyles:M}=B;if(B.look==="handDrawn"){let Z=Ou.svg(U),J=S4(B,{}),w=k1(l),K=Z.path(w,J);if(b=U.insert(()=>K,":first-child").attr("transform",`translate(${-f/2}, ${k/2})`),M)b.attr("style",M)}else b=Iz(U,f,k,l);if(A)b.attr("style",A);return B.width=f,B.height=k,a4(B,b),B.intersect=function(Z){return L4.polygon(B,l,Z)},U}async function kT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C,U=15,z=5;if(B.width||B.height){if(B.height=(B.height??0)-F*2,B.height<z)B.height=z;if(B.width=(B.width??0)-D*2,B.width<U)B.width=U}let{shapeSvg:k,bbox:f}=await b3(u,B,z3(B)),l=(B?.width?B?.width:f.width)+D*2,b=(B?.height?B?.height:f.height)+F*2,{cssStyles:M}=B,Z=Ou.svg(k),J=S4(B,{});if(B.look!=="handDrawn")J.roughness=0,J.fillStyle="solid";let w=[{x:-l/2*0.8,y:-b/2},{x:l/2*0.8,y:-b/2},{x:l/2,y:-b/2*0.6},{x:l/2,y:b/2},{x:-l/2,y:b/2},{x:-l/2,y:-b/2*0.6}],K=k1(w),Q=Z.path(K,J),G=k.insert(()=>Q,":first-child");if(G.attr("class","basic label-container outer-path"),M&&B.look!=="handDrawn")G.selectChildren("path").attr("style",M);if(A&&B.look!=="handDrawn")G.selectChildren("path").attr("style",A);return a4(B,G),B.intersect=function(L){return L4.polygon(B,w,L)},k}async function fT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?C*2:C;if(B.width||B.height){if(B.width=((B?.width??0)-D)/2,B.width<uR0)B.width=uR0;if(B.height=B?.height??0,B.height<eY0)B.height=eY0}let{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=_E($0().flowchart?.htmlLabels),f=(B?.width?B?.width:U.width)+D,l=B?.height?B?.height:f+U.height,b=l,M=[{x:0,y:0},{x:b,y:0},{x:b/2,y:-l}],{cssStyles:Z}=B,J=Ou.svg(F),w=S4(B,{});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let K=k1(M),Q=J.path(K,w),G=F.insert(()=>Q,":first-child").attr("transform",`translate(${-l/2}, ${l/2})`).attr("class","outer-path");if(Z&&B.look!=="handDrawn")G.selectChildren("path").attr("style",Z);if(A&&B.look!=="handDrawn")G.selectChildren("path").attr("style",A);return B.width=f,B.height=l,a4(B,G),z.attr("transform",`translate(${-U.width/2-(U.x-(U.left??0))}, ${l/2-(U.height+(B.padding??0)/(k?2:1)-(U.y-(U.top??0)))})`),B.intersect=function(L){return z0.info("Triangle intersect",B,M,L),L4.polygon(B,M,L)},F}async function lT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?12:C,U=!0;if(B.width||B.height){if(U=!1,B.width=(B?.width??0)-D*2,B.width<10)B.width=10;if(B.height=(B?.height??0)-F*2,B.height<10)B.height=10}let{shapeSvg:z,bbox:k,label:f}=await b3(u,B,z3(B)),l=(B?.width?B?.width:k.width)+(D??0)*2,b=(B?.height?B?.height:k.height)+(F??0)*2,M=B.look==="neo"?b/4:b/8,Z=b+(U?M:-M),{cssStyles:J}=B,K=14-l,Q=K>0?K/2:0,G=Ou.svg(z),L=S4(B,{});if(B.look!=="handDrawn")L.roughness=0,L.fillStyle="solid";let H=[{x:-l/2-Q,y:Z/2},...df(-l/2-Q,Z/2,l/2+Q,Z/2,M,0.8),{x:l/2+Q,y:-Z/2},{x:-l/2-Q,y:-Z/2}],q=k1(H),x=G.path(q,L),v=z.insert(()=>x,":first-child");if(v.attr("class","basic label-container outer-path"),J&&B.look!=="handDrawn")v.selectAll("path").attr("style",J);if(A&&B.look!=="handDrawn")v.selectAll("path").attr("style",A);return v.attr("transform",`translate(0,${-M/2})`),f.attr("transform",`translate(${-l/2+(B.padding??0)-(k.x-(k.left??0))},${-b/2+(B.padding??0)-M-(k.y-(k.top??0))})`),a4(B,v),B.intersect=function(W){return L4.polygon(B,H,W)},z}async function bT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.padding??0,D=B.look==="neo"?16:C,F=B.look==="neo"?20:C;if(B.width||B.height){if(B.width=B?.width??0,B.width<20)B.width=20;if(B.height=B?.height??0,B.height<10)B.height=10;let L=Math.min(B.height*0.2,B.height/4);B.height=Math.ceil(B.height-F-L*2.2222222222222223),B.width=B.width-D*2}let{shapeSvg:U,bbox:z}=await b3(u,B,z3(B)),k=(B?.width?B?.width:z.width)+D*2,f=(B?.height?B?.height:z.height)+F,l=f/8,b=f+l*2,{cssStyles:M}=B,Z=Ou.svg(U),J=S4(B,{});if(B.look!=="handDrawn")J.roughness=0,J.fillStyle="solid";let w=[{x:-k/2,y:b/2},...df(-k/2,b/2,k/2,b/2,l,1),{x:k/2,y:-b/2},...df(k/2,-b/2,-k/2,-b/2,l,-1)],K=k1(w),Q=Z.path(K,J),G=U.insert(()=>Q,":first-child");if(G.attr("class","basic label-container"),M&&B.look!=="handDrawn")G.selectAll("path").attr("style",M);if(A&&B.look!=="handDrawn")G.selectAll("path").attr("style",A);return a4(B,G),B.intersect=function(L){return L4.polygon(B,w,L)},U}async function MT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B.look==="neo"?16:B.padding??0,D=B.look==="neo"?12:B.padding??0;if(B.width||B.height)B.width=Math.max((B?.width??0)-C*2-N9,10),B.height=Math.max((B?.height??0)-D*2-N9,10);let{shapeSvg:F,bbox:U,label:z}=await b3(u,B,z3(B)),k=(B?.width?B?.width:U.width)+C*2+N9,f=(B?.height?B?.height:U.height)+D*2+N9,l=k-N9,b=f-N9,M=-l/2,Z=-b/2,{cssStyles:J}=B,w=Ou.svg(F),K=S4(B,{}),Q=[{x:M-N9,y:Z-N9},{x:M-N9,y:Z+b},{x:M+l,y:Z+b},{x:M+l,y:Z-N9}],G=`M${M-N9},${Z-N9} L${M+l},${Z-N9} L${M+l},${Z+b} L${M-N9},${Z+b} L${M-N9},${Z-N9}
M${M-N9},${Z} L${M+l},${Z}
M${M},${Z-N9} L${M},${Z+b}`;if(B.look!=="handDrawn")K.roughness=0,K.fillStyle="solid";let L=w.path(G,K),H=F.insert(()=>L,":first-child");if(H.attr("transform",`translate(${N9/2}, ${N9/2})`),H.attr("class","basic label-container outer-path"),J&&B.look!=="handDrawn")H.selectAll("path").attr("style",J);if(A&&B.look!=="handDrawn")H.selectAll("path").attr("style",A);return z.attr("transform",`translate(${-(U.width/2)+N9/2-(U.x-(U.left??0))}, ${-(U.height/2)+N9/2-(U.y-(U.top??0))})`),a4(B,H),B.intersect=function(q){return L4.polygon(B,Q,q)},F}async function H30(u,B){let E=B;if(E.alias)B.label=E.alias;let{theme:A,themeVariables:C}=F4(),{rowEven:D,rowOdd:F,nodeBorder:U,borderColorArray:z}=C;if(B.look==="handDrawn"){let{themeVariables:e}=F4(),{background:_}=e,b0={...B,id:B.id+"-background",domId:(B.domId||B.id)+"-background",look:"default",cssStyles:["stroke: none",`fill: ${_}`]};await H30(u,b0)}let k=F4();B.useHtmlLabels=k.htmlLabels;let f=k.er?.diagramPadding??10,l=k.er?.entityPadding??6,{cssStyles:b}=B,{labelStyles:M,nodeStyles:Z}=H4(B);if(E.attributes.length===0&&B.label){let e={rx:0,ry:0,labelPaddingX:f,labelPaddingY:f*1.5,classes:""};if(t5(B.label,k)+e.labelPaddingX*2<k.er.minEntityWidth)B.width=k.er.minEntityWidth;let _=await TG(u,B,e);if(A!=null&&BR0.has(A)){let b0=E.colorIndex??0;_.attr("data-color-id",`color-${b0%z.length}`)}if(!_E(k.htmlLabels)){let b0=_.select("text"),B0=b0.node()?.getBBox();b0.attr("transform",`translate(${-B0.width/2}, 0)`)}return _}if(!k.htmlLabels)f*=1.25,l*=1.25;let J=z3(B);if(!J)J="node default";let w=u.insert("g").attr("class",J).attr("id",B.domId||B.id),K=await YG(w,B.label??"",k,0,0,["name"],M);K.height+=l;let Q=0,G=[],L=[],H=0,q=0,x=0,v=0,W=!0,S=!0;for(let e of E.attributes){let _=await YG(w,e.type,k,0,Q,["attribute-type"],M);H=Math.max(H,_.width+f);let b0=await YG(w,e.name,k,0,Q,["attribute-name"],M);q=Math.max(q,b0.width+f);let B0=await YG(w,e.keys.join(),k,0,Q,["attribute-keys"],M);x=Math.max(x,B0.width+f);let k0=await YG(w,e.comment,k,0,Q,["attribute-comment"],M);v=Math.max(v,k0.width+f);let f0=Math.max(_.height,b0.height,B0.height,k0.height)+l;L.push({yOffset:Q,rowHeight:f0}),Q+=f0}let T=4;if(x<=f)W=!1,x=0,T--;if(v<=f)S=!1,v=0,T--;let R=w.node().getBBox();if(K.width+f*2-(H+q+x+v)>0){let e=K.width+f*2-(H+q+x+v);if(H+=e/T,q+=e/T,x>0)x+=e/T;if(v>0)v+=e/T}let Y=H+q+x+v,a=Ou.svg(w),I=S4(B,{});if(B.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let O=0;if(L.length>0)O=L.reduce((e,_)=>e+(_?.rowHeight??0),0);let i=Math.max(R.width+f*2,B?.width||0,Y),N=Math.max((O??0)+K.height,B?.height||0),V=-i/2,h=-N/2;if(w.selectAll("g:not(:first-child)").each((e,_,b0)=>{let B0=Ku(b0[_]),k0=B0.attr("transform"),f0=0,D0=0;if(k0){let q0=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(k0);if(q0){if(f0=parseFloat(q0[1]),D0=parseFloat(q0[2]),B0.attr("class").includes("attribute-name"))f0+=H;else if(B0.attr("class").includes("attribute-keys"))f0+=H+q;else if(B0.attr("class").includes("attribute-comment"))f0+=H+q+x}}B0.attr("transform",`translate(${V+f/2+f0}, ${D0+h+K.height+l/2})`)}),w.select(".name").attr("transform","translate("+-K.width/2+", "+(h+l/2)+")"),A!=null&&BR0.has(A)){let e=E.colorIndex??0;w.attr("data-color-id",`color-${e%z.length}`)}let r=a.rectangle(V,h,i,N,I),m=w.insert(()=>r,":first-child").attr("class","outer-path").attr("style",b.join(""));G.push(0);for(let[e,_]of L.entries()){let B0=(e+1)%2===0&&_.yOffset!==0,k0=a.rectangle(V,K.height+h+_?.yOffset,i,_?.rowHeight,{...I,fill:B0?D:F,stroke:U});w.insert(()=>k0,"g.label").attr("style",b.join("")).attr("class",`row-rect-${B0?"even":"odd"}`)}let $=0.0001,y=RG(V,K.height+h,i+V,K.height+h,$),p=a.polygon(y.map((e)=>[e.x,e.y]),I);if(w.insert(()=>p).attr("class","divider"),y=RG(H+V,K.height+h,H+V,N+h,$),p=a.polygon(y.map((e)=>[e.x,e.y]),I),w.insert(()=>p).attr("class","divider"),W){let e=H+q+V;y=RG(e,K.height+h,e,N+h,$),p=a.polygon(y.map((_)=>[_.x,_.y]),I),w.insert(()=>p).attr("class","divider")}if(S){let e=H+q+x+V;y=RG(e,K.height+h,e,N+h,$),p=a.polygon(y.map((_)=>[_.x,_.y]),I),w.insert(()=>p).attr("class","divider")}for(let e of G){let _=K.height+h+e;y=RG(V,_,i+V,_,$),p=a.polygon(y.map((b0)=>[b0.x,b0.y]),I),w.insert(()=>p).attr("class","divider")}if(a4(B,m),Z&&B.look!=="handDrawn")if(A!=null&&$84.has(A))w.selectAll("path").attr("style",Z);else{let _=Z.split(";")?.filter((b0)=>{return b0.includes("stroke")})?.map((b0)=>`${b0}`).join("; ");w.selectAll("path").attr("style",_??""),w.selectAll(".row-rect-even path").attr("style",Z)}return B.intersect=function(e){return L4.rect(B,e)},w}async function YG(u,B,E,A=0,C=0,D=[],F=""){let U=u.insert("g").attr("class",`label ${D.join(" ")}`).attr("transform",`translate(${A}, ${C})`).attr("style",F);if(B!==UF(B))B=UF(B),B=B.replaceAll("<","&lt;").replaceAll(">","&gt;");let z=U.node().appendChild(await X2(U,B,{width:t5(B,E)+100,style:F,useHtmlLabels:E.htmlLabels},E));if(B.includes("&lt;")||B.includes("&gt;")){let f=z.children[0];f.textContent=f.textContent.replaceAll("&lt;","<").replaceAll("&gt;",">");while(f.childNodes[0])f=f.childNodes[0],f.textContent=f.textContent.replaceAll("&lt;","<").replaceAll("&gt;",">")}let k=z.getBBox();if(_E(E.htmlLabels)){let f=z.children[0];f.style.textAlign="start";let l=Ku(z);k=f.getBoundingClientRect(),l.attr("width",k.width),l.attr("height",k.height)}return k}function RG(u,B,E,A,C){if(u===E)return[{x:u-C/2,y:B},{x:u+C/2,y:B},{x:E+C/2,y:A},{x:E-C/2,y:A}];return[{x:u,y:B-C/2},{x:u,y:B+C/2},{x:E,y:A+C/2},{x:E,y:A-C/2}]}async function ZT0(u,B,E,A,C=E.class.padding??12){let D=!A?3:0,F=u.insert("g").attr("class",z3(B)).attr("id",B.domId||B.id),U=null,z=null,k=null,f=null,l=0,b=0,M=0;if(U=F.insert("g").attr("class","annotation-group text"),B.annotations.length>0){let Q=B.annotations[0];await QS(U,{text:`«${Q}»`},0),l=U.node().getBBox().height}z=F.insert("g").attr("class","label-group text"),await QS(z,B,0,["font-weight: bolder"]);let Z=z.node().getBBox();b=Z.height,k=F.insert("g").attr("class","members-group text");let J=0;for(let Q of B.members){let G=await QS(k,Q,J,[Q.parseClassifier()]);J+=G+D}if(M=k.node().getBBox().height,M<=0)M=C/2;f=F.insert("g").attr("class","methods-group text");let w=0;for(let Q of B.methods){let G=await QS(f,Q,w,[Q.parseClassifier()]);w+=G+D}let K=F.node().getBBox();if(U!==null){let Q=U.node().getBBox();U.attr("transform",`translate(${-Q.width/2})`)}return z.attr("transform",`translate(${-Z.width/2}, ${l})`),K=F.node().getBBox(),k.attr("transform",`translate(0, ${l+b+C*2})`),K=F.node().getBBox(),f.attr("transform",`translate(0, ${l+b+(M?M+C*4:C*2)})`),K=F.node().getBBox(),{shapeSvg:F,bbox:K}}async function QS(u,B,E,A=[]){let C=u.insert("g").attr("class","label").attr("style",A.join("; ")),D=F4(),F="useHtmlLabels"in B?B.useHtmlLabels:_E(D.htmlLabels)??!0,U="";if("text"in B)U=B.text;else U=B.label;if(!F&&U.startsWith("\\"))U=U.substring(1);if(A9(U))F=!0;let z=await X2(C,vj(AE(U)),{width:t5(U,D)+50,classes:"markdown-node-label",useHtmlLabels:F},D),k,f=1;if(!F){if(A.includes("font-weight: bolder"))Ku(z).selectAll("tspan").attr("font-weight","");f=z.children.length;let l=z.children[0];if(z.textContent===""||z.textContent.includes("&gt")){if(l.textContent=U[0]+U.substring(1).replaceAll("&gt;",">").replaceAll("&lt;","<").trim(),U[1]===" ")l.textContent=l.textContent[0]+" "+l.textContent.substring(1)}if(l.textContent==="undefined")l.textContent="";k=z.getBBox()}else{let l=z.children[0],b=Ku(z);if(f=l.innerHTML.split("<br>").length,l.innerHTML.includes("</math>"))f+=l.innerHTML.split("<mrow>").length-1;let M=l.getElementsByTagName("img");if(M){let Z=U.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...M].map((J)=>new Promise((w)=>{function K(){if(J.style.display="flex",J.style.flexDirection="column",Z){let Q=D.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,G=5,L=parseInt(Q,10)*5+"px";J.style.minWidth=L,J.style.maxWidth=L}else J.style.width="100%";w(J)}X(K,"setupImage"),setTimeout(()=>{if(J.complete)K()}),J.addEventListener("error",K),J.addEventListener("load",K)})))}k=l.getBoundingClientRect(),b.attr("width",k.width),b.attr("height",k.height)}return C.attr("transform","translate(0,"+(-k.height/(2*f)+E)+")"),k.height}async function JT0(u,B){let E=$0(),{themeVariables:A}=E,{useGradient:C}=A,D=E.class.padding??12,F=D,U=B.useHtmlLabels??_E(E.htmlLabels)??!0,z=B;z.annotations=z.annotations??[],z.members=z.members??[],z.methods=z.methods??[];let{shapeSvg:k,bbox:f}=await ZT0(u,B,E,U,F),{labelStyles:l,nodeStyles:b}=H4(B);B.labelStyle=l,B.cssStyles=z.styles||"";let M=z.styles?.join(";")||b||"";if(!B.cssStyles)B.cssStyles=M.replaceAll("!important","").split(";");let Z=z.members.length===0&&z.methods.length===0&&!E.class?.hideEmptyMembersBox,J=Ou.svg(k),w=S4(B,{});if(B.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let K=Math.max(B.width??0,f.width),Q=Math.max(B.height??0,f.height),G=(B.height??0)>f.height;if(z.members.length===0&&z.methods.length===0)Q+=F;else if(z.members.length>0&&z.methods.length===0)Q+=F*2;let L=-K/2,H=-Q/2,q=Z?D*2:z.members.length===0&&z.methods.length===0?-D:0;if(G)q=D*2;let x=J.rectangle(L-D,H-D-(Z?D:z.members.length===0&&z.methods.length===0?-D/2:0),K+2*D,Q+2*D+q,w),v=k.insert(()=>x,":first-child");v.attr("class","basic label-container outer-path");let W=v.node().getBBox(),S=k.select(".annotation-group").node().getBBox().height-(Z?D/2:0)||0,T=k.select(".label-group").node().getBBox().height-(Z?D/2:0)||0,R=k.select(".members-group").node().getBBox().height-(Z?D/2:0)||0,Y=(S+T+H+D-(H-D-(Z?D:z.members.length===0&&z.methods.length===0?-D/2:0)))/2;if(k.selectAll(".text").each((a,I,O)=>{let i=Ku(O[I]),N=i.attr("transform"),V=0;if(N){let $=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(N);if($)V=parseFloat($[2])}let h=V+H+D-(Z?D:z.members.length===0&&z.methods.length===0?-D/2:0);if(i.attr("class").includes("methods-group")){let m=Math.max(R,F/2);if(G)h=Math.max(Y,S+T+m+H+F*2+D)+F*2;else h=S+T+m+H+F*4+D}if(z.members.length===0&&z.methods.length===0&&E.class?.hideEmptyMembersBox)if(z.annotations.length>0)h=V-F;else h=V;if(!U)h-=4;let r=L;if(i.attr("class").includes("label-group")||i.attr("class").includes("annotation-group"))r=-i.node()?.getBBox().width/2||0,k.selectAll("text").each(function(m,$,y){if(window.getComputedStyle(y[$]).textAnchor==="middle")r=0});i.attr("transform",`translate(${r}, ${h})`)}),z.members.length>0||z.methods.length>0||Z){let a=S+T+H+D,I=J.line(W.x,a,W.x+W.width,a+0.001,w);k.insert(()=>I).attr("class",`divider${B.look==="neo"&&!C?" neo-line":""}`).attr("style",M)}if(Z||z.members.length>0||z.methods.length>0){let a=S+T+R+H+F*2+D,I=J.line(W.x,G?Math.max(Y,a):a,W.x+W.width,(G?Math.max(Y,a):a)+0.001,w);k.insert(()=>I).attr("class",`divider${B.look==="neo"&&!C?" neo-line":""}`).attr("style",M)}if(z.look!=="handDrawn")k.selectAll("path").attr("style",M);if(v.select(":nth-child(2)").attr("style",M),k.selectAll(".divider").select("path").attr("style",M),B.labelStyle)k.selectAll("span").attr("style",B.labelStyle);else k.selectAll("span").attr("style",M);if(!U){let a=RegExp(/color\s*:\s*([^;]*)/),I=a.exec(M);if(I){let O=I[0].replace("color","fill");k.selectAll("tspan").attr("style",O)}else if(l){let O=a.exec(l);if(O){let i=O[0].replace("color","fill");k.selectAll("tspan").attr("style",i)}}}return a4(B,v),B.intersect=function(a){return L4.rect(B,a)},k}async function wT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let C=B,D=B,F=20,U=20,z="verifyMethod"in B,k=z3(B),{themeVariables:f}=$0(),{borderColorArray:l,requirementEdgeLabelBackground:b}=f,M=u.insert("g").attr("class",k).attr("id",B.domId??B.id),Z;if(z)Z=await HF(M,`&lt;&lt;${C.type}&gt;&gt;`,0,B.labelStyle);else Z=await HF(M,"&lt;&lt;Element&gt;&gt;",0,B.labelStyle);let J=Z,w=await HF(M,C.name,J,B.labelStyle+"; font-weight: bold;");if(J+=w+U,z){let W=await HF(M,`${C.requirementId?`ID: ${C.requirementId}`:""}`,J,B.labelStyle);J+=W;let S=await HF(M,`${C.text?`Text: ${C.text}`:""}`,J,B.labelStyle);J+=S;let T=await HF(M,`${C.risk?`Risk: ${C.risk}`:""}`,J,B.labelStyle);J+=T,await HF(M,`${C.verifyMethod?`Verification: ${C.verifyMethod}`:""}`,J,B.labelStyle)}else{let W=await HF(M,`${D.type?`Type: ${D.type}`:""}`,J,B.labelStyle);J+=W,await HF(M,`${D.docRef?`Doc Ref: ${D.docRef}`:""}`,J,B.labelStyle)}let K=(M.node()?.getBBox().width??200)+F,Q=(M.node()?.getBBox().height??200)+F,G=-K/2,L=-Q/2,H=Ou.svg(M),q=S4(B,{});if(B.look!=="handDrawn")q.roughness=0,q.fillStyle="solid";let x=H.rectangle(G,L,K,Q,q),v=M.insert(()=>x,":first-child");if(v.attr("class","basic label-container outer-path").attr("style",A),l?.length){let W=B.colorIndex??0;M.attr("data-color-id",`color-${W%l.length}`)}if(M.selectAll(".label").each((W,S,T)=>{let R=Ku(T[S]),Y=R.attr("transform"),a=0,I=0;if(Y){let V=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(Y);if(V)a=parseFloat(V[1]),I=parseFloat(V[2])}let O=I-Q/2,i=G+F/2;if(S===0||S===1)i=a;R.attr("transform",`translate(${i}, ${O+F})`)}),J>Z+w+U){let W=L+Z+w+U,S;if(B.look==="neo"){let Y=[[G,W],[G+K,W],[G+K,W+0.001],[G,W+0.001]];S=H.polygon(Y,q)}else S=H.line(G,W,G+K,W,q);M.insert(()=>S).attr("class","divider")}if(a4(B,v),B.intersect=function(W){return L4.rect(B,W)},A&&B.look!=="handDrawn"&&(b||l?.length))M.selectAll("path").attr("style",A);return M}async function HF(u,B,E,A=""){if(B==="")return 0;let C=u.insert("g").attr("class","label").attr("style",A),D=$0(),F=D.htmlLabels??!0,U=await X2(C,vj(AE(B)),{width:t5(B,D)+50,classes:"markdown-node-label",useHtmlLabels:F,style:A},D),z;if(!F){let k=U.children[0];for(let f of k.children)if(A)f.setAttribute("style",A);z=U.getBBox(),z.height+=6}else{let k=U.children[0],f=Ku(U);z=k.getBoundingClientRect(),f.attr("width",z.width),f.attr("height",z.height)}return C.attr("transform",`translate(${-z.width/2},${-z.height/2+E})`),z.height}async function KT0(u,B,{config:E}){let{labelStyles:A,nodeStyles:C}=H4(B);B.labelStyle=A||"";let D=10,F=B.width;B.width=(B.width??200)-10;let{shapeSvg:U,bbox:z,label:k}=await b3(u,B,z3(B)),f=B.padding||10,l="",b;if("ticket"in B&&B.ticket&&E?.kanban?.ticketBaseUrl)l=E?.kanban?.ticketBaseUrl.replace("#TICKET#",B.ticket),b=U.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",l).attr("target","_blank");let M={useHtmlLabels:B.useHtmlLabels,labelStyle:B.labelStyle||"",width:B.width,img:B.img,padding:B.padding||8,centerLabel:!1},Z,J;if(b)({label:Z,bbox:J}=await Z30(b,"ticket"in B&&B.ticket||"",M));else({label:Z,bbox:J}=await Z30(U,"ticket"in B&&B.ticket||"",M));let{label:w,bbox:K}=await Z30(U,"assigned"in B&&B.assigned||"",M);B.width=F;let Q=10,G=B?.width||0,L=Math.max(J.height,K.height)/2,H=Math.max(z.height+Q*2,B?.height||0)+L,q=-G/2,x=-H/2;k.attr("transform","translate("+(f-G/2)+", "+(-L-z.height/2)+")"),Z.attr("transform","translate("+(f-G/2)+", "+(-L+z.height/2)+")"),w.attr("transform","translate("+(f+G/2-K.width-2*D)+", "+(-L+z.height/2)+")");let v,{rx:W,ry:S}=B,{cssStyles:T}=B;if(B.look==="handDrawn"){let R=Ou.svg(U),Y=S4(B,{}),a=W||S?R.path(sf(q,x,G,H,W||0),Y):R.rectangle(q,x,G,H,Y);v=U.insert(()=>a,":first-child"),v.attr("class","basic label-container").attr("style",T?T:null)}else{v=U.insert("rect",":first-child"),v.attr("class","basic label-container __APA__").attr("style",C).attr("rx",W??5).attr("ry",S??5).attr("x",q).attr("y",x).attr("width",G).attr("height",H);let R="priority"in B&&B.priority;if(R){let Y=U.append("line"),a=q+2,I=x+Math.floor((W??0)/2),O=x+H-Math.floor((W??0)/2);Y.attr("x1",a).attr("y1",I).attr("x2",a).attr("y2",O).attr("stroke-width","4").attr("stroke",y84(R))}}return a4(B,v),B.height=H,B.intersect=function(R){return L4.rect(B,R)},U}async function QT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,halfPadding:F,label:U}=await b3(u,B,z3(B)),z=D.width+10*F,k=D.height+8*F,f=0.15*z,{cssStyles:l}=B,b=D.width+20,M=D.height+20,Z=Math.max(z,b),J=Math.max(k,M);U.attr("transform",`translate(${-D.width/2}, ${-D.height/2})`);let w,K=`M0 0
a${f},${f} 1 0,0 ${Z*0.25},${-1*J*0.1}
a${f},${f} 1 0,0 ${Z*0.25},0
a${f},${f} 1 0,0 ${Z*0.25},0
a${f},${f} 1 0,0 ${Z*0.25},${J*0.1}
a${f},${f} 1 0,0 ${Z*0.15},${J*0.33}
a${f*0.8},${f*0.8} 1 0,0 0,${J*0.34}
a${f},${f} 1 0,0 ${-1*Z*0.15},${J*0.33}
a${f},${f} 1 0,0 ${-1*Z*0.25},${J*0.15}
a${f},${f} 1 0,0 ${-1*Z*0.25},0
a${f},${f} 1 0,0 ${-1*Z*0.25},0
a${f},${f} 1 0,0 ${-1*Z*0.25},${-1*J*0.15}
a${f},${f} 1 0,0 ${-1*Z*0.1},${-1*J*0.33}
a${f*0.8},${f*0.8} 1 0,0 0,${-1*J*0.34}
a${f},${f} 1 0,0 ${Z*0.1},${-1*J*0.33}
H0 V0 Z`;if(B.look==="handDrawn"){let Q=Ou.svg(C),G=S4(B,{}),L=Q.path(K,G);w=C.insert(()=>L,":first-child"),w.attr("class","basic label-container").attr("style",L2(l))}else w=C.insert("path",":first-child").attr("class","basic label-container").attr("style",A).attr("d",K);return w.attr("transform",`translate(${-Z/2}, ${-J/2})`),a4(B,w),B.calcIntersect=function(Q,G){return L4.rect(Q,G)},B.intersect=function(Q){return z0.info("Bang intersect",B,Q),L4.rect(B,Q)},C}async function GT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,halfPadding:F,label:U}=await b3(u,B,z3(B)),z=D.width+2*F,k=D.height+2*F,f=0.15*z,l=0.25*z,b=0.35*z,M=0.2*z,{cssStyles:Z}=B,J,w=`M0 0
a${f},${f} 0 0,1 ${z*0.25},${-1*z*0.1}
a${b},${b} 1 0,1 ${z*0.4},${-1*z*0.1}
a${l},${l} 1 0,1 ${z*0.35},${z*0.2}
a${f},${f} 1 0,1 ${z*0.15},${k*0.35}
a${M},${M} 1 0,1 ${-1*z*0.15},${k*0.65}
a${l},${f} 1 0,1 ${-1*z*0.25},${z*0.15}
a${b},${b} 1 0,1 ${-1*z*0.5},0
a${f},${f} 1 0,1 ${-1*z*0.25},${-1*z*0.15}
a${f},${f} 1 0,1 ${-1*z*0.1},${-1*k*0.35}
a${M},${M} 1 0,1 ${z*0.1},${-1*k*0.65}
H0 V0 Z`;if(B.look==="handDrawn"){let K=Ou.svg(C),Q=S4(B,{}),G=K.path(w,Q);J=C.insert(()=>G,":first-child"),J.attr("class","basic label-container").attr("style",L2(Z))}else J=C.insert("path",":first-child").attr("class","basic label-container").attr("style",A).attr("d",w);return U.attr("transform",`translate(${-D.width/2}, ${-D.height/2})`),J.attr("transform",`translate(${-z/2}, ${-k/2})`),a4(B,J),B.calcIntersect=function(K,Q){return L4.rect(K,Q)},B.intersect=function(K){return z0.info("Cloud intersect",B,K),L4.rect(B,K)},C}async function HT0(u,B){let{labelStyles:E,nodeStyles:A}=H4(B);B.labelStyle=E;let{shapeSvg:C,bbox:D,halfPadding:F,label:U}=await b3(u,B,z3(B)),z=D.width+8*F,k=D.height+2*F,f=5,l=B.look==="neo"?`
M${-z/2} ${k/2-f}
v${-k+2*f}
q0,-${f} ${f},-${f}
h${z-2*f}
q${f},0 ${f},${f}
v${k-f}
H${-z/2}
Z
`:`
M${-z/2} ${k/2-f}
v${-k+2*f}
q0,-${f} ${f},-${f}
h${z-2*f}
q${f},0 ${f},${f}
v${k-2*f}
q0,${f} ${-f},${f}
h${-(z-2*f)}
q${-f},0 ${-f},${-f}
Z
`;if(!B.domId)throw Error(`defaultMindmapNode: node "${B.id}" is missing a domId — was render.ts domId prefixing skipped?`);let b=C.append("path").attr("id",B.domId).attr("class","node-bkg node-"+B.type).attr("style",A).attr("d",l);return C.append("line").attr("class","node-line-").attr("x1",-z/2).attr("y1",k/2).attr("x2",z/2).attr("y2",k/2),U.attr("transform",`translate(${-D.width/2}, ${-D.height/2})`),C.append(()=>U.node()),a4(B,b),B.calcIntersect=function(M,Z){return L4.rect(M,Z)},B.intersect=function(M){return L4.rect(B,M)},C}async function LT0(u,B){let E={padding:B.padding??0};return G30(u,B,E)}function L30(u){return u in qT0}async function Pz(u,B,E){let A,C;if(B.shape==="rect")if(B.rx&&B.ry)B.shape="roundedRect";else B.shape="squareRect";let D=B.shape?qT0[B.shape]:void 0;if(!D)throw Error(`No such shape: ${B.shape}. Please check your syntax.`);if(B.link){let F;if(E.config.securityLevel==="sandbox")F="_top";else if(B.linkTarget)F=B.linkTarget||"_blank";A=u.insert("svg:a").attr("xlink:href",B.link).attr("target",F??null),C=await D(A,B,E)}else C=await D(u,B,E),A=C;if(A.attr("data-look",L2(B.look)),B.tooltip)C.attr("title",B.tooltip);if(ua.set(B.id,A),B.haveCallback)A.attr("class",A.attr("class")+" clickable");return A}var b3,Z30,a4,z3,Q84,pZ,G84,Oz,sf,H84,ER0,L84,q84,X84,x84,v84,S84,AR0,of,ei,W84,FR0,Y84,R84,T84,L4,ti=12,O84,I84,P84,gY0=8,_Y0=8,nY0=10,pY0=10,j84,N84,i84,a84,dY0=10,sY0=10,V84,nZ=8,WG=8,J30=0.2,h84,m84,r84,oY0=5,tY0=10,eY0=10,uR0=10,N9=10,BR0,$84,y84,c84,g84,qT0,ua,XT0,Ba,dZ;var B7=g(()=>{o5();e5();d2();q2();t3();s4();o4();Y4();i3();i3();j4();i3();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();i3();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();j4();i3();i3();j4();i3();j4();i3();j4();j4();j4();b3=X(async(u,B,E)=>{let A,C=B.useHtmlLabels||_E($0()?.htmlLabels);if(!E)A="node default";else A=E;let D=u.insert("g").attr("class",A).attr("id",B.domId||B.id),F=D.insert("g").attr("class","label").attr("style",L2(B.labelStyle)),U;if(B.label===void 0)U="";else U=typeof B.label==="string"?B.label:B.label[0];let z=!!B.icon||!!B.img,k=B.labelType==="markdown",f=await X2(F,C3(AE(U),$0()),{useHtmlLabels:C,width:B.width||$0().flowchart?.wrappingWidth,classes:k?"markdown-node-label":"",style:B.labelStyle,addSvgBackground:z,markdown:k},$0()),l=f.getBBox(),b=(B?.padding??0)/2;if(C){let M=f.children[0],Z=Ku(f);await zS(M,U),l=M.getBoundingClientRect(),Z.attr("width",l.width),Z.attr("height",l.height)}if(C)F.attr("transform","translate("+-l.width/2+", "+-l.height/2+")");else F.attr("transform","translate(0, "+-l.height/2+")");if(B.centerLabel)F.attr("transform","translate("+-l.width/2+", "+-l.height/2+")");return F.insert("rect",":first-child"),{shapeSvg:D,bbox:l,halfPadding:b,label:F}},"labelHelper"),Z30=X(async(u,B,E)=>{let A=E.useHtmlLabels??w1($0()),C=u.insert("g").attr("class","label").attr("style",E.labelStyle||""),D=await X2(C,C3(AE(B),$0()),{useHtmlLabels:A,width:E.width||$0()?.flowchart?.wrappingWidth,style:E.labelStyle,addSvgBackground:!!E.icon||!!E.img}),F=D.getBBox(),U=E.padding/2;if(w1($0())){let z=D.children[0],k=Ku(D);F=z.getBoundingClientRect(),k.attr("width",F.width),k.attr("height",F.height)}if(A)C.attr("transform","translate("+-F.width/2+", "+-F.height/2+")");else C.attr("transform","translate(0, "+-F.height/2+")");if(E.centerLabel)C.attr("transform","translate("+-F.width/2+", "+-F.height/2+")");return C.insert("rect",":first-child"),{shapeSvg:u,bbox:F,halfPadding:U,label:C}},"insertLabel"),a4=X((u,B)=>{let E=B.node().getBBox();u.width=E.width,u.height=E.height},"updateNodeBounds"),z3=X((u,B)=>(u.look==="handDrawn"?"rough-node":"node")+" "+u.cssClasses+" "+(B||""),"getNodeClasses");X(k1,"createPathFromPoints");X(df,"generateFullSineWavePoints");X(GS,"generateCirclePoints");X(w30,"mergePaths");Q84=X((u,B)=>{var{x:E,y:A}=u,C=B.x-E,D=B.y-A,F=u.width/2,U=u.height/2,z,k;if(Math.abs(D)*F>Math.abs(C)*U){if(D<0)U=-U;z=D===0?0:U*C/D,k=U}else{if(C<0)F=-F;z=F,k=C===0?0:F*D/C}return{x:E+z,y:A+k}},"intersectRect"),pZ=Q84,G84=X(async(u,B,E,A=!1,C=!1)=>{let D=B||"";if(typeof D==="object")D=D[0];let F=$0(),U=w1(F);return await X2(u,D,{style:E,isTitle:A,useHtmlLabels:U,markdown:!1,isNode:C,width:Number.POSITIVE_INFINITY},F)},"createLabel"),Oz=G84,sf=X((u,B,E,A,C)=>["M",u+C,B,"H",u+E-C,"A",C,C,0,0,1,u+E,B+C,"V",B+A-C,"A",C,C,0,0,1,u+E-C,B+A,"H",u+C,"A",C,C,0,0,1,u,B+A-C,"V",B+C,"A",C,C,0,0,1,u+C,B,"Z"].join(" "),"createRoundedRectPathD"),H84=X(async(u,B)=>{let E=$0(),{themeVariables:A,handDrawnSeed:C}=E,{clusterBkg:D,clusterBorder:F}=A,U=F,{labelStyles:z,nodeStyles:k,borderStyles:f,backgroundStyles:l}=H4(B),b=u.insert("g").attr("class","cluster swimlane "+(B.cssClasses||"")).attr("id",B.id).attr("data-id",B.id).attr("data-et","cluster").attr("data-look",B.look),M=_E(E.flowchart.htmlLabels),Z=B.direction==="LR",J=b.insert("g").attr("class","cluster-label swimlane-label"),w=await X2(J,B.label,{style:B.labelStyle,useHtmlLabels:M,isNode:!0,width:B.width}),K=w.getBBox();if(M){let Y=w.children[0],a=Ku(w);K=Y.getBoundingClientRect(),a.attr("width",K.width),a.attr("height",K.height)}let Q=B.padding??0,G=B.width<=K.width+Q?K.width+Q:B.width;if(B.width<=K.width+Q)B.diff=(G-B.width)/2-Q;else B.diff=-Q;let L=B.height,H=B.y-L/2,q=B.y+L/2,x=B.x-G/2,v=B.swimlaneContentTop!==void 0?B.swimlaneContentTop:H+L/3,W=Z?4:0,S=K.height+2*W,T,R;if(Z){let Y=Math.max(S,K.height+2*W),a=x+Y,I=Math.max(0,G-Y);if(B.look==="handDrawn"){let N=Ou.svg(b),V=S4(B,{roughness:0.7,fill:D,stroke:U,fillWeight:3,seed:C}),h=S4(B,{roughness:0.7,fill:"none",stroke:U,seed:C}),r=N.rectangle(x,H,Y,L,V);T=b.insert(()=>r,":first-child");let m=N.rectangle(a,H,I,L,h);R=b.insert(()=>m,":first-child"),T.select("path:nth-child(2)").attr("style",f.join(";")),T.select("path").attr("style",l.join(";").replace("fill","stroke"))}else T=b.insert("rect",":first-child"),R=b.insert("rect",":first-child"),T.attr("class","swimlane-title").attr("style",k).attr("x",x).attr("y",H).attr("width",Y).attr("height",L).attr("fill",D).attr("stroke",U),R.attr("class","swimlane-body").attr("style",k).attr("x",a).attr("y",H).attr("width",I).attr("height",L).attr("fill","none").attr("stroke",U);let O=x+Y/2,i=B.y;J.attr("transform",`translate(${O}, ${i}) rotate(-90) translate(${-K.width/2}, ${-K.height/2})`)}else{let Y=Math.max(0,v-H),a=Math.min(S,Y),I=H+a,O=Math.max(0,q-I),i=B.x-G/2;if(B.look==="handDrawn"){let h=Ou.svg(b),r=S4(B,{roughness:0.7,fill:D,stroke:U,fillWeight:3,seed:C}),m=S4(B,{roughness:0.7,fill:"none",stroke:U,seed:C}),$=h.rectangle(i,H,G,a,r);T=b.insert(()=>$,":first-child");let y=h.rectangle(i,I,G,O,m);R=b.insert(()=>y,":first-child"),T.select("path:nth-child(2)").attr("style",f.join(";")),T.select("path").attr("style",l.join(";").replace("fill","stroke"))}else T=b.insert("rect",":first-child"),R=b.insert("rect",":first-child"),T.attr("class","swimlane-title").attr("style",k).attr("x",i).attr("y",H).attr("width",G).attr("height",a).attr("fill",D).attr("stroke",U),R.attr("class","swimlane-body").attr("style",k).attr("x",i).attr("y",I).attr("width",G).attr("height",O).attr("fill","none").attr("stroke",U);let N=B.x-K.width/2,V=H+(a-K.height)/2;J.attr("transform",`translate(${N}, ${V})`)}if(z0.trace("Swimlane data ",B,JSON.stringify(B)),z){let Y=J.select("span");if(Y)Y.attr("style",z)}return B.offsetX=0,B.width=G,B.height=L,B.offsetY=K.height-Q/2,B.intersect=function(Y){return pZ(B,Y)},{cluster:b,labelBBox:K}},"swimlane"),ER0=X(async(u,B)=>{z0.info("Creating subgraph rect for ",B.id,B);let E=$0(),{themeVariables:A,handDrawnSeed:C}=E,{clusterBkg:D,clusterBorder:F}=A,{labelStyles:U,nodeStyles:z,borderStyles:k,backgroundStyles:f}=H4(B),l=u.insert("g").attr("class","cluster "+B.cssClasses).attr("id",B.domId).attr("data-look",B.look),b=w1(E),M=l.insert("g").attr("class","cluster-label "),Z;if(B.labelType==="markdown")Z=await X2(M,B.label,{style:B.labelStyle,useHtmlLabels:b,isNode:!0,width:B.width});else Z=await Oz(M,B.label,B.labelStyle||"",!1,!0);let J=Z.getBBox();if(w1(E)){let x=Z.children[0],v=Ku(Z);J=x.getBoundingClientRect(),v.attr("width",J.width),v.attr("height",J.height)}let w=B.width<=J.width+B.padding?J.width+B.padding:B.width;if(B.width<=J.width+B.padding)B.diff=(w-B.width)/2-B.padding;else B.diff=-B.padding;let K=B.height,Q=B.x-w/2,G=B.y-K/2;z0.trace("Data ",B,JSON.stringify(B));let L;if(B.look==="handDrawn"){let x=Ou.svg(l),v=S4(B,{roughness:0.7,fill:D,stroke:F,fillWeight:3,seed:C}),W=x.path(sf(Q,G,w,K,0),v);L=l.insert(()=>{return z0.debug("Rough node insert CXC",W),W},":first-child"),L.select("path:nth-child(2)").attr("style",k.join(";")),L.select("path").attr("style",f.join(";").replace("fill","stroke"))}else L=l.insert("rect",":first-child"),L.attr("style",z).attr("rx",B.rx).attr("ry",B.ry).attr("x",Q).attr("y",G).attr("width",w).attr("height",K);let{subGraphTitleTopMargin:H}=GC(E);if(M.attr("transform",`translate(${B.x-J.width/2}, ${B.y-B.height/2+H})`),U){let x=M.select("span");if(x)x.attr("style",U)}let q=L.node().getBBox();return B.offsetX=0,B.width=q.width,B.height=q.height,B.offsetY=J.height-B.padding/2,B.intersect=function(x){return pZ(B,x)},{cluster:l,labelBBox:J}},"rect"),L84=X((u,B)=>{let E=u.insert("g").attr("class","note-cluster").attr("id",B.domId),A=E.insert("rect",":first-child"),C=0*B.padding,D=C/2;A.attr("rx",B.rx).attr("ry",B.ry).attr("x",B.x-B.width/2-D).attr("y",B.y-B.height/2-D).attr("width",B.width+C).attr("height",B.height+C).attr("fill","none");let F=A.node().getBBox();return B.width=F.width,B.height=F.height,B.intersect=function(U){return pZ(B,U)},{cluster:E,labelBBox:{width:0,height:0}}},"noteGroup"),q84=X(async(u,B)=>{let E=$0(),{themeVariables:A,handDrawnSeed:C}=E,{altBackground:D,compositeBackground:F,compositeTitleBackground:U,nodeBorder:z}=A,k=u.insert("g").attr("class",B.cssClasses).attr("id",B.domId).attr("data-id",B.id).attr("data-look",B.look),f=k.insert("g",":first-child"),l=k.insert("g").attr("class","cluster-label"),b=k.append("rect"),M=await Oz(l,B.label,B.labelStyle,void 0,!0),Z=M.getBBox();if(w1(E)){let W=M.children[0],S=Ku(M);Z=W.getBoundingClientRect(),S.attr("width",Z.width),S.attr("height",Z.height)}let J=0*B.padding,w=J/2,K=(B.width<=Z.width+B.padding?Z.width+B.padding:B.width)+J;if(B.width<=Z.width+B.padding)B.diff=(K-B.width)/2-B.padding;else B.diff=-B.padding;let Q=B.height+J,G=B.height+J-Z.height-6,L=B.x-K/2,H=B.y-Q/2;B.width=K;let q=B.y-B.height/2-w+Z.height+2,x;if(B.look==="handDrawn"){let W=B.cssClasses.includes("statediagram-cluster-alt"),S=Ou.svg(k),T=B.rx||B.ry?S.path(sf(L,H,K,Q,10),{roughness:0.7,fill:U,fillStyle:"solid",stroke:z,seed:C}):S.rectangle(L,H,K,Q,{seed:C});x=k.insert(()=>T,":first-child");let R=S.rectangle(L,q,K,G,{fill:W?D:F,fillStyle:W?"hachure":"solid",stroke:z,seed:C});x=k.insert(()=>T,":first-child"),b=k.insert(()=>R)}else{x=f.insert("rect",":first-child");let W="outer";x.attr("class",W).attr("x",L).attr("y",H).attr("width",K).attr("height",Q).attr("data-look",B.look),b.attr("class","inner").attr("x",L).attr("y",q).attr("width",K).attr("height",G)}l.attr("transform",`translate(${B.x-Z.width/2}, ${H+1-(w1(E)?0:3)})`);let v=x.node().getBBox();return B.height=v.height,B.offsetX=0,B.offsetY=Z.height-B.padding/2,B.labelBBox=Z,B.intersect=function(W){return pZ(B,W)},{cluster:k,labelBBox:Z}},"roundedWithTitle"),X84=X(async(u,B)=>{z0.info("Creating subgraph rect for ",B.id,B);let E=$0(),{themeVariables:A,handDrawnSeed:C}=E,{clusterBkg:D,clusterBorder:F}=A,{labelStyles:U,nodeStyles:z,borderStyles:k,backgroundStyles:f}=H4(B),l=u.insert("g").attr("class","cluster "+B.cssClasses).attr("id",B.domId).attr("data-look",B.look),b=w1(E),M=l.insert("g").attr("class","cluster-label "),Z=await X2(M,B.label,{style:B.labelStyle,useHtmlLabels:b,isNode:!0,width:B.width}),J=Z.getBBox();if(w1(E)){let x=Z.children[0],v=Ku(Z);J=x.getBoundingClientRect(),v.attr("width",J.width),v.attr("height",J.height)}let w=B.width<=J.width+B.padding?J.width+B.padding:B.width;if(B.width<=J.width+B.padding)B.diff=(w-B.width)/2-B.padding;else B.diff=-B.padding;let K=B.height,Q=B.x-w/2,G=B.y-K/2;z0.trace("Data ",B,JSON.stringify(B));let L;if(B.look==="handDrawn"){let x=Ou.svg(l),v=S4(B,{roughness:0.7,fill:D,stroke:F,fillWeight:4,seed:C}),W=x.path(sf(Q,G,w,K,B.rx),v);L=l.insert(()=>{return z0.debug("Rough node insert CXC",W),W},":first-child"),L.select("path:nth-child(2)").attr("style",k.join(";")),L.select("path").attr("style",f.join(";").replace("fill","stroke"))}else L=l.insert("rect",":first-child"),L.attr("style",z).attr("rx",B.rx).attr("ry",B.ry).attr("x",Q).attr("y",G).attr("width",w).attr("height",K);let{subGraphTitleTopMargin:H}=GC(E);if(M.attr("transform",`translate(${B.x-J.width/2}, ${B.y-B.height/2+H})`),U){let x=M.select("span");if(x)x.attr("style",U)}let q=L.node().getBBox();return B.offsetX=0,B.width=q.width,B.height=q.height,B.offsetY=J.height-B.padding/2,B.intersect=function(x){return pZ(B,x)},{cluster:l,labelBBox:J}},"kanbanSection"),x84=X((u,B)=>{let E=$0(),{themeVariables:A,handDrawnSeed:C}=E,{nodeBorder:D}=A,F=u.insert("g").attr("class",B.cssClasses).attr("id",B.domId).attr("data-look",B.look),U=F.insert("g",":first-child"),z=0*B.padding,k=B.width+z;B.diff=-B.padding;let f=B.height+z,l=B.x-k/2,b=B.y-f/2;B.width=k;let M;if(B.look==="handDrawn"){let w=Ou.svg(F).rectangle(l,b,k,f,{fill:"lightgrey",roughness:0.5,strokeLineDash:[5],stroke:D,seed:C});M=F.insert(()=>w,":first-child")}else{M=U.insert("rect",":first-child");let J="outer";if(B.look==="neo")J="divider";else J="divider";M.attr("class",J).attr("x",l).attr("y",b).attr("width",k).attr("height",f).attr("data-look",B.look)}let Z=M.node().getBBox();return B.height=Z.height,B.offsetX=0,B.offsetY=0,B.intersect=function(J){return pZ(B,J)},{cluster:F,labelBBox:{}}},"divider"),v84=ER0,S84={rect:ER0,squareRect:v84,roundedWithTitle:q84,noteGroup:L84,divider:x84,kanbanSection:X84,swimlane:H84},AR0=new Map,of=X(async(u,B)=>{let E=B.shape||"rect",A=await S84[E](u,B);return AR0.set(B.id,A),A},"insertCluster"),ei=X(()=>{AR0=new Map},"clear");X(CR0,"intersectNode");W84=CR0;X(DR0,"intersectEllipse");FR0=DR0;X(UR0,"intersectCircle");Y84=UR0;X(zR0,"intersectLine");X(K30,"sameSign");R84=zR0;X(kR0,"intersectPolygon");T84=kR0,L4={node:W84,circle:Y84,ellipse:FR0,polygon:T84,rect:pZ};X(fR0,"anchor");X(Q30,"generateArcPoints");X(lR0,"calculateArcSagitta");X(bR0,"bowTieRect");X(Iz,"insertPolygonShape");X(MR0,"card");X(ZR0,"choice");X(G30,"circle");X(JR0,"createLine");X(wR0,"crossedCircle");X(Rz,"generateCirclePoints");X(KR0,"curlyBraceLeft");X(Tz,"generateCirclePoints");X(QR0,"curlyBraceRight");X(u7,"generateCirclePoints");X(GR0,"curlyBraces");X(HR0,"curvedTrapezoid");O84=X((u,B,E,A,C,D)=>{return[`M${u},${B+D}`,`a${C},${D} 0,0,0 ${E},0`,`a${C},${D} 0,0,0 ${-E},0`,`l0,${A}`,`a${C},${D} 0,0,0 ${E},0`,`l0,${-A}`].join(" ")},"createCylinderPathD"),I84=X((u,B,E,A,C,D)=>{return[`M${u},${B+D}`,`M${u+E},${B+D}`,`a${C},${D} 0,0,0 ${-E},0`,`l0,${A}`,`a${C},${D} 0,0,0 ${E},0`,`l0,${-A}`].join(" ")},"createOuterCylinderPathD"),P84=X((u,B,E,A,C,D)=>{return[`M${u-E/2},${-A/2}`,`a${C},${D} 0,0,0 ${E},0`].join(" ")},"createInnerCylinderPathD");X(LR0,"cylinder");X(TG,"drawRect");X(qR0,"datastore");X(XR0,"dividedRectangle");X(xR0,"doublecircle");X(vR0,"filledCircle");X(SR0,"flippedTriangle");X(WR0,"forkJoin");X(YR0,"halfRoundedRectangle");j84=X((u,B,E,A,C)=>{return[`M${u+C},${B}`,`L${u+E-C},${B}`,`L${u+E},${B-A/2}`,`L${u+E-C},${B-A}`,`L${u+C},${B-A}`,`L${u},${B-A/2}`,"Z"].join(" ")},"createHexagonPathD");X(RR0,"hexagon");X(TR0,"hourglass");X(OR0,"icon");X(IR0,"iconCircle");X(PR0,"iconRounded");X(jR0,"iconSquare");X(NR0,"imageSquare");X(iR0,"inv_trapezoid");X(aR0,"labelRect");X(VR0,"lean_left");X(hR0,"lean_right");X(mR0,"lightningBolt");N84=X((u,B,E,A,C,D,F)=>{return[`M${u},${B+D}`,`a${C},${D} 0,0,0 ${E},0`,`a${C},${D} 0,0,0 ${-E},0`,`l0,${A}`,`a${C},${D} 0,0,0 ${E},0`,`l0,${-A}`,`M${u},${B+D+F}`,`a${C},${D} 0,0,0 ${E},0`].join(" ")},"createCylinderPathD"),i84=X((u,B,E,A,C,D,F)=>{return[`M${u},${B+D}`,`M${u+E},${B+D}`,`a${C},${D} 0,0,0 ${-E},0`,`l0,${A}`,`a${C},${D} 0,0,0 ${E},0`,`l0,${-A}`,`M${u},${B+D+F}`,`a${C},${D} 0,0,0 ${E},0`].join(" ")},"createOuterCylinderPathD"),a84=X((u,B,E,A,C,D)=>{return[`M${u-E/2},${-A/2}`,`a${C},${D} 0,0,0 ${E},0`].join(" ")},"createInnerCylinderPathD");X(rR0,"linedCylinder");X($R0,"linedWaveEdgedRect");X(yR0,"multiRect");X(cR0,"multiWaveEdgedRectangle");X(gR0,"note");V84=X((u,B,E)=>{return[`M${u+E/2},${B}`,`L${u+E},${B-E/2}`,`L${u+E/2},${B-E}`,`L${u},${B-E/2}`,"Z"].join(" ")},"createDecisionBoxPathD");X(_R0,"question");X(nR0,"rect_left_inv_arrow");X(pR0,"rectWithTitle");X(dR0,"roundedRect");X(sR0,"shadedProcess");X(oR0,"slopedRect");X(tR0,"squareRect");X(eR0,"stadium");X(uT0,"state");X(BT0,"stateEnd");X(ET0,"stateStart");X(AT0,"subroutine");X(CT0,"taggedRect");X(DT0,"taggedWaveEdgedRectangle");X(FT0,"text");h84=X((u,B,E,A,C,D)=>{return`M${u},${B}
a${C},${D} 0,0,1 0,${-A}
l${E},0
a${C},${D} 0,0,1 0,${A}
M${E},${-A}
a${C},${D} 0,0,0 0,${A}
l${-E},0`},"createCylinderPathD"),m84=X((u,B,E,A,C,D)=>{return[`M${u},${B}`,`M${u+E},${B}`,`a${C},${D} 0,0,0 0,${-A}`,`l${-E},0`,`a${C},${D} 0,0,0 0,${A}`,`l${E},0`].join(" ")},"createOuterCylinderPathD"),r84=X((u,B,E,A,C,D)=>{return[`M${u+E/2},${-A/2}`,`a${C},${D} 0,0,0 0,${A}`].join(" ")},"createInnerCylinderPathD");X(UT0,"tiltedCylinder");X(zT0,"trapezoid");X(kT0,"trapezoidalPentagon");X(fT0,"triangle");X(lT0,"waveEdgedRectangle");X(bT0,"waveRectangle");X(MT0,"windowPane");BR0=new Set(["redux-color","redux-dark-color"]),$84=new Set(["redux","redux-dark","redux-color","redux-dark-color"]);X(H30,"erBox");X(YG,"addText");X(RG,"lineToPolygon");X(ZT0,"textHelper");X(QS,"addText");X(JT0,"classBox");X(wT0,"requirementBox");X(HF,"addText");y84=X((u)=>{switch(u){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");X(KT0,"kanbanItem");X(QT0,"bang");X(GT0,"cloud");X(HT0,"defaultMindmapNode");X(LT0,"mindmapCircle");c84=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:tR0},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:dR0},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:eR0},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:AT0},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:LR0},{semanticName:"Data Store",name:"Data Store",shortName:"datastore",description:"Data flow diagram data store",aliases:["data-store"],handler:qR0},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:G30},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:QT0},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:GT0},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:_R0},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:RR0},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:hR0},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:VR0},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:zT0},{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:iR0},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:xR0},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:FT0},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:MR0},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:sR0},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:ET0},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:BT0},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:WR0},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:TR0},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:KR0},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:QR0},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:GR0},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:mR0},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:lT0},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:YR0},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:UT0},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:rR0},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:HR0},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:XR0},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:fT0},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:MT0},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:vR0},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:kT0},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:SR0},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:oR0},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:cR0},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:yR0},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:bR0},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:wR0},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:DT0},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:CT0},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:bT0},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:nR0},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:$R0}],g84=X(()=>{let B=[...Object.entries({state:uT0,choice:ZR0,note:gR0,rectWithTitle:pR0,labelRect:aR0,iconSquare:jR0,iconCircle:IR0,icon:OR0,iconRounded:PR0,imageSquare:NR0,anchor:fR0,kanbanItem:KT0,mindmapCircle:LT0,defaultMindmapNode:HT0,classBox:JT0,erBox:H30,requirementBox:wT0}),...c84.flatMap((E)=>{return[E.shortName,..."aliases"in E?E.aliases:[],..."internalAliases"in E?E.internalAliases:[]].map((C)=>[C,E.handler])})];return Object.fromEntries(B)},"generateShapeMap"),qT0=g84();X(L30,"isValidShape");ua=new Map;X(Pz,"insertNode");XT0=X((u,B)=>{ua.set(B.id,u)},"setNodeElem"),Ba=X(()=>{ua.clear()},"clear"),dZ=X((u)=>{let B=ua.get(u.id);z0.trace("Transforming node",u.diff,u,"translate("+(u.x-u.width/2-5)+", "+u.width/2+")");let E=8,A=u.diff||0;if(u.clusterNode)B.attr("transform","translate("+(u.x+A-u.width/2)+", "+(u.y-u.height/2-E)+")");else B.attr("transform","translate("+u.x+", "+u.y+")");return A},"positionNode")});function HS(u,B){if(u===void 0||B===void 0)return{angle:0,deltaX:0,deltaY:0};u=C9(u),B=C9(B);let[E,A]=[u.x,u.y],[C,D]=[B.x,B.y],F=C-E,U=D-A;return{angle:Math.atan(U/F),deltaX:F,deltaY:U}}var sE,x2,q30,C9,Ea;var bB=g(()=>{Y4();sE=X((u,B)=>{if(B)return"translate("+-u.width/2+", "+-u.height/2+")";let E=u.x??0,A=u.y??0;return"translate("+-(E+u.width/2)+", "+-(A+u.height/2)+")"},"computeLabelTransform"),x2={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},q30={arrow_point:4,arrow_cross:12.5,arrow_circle:12.5};X(HS,"calculateDeltaAndAngle");C9=X((u)=>{if(Array.isArray(u))return{x:u[0],y:u[1]};return u},"pointTransformer"),Ea=X((u)=>{return{x:X(function(B,E,A){let C=0,D=C9(A[0]).x<C9(A[A.length-1]).x?"left":"right";if(E===0&&Object.hasOwn(x2,u.arrowTypeStart)){let{angle:M,deltaX:Z}=HS(A[0],A[1]);C=x2[u.arrowTypeStart]*Math.cos(M)*(Z>=0?1:-1)}else if(E===A.length-1&&Object.hasOwn(x2,u.arrowTypeEnd)){let{angle:M,deltaX:Z}=HS(A[A.length-1],A[A.length-2]);C=x2[u.arrowTypeEnd]*Math.cos(M)*(Z>=0?1:-1)}let F=Math.abs(C9(B).x-C9(A[A.length-1]).x),U=Math.abs(C9(B).y-C9(A[A.length-1]).y),z=Math.abs(C9(B).x-C9(A[0]).x),k=Math.abs(C9(B).y-C9(A[0]).y),f=x2[u.arrowTypeStart],l=x2[u.arrowTypeEnd],b=1;if(F<l&&F>0&&U<l){let M=l+b-F;M*=D==="right"?-1:1,C-=M}if(z<f&&z>0&&k<f){let M=f+b-z;M*=D==="right"?-1:1,C+=M}return C9(B).x+C},"x"),y:X(function(B,E,A){let C=0,D=C9(A[0]).y<C9(A[A.length-1]).y?"down":"up";if(E===0&&Object.hasOwn(x2,u.arrowTypeStart)){let{angle:M,deltaY:Z}=HS(A[0],A[1]);C=x2[u.arrowTypeStart]*Math.abs(Math.sin(M))*(Z>=0?1:-1)}else if(E===A.length-1&&Object.hasOwn(x2,u.arrowTypeEnd)){let{angle:M,deltaY:Z}=HS(A[A.length-1],A[A.length-2]);C=x2[u.arrowTypeEnd]*Math.abs(Math.sin(M))*(Z>=0?1:-1)}let F=Math.abs(C9(B).y-C9(A[A.length-1]).y),U=Math.abs(C9(B).x-C9(A[A.length-1]).x),z=Math.abs(C9(B).y-C9(A[0]).y),k=Math.abs(C9(B).x-C9(A[0]).x),f=x2[u.arrowTypeStart],l=x2[u.arrowTypeEnd],b=1;if(F<l&&F>0&&U<l){let M=l+b-F;M*=D==="up"?-1:1,C-=M}if(z<f&&z>0&&k<f){let M=f+b-z;M*=D==="up"?-1:1,C+=M}return C9(B).y+C},"y")}},"getLineFunctionsWithOffset")});function qS(u,B){if(w1($0())&&u)u.style.width=B.length*9+"px",u.style.height="12px"}function WT0(u){let B=[],E=[];for(let A=1;A<u.length-1;A++){let C=u[A-1],D=u[A],F=u[A+1];if(C.x===D.x&&D.y===F.y&&Math.abs(D.x-F.x)>5&&Math.abs(D.y-C.y)>5)B.push(D),E.push(A);else if(C.y===D.y&&D.x===F.x&&Math.abs(D.x-C.x)>5&&Math.abs(D.y-F.y)>5)B.push(D),E.push(A)}return{cornerPoints:B,cornerPointPositions:E}}function YT0(u,B){if(u.length<2)return"";let E="",A=u.length,C=0.00001;for(let D=0;D<A;D++){let F=u[D],U=u[D-1],z=u[D+1];if(D===0)E+=`M${F.x},${F.y}`;else if(D===A-1)E+=`L${F.x},${F.y}`;else{let k=F.x-U.x,f=F.y-U.y,l=z.x-F.x,b=z.y-F.y,M=Math.hypot(k,f),Z=Math.hypot(l,b);if(M<C||Z<C){E+=`L${F.x},${F.y}`;continue}let J=k/M,w=f/M,K=l/Z,Q=b/Z,G=J*K+w*Q,L=Math.max(-1,Math.min(1,G)),H=Math.acos(L);if(H<C||Math.abs(Math.PI-H)<C){E+=`L${F.x},${F.y}`;continue}let q=Math.min(B/Math.sin(H/2),M/2,Z/2),x=F.x-J*q,v=F.y-w*q,W=F.x+K*q,S=F.y+Q*q;E+=`L${x},${v}`,E+=`Q${F.x},${F.y} ${W},${S}`}}return E}function X30(u,B){if(!u||!B)return{angle:0,deltaX:0,deltaY:0};let E=B.x-u.x,A=B.y-u.y;return{angle:Math.atan2(A,E),deltaX:E,deltaY:A}}function RT0(u,B){let E=u.map((C)=>({...C}));if(u.length>=2&&x2[B.arrowTypeStart]){let C=x2[B.arrowTypeStart],D=u[0],F=u[1],{angle:U}=X30(D,F),z=C*Math.cos(U),k=C*Math.sin(U);E[0].x=D.x+z,E[0].y=D.y+k}let A=u.length;if(A>=2&&x2[B.arrowTypeEnd]){let C=x2[B.arrowTypeEnd],D=u[A-1],F=u[A-2],{angle:U}=X30(F,D),z=C*Math.cos(U),k=C*Math.sin(U);E[A-1].x=D.x-z,E[A-1].y=D.y-k}return E}var _84,n84,p84,xT0,d84,OG,i9,Aa,LS,sZ,Ca,s84,o84,t84,vT0,ST0,e84,uE4,IG,BE4,EE4,AE4,CE4,DE4,FE4,UE4,zE4,kE4,fE4,lE4,bE4,ME4,ZE4,JE4,wE4,KE4,QE4,GE4,HE4,LE4,qE4,XE4,xE4,PG;var D8=g(()=>{B7();o5();bB();e5();d2();t3();s4();o4();Y4();i3();j4();_84=X((u,B,E,A,C,D=!1,F)=>{if(B.arrowTypeStart)xT0(u,"start",B.arrowTypeStart,E,A,C,D,F);if(B.arrowTypeEnd)xT0(u,"end",B.arrowTypeEnd,E,A,C,D,F)},"addEdgeMarkers"),n84={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}},p84=["cross","point","circle","lollipop","aggregation","extension","composition","dependency","barb"],xT0=X((u,B,E,A,C,D,F=!1,U)=>{let z=n84[E],k=z&&p84.includes(z.type);if(!z){z0.warn(`Unknown arrow type: ${E}`);return}let f=z.type,M=`${C}_${D}-${f}${B==="start"?"Start":"End"}${F&&k?"-margin":""}`;if(U&&U.trim()!==""){let Z=U.replace(/[^\dA-Za-z]/g,"_"),J=`${M}_${Z}`;if(!document.getElementById(J)){let w=document.getElementById(M);if(w){let K=w.cloneNode(!0);K.id=J,K.querySelectorAll("path, circle, line").forEach((G)=>{if(G.setAttribute("stroke",U),z.fill)G.setAttribute("fill",U)}),w.parentNode?.appendChild(K)}}u.attr(`marker-${B}`,`url(${A}#${J})`)}else u.attr(`marker-${B}`,`url(${A}#${M})`)},"addEdgeMarker"),d84=X((u)=>{return typeof u==="string"?u:$0()?.flowchart?.curve},"resolveEdgeCurveType"),OG=new Map,i9=new Map,Aa=X(()=>{OG.clear(),i9.clear()},"clear"),LS=X((u)=>{if(!u)return"";if(typeof u==="string")return u;return u.reduce((B,E)=>B+";"+E,"")},"getLabelStyles"),sZ=X(async(u,B)=>{let E=$0(),A=w1(E),{labelStyles:C}=H4(B);B.labelStyle=C;let D=u.insert("g").attr("class","edgeLabel"),F=D.insert("g").attr("class","label").attr("data-id",B.id),U=B.labelType==="markdown",z=void 0,k=await X2(u,B.label,{style:LS(B.labelStyle),useHtmlLabels:A,addSvgBackground:!0,isNode:!1,markdown:U,width:U?z:void 0},E);F.node().appendChild(k),z0.info("abc82",B,B.labelType);let f=k.getBBox(),l=f;if(A){let M=k.children[0],Z=Ku(k);f=M.getBoundingClientRect(),l=f,Z.attr("width",f.width),Z.attr("height",f.height)}else{let M=Ku(k).select("text").node();if(M&&typeof M.getBBox==="function")l=M.getBBox()}F.attr("transform",sE(l,A)),OG.set(B.id,D),B.width=f.width,B.height=f.height;let b;if(B.startLabelLeft){let M=u.insert("g").attr("class","edgeTerminals"),Z=M.insert("g").attr("class","inner"),J=await Oz(Z,B.startLabelLeft,LS(B.labelStyle)||"",!1,!1);b=J;let w=J.getBBox();if(A){let K=J.children[0],Q=Ku(J);w=K.getBoundingClientRect(),Q.attr("width",w.width),Q.attr("height",w.height)}if(Z.attr("transform",sE(w,A)),!i9.get(B.id))i9.set(B.id,{});i9.get(B.id).startLeft=M,qS(b,B.startLabelLeft)}if(B.startLabelRight){let M=u.insert("g").attr("class","edgeTerminals"),Z=M.insert("g").attr("class","inner"),J=await Oz(Z,B.startLabelRight,LS(B.labelStyle)||"",!1,!1);b=J;let w=J.getBBox();if(A){let K=J.children[0],Q=Ku(J);w=K.getBoundingClientRect(),Q.attr("width",w.width),Q.attr("height",w.height)}if(Z.attr("transform",sE(w,A)),!i9.get(B.id))i9.set(B.id,{});i9.get(B.id).startRight=M,qS(b,B.startLabelRight)}if(B.endLabelLeft){let M=u.insert("g").attr("class","edgeTerminals"),Z=M.insert("g").attr("class","inner"),J=await Oz(M,B.endLabelLeft,LS(B.labelStyle)||"",!1,!1);b=J;let w=J.getBBox();if(A){let K=J.children[0],Q=Ku(J);w=K.getBoundingClientRect(),Q.attr("width",w.width),Q.attr("height",w.height)}if(Z.attr("transform",sE(w,A)),!i9.get(B.id))i9.set(B.id,{});i9.get(B.id).endLeft=M,qS(b,B.endLabelLeft)}if(B.endLabelRight){let M=u.insert("g").attr("class","edgeTerminals"),Z=M.insert("g").attr("class","inner"),J=await Oz(M,B.endLabelRight,LS(B.labelStyle)||"",!1,!1);b=J;let w=J.getBBox();if(A){let K=J.children[0],Q=Ku(J);w=K.getBoundingClientRect(),Q.attr("width",w.width),Q.attr("height",w.height)}if(Z.attr("transform",sE(w,A)),!i9.get(B.id))i9.set(B.id,{});i9.get(B.id).endRight=M,qS(b,B.endLabelRight)}return k},"insertEdgeLabel");X(qS,"setTerminalWidth");Ca=X((u,B)=>{z0.debug("Moving label abc88 ",u.id,u.label,OG.get(u.id),B);let E=B.updatedPath?B.updatedPath:B.originalPath,A=$0(),{subGraphTitleTotalMargin:C}=GC(A);if(u.label){let D=OG.get(u.id),F=u.x,U=u.y;if(E){let z=R4.calcLabelPosition(E);if(z0.debug("Moving label "+u.label+" from (",F,",",U,") to (",z.x,",",z.y,") abc88"),B.updatedPath)F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U+C/2})`)}if(u.startLabelLeft){let D=i9.get(u.id).startLeft,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeStart?10:0,"start_left",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.startLabelRight){let D=i9.get(u.id).startRight,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeStart?10:0,"start_right",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.endLabelLeft){let D=i9.get(u.id).endLeft,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeEnd?10:0,"end_left",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.endLabelRight){let D=i9.get(u.id).endRight,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeEnd?10:0,"end_right",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}},"positionEdgeLabel"),s84=X((u,B)=>{if(!u?.isLabelEdge||!u?.id?.endsWith("-to-label")||!Array.isArray(B))return B;if(B.length!==2)return B;let[E,A]=B,C=Math.abs(A.x-E.x),D=Math.abs(A.y-E.y);if(C<0.001||D<0.001)return B;if(D>=C)return[E,{x:E.x,y:A.y},A];return[E,{x:A.x,y:E.y},A]},"orthogonalizeToLabelClippedPoints"),o84=X((u,B)=>{let{x:E,y:A}=u,C=Math.abs(B.x-E),D=Math.abs(B.y-A),F=u.width/2,U=u.height/2;return C>=F||D>=U},"outsideNode"),t84=X((u,B,E)=>{z0.debug(`intersection calc abc89:
outsidePoint: ${JSON.stringify(B)}
insidePoint : ${JSON.stringify(E)}
node : x:${u.x} y:${u.y} w:${u.width} h:${u.height}`);let{x:A,y:C}=u,D=Math.abs(A-E.x),F=u.width/2,U=E.x<B.x?F-D:F+D,z=u.height/2,k=Math.abs(B.y-E.y),f=Math.abs(B.x-E.x);if(Math.abs(C-B.y)*F>Math.abs(A-B.x)*z){let l=E.y<B.y?B.y-z-C:C-z-B.y;U=f*l/k;let b={x:E.x<B.x?E.x+U:E.x-f+U,y:E.y<B.y?E.y+k-l:E.y-k+l};if(U===0)b.x=B.x,b.y=B.y;if(f===0)b.x=B.x;if(k===0)b.y=B.y;return z0.debug(`abc89 top/bottom calc, Q ${k}, q ${l}, R ${f}, r ${U}`,b),b}else{if(E.x<B.x)U=B.x-F-A;else U=A-F-B.x;let l=k*U/f,b=E.x<B.x?E.x+f-U:E.x-f+U,M=E.y<B.y?E.y+l:E.y-l;if(z0.debug(`sides calc abc89, Q ${k}, q ${l}, R ${f}, r ${U}`,{_x:b,_y:M}),U===0)b=B.x,M=B.y;if(f===0)b=B.x;if(k===0)M=B.y;return{x:b,y:M}}},"intersection"),vT0=X((u,B)=>{z0.warn("abc88 cutPathAtIntersect",u,B);let E=[],A=u[0],C=!1;return u.forEach((D)=>{if(z0.info("abc88 checking point",D,B),!o84(B,D)&&!C){let F=t84(B,A,D);z0.debug("abc88 inside",D,A,F),z0.debug("abc88 intersection",F,B);let U=!1;if(E.forEach((z)=>{U=U||z.x===F.x&&z.y===F.y}),!E.some((z)=>z.x===F.x&&z.y===F.y))E.push(F);else z0.warn("abc88 no intersect",F,E);C=!0}else if(z0.warn("abc88 outside",D,A),A=D,!C)E.push(D)}),z0.debug("returning points",E),E},"cutPathAtIntersect");X(WT0,"extractCornerPoints");ST0=X(function(u,B,E){let A=B.x-u.x,C=B.y-u.y,D=Math.sqrt(A*A+C*C),F=E/D;return{x:B.x-F*A,y:B.y-F*C}},"findAdjacentPoint"),e84=X(function(u){let{cornerPointPositions:B}=WT0(u),E=[];for(let A=0;A<u.length;A++)if(B.includes(A)){let C=u[A-1],D=u[A+1],F=u[A],U=ST0(C,F,5),z=ST0(D,F,5),k=z.x-U.x,f=z.y-U.y;E.push(U);let l=Math.sqrt(2)*2,b={x:F.x,y:F.y};if(Math.abs(D.x-C.x)>10&&Math.abs(D.y-C.y)>=10){z0.debug("Corner point fixing",Math.abs(D.x-C.x),Math.abs(D.y-C.y));let M=5;if(F.x===U.x)b={x:k<0?U.x-M+l:U.x+M-l,y:f<0?U.y-l:U.y+l};else b={x:k<0?U.x-l:U.x+l,y:f<0?U.y-M+l:U.y+M-l}}else z0.debug("Corner point skipping fixing",Math.abs(D.x-C.x),Math.abs(D.y-C.y));E.push(b,z)}else E.push(u[A]);return E},"fixCorners"),uE4=X((u,B,E)=>{let A=u-B-E,C=2,D=2,F=4,U=Math.floor(A/4),z=Array(U).fill("2 2").join(" ");return`0 ${B} ${z} ${E}`},"generateDashArray"),IG=X(function(u,B,E,A,C,D,F,U=!1){if(!F)throw Error(`insertEdge: missing diagramId for edge "${B.id}" — edge IDs require a diagram prefix for uniqueness`);let{handDrawnSeed:z,layout:k}=$0(),f=B.points,l=!1,b=C;var M=D;let Z=[];for(let N in B.cssCompiledStyles){if(BS(N))continue;Z.push(B.cssCompiledStyles[N])}if(k==="swimlane"){if(M.intersect&&b.intersect&&Array.isArray(f)&&f.length>=2)if(f.length===2)f=[b.intersect(f[0]),M.intersect(f[1])];else{let N=f.slice(1,-1),V=N[0],h=N[N.length-1],r=0.5,m=Math.abs(f[f.length-1].x-h.x)<0.5&&Math.abs(f[f.length-1].y-h.y)<0.5,$=b.intersect(V),y=m?h:M.intersect(h),p=Math.abs(y.x-h.x)<0.5&&Math.abs(y.y-h.y)<0.5,_=Math.abs($.x-V.x)<0.5&&Math.abs($.y-V.y)<0.5?[]:[$],b0=p?[]:[y];f=[..._,...N,...b0]}f=s84(B,f)}else if(M.intersect&&b.intersect&&!U)f=f.slice(1,B.points.length-1),f.unshift(b.intersect(f[0])),f.push(M.intersect(f[f.length-1]));let J=btoa(JSON.stringify(f));if(B.toCluster)z0.info("to cluster abc88",E.get(B.toCluster)),f=vT0(B.points,E.get(B.toCluster).node),l=!0;if(B.fromCluster)z0.debug("from cluster abc88",E.get(B.fromCluster),JSON.stringify(f,null,2)),f=vT0(f.reverse(),E.get(B.fromCluster).node).reverse(),l=!0;let w=f.filter((N)=>!Number.isNaN(N.y)),K=d84(B.curve);if(K!=="rounded")w=e84(w);let Q=wF;switch(K){case"linear":Q=wF;break;case"basis":Q=KC;break;case"cardinal":Q=$v;break;case"bumpX":Q=Vv;break;case"bumpY":Q=hv;break;case"catmullRom":Q=gv;break;case"monotoneX":Q=_v;break;case"monotoneY":Q=nv;break;case"natural":Q=fG;break;case"step":Q=lG;break;case"stepAfter":Q=dv;break;case"stepBefore":Q=pv;break;case"rounded":Q=wF;break;default:Q=KC}let{x:G,y:L}=Ea(B),H=wC().x(G).y(L).curve(Q),q;switch(B.thickness){case"normal":q="edge-thickness-normal";break;case"thick":q="edge-thickness-thick";break;case"invisible":q="edge-thickness-invisible";break;default:q="edge-thickness-normal"}switch(B.pattern){case"solid":q+=" edge-pattern-solid";break;case"dotted":q+=" edge-pattern-dotted";break;case"dashed":q+=" edge-pattern-dashed";break;default:q+=" edge-pattern-solid"}let x,v=K==="rounded"?YT0(RT0(w,B),5):H(w),W=Array.isArray(B.style)?B.style:[B.style],S=W.find((N)=>N?.startsWith("stroke:")),T="";if(B.animate)T="edge-animation-fast";if(B.animation)T="edge-animation-"+B.animation;let R=!1;if(B.look==="handDrawn"){let N=Ou.svg(u);Object.assign([],w);let V=N.path(v,{roughness:0.3,seed:z});q+=" transition",x=Ku(V).select("path").attr("id",`${F}-${B.id}`).attr("class"," "+q+(B.classes?" "+B.classes:"")+(T?" "+T:"")).attr("style",W?W.reduce((r,m)=>r+";"+m,""):"");let h=x.attr("d");x.attr("d",h),u.node().appendChild(x.node())}else{let N=Z.join(";"),V=W?W.reduce((p,e)=>p+e+";",""):"",h=(N?N+";"+V+";":V)+";"+(W?W.reduce((p,e)=>p+";"+e,""):"");x=u.append("path").attr("d",v).attr("id",`${F}-${B.id}`).attr("class"," "+q+(B.classes?" "+B.classes:"")+(T?" "+T:"")).attr("style",h),S=h.match(/stroke:([^;]+)/)?.[1],R=B.animate===!0||!!B.animation||N.includes("animation");let r=x.node(),m=typeof r.getTotalLength==="function"?r.getTotalLength():0,$=q30[B.arrowTypeStart]||0,y=q30[B.arrowTypeEnd]||0;if(B.look==="neo"&&!R){let e=`stroke-dasharray: ${B.pattern==="dotted"||B.pattern==="dashed"?uE4(m,$,y):`0 ${$} ${m-$-y} ${y}`}; stroke-dashoffset: 0;`;x.attr("style",e+x.attr("style"))}}if(x.attr("data-edge",!0),x.attr("data-et","edge"),x.attr("data-id",B.id),x.attr("data-points",J),x.attr("data-look",L2(B.look)),B.showPoints)w.forEach((N)=>{u.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",N.x).attr("cy",N.y)});let Y="";if($0().flowchart.arrowMarkerAbsolute||$0().state.arrowMarkerAbsolute)Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\(").replace(/\)/g,"\\)");z0.info("arrowTypeStart",B.arrowTypeStart),z0.info("arrowTypeEnd",B.arrowTypeEnd);let a=!R&&B?.look==="neo";_84(x,B,Y,F,A,a,S);let I=Math.floor(f.length/2),O=f[I];if(!R4.isLabelCoordinateInPath(O,x.attr("d")))l=!0;let i={};if(l)i.updatedPath=f;return i.originalPath=B.points,i},"insertEdge");X(YT0,"generateRoundedPath");X(X30,"calculateDeltaAndAngle");X(RT0,"applyMarkerOffsetsToPoints");BE4=X((u,B,E,A)=>{B.forEach((C)=>{xE4[C](u,E,A)})},"insertMarkers"),EE4=X((u,B,E)=>{z0.trace("Making markers for ",E),u.append("defs").append("marker").attr("id",E+"_"+B+"-extensionStart").attr("class","marker extension "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-extensionEnd").attr("class","marker extension "+B).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"),u.append("marker").attr("id",E+"_"+B+"-extensionStart-margin").attr("class","marker extension "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-extensionEnd-margin").attr("class","marker extension "+B).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"),AE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-compositionStart").attr("class","marker composition "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-compositionEnd").attr("class","marker composition "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-compositionStart-margin").attr("class","marker composition "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-compositionEnd-margin").attr("class","marker composition "+B).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"),CE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-aggregationStart").attr("class","marker aggregation "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-aggregationEnd").attr("class","marker aggregation "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-aggregationStart-margin").attr("class","marker aggregation "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-aggregationEnd-margin").attr("class","marker aggregation "+B).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"),DE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-dependencyStart").attr("class","marker dependency "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-dependencyEnd").attr("class","marker dependency "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-dependencyStart-margin").attr("class","marker dependency "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-dependencyEnd-margin").attr("class","marker dependency "+B).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"),FE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-lollipopStart").attr("class","marker lollipop "+B).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),u.append("defs").append("marker").attr("id",E+"_"+B+"-lollipopEnd").attr("class","marker lollipop "+B).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),u.append("defs").append("marker").attr("id",E+"_"+B+"-lollipopStart-margin").attr("class","marker lollipop "+B).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),u.append("defs").append("marker").attr("id",E+"_"+B+"-lollipopEnd-margin").attr("class","marker lollipop "+B).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"),UE4=X((u,B,E)=>{u.append("marker").attr("id",E+"_"+B+"-pointEnd").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-pointStart").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-pointEnd-margin").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-pointStart-margin").attr("class","marker "+B).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"),zE4=X((u,B,E)=>{u.append("marker").attr("id",E+"_"+B+"-circleEnd").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-circleStart").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-circleEnd-margin").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-circleStart-margin").attr("class","marker "+B).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"),kE4=X((u,B,E)=>{u.append("marker").attr("id",E+"_"+B+"-crossEnd").attr("class","marker cross "+B).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"),u.append("marker").attr("id",E+"_"+B+"-crossStart").attr("class","marker cross "+B).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"),u.append("marker").attr("id",E+"_"+B+"-crossEnd-margin").attr("class","marker cross "+B).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),u.append("marker").attr("id",E+"_"+B+"-crossStart-margin").attr("class","marker cross "+B).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"),fE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-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"),lE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{transitionColor:D}=C;u.append("defs").append("marker").attr("id",E+"_"+B+"-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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-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",`${D}`)},"barbNeo"),bE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-onlyOneStart").attr("class","marker onlyOne "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-onlyOneEnd").attr("class","marker onlyOne "+B).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"),ME4=X((u,B,E)=>{let A=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrOneStart").attr("class","marker zeroOrOne "+B).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");A.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),A.append("path").attr("d","M9,0 L9,18");let C=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+B).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");C.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),C.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),ZE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-oneOrMoreStart").attr("class","marker oneOrMore "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-oneOrMoreEnd").attr("class","marker oneOrMore "+B).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"),JE4=X((u,B,E)=>{let A=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+B).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");A.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),A.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let C=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+B).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");C.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),C.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),wE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{strokeWidth:D}=C;u.append("defs").append("marker").attr("id",E+"_"+B+"-onlyOneStart").attr("class","marker onlyOne "+B).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",`${D}`),u.append("defs").append("marker").attr("id",E+"_"+B+"-onlyOneEnd").attr("class","marker onlyOne "+B).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",`${D}`)},"only_one_neo"),KE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{strokeWidth:D,mainBkg:F}=C,U=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrOneStart").attr("class","marker zeroOrOne "+B).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse");U.append("circle").attr("fill",F??"white").attr("cx",21).attr("cy",9).attr("stroke-width",`${D}`).attr("r",6),U.append("path").attr("d","M9,0 L9,18").attr("stroke-width",`${D}`);let z=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+B).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("markerUnits","userSpaceOnUse").attr("orient","auto");z.append("circle").attr("fill",F??"white").attr("cx",9).attr("cy",9).attr("stroke-width",`${D}`).attr("r",6),z.append("path").attr("d","M21,0 L21,18").attr("stroke-width",`${D}`)},"zero_or_one_neo"),QE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{strokeWidth:D}=C;u.append("defs").append("marker").attr("id",E+"_"+B+"-oneOrMoreStart").attr("class","marker oneOrMore "+B).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",`${D}`),u.append("defs").append("marker").attr("id",E+"_"+B+"-oneOrMoreEnd").attr("class","marker oneOrMore "+B).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",`${D}`)},"one_or_more_neo"),GE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{strokeWidth:D,mainBkg:F}=C,U=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+B).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto");U.append("circle").attr("fill",F??"white").attr("cx",45.5).attr("cy",18).attr("r",6).attr("stroke-width",`${D}`),U.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18").attr("stroke-width",`${D}`);let z=u.append("defs").append("marker").attr("id",E+"_"+B+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+B).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse");z.append("circle").attr("fill",F??"white").attr("cx",11).attr("cy",18).attr("r",6).attr("stroke-width",`${D}`),z.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18").attr("stroke-width",`${D}`)},"zero_or_more_neo"),HE4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-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"),LE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{strokeWidth:D}=C;u.append("defs").append("marker").attr("id",E+"_"+B+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("stroke-width",`${D}`).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"),qE4=X((u,B,E)=>{let A=u.append("defs").append("marker").attr("id",E+"_"+B+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").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)},"requirement_contains"),XE4=X((u,B,E)=>{let A=F4(),{themeVariables:C}=A,{strokeWidth:D}=C,F=u.append("defs").append("marker").attr("id",E+"_"+B+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("g");F.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),F.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),F.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10),F.selectAll("*").attr("stroke-width",`${D}`)},"requirement_contains_neo"),xE4={extension:EE4,composition:AE4,aggregation:CE4,dependency:DE4,lollipop:FE4,point:UE4,circle:zE4,cross:kE4,barb:fE4,barbNeo:lE4,only_one:bE4,zero_or_one:ME4,one_or_more:ZE4,zero_or_more:JE4,only_one_neo:wE4,zero_or_one_neo:KE4,one_or_more_neo:QE4,zero_or_more_neo:GE4,requirement_arrow:HE4,requirement_contains:qE4,requirement_arrow_neo:LE4,requirement_contains_neo:XE4},PG=BE4});var vE4,Da;var x30=g(()=>{vE4=typeof global=="object"&&global&&global.Object===Object&&global,Da=vE4});var SE4,WE4,a9;var oE=g(()=>{x30();SE4=typeof self=="object"&&self&&self.Object===Object&&self,WE4=Da||SE4||Function("return this")(),a9=WE4});var YE4,x5;var oZ=g(()=>{oE();YE4=a9.Symbol,x5=YE4});function OE4(u){var B=RE4.call(u,XS),E=u[XS];try{u[XS]=void 0;var A=!0}catch(D){}var C=TE4.call(u);if(A)if(B)u[XS]=E;else delete u[XS];return C}var TT0,RE4,TE4,XS,OT0;var IT0=g(()=>{oZ();TT0=Object.prototype,RE4=TT0.hasOwnProperty,TE4=TT0.toString,XS=x5?x5.toStringTag:void 0;OT0=OE4});function jE4(u){return PE4.call(u)}var IE4,PE4,PT0;var jT0=g(()=>{IE4=Object.prototype,PE4=IE4.toString;PT0=jE4});function aE4(u){if(u==null)return u===void 0?iE4:NE4;return NT0&&NT0 in Object(u)?OT0(u):PT0(u)}var NE4="[object Null]",iE4="[object Undefined]",NT0,MB;var tf=g(()=>{oZ();IT0();jT0();NT0=x5?x5.toStringTag:void 0;MB=aE4});function VE4(u){return u!=null&&typeof u=="object"}var C2;var qC=g(()=>{C2=VE4});function mE4(u){return typeof u=="symbol"||C2(u)&&MB(u)==hE4}var hE4="[object Symbol]",FE;var tZ=g(()=>{tf();qC();FE=mE4});function rE4(u,B){var E=-1,A=u==null?0:u.length,C=Array(A);while(++E<A)C[E]=B(u[E],E,u);return C}var LF;var xS=g(()=>{LF=rE4});var $E4,d3;var v2=g(()=>{$E4=Array.isArray,d3=$E4});function VT0(u){if(typeof u=="string")return u;if(d3(u))return LF(u,VT0)+"";if(FE(u))return aT0?aT0.call(u):"";var B=u+"";return B=="0"&&1/u==-yE4?"-0":B}var yE4=1/0,iT0,aT0,hT0;var mT0=g(()=>{oZ();xS();v2();tZ();iT0=x5?x5.prototype:void 0,aT0=iT0?iT0.toString:void 0;hT0=VT0});function gE4(u){var B=u.length;while(B--&&cE4.test(u.charAt(B)));return B}var cE4,rT0;var $T0=g(()=>{cE4=/\s/;rT0=gE4});function nE4(u){return u?u.slice(0,rT0(u)+1).replace(_E4,""):u}var _E4,yT0;var cT0=g(()=>{$T0();_E4=/^\s+/;yT0=nE4});function pE4(u){var B=typeof u;return u!=null&&(B=="object"||B=="function")}var D9;var tE=g(()=>{D9=pE4});function eE4(u){if(typeof u=="number")return u;if(FE(u))return gT0;if(D9(u)){var B=typeof u.valueOf=="function"?u.valueOf():u;u=D9(B)?B+"":B}if(typeof u!="string")return u===0?u:+u;u=yT0(u);var E=sE4.test(u);return E||oE4.test(u)?tE4(u.slice(2),E?2:8):dE4.test(u)?gT0:+u}var gT0=NaN,dE4,sE4,oE4,tE4,_T0;var nT0=g(()=>{cT0();tE();tZ();dE4=/^[-+]0x[0-9a-f]+$/i,sE4=/^0b[01]+$/i,oE4=/^0o[0-7]+$/i,tE4=parseInt;_T0=eE4});function BA4(u){if(!u)return u===0?u:0;if(u=_T0(u),u===pT0||u===-pT0){var B=u<0?-1:1;return B*uA4}return u===u?u:0}var pT0=1/0,uA4=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,jG;var v30=g(()=>{nT0();jG=BA4});function EA4(u){var B=jG(u),E=B%1;return B===B?E?B-E:B:0}var dT0;var sT0=g(()=>{v30();dT0=EA4});function AA4(u){return u}var F8;var ef=g(()=>{F8=AA4});function zA4(u){if(!D9(u))return!1;var B=MB(u);return B==DA4||B==FA4||B==CA4||B==UA4}var CA4="[object AsyncFunction]",DA4="[object Function]",FA4="[object GeneratorFunction]",UA4="[object Proxy]",qF;var vS=g(()=>{tf();tE();qF=zA4});var kA4,Fa;var oT0=g(()=>{oE();kA4=a9["__core-js_shared__"],Fa=kA4});function fA4(u){return!!tT0&&tT0 in u}var tT0,eT0;var uO0=g(()=>{oT0();tT0=function(){var u=/[^.]+$/.exec(Fa&&Fa.keys&&Fa.keys.IE_PROTO||"");return u?"Symbol(src)_1."+u:""}();eT0=fA4});function MA4(u){if(u!=null){try{return bA4.call(u)}catch(B){}try{return u+""}catch(B){}}return""}var lA4,bA4,jz;var S30=g(()=>{lA4=Function.prototype,bA4=lA4.toString;jz=MA4});function LA4(u){if(!D9(u)||eT0(u))return!1;var B=qF(u)?HA4:JA4;return B.test(jz(u))}var ZA4,JA4,wA4,KA4,QA4,GA4,HA4,BO0;var EO0=g(()=>{vS();uO0();tE();S30();ZA4=/[\\^$.*+?()[\]{}|]/g,JA4=/^\[object .+?Constructor\]$/,wA4=Function.prototype,KA4=Object.prototype,QA4=wA4.toString,GA4=KA4.hasOwnProperty,HA4=RegExp("^"+QA4.call(GA4).replace(ZA4,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");BO0=LA4});function qA4(u,B){return u==null?void 0:u[B]}var AO0;var CO0=g(()=>{AO0=qA4});function XA4(u,B){var E=AO0(u,B);return BO0(E)?E:void 0}var U8;var ul=g(()=>{EO0();CO0();U8=XA4});var xA4,Ua;var DO0=g(()=>{ul();oE();xA4=U8(a9,"WeakMap"),Ua=xA4});var FO0,vA4,UO0;var zO0=g(()=>{tE();FO0=Object.create,vA4=function(){function u(){}return function(B){if(!D9(B))return{};if(FO0)return FO0(B);u.prototype=B;var E=new u;return u.prototype=void 0,E}}(),UO0=vA4});function SA4(u,B,E){switch(E.length){case 0:return u.call(B);case 1:return u.call(B,E[0]);case 2:return u.call(B,E[0],E[1]);case 3:return u.call(B,E[0],E[1],E[2])}return u.apply(B,E)}var kO0;var fO0=g(()=>{kO0=SA4});function WA4(){}var lO0;var bO0=g(()=>{lO0=WA4});function YA4(u,B){var E=-1,A=u.length;B||(B=Array(A));while(++E<A)B[E]=u[E];return B}var za;var W30=g(()=>{za=YA4});function IA4(u){var B=0,E=0;return function(){var A=OA4(),C=TA4-(A-E);if(E=A,C>0){if(++B>=RA4)return arguments[0]}else B=0;return u.apply(void 0,arguments)}}var RA4=800,TA4=16,OA4,MO0;var ZO0=g(()=>{OA4=Date.now;MO0=IA4});function PA4(u){return function(){return u}}var z8;var Y30=g(()=>{z8=PA4});var jA4,NG;var R30=g(()=>{ul();jA4=function(){try{var u=U8(Object,"defineProperty");return u({},"",{}),u}catch(B){}}(),NG=jA4});var NA4,JO0;var wO0=g(()=>{Y30();R30();ef();NA4=!NG?F8:function(u,B){return NG(u,"toString",{configurable:!0,enumerable:!1,value:z8(B),writable:!0})},JO0=NA4});var iA4,ka;var T30=g(()=>{wO0();ZO0();iA4=MO0(JO0),ka=iA4});function aA4(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(B(u[E],E,u)===!1)break;return u}var fa;var O30=g(()=>{fa=aA4});function VA4(u,B,E,A){var C=u.length,D=E+(A?1:-1);while(A?D--:++D<C)if(B(u[D],D,u))return D;return-1}var la;var I30=g(()=>{la=VA4});function hA4(u){return u!==u}var KO0;var QO0=g(()=>{KO0=hA4});function mA4(u,B,E){var A=E-1,C=u.length;while(++A<C)if(u[A]===B)return A;return-1}var GO0;var HO0=g(()=>{GO0=mA4});function rA4(u,B,E){return B===B?GO0(u,B,E):la(u,KO0,E)}var LO0;var qO0=g(()=>{I30();QO0();HO0();LO0=rA4});function $A4(u,B){var E=u==null?0:u.length;return!!E&&LO0(u,B,0)>-1}var XO0;var xO0=g(()=>{qO0();XO0=$A4});function gA4(u,B){var E=typeof u;return B=B==null?yA4:B,!!B&&(E=="number"||E!="symbol"&&cA4.test(u))&&(u>-1&&u%1==0&&u<B)}var yA4=9007199254740991,cA4,Bl;var SS=g(()=>{cA4=/^(?:0|[1-9]\d*)$/;Bl=gA4});function _A4(u,B,E){if(B=="__proto__"&&NG)NG(u,B,{configurable:!0,enumerable:!0,value:E,writable:!0});else u[B]=E}var El;var WS=g(()=>{R30();El=_A4});function nA4(u,B){return u===B||u!==u&&B!==B}var eE;var eZ=g(()=>{eE=nA4});function sA4(u,B,E){var A=u[B];if(!(dA4.call(u,B)&&eE(A,E))||E===void 0&&!(B in u))El(u,B,E)}var pA4,dA4,Al;var YS=g(()=>{WS();eZ();pA4=Object.prototype,dA4=pA4.hasOwnProperty;Al=sA4});function oA4(u,B,E,A){var C=!E;E||(E={});var D=-1,F=B.length;while(++D<F){var U=B[D],z=A?A(E[U],u[U],U,E,u):void 0;if(z===void 0)z=u[U];if(C)El(E,U,z);else Al(E,U,z)}return E}var XF;var iG=g(()=>{YS();WS();XF=oA4});function tA4(u,B,E){return B=vO0(B===void 0?u.length-1:B,0),function(){var A=arguments,C=-1,D=vO0(A.length-B,0),F=Array(D);while(++C<D)F[C]=A[B+C];C=-1;var U=Array(B+1);while(++C<B)U[C]=A[C];return U[B]=E(F),kO0(u,this,U)}}var vO0,ba;var P30=g(()=>{fO0();vO0=Math.max;ba=tA4});function eA4(u,B){return ka(ba(u,B,F8),u+"")}var Cl;var RS=g(()=>{ef();P30();T30();Cl=eA4});function BC4(u){return typeof u=="number"&&u>-1&&u%1==0&&u<=uC4}var uC4=9007199254740991,aG;var Ma=g(()=>{aG=BC4});function EC4(u){return u!=null&&aG(u.length)&&!qF(u)}var v5;var xF=g(()=>{vS();Ma();v5=EC4});function AC4(u,B,E){if(!D9(E))return!1;var A=typeof B;if(A=="number"?v5(E)&&Bl(B,E.length):A=="string"&&(B in E))return eE(E[B],u);return!1}var Nz;var TS=g(()=>{eZ();xF();SS();tE();Nz=AC4});function CC4(u){return Cl(function(B,E){var A=-1,C=E.length,D=C>1?E[C-1]:void 0,F=C>2?E[2]:void 0;if(D=u.length>3&&typeof D=="function"?(C--,D):void 0,F&&Nz(E[0],E[1],F))D=C<3?void 0:D,C=1;B=Object(B);while(++A<C){var U=E[A];if(U)u(B,U,A,D)}return B})}var SO0;var WO0=g(()=>{RS();TS();SO0=CC4});function FC4(u){var B=u&&u.constructor,E=typeof B=="function"&&B.prototype||DC4;return u===E}var DC4,Dl;var OS=g(()=>{DC4=Object.prototype;Dl=FC4});function UC4(u,B){var E=-1,A=Array(u);while(++E<u)A[E]=B(E);return A}var YO0;var RO0=g(()=>{YO0=UC4});function kC4(u){return C2(u)&&MB(u)==zC4}var zC4="[object Arguments]",j30;var TO0=g(()=>{tf();qC();j30=kC4});var OO0,fC4,lC4,bC4,XC;var VG=g(()=>{TO0();qC();OO0=Object.prototype,fC4=OO0.hasOwnProperty,lC4=OO0.propertyIsEnumerable,bC4=j30(function(){return arguments}())?j30:function(u){return C2(u)&&fC4.call(u,"callee")&&!lC4.call(u,"callee")},XC=bC4});function MC4(){return!1}var IO0;var PO0=g(()=>{IO0=MC4});var Ja={};ju(Ja,{default:()=>uA});var iO0,jO0,ZC4,NO0,JC4,wC4,uA;var hG=g(()=>{oE();PO0();iO0=typeof Ja=="object"&&Ja&&!Ja.nodeType&&Ja,jO0=iO0&&typeof Za=="object"&&Za&&!Za.nodeType&&Za,ZC4=jO0&&jO0.exports===iO0,NO0=ZC4?a9.Buffer:void 0,JC4=NO0?NO0.isBuffer:void 0,wC4=JC4||IO0,uA=wC4});function rC4(u){return C2(u)&&aG(u.length)&&!!r6[MB(u)]}var KC4="[object Arguments]",QC4="[object Array]",GC4="[object Boolean]",HC4="[object Date]",LC4="[object Error]",qC4="[object Function]",XC4="[object Map]",xC4="[object Number]",vC4="[object Object]",SC4="[object RegExp]",WC4="[object Set]",YC4="[object String]",RC4="[object WeakMap]",TC4="[object ArrayBuffer]",OC4="[object DataView]",IC4="[object Float32Array]",PC4="[object Float64Array]",jC4="[object Int8Array]",NC4="[object Int16Array]",iC4="[object Int32Array]",aC4="[object Uint8Array]",VC4="[object Uint8ClampedArray]",hC4="[object Uint16Array]",mC4="[object Uint32Array]",r6,aO0;var VO0=g(()=>{tf();Ma();qC();r6={};r6[IC4]=r6[PC4]=r6[jC4]=r6[NC4]=r6[iC4]=r6[aC4]=r6[VC4]=r6[hC4]=r6[mC4]=!0;r6[KC4]=r6[QC4]=r6[TC4]=r6[GC4]=r6[OC4]=r6[HC4]=r6[LC4]=r6[qC4]=r6[XC4]=r6[xC4]=r6[vC4]=r6[SC4]=r6[WC4]=r6[YC4]=r6[RC4]=!1;aO0=rC4});function $C4(u){return function(B){return u(B)}}var Fl;var IS=g(()=>{Fl=$C4});var Ka={};ju(Ka,{default:()=>vF});var hO0,PS,yC4,N30,cC4,vF;var Qa=g(()=>{x30();hO0=typeof Ka=="object"&&Ka&&!Ka.nodeType&&Ka,PS=hO0&&typeof wa=="object"&&wa&&!wa.nodeType&&wa,yC4=PS&&PS.exports===hO0,N30=yC4&&Da.process,cC4=function(){try{var u=PS&&PS.require&&PS.require("util").types;if(u)return u;return N30&&N30.binding&&N30.binding("util")}catch(B){}}(),vF=cC4});var mO0,gC4,Ul;var jS=g(()=>{VO0();IS();Qa();mO0=vF&&vF.isTypedArray,gC4=mO0?Fl(mO0):aO0,Ul=gC4});function pC4(u,B){var E=d3(u),A=!E&&XC(u),C=!E&&!A&&uA(u),D=!E&&!A&&!C&&Ul(u),F=E||A||C||D,U=F?YO0(u.length,String):[],z=U.length;for(var k in u)if((B||nC4.call(u,k))&&!(F&&(k=="length"||C&&(k=="offset"||k=="parent")||D&&(k=="buffer"||k=="byteLength"||k=="byteOffset")||Bl(k,z))))U.push(k);return U}var _C4,nC4,Ga;var i30=g(()=>{RO0();VG();v2();hG();SS();jS();_C4=Object.prototype,nC4=_C4.hasOwnProperty;Ga=pC4});function dC4(u,B){return function(E){return u(B(E))}}var Ha;var a30=g(()=>{Ha=dC4});var sC4,rO0;var $O0=g(()=>{a30();sC4=Ha(Object.keys,Object),rO0=sC4});function eC4(u){if(!Dl(u))return rO0(u);var B=[];for(var E in Object(u))if(tC4.call(u,E)&&E!="constructor")B.push(E);return B}var oC4,tC4,mG;var La=g(()=>{OS();$O0();oC4=Object.prototype,tC4=oC4.hasOwnProperty;mG=eC4});function uD4(u){return v5(u)?Ga(u):mG(u)}var V9;var iz=g(()=>{i30();La();xF();V9=uD4});function BD4(u){var B=[];if(u!=null)for(var E in Object(u))B.push(E);return B}var yO0;var cO0=g(()=>{yO0=BD4});function CD4(u){if(!D9(u))return yO0(u);var B=Dl(u),E=[];for(var A in u)if(!(A=="constructor"&&(B||!AD4.call(u,A))))E.push(A);return E}var ED4,AD4,gO0;var _O0=g(()=>{tE();OS();cO0();ED4=Object.prototype,AD4=ED4.hasOwnProperty;gO0=CD4});function DD4(u){return v5(u)?Ga(u,!0):gO0(u)}var k8;var zl=g(()=>{i30();_O0();xF();k8=DD4});function zD4(u,B){if(d3(u))return!1;var E=typeof u;if(E=="number"||E=="symbol"||E=="boolean"||u==null||FE(u))return!0;return UD4.test(u)||!FD4.test(u)||B!=null&&u in Object(B)}var FD4,UD4,rG;var qa=g(()=>{v2();tZ();FD4=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,UD4=/^\w*$/;rG=zD4});var kD4,az;var NS=g(()=>{ul();kD4=U8(Object,"create"),az=kD4});function fD4(){this.__data__=az?az(null):{},this.size=0}var nO0;var pO0=g(()=>{NS();nO0=fD4});function lD4(u){var B=this.has(u)&&delete this.__data__[u];return this.size-=B?1:0,B}var dO0;var sO0=g(()=>{dO0=lD4});function JD4(u){var B=this.__data__;if(az){var E=B[u];return E===bD4?void 0:E}return ZD4.call(B,u)?B[u]:void 0}var bD4="__lodash_hash_undefined__",MD4,ZD4,oO0;var tO0=g(()=>{NS();MD4=Object.prototype,ZD4=MD4.hasOwnProperty;oO0=JD4});function QD4(u){var B=this.__data__;return az?B[u]!==void 0:KD4.call(B,u)}var wD4,KD4,eO0;var uI0=g(()=>{NS();wD4=Object.prototype,KD4=wD4.hasOwnProperty;eO0=QD4});function HD4(u,B){var E=this.__data__;return this.size+=this.has(u)?0:1,E[u]=az&&B===void 0?GD4:B,this}var GD4="__lodash_hash_undefined__",BI0;var EI0=g(()=>{NS();BI0=HD4});function $G(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}var V30;var AI0=g(()=>{pO0();sO0();tO0();uI0();EI0();$G.prototype.clear=nO0;$G.prototype.delete=dO0;$G.prototype.get=oO0;$G.prototype.has=eO0;$G.prototype.set=BI0;V30=$G});function LD4(){this.__data__=[],this.size=0}var CI0;var DI0=g(()=>{CI0=LD4});function qD4(u,B){var E=u.length;while(E--)if(eE(u[E][0],B))return E;return-1}var kl;var iS=g(()=>{eZ();kl=qD4});function vD4(u){var B=this.__data__,E=kl(B,u);if(E<0)return!1;var A=B.length-1;if(E==A)B.pop();else xD4.call(B,E,1);return--this.size,!0}var XD4,xD4,FI0;var UI0=g(()=>{iS();XD4=Array.prototype,xD4=XD4.splice;FI0=vD4});function SD4(u){var B=this.__data__,E=kl(B,u);return E<0?void 0:B[E][1]}var zI0;var kI0=g(()=>{iS();zI0=SD4});function WD4(u){return kl(this.__data__,u)>-1}var fI0;var lI0=g(()=>{iS();fI0=WD4});function YD4(u,B){var E=this.__data__,A=kl(E,u);if(A<0)++this.size,E.push([u,B]);else E[A][1]=B;return this}var bI0;var MI0=g(()=>{iS();bI0=YD4});function yG(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}var fl;var aS=g(()=>{DI0();UI0();kI0();lI0();MI0();yG.prototype.clear=CI0;yG.prototype.delete=FI0;yG.prototype.get=zI0;yG.prototype.has=fI0;yG.prototype.set=bI0;fl=yG});var RD4,ll;var Xa=g(()=>{ul();oE();RD4=U8(a9,"Map"),ll=RD4});function TD4(){this.size=0,this.__data__={hash:new V30,map:new(ll||fl),string:new V30}}var ZI0;var JI0=g(()=>{AI0();aS();Xa();ZI0=TD4});function OD4(u){var B=typeof u;return B=="string"||B=="number"||B=="symbol"||B=="boolean"?u!=="__proto__":u===null}var wI0;var KI0=g(()=>{wI0=OD4});function ID4(u,B){var E=u.__data__;return wI0(B)?E[typeof B=="string"?"string":"hash"]:E.map}var bl;var VS=g(()=>{KI0();bl=ID4});function PD4(u){var B=bl(this,u).delete(u);return this.size-=B?1:0,B}var QI0;var GI0=g(()=>{VS();QI0=PD4});function jD4(u){return bl(this,u).get(u)}var HI0;var LI0=g(()=>{VS();HI0=jD4});function ND4(u){return bl(this,u).has(u)}var qI0;var XI0=g(()=>{VS();qI0=ND4});function iD4(u,B){var E=bl(this,u),A=E.size;return E.set(u,B),this.size+=E.size==A?0:1,this}var xI0;var vI0=g(()=>{VS();xI0=iD4});function cG(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}var uJ;var xa=g(()=>{JI0();GI0();LI0();XI0();vI0();cG.prototype.clear=ZI0;cG.prototype.delete=QI0;cG.prototype.get=HI0;cG.prototype.has=qI0;cG.prototype.set=xI0;uJ=cG});function h30(u,B){if(typeof u!="function"||B!=null&&typeof B!="function")throw TypeError(aD4);var E=function(){var A=arguments,C=B?B.apply(this,A):A[0],D=E.cache;if(D.has(C))return D.get(C);var F=u.apply(this,A);return E.cache=D.set(C,F)||D,F};return E.cache=new(h30.Cache||uJ),E}var aD4="Expected a function",SI0;var WI0=g(()=>{xa();h30.Cache=uJ;SI0=h30});function hD4(u){var B=SI0(u,function(A){if(E.size===VD4)E.clear();return A}),E=B.cache;return B}var VD4=500,YI0;var RI0=g(()=>{WI0();YI0=hD4});var mD4,rD4,$D4,TI0;var OI0=g(()=>{RI0();mD4=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,rD4=/\\(\\)?/g,$D4=YI0(function(u){var B=[];if(u.charCodeAt(0)===46)B.push("");return u.replace(mD4,function(E,A,C,D){B.push(C?D.replace(rD4,"$1"):A||E)}),B}),TI0=$D4});function yD4(u){return u==null?"":hT0(u)}var va;var m30=g(()=>{mT0();va=yD4});function cD4(u,B){if(d3(u))return u;return rG(u,B)?[u]:TI0(va(u))}var Ml;var hS=g(()=>{v2();qa();OI0();m30();Ml=cD4});function _D4(u){if(typeof u=="string"||FE(u))return u;var B=u+"";return B=="0"&&1/u==-gD4?"-0":B}var gD4=1/0,SF;var gG=g(()=>{tZ();SF=_D4});function nD4(u,B){B=Ml(B,u);var E=0,A=B.length;while(u!=null&&E<A)u=u[SF(B[E++])];return E&&E==A?u:void 0}var Zl;var mS=g(()=>{hS();gG();Zl=nD4});function pD4(u,B,E){var A=u==null?void 0:Zl(u,B);return A===void 0?E:A}var II0;var PI0=g(()=>{mS();II0=pD4});function dD4(u,B){var E=-1,A=B.length,C=u.length;while(++E<A)u[C+E]=B[E];return u}var _G;var Sa=g(()=>{_G=dD4});function sD4(u){return d3(u)||XC(u)||!!(jI0&&u&&u[jI0])}var jI0,NI0;var iI0=g(()=>{oZ();VG();v2();jI0=x5?x5.isConcatSpreadable:void 0;NI0=sD4});function aI0(u,B,E,A,C){var D=-1,F=u.length;E||(E=NI0),C||(C=[]);while(++D<F){var U=u[D];if(B>0&&E(U))if(B>1)aI0(U,B-1,E,A,C);else _G(C,U);else if(!A)C[C.length]=U}return C}var nG;var Wa=g(()=>{Sa();iI0();nG=aI0});function oD4(u){var B=u==null?0:u.length;return B?nG(u,1):[]}var BA;var r30=g(()=>{Wa();BA=oD4});function tD4(u){return ka(ba(u,void 0,BA),u+"")}var VI0;var hI0=g(()=>{r30();P30();T30();VI0=tD4});var eD4,pG;var Ya=g(()=>{a30();eD4=Ha(Object.getPrototypeOf,Object),pG=eD4});function DF4(u){if(!C2(u)||MB(u)!=uF4)return!1;var B=pG(u);if(B===null)return!0;var E=AF4.call(B,"constructor")&&B.constructor;return typeof E=="function"&&E instanceof E&&mI0.call(E)==CF4}var uF4="[object Object]",BF4,EF4,mI0,AF4,CF4,rI0;var $I0=g(()=>{tf();Ya();qC();BF4=Function.prototype,EF4=Object.prototype,mI0=BF4.toString,AF4=EF4.hasOwnProperty,CF4=mI0.call(Object);rI0=DF4});function ZF4(u){return MF4.test(u)}var FF4="\\ud800-\\udfff",UF4="\\u0300-\\u036f",zF4="\\ufe20-\\ufe2f",kF4="\\u20d0-\\u20ff",fF4,lF4="\\ufe0e\\ufe0f",bF4="\\u200d",MF4,yI0;var cI0=g(()=>{fF4=UF4+zF4+kF4,MF4=RegExp("["+bF4+FF4+fF4+lF4+"]");yI0=ZF4});function JF4(u,B,E,A){var C=-1,D=u==null?0:u.length;if(A&&D)E=u[++C];while(++C<D)E=B(E,u[C],C,u);return E}var gI0;var _I0=g(()=>{gI0=JF4});function wF4(){this.__data__=new fl,this.size=0}var nI0;var pI0=g(()=>{aS();nI0=wF4});function KF4(u){var B=this.__data__,E=B.delete(u);return this.size=B.size,E}var dI0;var sI0=g(()=>{dI0=KF4});function QF4(u){return this.__data__.get(u)}var oI0;var tI0=g(()=>{oI0=QF4});function GF4(u){return this.__data__.has(u)}var eI0;var uP0=g(()=>{eI0=GF4});function LF4(u,B){var E=this.__data__;if(E instanceof fl){var A=E.__data__;if(!ll||A.length<HF4-1)return A.push([u,B]),this.size=++E.size,this;E=this.__data__=new uJ(A)}return E.set(u,B),this.size=E.size,this}var HF4=200,BP0;var EP0=g(()=>{aS();Xa();xa();BP0=LF4});function dG(u){var B=this.__data__=new fl(u);this.size=B.size}var WF;var rS=g(()=>{aS();pI0();sI0();tI0();uP0();EP0();dG.prototype.clear=nI0;dG.prototype.delete=dI0;dG.prototype.get=oI0;dG.prototype.has=eI0;dG.prototype.set=BP0;WF=dG});function qF4(u,B){return u&&XF(B,V9(B),u)}var AP0;var CP0=g(()=>{iG();iz();AP0=qF4});function XF4(u,B){return u&&XF(B,k8(B),u)}var DP0;var FP0=g(()=>{iG();zl();DP0=XF4});var Ta={};ju(Ta,{default:()=>$S});function vF4(u,B){if(B)return u.slice();var E=u.length,A=kP0?kP0(E):new u.constructor(E);return u.copy(A),A}var fP0,UP0,xF4,zP0,kP0,$S;var $30=g(()=>{oE();fP0=typeof Ta=="object"&&Ta&&!Ta.nodeType&&Ta,UP0=fP0&&typeof Ra=="object"&&Ra&&!Ra.nodeType&&Ra,xF4=UP0&&UP0.exports===fP0,zP0=xF4?a9.Buffer:void 0,kP0=zP0?zP0.allocUnsafe:void 0;$S=vF4});function SF4(u,B){var E=-1,A=u==null?0:u.length,C=0,D=[];while(++E<A){var F=u[E];if(B(F,E,u))D[C++]=F}return D}var Oa;var y30=g(()=>{Oa=SF4});function WF4(){return[]}var Ia;var c30=g(()=>{Ia=WF4});var YF4,RF4,lP0,TF4,sG;var Pa=g(()=>{y30();c30();YF4=Object.prototype,RF4=YF4.propertyIsEnumerable,lP0=Object.getOwnPropertySymbols,TF4=!lP0?Ia:function(u){if(u==null)return[];return u=Object(u),Oa(lP0(u),function(B){return RF4.call(u,B)})},sG=TF4});function OF4(u,B){return XF(u,sG(u),B)}var bP0;var MP0=g(()=>{iG();Pa();bP0=OF4});var IF4,PF4,ja;var g30=g(()=>{Sa();Ya();Pa();c30();IF4=Object.getOwnPropertySymbols,PF4=!IF4?Ia:function(u){var B=[];while(u)_G(B,sG(u)),u=pG(u);return B},ja=PF4});function jF4(u,B){return XF(u,ja(u),B)}var ZP0;var JP0=g(()=>{iG();g30();ZP0=jF4});function NF4(u,B,E){var A=B(u);return d3(u)?A:_G(A,E(u))}var Na;var _30=g(()=>{Sa();v2();Na=NF4});function iF4(u){return Na(u,V9,sG)}var yS;var n30=g(()=>{_30();Pa();iz();yS=iF4});function aF4(u){return Na(u,k8,ja)}var wP0;var KP0=g(()=>{_30();g30();zl();wP0=aF4});var VF4,ia;var QP0=g(()=>{ul();oE();VF4=U8(a9,"DataView"),ia=VF4});var hF4,aa;var GP0=g(()=>{ul();oE();hF4=U8(a9,"Promise"),aa=hF4});var mF4,Jl;var p30=g(()=>{ul();oE();mF4=U8(a9,"Set"),Jl=mF4});var HP0="[object Map]",rF4="[object Object]",LP0="[object Promise]",qP0="[object Set]",XP0="[object WeakMap]",xP0="[object DataView]",$F4,yF4,cF4,gF4,_F4,BJ,UE;var EJ=g(()=>{QP0();Xa();GP0();p30();DO0();tf();S30();$F4=jz(ia),yF4=jz(ll),cF4=jz(aa),gF4=jz(Jl),_F4=jz(Ua),BJ=MB;if(ia&&BJ(new ia(new ArrayBuffer(1)))!=xP0||ll&&BJ(new ll)!=HP0||aa&&BJ(aa.resolve())!=LP0||Jl&&BJ(new Jl)!=qP0||Ua&&BJ(new Ua)!=XP0)BJ=function(u){var B=MB(u),E=B==rF4?u.constructor:void 0,A=E?jz(E):"";if(A)switch(A){case $F4:return xP0;case yF4:return HP0;case cF4:return LP0;case gF4:return qP0;case _F4:return XP0}return B};UE=BJ});function dF4(u){var B=u.length,E=new u.constructor(B);if(B&&typeof u[0]=="string"&&pF4.call(u,"index"))E.index=u.index,E.input=u.input;return E}var nF4,pF4,vP0;var SP0=g(()=>{nF4=Object.prototype,pF4=nF4.hasOwnProperty;vP0=dF4});var sF4,oG;var d30=g(()=>{oE();sF4=a9.Uint8Array,oG=sF4});function oF4(u){var B=new u.constructor(u.byteLength);return new oG(B).set(new oG(u)),B}var tG;var Va=g(()=>{d30();tG=oF4});function tF4(u,B){var E=B?tG(u.buffer):u.buffer;return new u.constructor(E,u.byteOffset,u.byteLength)}var WP0;var YP0=g(()=>{Va();WP0=tF4});function uU4(u){var B=new u.constructor(u.source,eF4.exec(u));return B.lastIndex=u.lastIndex,B}var eF4,RP0;var TP0=g(()=>{eF4=/\w*$/;RP0=uU4});function BU4(u){return IP0?Object(IP0.call(u)):{}}var OP0,IP0,PP0;var jP0=g(()=>{oZ();OP0=x5?x5.prototype:void 0,IP0=OP0?OP0.valueOf:void 0;PP0=BU4});function EU4(u,B){var E=B?tG(u.buffer):u.buffer;return new u.constructor(E,u.byteOffset,u.length)}var ha;var s30=g(()=>{Va();ha=EU4});function qU4(u,B,E){var A=u.constructor;switch(B){case lU4:return tG(u);case AU4:case CU4:return new A(+u);case bU4:return WP0(u,E);case MU4:case ZU4:case JU4:case wU4:case KU4:case QU4:case GU4:case HU4:case LU4:return ha(u,E);case DU4:return new A;case FU4:case kU4:return new A(u);case UU4:return RP0(u);case zU4:return new A;case fU4:return PP0(u)}}var AU4="[object Boolean]",CU4="[object Date]",DU4="[object Map]",FU4="[object Number]",UU4="[object RegExp]",zU4="[object Set]",kU4="[object String]",fU4="[object Symbol]",lU4="[object ArrayBuffer]",bU4="[object DataView]",MU4="[object Float32Array]",ZU4="[object Float64Array]",JU4="[object Int8Array]",wU4="[object Int16Array]",KU4="[object Int32Array]",QU4="[object Uint8Array]",GU4="[object Uint8ClampedArray]",HU4="[object Uint16Array]",LU4="[object Uint32Array]",NP0;var iP0=g(()=>{Va();YP0();TP0();jP0();s30();NP0=qU4});function XU4(u){return typeof u.constructor=="function"&&!Dl(u)?UO0(pG(u)):{}}var ma;var o30=g(()=>{zO0();Ya();OS();ma=XU4});function vU4(u){return C2(u)&&UE(u)==xU4}var xU4="[object Map]",aP0;var VP0=g(()=>{EJ();qC();aP0=vU4});var hP0,SU4,mP0;var rP0=g(()=>{VP0();IS();Qa();hP0=vF&&vF.isMap,SU4=hP0?Fl(hP0):aP0,mP0=SU4});function YU4(u){return C2(u)&&UE(u)==WU4}var WU4="[object Set]",$P0;var yP0=g(()=>{EJ();qC();$P0=YU4});var cP0,RU4,gP0;var _P0=g(()=>{yP0();IS();Qa();cP0=vF&&vF.isSet,RU4=cP0?Fl(cP0):$P0,gP0=RU4});function ra(u,B,E,A,C,D){var F,U=B&TU4,z=B&OU4,k=B&IU4;if(E)F=C?E(u,A,C,D):E(u);if(F!==void 0)return F;if(!D9(u))return u;var f=d3(u);if(f){if(F=vP0(u),!U)return za(u,F)}else{var l=UE(u),b=l==pP0||l==aU4;if(uA(u))return $S(u,U);if(l==dP0||l==nP0||b&&!C){if(F=z||b?{}:ma(u),!U)return z?ZP0(u,DP0(F,u)):bP0(u,AP0(F,u))}else{if(!W6[l])return C?u:{};F=NP0(u,l,U)}}D||(D=new WF);var M=D.get(u);if(M)return M;if(D.set(u,F),gP0(u))u.forEach(function(w){F.add(ra(w,B,E,w,u,D))});else if(mP0(u))u.forEach(function(w,K){F.set(K,ra(w,B,E,K,u,D))});var Z=k?z?wP0:yS:z?k8:V9,J=f?void 0:Z(u);return fa(J||u,function(w,K){if(J)K=w,w=u[K];Al(F,K,ra(w,B,E,K,u,D))}),F}var TU4=1,OU4=2,IU4=4,nP0="[object Arguments]",PU4="[object Array]",jU4="[object Boolean]",NU4="[object Date]",iU4="[object Error]",pP0="[object Function]",aU4="[object GeneratorFunction]",VU4="[object Map]",hU4="[object Number]",dP0="[object Object]",mU4="[object RegExp]",rU4="[object Set]",$U4="[object String]",yU4="[object Symbol]",cU4="[object WeakMap]",gU4="[object ArrayBuffer]",_U4="[object DataView]",nU4="[object Float32Array]",pU4="[object Float64Array]",dU4="[object Int8Array]",sU4="[object Int16Array]",oU4="[object Int32Array]",tU4="[object Uint8Array]",eU4="[object Uint8ClampedArray]",uz4="[object Uint16Array]",Bz4="[object Uint32Array]",W6,$a;var t30=g(()=>{rS();O30();YS();CP0();FP0();$30();W30();MP0();JP0();n30();KP0();EJ();SP0();iP0();o30();v2();hG();rP0();tE();_P0();iz();zl();W6={};W6[nP0]=W6[PU4]=W6[gU4]=W6[_U4]=W6[jU4]=W6[NU4]=W6[nU4]=W6[pU4]=W6[dU4]=W6[sU4]=W6[oU4]=W6[VU4]=W6[hU4]=W6[dP0]=W6[mU4]=W6[rU4]=W6[$U4]=W6[yU4]=W6[tU4]=W6[eU4]=W6[uz4]=W6[Bz4]=!0;W6[iU4]=W6[pP0]=W6[cU4]=!1;$a=ra});function Az4(u){return $a(u,Ez4)}var Ez4=4,e30;var sP0=g(()=>{t30();e30=Az4});function Fz4(u){return $a(u,Cz4|Dz4)}var Cz4=1,Dz4=4,u10;var oP0=g(()=>{t30();u10=Fz4});function zz4(u){return this.__data__.set(u,Uz4),this}var Uz4="__lodash_hash_undefined__",tP0;var eP0=g(()=>{tP0=zz4});function kz4(u){return this.__data__.has(u)}var uj0;var Bj0=g(()=>{uj0=kz4});function ya(u){var B=-1,E=u==null?0:u.length;this.__data__=new uJ;while(++B<E)this.add(u[B])}var ca;var B10=g(()=>{xa();eP0();Bj0();ya.prototype.add=ya.prototype.push=tP0;ya.prototype.has=uj0;ca=ya});function fz4(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(B(u[E],E,u))return!0;return!1}var Ej0;var Aj0=g(()=>{Ej0=fz4});function lz4(u,B){return u.has(B)}var ga;var E10=g(()=>{ga=lz4});function Zz4(u,B,E,A,C,D){var F=E&bz4,U=u.length,z=B.length;if(U!=z&&!(F&&z>U))return!1;var k=D.get(u),f=D.get(B);if(k&&f)return k==B&&f==u;var l=-1,b=!0,M=E&Mz4?new ca:void 0;D.set(u,B),D.set(B,u);while(++l<U){var Z=u[l],J=B[l];if(A)var w=F?A(J,Z,l,B,u,D):A(Z,J,l,u,B,D);if(w!==void 0){if(w)continue;b=!1;break}if(M){if(!Ej0(B,function(K,Q){if(!ga(M,Q)&&(Z===K||C(Z,K,E,A,D)))return M.push(Q)})){b=!1;break}}else if(!(Z===J||C(Z,J,E,A,D))){b=!1;break}}return D.delete(u),D.delete(B),b}var bz4=1,Mz4=2,_a;var A10=g(()=>{B10();Aj0();E10();_a=Zz4});function Jz4(u){var B=-1,E=Array(u.size);return u.forEach(function(A,C){E[++B]=[C,A]}),E}var Cj0;var Dj0=g(()=>{Cj0=Jz4});function wz4(u){var B=-1,E=Array(u.size);return u.forEach(function(A){E[++B]=A}),E}var eG;var na=g(()=>{eG=wz4});function Tz4(u,B,E,A,C,D,F){switch(E){case Rz4:if(u.byteLength!=B.byteLength||u.byteOffset!=B.byteOffset)return!1;u=u.buffer,B=B.buffer;case Yz4:if(u.byteLength!=B.byteLength||!D(new oG(u),new oG(B)))return!1;return!0;case Gz4:case Hz4:case Xz4:return eE(+u,+B);case Lz4:return u.name==B.name&&u.message==B.message;case xz4:case Sz4:return u==B+"";case qz4:var U=Cj0;case vz4:var z=A&Kz4;if(U||(U=eG),u.size!=B.size&&!z)return!1;var k=F.get(u);if(k)return k==B;A|=Qz4,F.set(u,B);var f=_a(U(u),U(B),A,C,D,F);return F.delete(u),f;case Wz4:if(C10)return C10.call(u)==C10.call(B)}return!1}var Kz4=1,Qz4=2,Gz4="[object Boolean]",Hz4="[object Date]",Lz4="[object Error]",qz4="[object Map]",Xz4="[object Number]",xz4="[object RegExp]",vz4="[object Set]",Sz4="[object String]",Wz4="[object Symbol]",Yz4="[object ArrayBuffer]",Rz4="[object DataView]",Fj0,C10,Uj0;var zj0=g(()=>{oZ();d30();eZ();A10();Dj0();na();Fj0=x5?x5.prototype:void 0,C10=Fj0?Fj0.valueOf:void 0;Uj0=Tz4});function jz4(u,B,E,A,C,D){var F=E&Oz4,U=yS(u),z=U.length,k=yS(B),f=k.length;if(z!=f&&!F)return!1;var l=z;while(l--){var b=U[l];if(!(F?b in B:Pz4.call(B,b)))return!1}var M=D.get(u),Z=D.get(B);if(M&&Z)return M==B&&Z==u;var J=!0;D.set(u,B),D.set(B,u);var w=F;while(++l<z){b=U[l];var K=u[b],Q=B[b];if(A)var G=F?A(Q,K,b,B,u,D):A(K,Q,b,u,B,D);if(!(G===void 0?K===Q||C(K,Q,E,A,D):G)){J=!1;break}w||(w=b=="constructor")}if(J&&!w){var L=u.constructor,H=B.constructor;if(L!=H&&(("constructor"in u)&&("constructor"in B))&&!(typeof L=="function"&&L instanceof L&&typeof H=="function"&&H instanceof H))J=!1}return D.delete(u),D.delete(B),J}var Oz4=1,Iz4,Pz4,kj0;var fj0=g(()=>{n30();Iz4=Object.prototype,Pz4=Iz4.hasOwnProperty;kj0=jz4});function az4(u,B,E,A,C,D){var F=d3(u),U=d3(B),z=F?bj0:UE(u),k=U?bj0:UE(B);z=z==lj0?pa:z,k=k==lj0?pa:k;var f=z==pa,l=k==pa,b=z==k;if(b&&uA(u)){if(!uA(B))return!1;F=!0,f=!1}if(b&&!f)return D||(D=new WF),F||Ul(u)?_a(u,B,E,A,C,D):Uj0(u,B,z,E,A,C,D);if(!(E&Nz4)){var M=f&&Mj0.call(u,"__wrapped__"),Z=l&&Mj0.call(B,"__wrapped__");if(M||Z){var J=M?u.value():u,w=Z?B.value():B;return D||(D=new WF),C(J,w,E,A,D)}}if(!b)return!1;return D||(D=new WF),kj0(u,B,E,A,C,D)}var Nz4=1,lj0="[object Arguments]",bj0="[object Array]",pa="[object Object]",iz4,Mj0,Zj0;var Jj0=g(()=>{rS();A10();zj0();fj0();EJ();v2();hG();jS();iz4=Object.prototype,Mj0=iz4.hasOwnProperty;Zj0=az4});function wj0(u,B,E,A,C){if(u===B)return!0;if(u==null||B==null||!C2(u)&&!C2(B))return u!==u&&B!==B;return Zj0(u,B,E,A,wj0,C)}var da;var D10=g(()=>{Jj0();qC();da=wj0});function mz4(u,B,E,A){var C=E.length,D=C,F=!A;if(u==null)return!D;u=Object(u);while(C--){var U=E[C];if(F&&U[2]?U[1]!==u[U[0]]:!(U[0]in u))return!1}while(++C<D){U=E[C];var z=U[0],k=u[z],f=U[1];if(F&&U[2]){if(k===void 0&&!(z in u))return!1}else{var l=new WF;if(A)var b=A(k,f,z,u,B,l);if(!(b===void 0?da(f,k,Vz4|hz4,A,l):b))return!1}}return!0}var Vz4=1,hz4=2,Kj0;var Qj0=g(()=>{rS();D10();Kj0=mz4});function rz4(u){return u===u&&!D9(u)}var sa;var F10=g(()=>{tE();sa=rz4});function $z4(u){var B=V9(u),E=B.length;while(E--){var A=B[E],C=u[A];B[E]=[A,C,sa(C)]}return B}var Gj0;var Hj0=g(()=>{F10();iz();Gj0=$z4});function yz4(u,B){return function(E){if(E==null)return!1;return E[u]===B&&(B!==void 0||(u in Object(E)))}}var oa;var U10=g(()=>{oa=yz4});function cz4(u){var B=Gj0(u);if(B.length==1&&B[0][2])return oa(B[0][0],B[0][1]);return function(E){return E===u||Kj0(E,u,B)}}var Lj0;var qj0=g(()=>{Qj0();Hj0();U10();Lj0=cz4});function gz4(u,B){return u!=null&&B in Object(u)}var Xj0;var xj0=g(()=>{Xj0=gz4});function _z4(u,B,E){B=Ml(B,u);var A=-1,C=B.length,D=!1;while(++A<C){var F=SF(B[A]);if(!(D=u!=null&&E(u,F)))break;u=u[F]}if(D||++A!=C)return D;return C=u==null?0:u.length,!!C&&aG(C)&&Bl(F,C)&&(d3(u)||XC(u))}var ta;var z10=g(()=>{hS();VG();v2();SS();Ma();gG();ta=_z4});function nz4(u,B){return u!=null&&ta(u,B,Xj0)}var ea;var k10=g(()=>{xj0();z10();ea=nz4});function sz4(u,B){if(rG(u)&&sa(B))return oa(SF(u),B);return function(E){var A=II0(E,u);return A===void 0&&A===B?ea(E,u):da(B,A,pz4|dz4)}}var pz4=1,dz4=2,vj0;var Sj0=g(()=>{D10();PI0();k10();qa();F10();U10();gG();vj0=sz4});function oz4(u){return function(B){return B==null?void 0:B[u]}}var uV;var f10=g(()=>{uV=oz4});function tz4(u){return function(B){return Zl(B,u)}}var Wj0;var Yj0=g(()=>{mS();Wj0=tz4});function ez4(u){return rG(u)?uV(SF(u)):Wj0(u)}var Rj0;var Tj0=g(()=>{f10();Yj0();qa();gG();Rj0=ez4});function uk4(u){if(typeof u=="function")return u;if(u==null)return F8;if(typeof u=="object")return d3(u)?vj0(u[0],u[1]):Lj0(u);return Rj0(u)}var O7;var Vz=g(()=>{qj0();Sj0();ef();v2();Tj0();O7=uk4});function Bk4(u){return function(B,E,A){var C=-1,D=Object(B),F=A(B),U=F.length;while(U--){var z=F[u?U:++C];if(E(D[z],z,D)===!1)break}return B}}var Oj0;var Ij0=g(()=>{Oj0=Bk4});var Ek4,uH;var BV=g(()=>{Ij0();Ek4=Oj0(),uH=Ek4});function Ak4(u,B){return u&&uH(u,B,V9)}var BH;var EV=g(()=>{BV();iz();BH=Ak4});function Ck4(u,B){return function(E,A){if(E==null)return E;if(!v5(E))return u(E,A);var C=E.length,D=B?C:-1,F=Object(E);while(B?D--:++D<C)if(A(F[D],D,F)===!1)break;return E}}var Pj0;var jj0=g(()=>{xF();Pj0=Ck4});var Dk4,wl;var cS=g(()=>{EV();jj0();Dk4=Pj0(BH),wl=Dk4});var Fk4=function(){return a9.Date.now()},AV;var Nj0=g(()=>{oE();AV=Fk4});var ij0,Uk4,zk4,l10;var aj0=g(()=>{RS();eZ();TS();zl();ij0=Object.prototype,Uk4=ij0.hasOwnProperty,zk4=Cl(function(u,B){u=Object(u);var E=-1,A=B.length,C=A>2?B[2]:void 0;if(C&&Nz(B[0],B[1],C))A=1;while(++E<A){var D=B[E],F=k8(D),U=-1,z=F.length;while(++U<z){var k=F[U],f=u[k];if(f===void 0||eE(f,ij0[k])&&!Uk4.call(u,k))u[k]=D[k]}}return u}),l10=zk4});function kk4(u,B,E){if(E!==void 0&&!eE(u[B],E)||E===void 0&&!(B in u))El(u,B,E)}var gS;var b10=g(()=>{WS();eZ();gS=kk4});function fk4(u){return C2(u)&&v5(u)}var CV;var M10=g(()=>{xF();qC();CV=fk4});function lk4(u,B){if(B==="constructor"&&typeof u[B]==="function")return;if(B=="__proto__")return;return u[B]}var _S;var Z10=g(()=>{_S=lk4});function bk4(u){return XF(u,k8(u))}var Vj0;var hj0=g(()=>{iG();zl();Vj0=bk4});function Mk4(u,B,E,A,C,D,F){var U=_S(u,E),z=_S(B,E),k=F.get(z);if(k){gS(u,E,k);return}var f=D?D(U,z,E+"",u,B,F):void 0,l=f===void 0;if(l){var b=d3(z),M=!b&&uA(z),Z=!b&&!M&&Ul(z);if(f=z,b||M||Z)if(d3(U))f=U;else if(CV(U))f=za(U);else if(M)l=!1,f=$S(z,!0);else if(Z)l=!1,f=ha(z,!0);else f=[];else if(rI0(z)||XC(z)){if(f=U,XC(U))f=Vj0(U);else if(!D9(U)||qF(U))f=ma(z)}else l=!1}if(l)F.set(z,f),C(f,z,A,D,F),F.delete(z);gS(u,E,f)}var mj0;var rj0=g(()=>{b10();$30();s30();W30();o30();VG();v2();M10();hG();vS();tE();$I0();jS();Z10();hj0();mj0=Mk4});function $j0(u,B,E,A,C){if(u===B)return;uH(B,function(D,F){if(C||(C=new WF),D9(D))mj0(u,B,F,E,$j0,A,C);else{var U=A?A(_S(u,F),D,F+"",u,B,C):void 0;if(U===void 0)U=D;gS(u,F,U)}},k8)}var yj0;var cj0=g(()=>{rS();b10();BV();rj0();tE();zl();Z10();yj0=$j0});function Zk4(u,B,E){var A=-1,C=u==null?0:u.length;while(++A<C)if(E(B,u[A]))return!0;return!1}var gj0;var _j0=g(()=>{gj0=Zk4});function Jk4(u){var B=u==null?0:u.length;return B?u[B-1]:void 0}var Kl;var nj0=g(()=>{Kl=Jk4});function wk4(u){return typeof u=="function"?u:F8}var EH;var DV=g(()=>{ef();EH=wk4});function Kk4(u,B){var E=d3(u)?fa:wl;return E(u,EH(B))}var xu;var J10=g(()=>{O30();cS();DV();v2();xu=Kk4});var pj0=g(()=>{J10()});function Qk4(u,B){var E=[];return wl(u,function(A,C,D){if(B(A,C,D))E.push(A)}),E}var dj0;var sj0=g(()=>{cS();dj0=Qk4});function Gk4(u,B){var E=d3(u)?Oa:dj0;return E(u,O7(B,3))}var ZB;var oj0=g(()=>{y30();sj0();Vz();v2();ZB=Gk4});function Hk4(u){return function(B,E,A){var C=Object(B);if(!v5(B)){var D=O7(E,3);B=V9(B),E=function(U){return D(C[U],U,C)}}var F=u(B,E,A);return F>-1?C[D?B[F]:F]:void 0}}var tj0;var ej0=g(()=>{Vz();xF();iz();tj0=Hk4});function qk4(u,B,E){var A=u==null?0:u.length;if(!A)return-1;var C=E==null?0:dT0(E);if(C<0)C=Lk4(A+C,0);return la(u,O7(B,3),C)}var Lk4,uN0;var BN0=g(()=>{I30();Vz();sT0();Lk4=Math.max;uN0=qk4});var Xk4,AH;var EN0=g(()=>{ej0();BN0();Xk4=tj0(uN0),AH=Xk4});function xk4(u,B){var E=-1,A=v5(u)?Array(u.length):[];return wl(u,function(C,D,F){A[++E]=B(C,D,F)}),A}var FV;var w10=g(()=>{cS();xF();FV=xk4});function vk4(u,B){var E=d3(u)?LF:FV;return E(u,O7(B,3))}var a1;var AN0=g(()=>{xS();Vz();w10();v2();a1=vk4});function Sk4(u,B){return u==null?u:uH(u,EH(B),k8)}var K10;var CN0=g(()=>{BV();DV();zl();K10=Sk4});function Wk4(u,B){return u&&BH(u,EH(B))}var Q10;var DN0=g(()=>{EV();DV();Q10=Wk4});function Yk4(u,B){return u>B}var FN0;var UN0=g(()=>{FN0=Yk4});function Ok4(u,B){return u!=null&&Tk4.call(u,B)}var Rk4,Tk4,zN0;var kN0=g(()=>{Rk4=Object.prototype,Tk4=Rk4.hasOwnProperty;zN0=Ok4});function Ik4(u,B){return u!=null&&ta(u,B,zN0)}var nS;var fN0=g(()=>{kN0();z10();nS=Ik4});function jk4(u){return typeof u=="string"||!d3(u)&&C2(u)&&MB(u)==Pk4}var Pk4="[object String]",lN0;var bN0=g(()=>{tf();v2();qC();lN0=jk4});function Nk4(u,B){return LF(B,function(E){return u[E]})}var MN0;var ZN0=g(()=>{xS();MN0=Nk4});function ik4(u){return u==null?[]:MN0(u,V9(u))}var zE;var JN0=g(()=>{ZN0();iz();zE=ik4});function rk4(u){if(u==null)return!0;if(v5(u)&&(d3(u)||typeof u=="string"||typeof u.splice=="function"||uA(u)||Ul(u)||XC(u)))return!u.length;var B=UE(u);if(B==ak4||B==Vk4)return!u.size;if(Dl(u))return!mG(u).length;for(var E in u)if(mk4.call(u,E))return!1;return!0}var ak4="[object Map]",Vk4="[object Set]",hk4,mk4,UV;var wN0=g(()=>{La();EJ();VG();v2();xF();hG();OS();jS();hk4=Object.prototype,mk4=hk4.hasOwnProperty;UV=rk4});function $k4(u){return u===void 0}var l6;var KN0=g(()=>{l6=$k4});function yk4(u,B){return u<B}var zV;var G10=g(()=>{zV=yk4});function ck4(u,B){var E={};return B=O7(B,3),BH(u,function(A,C,D){El(E,C,B(A,C,D))}),E}var AJ;var QN0=g(()=>{WS();EV();Vz();AJ=ck4});function gk4(u,B,E){var A=-1,C=u.length;while(++A<C){var D=u[A],F=B(D);if(F!=null&&(U===void 0?F===F&&!FE(F):E(F,U)))var U=F,z=D}return z}var CH;var kV=g(()=>{tZ();CH=gk4});function _k4(u){return u&&u.length?CH(u,F8,FN0):void 0}var f8;var GN0=g(()=>{kV();UN0();ef();f8=_k4});var nk4,DH;var HN0=g(()=>{cj0();WO0();nk4=SO0(function(u,B,E){yj0(u,B,E)}),DH=nk4});function pk4(u){return u&&u.length?CH(u,F8,zV):void 0}var hz;var LN0=g(()=>{kV();G10();ef();hz=pk4});function dk4(u,B){return u&&u.length?CH(u,O7(B,2),zV):void 0}var CJ;var qN0=g(()=>{kV();Vz();G10();CJ=dk4});function sk4(u,B,E,A){if(!D9(u))return u;B=Ml(B,u);var C=-1,D=B.length,F=D-1,U=u;while(U!=null&&++C<D){var z=SF(B[C]),k=E;if(z==="__proto__"||z==="constructor"||z==="prototype")return u;if(C!=F){var f=U[z];if(k=A?A(f,z,U):void 0,k===void 0)k=D9(f)?f:Bl(B[C+1])?[]:{}}Al(U,z,k),U=U[z]}return u}var XN0;var xN0=g(()=>{YS();hS();SS();tE();gG();XN0=sk4});function ok4(u,B,E){var A=-1,C=B.length,D={};while(++A<C){var F=B[A],U=Zl(u,F);if(E(U,F))XN0(D,Ml(F,u),U)}return D}var vN0;var SN0=g(()=>{mS();xN0();hS();vN0=ok4});function tk4(u,B){var E=u.length;u.sort(B);while(E--)u[E]=u[E].value;return u}var WN0;var YN0=g(()=>{WN0=tk4});function ek4(u,B){if(u!==B){var E=u!==void 0,A=u===null,C=u===u,D=FE(u),F=B!==void 0,U=B===null,z=B===B,k=FE(B);if(!U&&!k&&!D&&u>B||D&&F&&z&&!U&&!k||A&&F&&z||!E&&z||!C)return 1;if(!A&&!D&&!k&&u<B||k&&E&&C&&!A&&!D||U&&E&&C||!F&&C||!z)return-1}return 0}var RN0;var TN0=g(()=>{tZ();RN0=ek4});function uf4(u,B,E){var A=-1,C=u.criteria,D=B.criteria,F=C.length,U=E.length;while(++A<F){var z=RN0(C[A],D[A]);if(z){if(A>=U)return z;var k=E[A];return z*(k=="desc"?-1:1)}}return u.index-B.index}var ON0;var IN0=g(()=>{TN0();ON0=uf4});function Bf4(u,B,E){if(B.length)B=LF(B,function(D){if(d3(D))return function(F){return Zl(F,D.length===1?D[0]:D)};return D});else B=[F8];var A=-1;B=LF(B,Fl(O7));var C=FV(u,function(D,F,U){var z=LF(B,function(k){return k(D)});return{criteria:z,index:++A,value:D}});return WN0(C,function(D,F){return ON0(D,F,E)})}var PN0;var jN0=g(()=>{xS();mS();Vz();w10();YN0();IS();IN0();ef();v2();PN0=Bf4});var Ef4,NN0;var iN0=g(()=>{f10();Ef4=uV("length"),NN0=Ef4});function Zf4(u){var B=aN0.lastIndex=0;while(aN0.test(u))++B;return B}var VN0="\\ud800-\\udfff",Af4="\\u0300-\\u036f",Cf4="\\ufe20-\\ufe2f",Df4="\\u20d0-\\u20ff",Ff4,Uf4="\\ufe0e\\ufe0f",zf4,H10,L10="\\ud83c[\\udffb-\\udfff]",kf4,hN0,mN0="(?:\\ud83c[\\udde6-\\uddff]){2}",rN0="[\\ud800-\\udbff][\\udc00-\\udfff]",ff4="\\u200d",$N0,yN0,lf4,bf4,Mf4,aN0,cN0;var gN0=g(()=>{Ff4=Af4+Cf4+Df4,zf4="["+VN0+"]",H10="["+Ff4+"]",kf4="(?:"+H10+"|"+L10+")",hN0="[^"+VN0+"]",$N0=kf4+"?",yN0="["+Uf4+"]?",lf4="(?:"+ff4+"(?:"+[hN0,mN0,rN0].join("|")+")"+yN0+$N0+")*",bf4=yN0+$N0+lf4,Mf4="(?:"+[hN0+H10+"?",H10,mN0,rN0,zf4].join("|")+")",aN0=RegExp(L10+"(?="+L10+")|"+Mf4+bf4,"g");cN0=Zf4});function Jf4(u){return yI0(u)?cN0(u):NN0(u)}var _N0;var nN0=g(()=>{iN0();cI0();gN0();_N0=Jf4});function wf4(u,B){return vN0(u,B,function(E,A){return ea(u,A)})}var pN0;var dN0=g(()=>{SN0();k10();pN0=wf4});var Kf4,DJ;var sN0=g(()=>{dN0();hI0();Kf4=VI0(function(u,B){return u==null?{}:pN0(u,B)}),DJ=Kf4});function Hf4(u,B,E,A){var C=-1,D=Gf4(Qf4((B-u)/(E||1)),0),F=Array(D);while(D--)F[A?D:++C]=u,u+=E;return F}var Qf4,Gf4,oN0;var tN0=g(()=>{Qf4=Math.ceil,Gf4=Math.max;oN0=Hf4});function Lf4(u){return function(B,E,A){if(A&&typeof A!="number"&&Nz(B,E,A))E=A=void 0;if(B=jG(B),E===void 0)E=B,B=0;else E=jG(E);return A=A===void 0?B<E?1:-1:jG(A),oN0(B,E,A,u)}}var eN0;var ui0=g(()=>{tN0();TS();v30();eN0=Lf4});var qf4,EA;var Bi0=g(()=>{ui0();qf4=eN0(),EA=qf4});function Xf4(u,B,E,A,C){return C(u,function(D,F,U){E=A?(A=!1,D):B(E,D,F,U)}),E}var Ei0;var Ai0=g(()=>{Ei0=Xf4});function xf4(u,B,E){var A=d3(u)?gI0:Ei0,C=arguments.length<3;return A(u,O7(B,4),E,C,wl)}var YF;var Ci0=g(()=>{_I0();cS();Vz();Ai0();v2();YF=xf4});function Wf4(u){if(u==null)return 0;if(v5(u))return lN0(u)?_N0(u):u.length;var B=UE(u);if(B==vf4||B==Sf4)return u.size;return mG(u).length}var vf4="[object Map]",Sf4="[object Set]",q10;var Di0=g(()=>{La();EJ();xF();bN0();nN0();q10=Wf4});var Yf4,RF;var Fi0=g(()=>{Wa();jN0();RS();TS();Yf4=Cl(function(u,B){if(u==null)return[];var E=B.length;if(E>1&&Nz(u,B[0],B[1]))B=[];else if(E>2&&Nz(B[0],B[1],B[2]))B=[B[0]];return PN0(u,nG(B,1),[])}),RF=Yf4});var Rf4=1/0,Tf4,Ui0;var zi0=g(()=>{p30();bO0();na();Tf4=!(Jl&&1/eG(new Jl([,-0]))[1]==Rf4)?lO0:function(u){return new Jl(u)},Ui0=Tf4});function If4(u,B,E){var A=-1,C=XO0,D=u.length,F=!0,U=[],z=U;if(E)F=!1,C=gj0;else if(D>=Of4){var k=B?null:Ui0(u);if(k)return eG(k);F=!1,C=ga,z=new ca}else z=B?[]:U;u:while(++A<D){var f=u[A],l=B?B(f):f;if(f=E||f!==0?f:0,F&&l===l){var b=z.length;while(b--)if(z[b]===l)continue u;if(B)z.push(l);U.push(f)}else if(!C(z,l,E)){if(z!==U)z.push(l);U.push(f)}}return U}var Of4=200,ki0;var fi0=g(()=>{B10();xO0();_j0();E10();zi0();na();ki0=If4});var Pf4,X10;var li0=g(()=>{Wa();RS();fi0();M10();Pf4=Cl(function(u){return ki0(nG(u,1,CV,!0))}),X10=Pf4});function Nf4(u){var B=++jf4;return va(u)+B}var jf4=0,FJ;var bi0=g(()=>{m30();FJ=Nf4});function if4(u,B,E){var A=-1,C=u.length,D=B.length,F={};while(++A<C){var U=A<D?B[A]:void 0;E(F,u[A],U)}return F}var Mi0;var Zi0=g(()=>{Mi0=if4});function af4(u,B){return Mi0(u||[],B||[],Al)}var fV;var Ji0=g(()=>{YS();Zi0();fV=af4});var B6=g(()=>{sP0();oP0();Y30();aj0();pj0();oj0();EN0();r30();J10();CN0();DN0();fN0();v2();wN0();vS();KN0();iz();nj0();AN0();QN0();GN0();HN0();LN0();qN0();Nj0();sN0();Bi0();Ci0();Di0();Fi0();li0();bi0();JN0();Ji0()});class V1{constructor(u={}){if(this._isDirected=Object.prototype.hasOwnProperty.call(u,"directed")?u.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(u,"compound")?u.compound:!1,this._label=void 0,this._defaultNodeLabelFn=z8(void 0),this._defaultEdgeLabelFn=z8(void 0),this._nodes={},this._isCompound)this._parent={},this._children={},this._children[UJ]={};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(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){if(!qF(u))u=z8(u);return this._defaultNodeLabelFn=u,this}nodeCount(){return this._nodeCount}nodes(){return V9(this._nodes)}sources(){var u=this;return ZB(this.nodes(),function(B){return UV(u._in[B])})}sinks(){var u=this;return ZB(this.nodes(),function(B){return UV(u._out[B])})}setNodes(u,B){var E=arguments,A=this;return xu(u,function(C){if(E.length>1)A.setNode(C,B);else A.setNode(C)}),this}setNode(u,B){if(Object.prototype.hasOwnProperty.call(this._nodes,u)){if(arguments.length>1)this._nodes[u]=B;return this}if(this._nodes[u]=arguments.length>1?B:this._defaultNodeLabelFn(u),this._isCompound)this._parent[u]=UJ,this._children[u]={},this._children[UJ][u]=!0;return this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this}node(u){return this._nodes[u]}hasNode(u){return Object.prototype.hasOwnProperty.call(this._nodes,u)}removeNode(u){if(Object.prototype.hasOwnProperty.call(this._nodes,u)){var B=(E)=>this.removeEdge(this._edgeObjs[E]);if(delete this._nodes[u],this._isCompound)this._removeFromParentsChildList(u),delete this._parent[u],xu(this.children(u),(E)=>{this.setParent(E)}),delete this._children[u];xu(V9(this._in[u]),B),delete this._in[u],delete this._preds[u],xu(V9(this._out[u]),B),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,B){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(l6(B))B=UJ;else{B+="";for(var E=B;!l6(E);E=this.parent(E))if(E===u)throw Error("Setting "+B+" as parent of "+u+" would create a cycle");this.setNode(B)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=B,this._children[B][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var B=this._parent[u];if(B!==UJ)return B}}children(u){if(l6(u))u=UJ;if(this._isCompound){var B=this._children[u];if(B)return V9(B)}else if(u===UJ)return this.nodes();else if(this.hasNode(u))return[]}predecessors(u){var B=this._preds[u];if(B)return V9(B)}successors(u){var B=this._sucs[u];if(B)return V9(B)}neighbors(u){var B=this.predecessors(u);if(B)return X10(B,this.successors(u))}isLeaf(u){var B;if(this.isDirected())B=this.successors(u);else B=this.neighbors(u);return B.length===0}filterNodes(u){var B=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});B.setGraph(this.graph());var E=this;xu(this._nodes,function(D,F){if(u(F))B.setNode(F,D)}),xu(this._edgeObjs,function(D){if(B.hasNode(D.v)&&B.hasNode(D.w))B.setEdge(D,E.edge(D))});var A={};function C(D){var F=E.parent(D);if(F===void 0||B.hasNode(F))return A[D]=F,F;else if(F in A)return A[F];else return C(F)}if(this._isCompound)xu(B.nodes(),function(D){B.setParent(D,C(D))});return B}setDefaultEdgeLabel(u){if(!qF(u))u=z8(u);return this._defaultEdgeLabelFn=u,this}edgeCount(){return this._edgeCount}edges(){return zE(this._edgeObjs)}setPath(u,B){var E=this,A=arguments;return YF(u,function(C,D){if(A.length>1)E.setEdge(C,D,B);else E.setEdge(C,D);return D}),this}setEdge(){var u,B,E,A,C=!1,D=arguments[0];if(typeof D==="object"&&D!==null&&"v"in D){if(u=D.v,B=D.w,E=D.name,arguments.length===2)A=arguments[1],C=!0}else if(u=D,B=arguments[1],E=arguments[3],arguments.length>2)A=arguments[2],C=!0;if(u=""+u,B=""+B,!l6(E))E=""+E;var F=pS(this._isDirected,u,B,E);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,F)){if(C)this._edgeLabels[F]=A;return this}if(!l6(E)&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(B),this._edgeLabels[F]=C?A:this._defaultEdgeLabelFn(u,B,E);var U=hf4(this._isDirected,u,B,E);return u=U.v,B=U.w,Object.freeze(U),this._edgeObjs[F]=U,Ki0(this._preds[B],u),Ki0(this._sucs[u],B),this._in[B][F]=U,this._out[u][F]=U,this._edgeCount++,this}edge(u,B,E){var A=arguments.length===1?x10(this._isDirected,arguments[0]):pS(this._isDirected,u,B,E);return this._edgeLabels[A]}hasEdge(u,B,E){var A=arguments.length===1?x10(this._isDirected,arguments[0]):pS(this._isDirected,u,B,E);return Object.prototype.hasOwnProperty.call(this._edgeLabels,A)}removeEdge(u,B,E){var A=arguments.length===1?x10(this._isDirected,arguments[0]):pS(this._isDirected,u,B,E),C=this._edgeObjs[A];if(C)u=C.v,B=C.w,delete this._edgeLabels[A],delete this._edgeObjs[A],Qi0(this._preds[B],u),Qi0(this._sucs[u],B),delete this._in[B][A],delete this._out[u][A],this._edgeCount--;return this}inEdges(u,B){var E=this._in[u];if(E){var A=zE(E);if(!B)return A;return ZB(A,function(C){return C.v===B})}}outEdges(u,B){var E=this._out[u];if(E){var A=zE(E);if(!B)return A;return ZB(A,function(C){return C.w===B})}}nodeEdges(u,B){var E=this.inEdges(u,B);if(E)return E.concat(this.outEdges(u,B))}}function Ki0(u,B){if(u[B])u[B]++;else u[B]=1}function Qi0(u,B){if(!--u[B])delete u[B]}function pS(u,B,E,A){var C=""+B,D=""+E;if(!u&&C>D){var F=C;C=D,D=F}return C+wi0+D+wi0+(l6(A)?Vf4:A)}function hf4(u,B,E,A){var C=""+B,D=""+E;if(!u&&C>D){var F=C;C=D,D=F}var U={v:C,w:D};if(A)U.name=A;return U}function x10(u,B){return pS(u,B.v,B.w,B.name)}var Vf4="\x00",UJ="\x00",wi0="\x01";var lV=g(()=>{B6();V1.prototype._nodeCount=0;V1.prototype._edgeCount=0});var kE=g(()=>{lV()});function xC(u){var B={options:{directed:u.isDirected(),multigraph:u.isMultigraph(),compound:u.isCompound()},nodes:mf4(u),edges:rf4(u)};if(!l6(u.graph()))B.value=e30(u.graph());return B}function mf4(u){return a1(u.nodes(),function(B){var E=u.node(B),A=u.parent(B),C={v:B};if(!l6(E))C.value=E;if(!l6(A))C.parent=A;return C})}function rf4(u){return a1(u.edges(),function(B){var E=u.edge(B),A={v:B.v,w:B.w};if(!l6(B.name))A.name=B.name;if(!l6(E))A.value=E;return A})}var v10=g(()=>{B6();lV()});var P3,Ql,Li0,bV,zJ,$f4,S10,qi0,yf4,kJ,Hi0,Xi0,xi0,vi0,Si0,Wi0,cf4;var W10=g(()=>{o4();Y4();kE();v10();P3=new Map,Ql=new Map,Li0=new Map,bV=X(()=>{Ql.clear(),Li0.clear(),P3.clear()},"clear"),zJ=X((u,B)=>{let E=Ql.get(B)||[];return z0.trace("In isDescendant",B," ",u," = ",E.includes(u)),E.includes(u)},"isDescendant"),$f4=X((u,B)=>{let E=Ql.get(B)||[];if(z0.info("Descendants of ",B," is ",E),z0.info("Edge is ",u),u.v===B||u.w===B)return!1;if(!E)return z0.debug("Tilt, ",B,",not in descendants"),!1;return E.includes(u.v)||zJ(u.v,B)||zJ(u.w,B)||E.includes(u.w)},"edgeInCluster"),S10=X((u,B,E,A)=>{z0.warn("Copying children of ",u,"root",A,"data",B.node(u),A);let C=B.children(u)||[];if(u!==A)C.push(u);z0.warn("Copying (nodes) clusterId",u,"nodes",C),C.forEach((D)=>{if(B.children(D).length>0)S10(D,B,E,A);else{let F=B.node(D);if(z0.info("cp ",D," to ",A," with parent ",u),E.setNode(D,F),A!==B.parent(D))z0.warn("Setting parent",D,B.parent(D)),E.setParent(D,B.parent(D));if(u!==A&&D!==u)z0.debug("Setting parent",D,u),E.setParent(D,u);else z0.info("In copy ",u,"root",A,"data",B.node(u),A),z0.debug("Not Setting parent for node=",D,"cluster!==rootId",u!==A,"node!==clusterId",D!==u);let U=B.edges(D);z0.debug("Copying Edges",U),U.forEach((z)=>{z0.info("Edge",z);let k=B.edge(z.v,z.w,z.name);z0.info("Edge data",k,A);try{if($f4(z,A)){let f=Ql.get(A)||[],l=f.includes(z.v)||zJ(z.v,A)||z.v===A,b=f.includes(z.w)||zJ(z.w,A)||z.w===A;if(l&&b)z0.info("Copying as ",z.v,z.w,k,z.name),E.setEdge(z.v,z.w,k,z.name),z0.info("newGraph edges ",E.edges(),E.edge(E.edges()[0]));else{let M=l?A:z.v,Z=b?A:z.w;z0.info("Rebinding cross-boundary edge as ",M,Z,k,z.name),B.setEdge(M,Z,k,z.name)}}else z0.info("Skipping copy of edge ",z.v,"-->",z.w," rootId: ",A," clusterId:",u)}catch(f){z0.error(f)}})}z0.debug("Removing node",D),B.removeNode(D)})},"copy"),qi0=X((u,B)=>{let E=B.children(u),A=[...E];for(let C of E)Li0.set(C,u),A=[...A,...qi0(C,B)];return A},"extractDescendants"),yf4=X((u,B,E)=>{let A=u.edges().filter((z)=>z.v===B||z.w===B),C=u.edges().filter((z)=>z.v===E||z.w===E),D=A.map((z)=>{return{v:z.v===B?E:z.v,w:z.w===B?B:z.w}}),F=C.map((z)=>{return{v:z.v,w:z.w}});return D.filter((z)=>{return F.some((k)=>z.v===k.v&&z.w===k.w)})},"findCommonEdges"),kJ=X((u,B,E)=>{let A=B.children(u);if(z0.trace("Searching children of id ",u,A),A.length<1)return u;let C;for(let D of A){let F=kJ(D,B,E),U=yf4(B,E,F);if(F)if(U.length>0)C=F;else return F}return C},"findNonClusterChild"),Hi0=X((u)=>{if(!P3.has(u))return u;if(!P3.get(u).externalConnections)return u;if(P3.has(u))return P3.get(u).id;return u},"getAnchorId"),Xi0=X((u,B)=>{if(!u||B>10){z0.debug("Opting out, no graph ");return}else z0.debug("Opting in, graph ");u.nodes().forEach(function(E){if(u.children(E).length>0)z0.warn("Cluster identified",E," Replacement id in edges: ",kJ(E,u,E)),Ql.set(E,qi0(E,u)),P3.set(E,{id:kJ(E,u,E),clusterData:u.node(E)})}),u.nodes().forEach(function(E){let A=u.children(E),C=u.edges();if(A.length>0)z0.debug("Cluster identified",E,Ql),C.forEach((D)=>{let F=zJ(D.v,E),U=zJ(D.w,E);if(F^U)z0.warn("Edge: ",D," leaves cluster ",E),z0.warn("Descendants of XXX ",E,": ",Ql.get(E)),P3.get(E).externalConnections=!0});else z0.debug("Not a cluster ",E,Ql)});for(let E of P3.keys()){let A=P3.get(E).id,C=u.parent(A);if(C!==E&&P3.has(C)&&!P3.get(C).externalConnections)P3.get(E).id=C;let D=u.edges().some((F)=>F.v===E);if(A&&P3.get(E)?.externalConnections&&D&&Wi0(u,A,E)){let F=cf4(u,E,u.parent(A));if(F)P3.get(E).id=F}}u.edges().forEach(function(E){let A=u.edge(E);z0.warn("Edge "+E.v+" -> "+E.w+": "+JSON.stringify(E)),z0.warn("Edge "+E.v+" -> "+E.w+": "+JSON.stringify(u.edge(E)));let{v:C,w:D}=E;if(z0.warn("Fix XXX",P3,"ids:",E.v,E.w,"Translating: ",P3.get(E.v)," --- ",P3.get(E.w)),P3.get(E.v)||P3.get(E.w)){if(z0.warn("Fixing and trying - removing XXX",E.v,E.w,E.name),C=Hi0(E.v),D=Hi0(E.w),u.removeEdge(E.v,E.w,E.name),C!==E.v){let F=u.parent(C);P3.get(F).externalConnections=!0,A.fromCluster=E.v}if(D!==E.w){let F=u.parent(D);P3.get(F).externalConnections=!0,A.toCluster=E.w}z0.warn("Fix Replacing with XXX",C,D,E.name),u.setEdge(C,D,A,E.name)}}),z0.warn("Adjusted Graph",xC(u)),xi0(u,0),z0.trace(P3)},"adjustClustersAndEdges"),xi0=X((u,B)=>{if(z0.warn("extractor - ",B,xC(u),u.children("D")),B>10){z0.error("Bailing out");return}let E=u.nodes(),A=!1;for(let C of E){let D=u.children(C);A=A||D.length>0}if(!A){z0.debug("Done, no node has children",u.nodes());return}z0.debug("Nodes = ",E,B);for(let C of E)if(z0.debug("Extracting node",C,P3,P3.has(C)&&!P3.get(C).externalConnections,!u.parent(C),u.node(C),u.children("D")," Depth ",B),!P3.has(C))z0.debug("Not a cluster",C,B);else if(P3.get(C)?.clusterData?.explicitDir&&u.children(C)&&u.children(C).length>0){z0.warn("Cluster with explicit dir, creating subgraph for children",C,B);let D=P3.get(C).clusterData.dir,F=new V1({multigraph:!0,compound:!0}).setGraph({rankdir:D,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});S10(C,u,F,C);let U=u.node(C)||{};u.setNode(C,{...U,clusterNode:!0,id:C,clusterData:P3.get(C).clusterData,label:P3.get(C).label,graph:F}),z0.warn("Subgraph for cluster with explicit dir created:",C,xC(F))}else if(!P3.get(C).externalConnections&&u.children(C)&&u.children(C).length>0){z0.warn("Cluster without external connections, without a parent and with children",C,B);let F=u.graph().rankdir==="TB"?"LR":"TB";if(P3.get(C)?.clusterData?.dir)F=P3.get(C).clusterData.dir,z0.warn("Fixing dir",P3.get(C).clusterData.dir,F);let U=new V1({multigraph:!0,compound:!0}).setGraph({rankdir:F,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});S10(C,u,U,C);let z=u.node(C)||{};u.setNode(C,{...z,clusterNode:!0,id:C,clusterData:P3.get(C).clusterData,label:P3.get(C).label,graph:U}),z0.debug("Old graph after copy",xC(u))}else z0.warn("Cluster ** ",C," **not meeting the criteria !externalConnections:",!P3.get(C).externalConnections," no parent: ",!u.parent(C)," children ",u.children(C)&&u.children(C).length>0,u.children("D"),B),z0.debug(P3);E=u.nodes(),z0.warn("New list of nodes",E);for(let C of E){let D=u.node(C);if(z0.warn(" Now next level",C,D),D?.clusterNode)xi0(D.graph,B+1)}},"extractor"),vi0=X((u,B)=>{if(B.length===0)return[];let E=Object.assign([],B);return B.forEach((A)=>{let C=u.children(A),D=vi0(u,C);E=[...E,...D]}),E},"sorter"),Si0=X((u)=>vi0(u,u.children()),"sortNodesByHierarchy"),Wi0=X((u,B,E)=>{let A=u.parent(B);while(A&&A!==E){let C=P3.get(A);if(C&&!C.externalConnections)return!0;A=u.parent(A)}return!1},"isNodeInExtractableCluster"),cf4=X((u,B,E)=>{let A=u.children(B)??[];for(let C of A){if(C===E||zJ(C,E))continue;let D=kJ(C,u,B);if(!D)continue;if(!Wi0(u,D,B))return D}return null},"findSafeAnchorNode")});class Y10{constructor(){var u={};u._next=u._prev=u,this._sentinel=u}dequeue(){var u=this._sentinel,B=u._prev;if(B!==u)return Yi0(B),B}enqueue(u){var B=this._sentinel;if(u._prev&&u._next)Yi0(u);u._next=B._next,B._next._prev=u,B._next=u,u._prev=B}toString(){var u=[],B=this._sentinel,E=B._prev;while(E!==B)u.push(JSON.stringify(E,gf4)),E=E._prev;return"["+u.join(", ")+"]"}}function Yi0(u){u._prev._next=u._next,u._next._prev=u._prev,delete u._next,delete u._prev}function gf4(u,B){if(u!=="_next"&&u!=="_prev")return B}var Ri0=()=>{};function Ti0(u,B){if(u.nodeCount()<=1)return[];var E=pf4(u,B||_f4),A=nf4(E.graph,E.buckets,E.zeroIdx);return BA(a1(A,function(C){return u.outEdges(C.v,C.w)}))}function nf4(u,B,E){var A=[],C=B[B.length-1],D=B[0],F;while(u.nodeCount()){while(F=D.dequeue())R10(u,B,E,F);while(F=C.dequeue())R10(u,B,E,F);if(u.nodeCount()){for(var U=B.length-2;U>0;--U)if(F=B[U].dequeue(),F){A=A.concat(R10(u,B,E,F,!0));break}}}return A}function R10(u,B,E,A,C){var D=C?[]:void 0;return xu(u.inEdges(A.v),function(F){var U=u.edge(F),z=u.node(F.v);if(C)D.push({v:F.v,w:F.w});z.out-=U,T10(B,E,z)}),xu(u.outEdges(A.v),function(F){var U=u.edge(F),z=F.w,k=u.node(z);k.in-=U,T10(B,E,k)}),u.removeNode(A.v),D}function pf4(u,B){var E=new V1,A=0,C=0;xu(u.nodes(),function(U){E.setNode(U,{v:U,in:0,out:0})}),xu(u.edges(),function(U){var z=E.edge(U.v,U.w)||0,k=B(U),f=z+k;E.setEdge(U.v,U.w,f),C=Math.max(C,E.node(U.v).out+=k),A=Math.max(A,E.node(U.w).in+=k)});var D=EA(C+A+3).map(function(){return new Y10}),F=A+1;return xu(E.nodes(),function(U){T10(D,F,E.node(U))}),{graph:E,buckets:D,zeroIdx:F}}function T10(u,B,E){if(!E.out)u[0].enqueue(E);else if(!E.in)u[u.length-1].enqueue(E);else u[E.out-E.in+B].enqueue(E)}var _f4;var Oi0=g(()=>{B6();kE();Ri0();_f4=z8(1)});function Ii0(u){var B=u.graph().acyclicer==="greedy"?Ti0(u,E(u)):df4(u);xu(B,function(A){var C=u.edge(A);u.removeEdge(A),C.forwardName=A.name,C.reversed=!0,u.setEdge(A.w,A.v,C,FJ("rev"))});function E(A){return function(C){return A.edge(C).weight}}}function df4(u){var B=[],E={},A={};function C(D){if(Object.prototype.hasOwnProperty.call(A,D))return;A[D]=!0,E[D]=!0,xu(u.outEdges(D),function(F){if(Object.prototype.hasOwnProperty.call(E,F.w))B.push(F);else C(F.w)}),delete E[D]}return xu(u.nodes(),C),B}function Pi0(u){xu(u.edges(),function(B){var E=u.edge(B);if(E.reversed){u.removeEdge(B);var A=E.forwardName;delete E.reversed,delete E.forwardName,u.setEdge(B.w,B.v,E,A)}})}var O10=g(()=>{B6();Oi0()});function TF(u,B,E,A){var C;do C=FJ(A);while(u.hasNode(C));return E.dummy=B,u.setNode(C,E),C}function Ni0(u){var B=new V1().setGraph(u.graph());return xu(u.nodes(),function(E){B.setNode(E,u.node(E))}),xu(u.edges(),function(E){var A=B.edge(E.v,E.w)||{weight:0,minlen:1},C=u.edge(E);B.setEdge(E.v,E.w,{weight:A.weight+C.weight,minlen:Math.max(A.minlen,C.minlen)})}),B}function MV(u){var B=new V1({multigraph:u.isMultigraph()}).setGraph(u.graph());return xu(u.nodes(),function(E){if(!u.children(E).length)B.setNode(E,u.node(E))}),xu(u.edges(),function(E){B.setEdge(E,u.edge(E))}),B}function I10(u,B){var{x:E,y:A}=u,C=B.x-E,D=B.y-A,F=u.width/2,U=u.height/2;if(!C&&!D)throw Error("Not possible to find intersection inside of the rectangle");var z,k;if(Math.abs(D)*F>Math.abs(C)*U){if(D<0)U=-U;z=U*C/D,k=U}else{if(C<0)F=-F;z=F,k=F*D/C}return{x:E+z,y:A+k}}function Gl(u){var B=a1(EA(j10(u)+1),function(){return[]});return xu(u.nodes(),function(E){var A=u.node(E),C=A.rank;if(!l6(C))B[C][A.order]=E}),B}function ii0(u){var B=hz(a1(u.nodes(),function(E){return u.node(E).rank}));xu(u.nodes(),function(E){var A=u.node(E);if(nS(A,"rank"))A.rank-=B})}function ai0(u){var B=hz(a1(u.nodes(),function(D){return u.node(D).rank})),E=[];xu(u.nodes(),function(D){var F=u.node(D).rank-B;if(!E[F])E[F]=[];E[F].push(D)});var A=0,C=u.graph().nodeRankFactor;xu(E,function(D,F){if(l6(D)&&F%C!==0)--A;else if(A)xu(D,function(U){u.node(U).rank+=A})})}function P10(u,B,E,A){var C={width:0,height:0};if(arguments.length>=4)C.rank=E,C.order=A;return TF(u,"border",C,B)}function j10(u){return f8(a1(u.nodes(),function(B){var E=u.node(B).rank;if(!l6(E))return E}))}function Vi0(u,B){var E={lhs:[],rhs:[]};return xu(u,function(A){if(B(A))E.lhs.push(A);else E.rhs.push(A)}),E}function hi0(u,B){var E=AV();try{return B()}finally{console.log(u+" time: "+(AV()-E)+"ms")}}function mi0(u,B){return B()}var OF=g(()=>{B6();kE()});function $i0(u){function B(E){var A=u.children(E),C=u.node(E);if(A.length)xu(A,B);if(Object.prototype.hasOwnProperty.call(C,"minRank")){C.borderLeft=[],C.borderRight=[];for(var D=C.minRank,F=C.maxRank+1;D<F;++D)ri0(u,"borderLeft","_bl",E,C,D),ri0(u,"borderRight","_br",E,C,D)}}xu(u.children(),B)}function ri0(u,B,E,A,C,D){var F={width:0,height:0,rank:D,borderType:B},U=C[B][D-1],z=TF(u,"border",F,E);if(C[B][D]=z,u.setParent(z,A),U)u.setEdge(U,z,{weight:1})}var yi0=g(()=>{B6();OF()});function gi0(u){var B=u.graph().rankdir.toLowerCase();if(B==="lr"||B==="rl")ni0(u)}function _i0(u){var B=u.graph().rankdir.toLowerCase();if(B==="bt"||B==="rl")sf4(u);if(B==="lr"||B==="rl")of4(u),ni0(u)}function ni0(u){xu(u.nodes(),function(B){ci0(u.node(B))}),xu(u.edges(),function(B){ci0(u.edge(B))})}function ci0(u){var B=u.width;u.width=u.height,u.height=B}function sf4(u){xu(u.nodes(),function(B){N10(u.node(B))}),xu(u.edges(),function(B){var E=u.edge(B);if(xu(E.points,N10),Object.prototype.hasOwnProperty.call(E,"y"))N10(E)})}function N10(u){u.y=-u.y}function of4(u){xu(u.nodes(),function(B){i10(u.node(B))}),xu(u.edges(),function(B){var E=u.edge(B);if(xu(E.points,i10),Object.prototype.hasOwnProperty.call(E,"x"))i10(E)})}function i10(u){var B=u.x;u.x=u.y,u.y=B}var pi0=g(()=>{B6()});function di0(u){u.graph().dummyChains=[],xu(u.edges(),function(B){ef4(u,B)})}function ef4(u,B){var E=B.v,A=u.node(E).rank,C=B.w,D=u.node(C).rank,F=B.name,U=u.edge(B),z=U.labelRank;if(D===A+1)return;u.removeEdge(B);var k=void 0,f,l;for(l=0,++A;A<D;++l,++A){if(U.points=[],k={width:0,height:0,edgeLabel:U,edgeObj:B,rank:A},f=TF(u,"edge",k,"_d"),A===z)k.width=U.width,k.height=U.height,k.dummy="edge-label",k.labelpos=U.labelpos;if(u.setEdge(E,f,{weight:U.weight},F),l===0)u.graph().dummyChains.push(f);E=f}u.setEdge(E,C,{weight:U.weight},F)}function si0(u){xu(u.graph().dummyChains,function(B){var E=u.node(B),A=E.edgeLabel,C;u.setEdge(E.edgeObj,A);while(E.dummy){if(C=u.successors(B)[0],u.removeNode(B),A.points.push({x:E.x,y:E.y}),E.dummy==="edge-label")A.x=E.x,A.y=E.y,A.width=E.width,A.height=E.height;B=C,E=u.node(B)}})}var a10=g(()=>{B6();OF()});function sS(u){var B={};function E(A){var C=u.node(A);if(Object.prototype.hasOwnProperty.call(B,A))return C.rank;B[A]=!0;var D=hz(a1(u.outEdges(A),function(F){return E(F.w)-u.edge(F).minlen}));if(D===Number.POSITIVE_INFINITY||D===void 0||D===null)D=0;return C.rank=D}xu(u.sources(),E)}function fJ(u,B){return u.node(B.w).rank-u.node(B.v).rank-u.edge(B).minlen}var ZV=g(()=>{B6()});function JV(u){var B=new V1({directed:!1}),E=u.nodes()[0],A=u.nodeCount();B.setNode(E,{});var C,D;while(ul4(B,u)<A)C=Bl4(B,u),D=B.hasNode(C.v)?fJ(u,C):-fJ(u,C),El4(B,u,D);return B}function ul4(u,B){function E(A){xu(B.nodeEdges(A),function(C){var D=C.v,F=A===D?C.w:D;if(!u.hasNode(F)&&!fJ(B,C))u.setNode(F,{}),u.setEdge(A,F,{}),E(F)})}return xu(u.nodes(),E),u.nodeCount()}function Bl4(u,B){return CJ(B.edges(),function(E){if(u.hasNode(E.v)!==u.hasNode(E.w))return fJ(B,E)})}function El4(u,B,E){xu(u.nodes(),function(A){B.node(A).rank+=E})}var V10=g(()=>{B6();kE();ZV()});var ti0=()=>{};var h10=()=>{};var z21;var m10=g(()=>{B6();h10();z21=z8(1)});var ei0=g(()=>{m10()});var r10=()=>{};var ua0=g(()=>{r10()});var J21;var Ba0=g(()=>{B6();J21=z8(1)});function $10(u){var B={},E={},A=[];function C(D){if(Object.prototype.hasOwnProperty.call(E,D))throw new oS;if(!Object.prototype.hasOwnProperty.call(B,D))E[D]=!0,B[D]=!0,xu(u.predecessors(D),C),delete E[D],A.push(D)}if(xu(u.sinks(),C),q10(B)!==u.nodeCount())throw new oS;return A}function oS(){}var y10=g(()=>{B6();$10.CycleException=oS;oS.prototype=Error()});var Ea0=g(()=>{y10()});function wV(u,B,E){if(!d3(B))B=[B];var A=(u.isDirected()?u.successors:u.neighbors).bind(u),C=[],D={};return xu(B,function(F){if(!u.hasNode(F))throw Error("Graph does not have node: "+F);Aa0(u,F,E==="post",D,A,C)}),C}function Aa0(u,B,E,A,C,D){if(!Object.prototype.hasOwnProperty.call(A,B)){if(A[B]=!0,!E)D.push(B);if(xu(C(B),function(F){Aa0(u,F,E,A,C,D)}),E)D.push(B)}}var c10=g(()=>{B6()});function g10(u,B){return wV(u,B,"post")}var Ca0=g(()=>{c10()});function _10(u,B){return wV(u,B,"pre")}var Da0=g(()=>{c10()});var Fa0=g(()=>{h10();lV()});var Ua0=g(()=>{ti0();m10();ei0();ua0();Ba0();Ea0();Ca0();Da0();Fa0();r10();y10()});function Ll(u){u=Ni0(u),sS(u);var B=JV(u);p10(B),n10(B,u);var E,A;while(E=la0(B))A=ba0(B,u,E),Ma0(B,u,E,A)}function n10(u,B){var E=g10(u,u.nodes());E=E.slice(0,E.length-1),xu(E,function(A){Ul4(u,B,A)})}function Ul4(u,B,E){var A=u.node(E),C=A.parent;u.edge(E,C).cutvalue=ka0(u,B,E)}function ka0(u,B,E){var A=u.node(E),C=A.parent,D=!0,F=B.edge(E,C),U=0;if(!F)D=!1,F=B.edge(C,E);return U=F.weight,xu(B.nodeEdges(E),function(z){var k=z.v===E,f=k?z.w:z.v;if(f!==C){var l=k===D,b=B.edge(z).weight;if(U+=l?b:-b,kl4(u,E,f)){var M=u.edge(E,f).cutvalue;U+=l?-M:M}}}),U}function p10(u,B){if(arguments.length<2)B=u.nodes()[0];fa0(u,{},1,B)}function fa0(u,B,E,A,C){var D=E,F=u.node(A);if(B[A]=!0,xu(u.neighbors(A),function(U){if(!Object.prototype.hasOwnProperty.call(B,U))E=fa0(u,B,E,U,A)}),F.low=D,F.lim=E++,C)F.parent=C;else delete F.parent;return E}function la0(u){return AH(u.edges(),function(B){return u.edge(B).cutvalue<0})}function ba0(u,B,E){var{v:A,w:C}=E;if(!B.hasEdge(A,C))A=E.w,C=E.v;var D=u.node(A),F=u.node(C),U=D,z=!1;if(D.lim>F.lim)U=F,z=!0;var k=ZB(B.edges(),function(f){return z===za0(u,u.node(f.v),U)&&z!==za0(u,u.node(f.w),U)});return CJ(k,function(f){return fJ(B,f)})}function Ma0(u,B,E,A){var{v:C,w:D}=E;u.removeEdge(C,D),u.setEdge(A.v,A.w,{}),p10(u),n10(u,B),zl4(u,B)}function zl4(u,B){var E=AH(u.nodes(),function(C){return!B.node(C).parent}),A=_10(u,E);A=A.slice(1),xu(A,function(C){var D=u.node(C).parent,F=B.edge(C,D),U=!1;if(!F)F=B.edge(D,C),U=!0;B.node(C).rank=B.node(D).rank+(U?F.minlen:-F.minlen)})}function kl4(u,B,E){return u.hasEdge(B,E)}function za0(u,B,E){return E.low<=B.lim&&B.lim<=E.lim}var Za0=g(()=>{B6();Ua0();OF();V10();ZV();Ll.initLowLimValues=p10;Ll.initCutValues=n10;Ll.calcCutValue=ka0;Ll.leaveEdge=la0;Ll.enterEdge=ba0;Ll.exchangeEdges=Ma0});function d10(u){switch(u.graph().ranker){case"network-simplex":Ja0(u);break;case"tight-tree":ll4(u);break;case"longest-path":fl4(u);break;default:Ja0(u)}}function ll4(u){sS(u),JV(u)}function Ja0(u){Ll(u)}var fl4;var s10=g(()=>{V10();Za0();ZV();fl4=sS});function wa0(u){var B=TF(u,"root",{},"_root"),E=bl4(u),A=f8(zE(E))-1,C=2*A+1;u.graph().nestingRoot=B,xu(u.edges(),function(F){u.edge(F).minlen*=C});var D=Ml4(u)+1;xu(u.children(),function(F){Ka0(u,B,C,D,A,E,F)}),u.graph().nodeRankFactor=C}function Ka0(u,B,E,A,C,D,F){var U=u.children(F);if(!U.length){if(F!==B)u.setEdge(B,F,{weight:0,minlen:E});return}var z=P10(u,"_bt"),k=P10(u,"_bb"),f=u.node(F);if(u.setParent(z,F),f.borderTop=z,u.setParent(k,F),f.borderBottom=k,xu(U,function(l){Ka0(u,B,E,A,C,D,l);var b=u.node(l),M=b.borderTop?b.borderTop:l,Z=b.borderBottom?b.borderBottom:l,J=b.borderTop?A:2*A,w=M!==Z?1:C-D[F]+1;u.setEdge(z,M,{weight:J,minlen:w,nestingEdge:!0}),u.setEdge(Z,k,{weight:J,minlen:w,nestingEdge:!0})}),!u.parent(F))u.setEdge(B,z,{weight:0,minlen:C+D[F]})}function bl4(u){var B={};function E(A,C){var D=u.children(A);if(D&&D.length)xu(D,function(F){E(F,C+1)});B[A]=C}return xu(u.children(),function(A){E(A,1)}),B}function Ml4(u){return YF(u.edges(),function(B,E){return B+u.edge(E).weight},0)}function Qa0(u){var B=u.graph();u.removeNode(B.nestingRoot),delete B.nestingRoot,xu(u.edges(),function(E){var A=u.edge(E);if(A.nestingEdge)u.removeEdge(E)})}var Ga0=g(()=>{B6();OF()});function Ha0(u,B,E){var A={},C;xu(E,function(D){var F=u.parent(D),U,z;while(F){if(U=u.parent(F),U)z=A[U],A[U]=F;else z=C,C=F;if(z&&z!==F){B.setEdge(z,F);return}F=U}})}var La0=g(()=>{B6()});function qa0(u,B,E){var A=Jl4(u),C=new V1({compound:!0}).setGraph({root:A}).setDefaultNodeLabel(function(D){return u.node(D)});return xu(u.nodes(),function(D){var F=u.node(D),U=u.parent(D);if(F.rank===B||F.minRank<=B&&B<=F.maxRank){if(C.setNode(D),C.setParent(D,U||A),xu(u[E](D),function(z){var k=z.v===D?z.w:z.v,f=C.edge(k,D),l=!l6(f)?f.weight:0;C.setEdge(k,D,{weight:u.edge(z).weight+l})}),Object.prototype.hasOwnProperty.call(F,"minRank"))C.setNode(D,{borderLeft:F.borderLeft[B],borderRight:F.borderRight[B]})}}),C}function Jl4(u){var B;while(u.hasNode(B=FJ("_root")));return B}var Xa0=g(()=>{B6();kE()});function xa0(u,B){var E=0;for(var A=1;A<B.length;++A)E+=wl4(u,B[A-1],B[A]);return E}function wl4(u,B,E){var A=fV(E,a1(E,function(k,f){return f})),C=BA(a1(B,function(k){return RF(a1(u.outEdges(k),function(f){return{pos:A[f.w],weight:u.edge(f).weight}}),"pos")})),D=1;while(D<E.length)D<<=1;var F=2*D-1;D-=1;var U=a1(Array(F),function(){return 0}),z=0;return xu(C.forEach(function(k){var f=k.pos+D;U[f]+=k.weight;var l=0;while(f>0){if(f%2)l+=U[f+1];f=f-1>>1,U[f]+=k.weight}z+=k.weight*l})),z}var va0=g(()=>{B6()});function Sa0(u){var B={},E=ZB(u.nodes(),function(U){return!u.children(U).length}),A=f8(a1(E,function(U){return u.node(U).rank})),C=a1(EA(A+1),function(){return[]});function D(U){if(nS(B,U))return;B[U]=!0;var z=u.node(U);C[z.rank].push(U),xu(u.successors(U),D)}var F=RF(E,function(U){return u.node(U).rank});return xu(F,D),C}var Wa0=g(()=>{B6()});function Ya0(u,B){return a1(B,function(E){var A=u.inEdges(E);if(!A.length)return{v:E};else{var C=YF(A,function(D,F){var U=u.edge(F),z=u.node(F.v);return{sum:D.sum+U.weight*z.order,weight:D.weight+U.weight}},{sum:0,weight:0});return{v:E,barycenter:C.sum/C.weight,weight:C.weight}}})}var Ra0=g(()=>{B6()});function Ta0(u,B){var E={};xu(u,function(C,D){var F=E[C.v]={indegree:0,in:[],out:[],vs:[C.v],i:D};if(!l6(C.barycenter))F.barycenter=C.barycenter,F.weight=C.weight}),xu(B.edges(),function(C){var D=E[C.v],F=E[C.w];if(!l6(D)&&!l6(F))F.indegree++,D.out.push(E[C.w])});var A=ZB(E,function(C){return!C.indegree});return Kl4(A)}function Kl4(u){var B=[];function E(D){return function(F){if(F.merged)return;if(l6(F.barycenter)||l6(D.barycenter)||F.barycenter>=D.barycenter)Ql4(D,F)}}function A(D){return function(F){if(F.in.push(D),--F.indegree===0)u.push(F)}}while(u.length){var C=u.pop();B.push(C),xu(C.in.reverse(),E(C)),xu(C.out,A(C))}return a1(ZB(B,function(D){return!D.merged}),function(D){return DJ(D,["vs","i","barycenter","weight"])})}function Ql4(u,B){var E=0,A=0;if(u.weight)E+=u.barycenter*u.weight,A+=u.weight;if(B.weight)E+=B.barycenter*B.weight,A+=B.weight;u.vs=B.vs.concat(u.vs),u.barycenter=E/A,u.weight=A,u.i=Math.min(B.i,u.i),B.merged=!0}var Oa0=g(()=>{B6()});function Pa0(u,B){var E=Vi0(u,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),A=E.lhs,C=RF(E.rhs,function(f){return-f.i}),D=[],F=0,U=0,z=0;A.sort(Gl4(!!B)),z=Ia0(D,C,z),xu(A,function(f){z+=f.vs.length,D.push(f.vs),F+=f.barycenter*f.weight,U+=f.weight,z=Ia0(D,C,z)});var k={vs:BA(D)};if(U)k.barycenter=F/U,k.weight=U;return k}function Ia0(u,B,E){var A;while(B.length&&(A=Kl(B)).i<=E)B.pop(),u.push(A.vs),E++;return E}function Gl4(u){return function(B,E){if(B.barycenter<E.barycenter)return-1;else if(B.barycenter>E.barycenter)return 1;return!u?B.i-E.i:E.i-B.i}}var ja0=g(()=>{B6();OF()});function o10(u,B,E,A){var C=u.children(B),D=u.node(B),F=D?D.borderLeft:void 0,U=D?D.borderRight:void 0,z={};if(F)C=ZB(C,function(Z){return Z!==F&&Z!==U});var k=Ya0(u,C);xu(k,function(Z){if(u.children(Z.v).length){var J=o10(u,Z.v,E,A);if(z[Z.v]=J,Object.prototype.hasOwnProperty.call(J,"barycenter"))Ll4(Z,J)}});var f=Ta0(k,E);Hl4(f,z);var l=Pa0(f,A);if(F){if(l.vs=BA([F,l.vs,U]),u.predecessors(F).length){var b=u.node(u.predecessors(F)[0]),M=u.node(u.predecessors(U)[0]);if(!Object.prototype.hasOwnProperty.call(l,"barycenter"))l.barycenter=0,l.weight=0;l.barycenter=(l.barycenter*l.weight+b.order+M.order)/(l.weight+2),l.weight+=2}}return l}function Hl4(u,B){xu(u,function(E){E.vs=BA(E.vs.map(function(A){if(B[A])return B[A].vs;return A}))})}function Ll4(u,B){if(!l6(u.barycenter))u.barycenter=(u.barycenter*u.weight+B.barycenter*B.weight)/(u.weight+B.weight),u.weight+=B.weight;else u.barycenter=B.barycenter,u.weight=B.weight}var Na0=g(()=>{B6();Ra0();Oa0();ja0()});function Va0(u){var B=j10(u),E=ia0(u,EA(1,B+1),"inEdges"),A=ia0(u,EA(B-1,-1,-1),"outEdges"),C=Sa0(u);aa0(u,C);var D=Number.POSITIVE_INFINITY,F;for(var U=0,z=0;z<4;++U,++z){ql4(U%2?E:A,U%4>=2),C=Gl(u);var k=xa0(u,C);if(k<D)z=0,F=u10(C),D=k}aa0(u,F)}function ia0(u,B,E){return a1(B,function(A){return qa0(u,A,E)})}function ql4(u,B){var E=new V1;xu(u,function(A){var C=A.graph().root,D=o10(A,C,E,B);xu(D.vs,function(F,U){A.node(F).order=U}),Ha0(A,E,D.vs)})}function aa0(u,B){xu(B,function(E){xu(E,function(A,C){u.node(A).order=C})})}var ha0=g(()=>{B6();kE();OF();La0();Xa0();va0();Wa0();Na0()});function ma0(u){var B=xl4(u);xu(u.graph().dummyChains,function(E){var A=u.node(E),C=A.edgeObj,D=Xl4(u,B,C.v,C.w),F=D.path,U=D.lca,z=0,k=F[z],f=!0;while(E!==C.w){if(A=u.node(E),f){while((k=F[z])!==U&&u.node(k).maxRank<A.rank)z++;if(k===U)f=!1}if(!f){while(z<F.length-1&&u.node(k=F[z+1]).minRank<=A.rank)z++;k=F[z]}u.setParent(E,k),E=u.successors(E)[0]}})}function Xl4(u,B,E,A){var C=[],D=[],F=Math.min(B[E].low,B[A].low),U=Math.max(B[E].lim,B[A].lim),z,k;z=E;do z=u.parent(z),C.push(z);while(z&&(B[z].low>F||U>B[z].lim));k=z,z=A;while((z=u.parent(z))!==k)D.push(z);return{path:C.concat(D.reverse()),lca:k}}function xl4(u){var B={},E=0;function A(C){var D=E;xu(u.children(C),A),B[C]={low:D,lim:E++}}return xu(u.children(),A),B}var ra0=g(()=>{B6()});function vl4(u,B){var E={};function A(C,D){var F=0,U=0,z=C.length,k=Kl(D);return xu(D,function(f,l){var b=Wl4(u,f),M=b?u.node(b).order:z;if(b||f===k)xu(D.slice(U,l+1),function(Z){xu(u.predecessors(Z),function(J){var w=u.node(J),K=w.order;if((K<F||M<K)&&!(w.dummy&&u.node(Z).dummy))$a0(E,J,Z)})}),U=l+1,F=M}),D}return YF(B,A),E}function Sl4(u,B){var E={};function A(D,F,U,z,k){var f;xu(EA(F,U),function(l){if(f=D[l],u.node(f).dummy)xu(u.predecessors(f),function(b){var M=u.node(b);if(M.dummy&&(M.order<z||M.order>k))$a0(E,b,f)})})}function C(D,F){var U=-1,z,k=0;return xu(F,function(f,l){if(u.node(f).dummy==="border"){var b=u.predecessors(f);if(b.length)z=u.node(b[0]).order,A(F,k,l,U,z),k=l,U=z}A(F,k,F.length,z,D.length)}),F}return YF(B,C),E}function Wl4(u,B){if(u.node(B).dummy)return AH(u.predecessors(B),function(E){return u.node(E).dummy})}function $a0(u,B,E){if(B>E){var A=B;B=E,E=A}if(!Object.prototype.hasOwnProperty.call(u,B))Object.defineProperty(u,B,{enumerable:!0,configurable:!0,value:{},writable:!0});var C=u[B];Object.defineProperty(C,E,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function Yl4(u,B,E){if(B>E){var A=B;B=E,E=A}return!!u[B]&&Object.prototype.hasOwnProperty.call(u[B],E)}function Rl4(u,B,E,A){var C={},D={},F={};return xu(B,function(U){xu(U,function(z,k){C[z]=z,D[z]=z,F[z]=k})}),xu(B,function(U){var z=-1;xu(U,function(k){var f=A(k);if(f.length){f=RF(f,function(J){return F[J]});var l=(f.length-1)/2;for(var b=Math.floor(l),M=Math.ceil(l);b<=M;++b){var Z=f[b];if(D[k]===k&&z<F[Z]&&!Yl4(E,k,Z))D[Z]=k,D[k]=C[k]=C[Z],z=F[Z]}}})}),{root:C,align:D}}function Tl4(u,B,E,A,C){var D={},F=Ol4(u,B,E,C),U=C?"borderLeft":"borderRight";function z(l,b){var M=F.nodes(),Z=M.pop(),J={};while(Z){if(J[Z])l(Z);else J[Z]=!0,M.push(Z),M=M.concat(b(Z));Z=M.pop()}}function k(l){D[l]=F.inEdges(l).reduce(function(b,M){return Math.max(b,D[M.v]+F.edge(M))},0)}function f(l){var b=F.outEdges(l).reduce(function(Z,J){return Math.min(Z,D[J.w]-F.edge(J))},Number.POSITIVE_INFINITY),M=u.node(l);if(b!==Number.POSITIVE_INFINITY&&M.borderType!==U)D[l]=Math.max(D[l],b)}return z(k,F.predecessors.bind(F)),z(f,F.successors.bind(F)),xu(A,function(l){D[l]=D[E[l]]}),D}function Ol4(u,B,E,A){var C=new V1,D=u.graph(),F=Nl4(D.nodesep,D.edgesep,A);return xu(B,function(U){var z;xu(U,function(k){var f=E[k];if(C.setNode(f),z){var l=E[z],b=C.edge(l,f);C.setEdge(l,f,Math.max(F(u,k,z),b||0))}z=k})}),C}function Il4(u,B){return CJ(zE(B),function(E){var{NEGATIVE_INFINITY:A,POSITIVE_INFINITY:C}=Number;return K10(E,function(D,F){var U=il4(u,F)/2;A=Math.max(D+U,A),C=Math.min(D-U,C)}),A-C})}function Pl4(u,B){var E=zE(B),A=hz(E),C=f8(E);xu(["u","d"],function(D){xu(["l","r"],function(F){var U=D+F,z=u[U],k;if(z===B)return;var f=zE(z);if(k=F==="l"?A-hz(f):C-f8(f),k)u[U]=AJ(z,function(l){return l+k})})})}function jl4(u,B){return AJ(u.ul,function(E,A){if(B)return u[B.toLowerCase()][A];else{var C=RF(a1(u,A));return(C[1]+C[2])/2}})}function ya0(u){var B=Gl(u),E=DH(vl4(u,B),Sl4(u,B)),A={},C;xu(["u","d"],function(F){C=F==="u"?B:zE(B).reverse(),xu(["l","r"],function(U){if(U==="r")C=a1(C,function(l){return zE(l).reverse()});var z=(F==="u"?u.predecessors:u.successors).bind(u),k=Rl4(u,C,E,z),f=Tl4(u,C,k.root,k.align,U==="r");if(U==="r")f=AJ(f,function(l){return-l});A[F+U]=f})});var D=Il4(u,A);return Pl4(A,D),jl4(A,u.graph().align)}function Nl4(u,B,E){return function(A,C,D){var F=A.node(C),U=A.node(D),z=0,k;if(z+=F.width/2,Object.prototype.hasOwnProperty.call(F,"labelpos"))switch(F.labelpos.toLowerCase()){case"l":k=-F.width/2;break;case"r":k=F.width/2;break}if(k)z+=E?k:-k;if(k=0,z+=(F.dummy?B:u)/2,z+=(U.dummy?B:u)/2,z+=U.width/2,Object.prototype.hasOwnProperty.call(U,"labelpos"))switch(U.labelpos.toLowerCase()){case"l":k=U.width/2;break;case"r":k=-U.width/2;break}if(k)z+=E?k:-k;return k=0,z}}function il4(u,B){return u.node(B).width}var ca0=g(()=>{B6();kE();OF()});function ga0(u){u=MV(u),al4(u),Q10(ya0(u),function(B,E){u.node(E).x=B})}function al4(u){var B=Gl(u),E=u.graph().ranksep,A=0;xu(B,function(C){var D=f8(a1(C,function(F){return u.node(F).height}));xu(C,function(F){u.node(F).y=A+D/2}),A+=D+E})}var _a0=g(()=>{B6();OF();ca0()});function tS(u,B){var E=B&&B.debugTiming?hi0:mi0;E("layout",()=>{var A=E(" buildLayoutGraph",()=>pl4(u));E(" runLayout",()=>Vl4(A,E)),E(" updateInputGraph",()=>hl4(u,A))})}function Vl4(u,B){B(" makeSpaceForEdgeLabels",()=>dl4(u)),B(" removeSelfEdges",()=>Cb4(u)),B(" acyclic",()=>Ii0(u)),B(" nestingGraph.run",()=>wa0(u)),B(" rank",()=>d10(MV(u))),B(" injectEdgeLabelProxies",()=>sl4(u)),B(" removeEmptyRanks",()=>ai0(u)),B(" nestingGraph.cleanup",()=>Qa0(u)),B(" normalizeRanks",()=>ii0(u)),B(" assignRankMinMax",()=>ol4(u)),B(" removeEdgeLabelProxies",()=>tl4(u)),B(" normalize.run",()=>di0(u)),B(" parentDummyChains",()=>ma0(u)),B(" addBorderSegments",()=>$i0(u)),B(" order",()=>Va0(u)),B(" insertSelfEdges",()=>Db4(u)),B(" adjustCoordinateSystem",()=>gi0(u)),B(" position",()=>ga0(u)),B(" positionSelfEdges",()=>Fb4(u)),B(" removeBorderNodes",()=>Ab4(u)),B(" normalize.undo",()=>si0(u)),B(" fixupEdgeLabelCoords",()=>Bb4(u)),B(" undoCoordinateSystem",()=>_i0(u)),B(" translateGraph",()=>el4(u)),B(" assignNodeIntersects",()=>ub4(u)),B(" reversePoints",()=>Eb4(u)),B(" acyclic.undo",()=>Pi0(u))}function hl4(u,B){xu(u.nodes(),function(E){var A=u.node(E),C=B.node(E);if(A){if(A.x=C.x,A.y=C.y,B.children(E).length)A.width=C.width,A.height=C.height}}),xu(u.edges(),function(E){var A=u.edge(E),C=B.edge(E);if(A.points=C.points,Object.prototype.hasOwnProperty.call(C,"x"))A.x=C.x,A.y=C.y}),u.graph().width=B.graph().width,u.graph().height=B.graph().height}function pl4(u){var B=new V1({multigraph:!0,compound:!0}),E=e10(u.graph());return B.setGraph(DH({},rl4,t10(E,ml4),DJ(E,$l4))),xu(u.nodes(),function(A){var C=e10(u.node(A));B.setNode(A,l10(t10(C,yl4),cl4)),B.setParent(A,u.parent(A))}),xu(u.edges(),function(A){var C=e10(u.edge(A));B.setEdge(A,DH({},_l4,t10(C,gl4),DJ(C,nl4)))}),B}function dl4(u){var B=u.graph();B.ranksep/=2,xu(u.edges(),function(E){var A=u.edge(E);if(A.minlen*=2,A.labelpos.toLowerCase()!=="c")if(B.rankdir==="TB"||B.rankdir==="BT")A.width+=A.labeloffset;else A.height+=A.labeloffset})}function sl4(u){xu(u.edges(),function(B){var E=u.edge(B);if(E.width&&E.height){var A=u.node(B.v),C=u.node(B.w),D={rank:(C.rank-A.rank)/2+A.rank,e:B};TF(u,"edge-proxy",D,"_ep")}})}function ol4(u){var B=0;xu(u.nodes(),function(E){var A=u.node(E);if(A.borderTop)A.minRank=u.node(A.borderTop).rank,A.maxRank=u.node(A.borderBottom).rank,B=f8(B,A.maxRank)}),u.graph().maxRank=B}function tl4(u){xu(u.nodes(),function(B){var E=u.node(B);if(E.dummy==="edge-proxy")u.edge(E.e).labelRank=E.rank,u.removeNode(B)})}function el4(u){var B=Number.POSITIVE_INFINITY,E=0,A=Number.POSITIVE_INFINITY,C=0,D=u.graph(),F=D.marginx||0,U=D.marginy||0;function z(k){var{x:f,y:l,width:b,height:M}=k;B=Math.min(B,f-b/2),E=Math.max(E,f+b/2),A=Math.min(A,l-M/2),C=Math.max(C,l+M/2)}xu(u.nodes(),function(k){z(u.node(k))}),xu(u.edges(),function(k){var f=u.edge(k);if(Object.prototype.hasOwnProperty.call(f,"x"))z(f)}),B-=F,A-=U,xu(u.nodes(),function(k){var f=u.node(k);f.x-=B,f.y-=A}),xu(u.edges(),function(k){var f=u.edge(k);if(xu(f.points,function(l){l.x-=B,l.y-=A}),Object.prototype.hasOwnProperty.call(f,"x"))f.x-=B;if(Object.prototype.hasOwnProperty.call(f,"y"))f.y-=A}),D.width=E-B+F,D.height=C-A+U}function ub4(u){xu(u.edges(),function(B){var E=u.edge(B),A=u.node(B.v),C=u.node(B.w),D,F;if(!E.points)E.points=[],D=C,F=A;else D=E.points[0],F=E.points[E.points.length-1];E.points.unshift(I10(A,D)),E.points.push(I10(C,F))})}function Bb4(u){xu(u.edges(),function(B){var E=u.edge(B);if(Object.prototype.hasOwnProperty.call(E,"x")){if(E.labelpos==="l"||E.labelpos==="r")E.width-=E.labeloffset;switch(E.labelpos){case"l":E.x-=E.width/2+E.labeloffset;break;case"r":E.x+=E.width/2+E.labeloffset;break}}})}function Eb4(u){xu(u.edges(),function(B){var E=u.edge(B);if(E.reversed)E.points.reverse()})}function Ab4(u){xu(u.nodes(),function(B){if(u.children(B).length){var E=u.node(B),A=u.node(E.borderTop),C=u.node(E.borderBottom),D=u.node(Kl(E.borderLeft)),F=u.node(Kl(E.borderRight));E.width=Math.abs(F.x-D.x),E.height=Math.abs(C.y-A.y),E.x=D.x+E.width/2,E.y=A.y+E.height/2}}),xu(u.nodes(),function(B){if(u.node(B).dummy==="border")u.removeNode(B)})}function Cb4(u){xu(u.edges(),function(B){if(B.v===B.w){var E=u.node(B.v);if(!E.selfEdges)E.selfEdges=[];E.selfEdges.push({e:B,label:u.edge(B)}),u.removeEdge(B)}})}function Db4(u){var B=Gl(u);xu(B,function(E){var A=0;xu(E,function(C,D){var F=u.node(C);F.order=D+A,xu(F.selfEdges,function(U){TF(u,"selfedge",{width:U.label.width,height:U.label.height,rank:F.rank,order:D+ ++A,e:U.e,label:U.label},"_se")}),delete F.selfEdges})})}function Fb4(u){xu(u.nodes(),function(B){var E=u.node(B);if(E.dummy==="selfedge"){var A=u.node(E.e.v),C=A.x+A.width/2,D=A.y,F=E.x-C,U=A.height/2;u.setEdge(E.e,E.label),u.removeNode(B),E.label.points=[{x:C+2*F/3,y:D-U},{x:C+5*F/6,y:D-U},{x:C+F,y:D},{x:C+5*F/6,y:D+U},{x:C+2*F/3,y:D+U}],E.label.x=E.x,E.label.y=E.y}})}function t10(u,B){return AJ(DJ(u,B),Number)}function e10(u){var B={};return xu(u,function(E,A){B[A.toLowerCase()]=E}),B}var ml4,rl4,$l4,yl4,cl4,gl4,_l4,nl4;var na0=g(()=>{B6();kE();yi0();pi0();O10();a10();s10();Ga0();ha0();ra0();_a0();OF();ml4=["nodesep","edgesep","ranksep","marginx","marginy"],rl4={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},$l4=["acyclicer","ranker","rankdir","align"],yl4=["width","height"],cl4={width:0,height:0},gl4=["minlen","weight","width","height","labeloffset"],_l4={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},nl4=["labelpos"]});var u60=g(()=>{O10();na0();a10();s10()});var ta0={};ju(ta0,{render:()=>lb4,getEdgesToRender:()=>sa0});var pa0,da0,Ub4,zb4,kb4,fb4,sa0,oa0,lb4;var ea0=g(()=>{W10();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();u60();v10();kE();pa0=X((u,B,E)=>Math.max(B,Math.min(E,u)),"clamp"),da0=X((u="TB")=>{switch(u){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";case"TB":default:return"top"}},"getDefaultSelfLoopSide"),Ub4=X((u)=>u==="flowchart"||u==="flowchart-v2"||u==="stateDiagram","shouldMergeSelfLoopSegments"),zb4=X((u,B,E,A,C)=>{let D=[],F=new Set;if(E.forEach(({start:f,end:l})=>{if(f!==A)F.add(f);if(l!==A)F.add(l)}),F.forEach((f)=>{let l=u.node(f);if(typeof l?.x==="number"&&typeof l?.y==="number")D.push(l)}),D.length===0)E.forEach(({edge:f})=>{(f.points??[]).forEach((l)=>{if(typeof l?.x==="number"&&typeof l?.y==="number")D.push(l)})});if(D.length===0)return da0(C);let U=D.reduce((f,l)=>({x:f.x+l.x/D.length,y:f.y+l.y/D.length}),{x:0,y:0}),z=U.x-B.x,k=U.y-B.y;if(Math.abs(z)>Math.abs(k))return z>0?"right":"left";if(Math.abs(k)>0)return k>0?"bottom":"top";return da0(C)},"getSelfLoopSide"),kb4=X((u,B="top",E=0,A=0)=>{let C=u.x,D=u.y-E,F=u.width/2,U=u.height/2,z=Math.max(36,Math.min(100,u.width*0.8)),k=pa0(Math.max(A,u.width*0.35),36,z),f=pa0(Math.min(u.width,u.height)*0.45,24,48);switch(B){case"bottom":{let l=D+U;return[{x:C-k/2,y:l},{x:C-k/2,y:l+f},{x:C+k/2,y:l+f},{x:C+k/2,y:l}]}case"right":{let l=C+F;return[{x:l,y:D-k/2},{x:l+f,y:D-k/2},{x:l+f,y:D+k/2},{x:l,y:D+k/2}]}case"left":{let l=C-F;return[{x:l,y:D-k/2},{x:l-f,y:D-k/2},{x:l-f,y:D+k/2},{x:l,y:D+k/2}]}case"top":default:{let l=D-U;return[{x:C-k/2,y:l},{x:C-k/2,y:l-f},{x:C+k/2,y:l-f},{x:C+k/2,y:l}]}}},"getSelfLoopPoints"),fb4=X((u,B,E="top",A=0,C={})=>{let F=u.x,U=u.y-A,z=C.width??0,k=C.height??0;switch(E){case"bottom":return{x:F,y:Math.max(...B.map((f)=>f.y))+k/2+4};case"right":return{x:Math.max(...B.map((f)=>f.x))+z/2+4,y:U};case"left":return{x:Math.min(...B.map((f)=>f.x))-z/2-4,y:U};case"top":default:return{x:F,y:Math.min(...B.map((f)=>f.y))-k/2-4}}},"getSelfLoopLabelPosition"),sa0=X((u,B=0,{mergeSelfLoops:E=!0}={})=>{let A=new Map,C=[],D=u.graph()?.rankdir;return u.edges().forEach((F)=>{let U=u.edge(F);if(E&&U.selfLoop){let z=U.selfLoop.id;if(!A.has(z))A.set(z,[]);A.get(z).push({edge:U,start:F.v,end:F.w})}else C.push({edge:U,start:F.v,end:F.w})}),A.forEach((F)=>{if(F.length!==3){F.forEach((K)=>C.push(K));return}F.sort((K,Q)=>K.edge.selfLoop.order-Q.edge.selfLoop.order);let[U,z,k]=F,f=U.edge.originalEdge??z.edge.originalEdge??k.edge.originalEdge??z.edge,l=u.node(f.start);if(!l){F.forEach((K)=>C.push(K));return}let b={width:z.edge.width,height:z.edge.height},M=zb4(u,l,F,f.start,D),Z=kb4(l,M,B,b.width??0),J=fb4(l,Z,M,B,b),w={...z.edge,...f,id:f.id,points:Z,start:f.start,end:f.end,x:J.x,y:J.y,width:b.width,height:b.height,labelStyle:z.edge.labelStyle,fromCluster:U.edge.fromCluster??z.edge.fromCluster??k.edge.fromCluster,toCluster:U.edge.toCluster??z.edge.toCluster??k.edge.toCluster};delete w.selfLoop,delete w.originalEdge,C.push({edge:w,start:w.start,end:w.end})}),C},"getEdgesToRender"),oa0=X(async(u,B,E,A,C,D)=>{z0.warn("Graph in recursive render:XAX",xC(B),C);let F=B.graph().rankdir;z0.trace("Dir in recursive render - dir:",F);let U=u.insert("g").attr("class","root");if(!B.nodes())z0.info("No nodes found for",B);else z0.info("Recursive render XXX",B.nodes());if(B.edges().length>0)z0.info("Recursive edges",B.edge(B.edges()[0]));let z=U.insert("g").attr("class","clusters"),k=U.insert("g").attr("class","edgePaths"),f=U.insert("g").attr("class","edgeLabels"),l=U.insert("g").attr("class","nodes"),b=Ub4(E);await Promise.all(B.nodes().map(async function(Q){let G=B.node(Q);if(C!==void 0){let L=JSON.parse(JSON.stringify(C.clusterData));if(z0.trace(`Setting data for parent cluster XXX
Node.id = `,Q,`
data=`,L.height,`
Parent cluster`,C.height),B.setNode(C.id,L),!B.parent(Q))z0.trace("Setting parent",Q,C.id),B.setParent(Q,C.id,L)}if(z0.info("(Insert) Node XXX"+Q+": "+JSON.stringify(B.node(Q))),G?.clusterNode){z0.info("Cluster identified XBX",Q,G.width,B.node(Q));let{ranksep:L,nodesep:H}=B.graph();G.graph.setGraph({...G.graph.graph(),ranksep:L+25,nodesep:H});let q=await oa0(l,G.graph,E,A,B.node(Q),D),x=q.elem;a4(G,x),G.diff=q.diff||0,z0.info("New compound node after recursive render XAX",Q,"width",G.width,"height",G.height),XT0(x,G)}else if(B.children(Q).length>0)z0.trace("Cluster - the non recursive path XBX",Q,G.id,G,G.width,"Graph:",B),z0.trace(kJ(G.id,B)),P3.set(G.id,{id:kJ(G.id,B),node:G});else z0.trace("Node - the non recursive path XAX",Q,l,B.node(Q),F),await Pz(l,B.node(Q),{config:D,dir:F})})),await X(async()=>{let Q=B.edges().map(async function(G){let L=B.edge(G.v,G.w,G.name);if(z0.info("Edge "+G.v+" -> "+G.w+": "+JSON.stringify(G)),z0.info("Edge "+G.v+" -> "+G.w+": ",G," ",JSON.stringify(B.edge(G))),z0.info("Fix",P3,"ids:",G.v,G.w,"Translating: ",P3.get(G.v),P3.get(G.w)),b&&L.selfLoop){if(L.selfLoop.order!==1)return;let H=L.id;L.id=L.selfLoop.id,await sZ(f,L),L.id=H;return}await sZ(f,L)});await Promise.all(Q)},"processEdges")(),z0.info("Graph before layout:",JSON.stringify(xC(B))),z0.info("############################################# XXX"),z0.info("### Layout ### XXX"),z0.info("############################################# XXX"),tS(B),z0.info("Graph after layout:",JSON.stringify(xC(B)));let Z=0,{subGraphTitleTotalMargin:J}=GC(D);await Promise.all(Si0(B).map(async function(Q){let G=B.node(Q);if(z0.info("Position XBX => "+Q+": ("+G.x,","+G.y,") width: ",G.width," height: ",G.height),G?.clusterNode)G.y+=J,z0.info("A tainted cluster node XBX1",Q,G.id,G.width,G.height,G.x,G.y,B.parent(Q)),P3.get(G.id).node=G,dZ(G);else if(B.children(Q).length>0){z0.info("A pure cluster node XBX1",Q,G.id,G.x,G.y,G.width,G.height,B.parent(Q)),G.height+=J,B.node(G.parentId);let L=G?.padding/2||0,H=G?.labelBBox?.height||0,q=H-L||0;z0.debug("OffsetY",q,"labelHeight",H,"halfPadding",L),await of(z,G),P3.get(G.id).node=G}else{let L=B.node(G.parentId);G.y+=J/2,z0.info("A regular node XBX1 - using the padding",G.id,"parent",G.parentId,G.width,G.height,G.x,G.y,"offsetY",G.offsetY,"parent",L,L?.offsetY,G),dZ(G)}}));let w=J/2;return sa0(B,w,{mergeSelfLoops:b}).forEach(function({edge:Q,start:G,end:L}){z0.info("Edge "+G+" -> "+L+": "+JSON.stringify(Q),Q),Q.points.forEach((v)=>v.y+=w);let H=B.node(G),q=B.node(L),x=IG(k,Q,P3,E,H,q,A);Ca(Q,x)}),B.nodes().forEach(function(Q){let G=B.node(Q);if(z0.info(Q,G.type,G.diff),G.isGroup)Z=G.diff}),z0.warn("Returning from recursive render XAX",U,Z),{elem:U,diff:Z}},"recursiveRender"),lb4=X(async(u,B)=>{let E=new V1({multigraph:!0,compound:!0}).setGraph({rankdir:u.direction,nodesep:u.config?.nodeSpacing||u.config?.flowchart?.nodeSpacing||u.nodeSpacing,ranksep:u.config?.rankSpacing||u.config?.flowchart?.rankSpacing||u.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),A=B.select("g");PG(A,u.markers,u.type,u.diagramId),Ba(),Aa(),ei(),bV(),u.nodes.forEach((D)=>{if(E.setNode(D.id,{...D}),D.parentId)E.setParent(D.id,D.parentId)}),z0.debug("Edges:",u.edges),u.edges.forEach((D)=>{if(D.start===D.end){let F=D.start,U=F+"---"+F+"---1",z=F+"---"+F+"---2",k=E.node(F);E.setNode(U,{domId:U,id:U,parentId:k.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),E.setParent(U,k.parentId),E.setNode(z,{domId:z,id:z,parentId:k.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),E.setParent(z,k.parentId);let f=structuredClone(D),l=structuredClone(D),b=structuredClone(D),M=structuredClone(D);if(l.originalEdge=f,l.selfLoop={id:f.id,order:0},b.originalEdge=f,b.selfLoop={id:f.id,order:1},M.originalEdge=f,M.selfLoop={id:f.id,order:2},l.label="",l.arrowTypeEnd="none",l.endLabelLeft="",l.endLabelRight="",l.startLabelLeft="",l.id=F+"-cyclic-special-1",b.startLabelRight="",b.startLabelLeft="",b.endLabelLeft="",b.endLabelRight="",b.arrowTypeStart="none",b.arrowTypeEnd="none",b.id=F+"-cyclic-special-mid",M.label="",M.startLabelRight="",M.startLabelLeft="",M.arrowTypeStart="none",k.isGroup)l.fromCluster=F,M.toCluster=F;M.id=F+"-cyclic-special-2",M.arrowTypeStart="none",E.setEdge(F,U,l,F+"-cyclic-special-0"),E.setEdge(U,z,b,F+"-cyclic-special-1"),E.setEdge(z,F,M,F+"-cyclic-special-2")}else E.setEdge(D.start,D.end,{...D},D.id)}),z0.warn("Graph at first:",JSON.stringify(xC(E))),Xi0(E),z0.warn("Graph after XAX:",JSON.stringify(xC(E)));let C=$0();await oa0(A,E,u.type,u.diagramId,void 0,C)},"render")});var CV0={};ju(CV0,{shouldCaptureSizes:()=>uV0,captureNodeSizes:()=>AV0});function B60(){if(typeof globalThis>"u")return;return globalThis}function uV0(){return Boolean(B60()?.mermaidCaptureSizes)}function BV0(){if(typeof location>"u")return"browser-dev";return`${location.pathname}${location.search}`}function EV0(u,B){let E=B60();if(!E)return;let A=B.node(),D=((A&&"ownerSVGElement"in A?A.ownerSVGElement:null)??A)?.id??"(unknown)";E.mermaidCapturedSizes??=[];let F={svgId:D,sizes:u};E.mermaidCapturedSizes.push(F),E.mermaidLastCapturedSizes=F}function AV0(u,B){let E=[];for(let A of B.nodes){if(A.isGroup)continue;E.push({id:A.id,width:A.width??0,height:A.height??0})}if(E.length===0)return;EV0({metadata:{captureVersion:bb4,capturedAt:new Date().toISOString(),capturedFrom:BV0()},nodes:E},u)}var bb4=1;var DV0=g(()=>{Y4();X(B60,"getCaptureGlobal");X(uV0,"shouldCaptureSizes");X(BV0,"capturedFromLocation");X(EV0,"emitCapturedSizes");X(AV0,"captureNodeSizes")});var nh0={};ju(nh0,{render:()=>_h0});async function bV0(u,B){let E=new V1({multigraph:!0,compound:!0}),A=[...B.edges],C=$0(),D=u.insert("g").attr("class","root"),F=D.insert("g").attr("class","clusters"),U=D.insert("g").attr("class","edges edgePath"),z=D.insert("g").attr("class","edgeLabels"),k=D.insert("g").attr("class","nodes"),f=new Map,l=u.node()!=null;await Promise.all(B.nodes.map(async(b)=>{if(b.isGroup)E.setNode(b.id,{...b});else{if(l){let M=await Pz(k,b,{config:C,dir:b.dir}),Z=M.node()?.getBBox()??{width:0,height:0};f.set(b.id,M),b.width=Z.width,b.height=Z.height}E.setNode(b.id,{...b})}}));for(let b of A)if(E.setEdge(b.start,b.end,{...b},b.id),!B.edges.some((Z)=>Z.id===b.id))B.edges.push(b);if(globalThis.mermaidCaptureSizes){let{captureNodeSizes:b}=await Promise.resolve().then(() => (DV0(),CV0));b(u,B)}return{graph:E,groups:{clusters:F,edgePaths:U,edgeLabels:z,nodes:k,rootGroups:D},nodeElements:f}}function xV(u){let B=[];for(let E=0;E<u.length-1;E++)B.push({a:u[E],b:u[E+1]});return B}function MV0(u,B,E,A){let C=B.x-u.x,D=B.y-u.y,F=A.x-E.x,U=A.y-E.y,z=C*U-D*F;if(z===0)return null;let k=E.x-u.x,f=E.y-u.y,l=(k*U-f*F)/z,b=(k*D-f*C)/z;if(l<=QV||l>=1-QV||b<=QV||b>=1-QV)return null;return{point:{x:u.x+l*C,y:u.y+l*D},tA:l,tB:b}}function F60(u){return Math.abs(u.b.x-u.a.x)>=Math.abs(u.b.y-u.a.y)}function ZV0(u){let B=[];for(let E=0;E<u.length;E++){let A=u[E],C=xV(A.points);for(let D=E+1;D<u.length;D++){let F=u[D],U=xV(F.points);for(let[z,k]of C.entries())for(let[f,l]of U.entries()){let b=MV0(k.a,k.b,l.a,l.b);if(!b)continue;let M=F60(k),Z=F60(l);if(M!==Z?M:!1)B.push({jumpEdgeId:A.id,otherEdgeId:F.id,segIndex:z,t:b.tA,point:b.point});else B.push({jumpEdgeId:F.id,otherEdgeId:A.id,segIndex:f,t:b.tB,point:b.point})}}}return B}function SC(u){let B=Math.round(u*1000)/1000;return Number.isInteger(B)?`${B}`:`${B}`}function UH(u){return`${SC(u.x)},${SC(u.y)}`}function JV0(u){let B=u.b.x-u.a.x,E=u.b.y-u.a.y;if(Math.abs(B)>=Math.abs(E))return B>=0?1:0;return E>=0?1:0}function wV0(u,B){if(u.length<2)return u.map((D)=>({...D}));let E=u.map((D)=>({...D})),A=B.arrowTypeStart&&x2[B.arrowTypeStart];if(A){let D=u[0],F=u[1],U=Math.atan2(F.y-D.y,F.x-D.x);E[0].x=D.x+A*Math.cos(U),E[0].y=D.y+A*Math.sin(U)}let C=B.arrowTypeEnd&&x2[B.arrowTypeEnd];if(C){let D=u.length,F=u[D-2],U=u[D-1],z=Math.atan2(U.y-F.y,U.x-F.x);E[D-1].x=U.x-C*Math.cos(z),E[D-1].y=U.y-C*Math.sin(z)}return E}function KV0(u,B,E,A,C){let D=u.point.x,F=u.point.y,U={x:D-B*u.r,y:F-E*u.r},z={x:D+B*u.r,y:F+E*u.r},k=[`L${UH(U)}`];if(C==="arc")k.push(`A${SC(u.r)},${SC(u.r)} 0 0 ${A} ${UH(z)}`);else k.push(`M${UH(z)}`);return k}function U60(u,B,E,A){let C=B.x-u.x,D=B.y-u.y,F=E.x-B.x,U=E.y-B.y,z=Math.hypot(C,D),k=Math.hypot(F,U);if(z<KV||k<KV)return null;let f=C/z,l=D/z,b=F/k,M=U/k,Z=f*b+l*M,J=Math.max(-1,Math.min(1,Z)),w=Math.acos(J);if(w<KV||Math.abs(Math.PI-w)<KV)return null;let K=Math.min(A/Math.sin(w/2),z/2,k/2);return{startX:B.x-f*K,startY:B.y-l*K,endX:B.x+b*K,endY:B.y+M*K,ctrlX:B.x,ctrlY:B.y,cutLen:K}}function QV0(u,B,E){let A=u.points;if(A.length<2)return"";let C=wV0(A,u),D=u.curve==="rounded",F=xV(C),U=new Map;for(let k of B){let f=F[k.segIndex];if(!f)continue;let l=Math.hypot(f.b.x-f.a.x,f.b.y-f.a.y),b=U.get(k.segIndex)??[];b.push({t:k.t,point:k.point,d:k.t*l,r:E.jumpRadius}),U.set(k.segIndex,b)}let z=[`M${UH(C[0])}`];for(let k=0;k<F.length;k++){let f=F[k],l=Math.hypot(f.b.x-f.a.x,f.b.y-f.a.y),b=l===0?0:(f.b.x-f.a.x)/l,M=l===0?0:(f.b.y-f.a.y)/l,Z=JV0(f),J=0;if(D&&k>0){let G=U60(C[k-1],C[k],C[k+1]??C[k],FV0);if(G)J=G.cutLen}let w=l,K=null;if(D&&k<F.length-1){if(K=U60(C[k],C[k+1],C[k+2]??C[k+1],FV0),K)w=l-K.cutLen}let Q=[...U.get(k)??[]].sort((G,L)=>G.t-L.t);for(let G of Q)G.r=Math.min(G.r,G.d-J,w-G.d);for(let G=0;G<Q.length-1;G++){let L=Q[G+1].d-Q[G].d;if(Q[G].r+Q[G+1].r>L){let H=L/2;Q[G].r=Math.min(Q[G].r,H),Q[G+1].r=Math.min(Q[G+1].r,H)}}for(let G of Q){if(G.r<Mb4)continue;z.push(...KV0(G,b,M,Z,E.jumpStyle))}if(D&&K)z.push(`L${SC(K.startX)},${SC(K.startY)}`),z.push(`Q${SC(K.ctrlX)},${SC(K.ctrlY)} ${SC(K.endX)},${SC(K.endY)}`);else z.push(`L${UH(f.b)}`)}return z.join(" ")}function GV0(u){return/^[\d\s+,.LMelm-]*$/.test(u)}function HV0(u){if(!u)return!0;return u==="linear"||u==="rounded"||u==="step"||u==="stepBefore"||u==="stepAfter"}function LV0(u){if(!u)return null;try{let B=typeof atob==="function"?atob(u):Buffer.from(u,"base64").toString(),E=JSON.parse(B);if(!Array.isArray(E))return null;let A=[];for(let C of E)if(C&&typeof C.x==="number"&&typeof C.y==="number")A.push({x:C.x,y:C.y});return A.length>=2?A:null}catch{return null}}function qV0(u,B,E){if(!E.enabled)return;let A=u.node();if(!A)return;let C=new Map;for(let k of B)C.set(k.id,k);let D=[],F=new Map;for(let k of B){let f=typeof CSS<"u"&&CSS.escape?CSS.escape(k.id):k.id,l=A.querySelector(`path[data-id="${f}"]`);if(!l)continue;F.set(k.id,l);let M=LV0(l.getAttribute("data-points"))??k.points;D.push({...k,points:M})}let U=ZV0(D);if(U.length===0)return;let z=new Map;for(let k of U){let f=z.get(k.jumpEdgeId)??[];f.push(k),z.set(k.jumpEdgeId,f)}for(let k of D){let f=z.get(k.id);if(!f||f.length===0)continue;let b=C.get(k.id)?.curve;if(b!==void 0&&!HV0(b))continue;let M=F.get(k.id);if(!M)continue;if(b===void 0){let G=M.getAttribute("d")??"";if(!GV0(G))continue}let Z=M.getAttribute("style")??"",J=/stroke-dasharray\s*:\s*0\s+([\d.]+)\s+[\d.]+\s+([\d.]+)/.exec(Z),w=J?Number.parseFloat(J[1]):null,K=J?Number.parseFloat(J[2]):null,Q=QV0(k,f,E);if(M.setAttribute("d",Q),w!==null&&K!==null&&typeof M.getTotalLength==="function"){let G=M.getTotalLength(),L=Math.max(0,G-w-K),H=`0 ${w} ${L} ${K}`,q=Z.replace(/stroke-dasharray\s*:[^;]*;?/g,`stroke-dasharray: ${H};`).replace(/;\s*;+/g,";");M.setAttribute("style",q)}}}async function XV0(u,B){for(let C of u.nodes)if(C.isGroup)await of(B.clusters,C);else dZ(C);let E=new Map;for(let C of u.nodes)if(C?.id)E.set(C.id,C);for(let C of u.edges){let D=C.start?E.get(C.start)??{}:{},F=C.end?E.get(C.end)??{}:{},U=IG(B.edgePaths,{...C},{},u.type,D,F,u.diagramId);if(C.label)await sZ(B.rootGroups,C);if(C.label)xV0(C,U)}let A=u.config?.swimlane?.lineHops;if(A!==!1){let C=A==="gap"?"gap":"arc",D=u.edges.filter((F)=>Array.isArray(F.points)&&F.points.length>=2).map((F)=>({id:F.id,points:F.points,curve:F.curve,arrowTypeStart:F.arrowTypeStart,arrowTypeEnd:F.arrowTypeEnd}));qV0(B.edgePaths,D,{enabled:!0,jumpRadius:6,jumpStyle:C})}}function xV0(u,B){let E=B?.updatedPath??B?.originalPath,A=F4(),{subGraphTitleTotalMargin:C}=GC({flowchart:A.flowchart??{}});if(u.label){let D=OG.get(u.id),F=u.x,U=u.y;if(E){let z=R4.calcLabelPosition(E);if(z0.debug("Moving label "+u.label+" from (",F,",",U,") to (",z.x,",",z.y,") abc88"),B)F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U+C/2})`)}if(u?.startLabelLeft){let D=i9.get(u.id).startLeft,F=u?.x,U=u?.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeStart?10:0,"start_left",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.startLabelRight){let D=i9.get(u.id).startRight,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeStart?10:0,"start_right",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.endLabelLeft){let D=i9.get(u.id).endLeft,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeEnd?10:0,"end_left",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.endLabelRight){let D=i9.get(u.id).endRight,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeEnd?10:0,"end_right",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}}function z60(u){return Math.max(u.padding??UV0,UV0)}function vV0(u){let{x:B,y:E,width:A,height:C}=u,D=u.swimlaneContentTop;if(typeof B!=="number"||typeof E!=="number"||typeof A!=="number"||typeof C!=="number"||typeof D!=="number"||!Number.isFinite(B)||!Number.isFinite(E)||!Number.isFinite(A)||!Number.isFinite(C)||!Number.isFinite(D)||A<=0||C<=0){delete u.groupTitleRect;return}let F=E-C/2,U=Math.min(D,E+C/2),z=Math.min(Zb4,Math.max(0,U-F)),k=F+z;if(k<=F){delete u.groupTitleRect;return}u.groupTitleRect={left:B-A/2,right:B+A/2,top:F,bottom:k}}function SV0(u){let B=u.direction,E=u.nodes??=[];for(let D of u.nodes??[])if(D.isGroup&&!D.parentId){if(D.shape="swimlane",B)D.direction=B}let A=E.filter((D)=>!D.isGroup&&!D.parentId);if(A.length===0)return;let C=E.find((D)=>D.id===E60);if(!C)C={id:E60,label:"",isGroup:!0,shape:"swimlane",padding:20,...B?{direction:B}:{}},E.push(C);else if(C.isGroup){if(C.shape="swimlane",B)C.direction=B}for(let D of A)D.parentId=E60}function WV0(u){let B=new Map;for(let z of u.nodes??[])B.set(z.id,z);let E=[];for(let z of u.edges??[]){let k=typeof z.start==="string"?z.start:void 0,f=typeof z.end==="string"?z.end:void 0;if(!k||!f)continue;if(z.labelNodeId)continue;E.push({id:z.id,src:k,dst:f,ref:z})}let A=u.nodes??[],C=A.filter((z)=>z.isGroup),D=A.filter((z)=>!z.isGroup);return{nodes:[...[...C].reverse(),...D].map((z)=>z.id),edges:E,layout:u,nodeById:B}}function YV0(u,B,E,A){let{layout:C}=u,D=u.nodeById,F=A?.layerGap??100,U=A?.nodeGap??40,z=0;for(let b of B.layers){let M=0;for(let Z of b){let J=D.get(Z);if(!J){M++;continue}J.layer=z,J.order=M;let w=E.x[Z]??M*U,K=E.y[Z]??z*F;J.x=w,J.y=K,M++}z++}let k=C.nodes??[],f=new Map,l=[];for(let b of k){if(!b?.isGroup)continue;if(!b.parentId)l.push(b);let M=k.filter((Q)=>Q.parentId===b.id),Z=1/0,J=-1/0,w=1/0,K=-1/0;for(let Q of M){let G=Q.x??E.x[Q.id],L=Q.y??E.y[Q.id],H=Q.width??0,q=Q.height??0;if(G!=null&&L!=null)Z=Math.min(Z,G-H/2),J=Math.max(J,G+H/2),w=Math.min(w,L-q/2),K=Math.max(K,L+q/2)}if(Z===1/0||w===1/0)b.x=b.x??0,b.y=b.y??0,b.width=b.width??0,b.height=b.height??0;else{let Q=b.padding??20,G=b.parentId?Q:2*z60(b),L=Q,H=Math.max(0,J-Z)+G,q=Math.max(0,K-w)+L,x=(Z+J)/2,v=(w+K)/2;b.x=x,b.y=v,b.width=H,b.height=q,f.set(b.id,{minX:Z,maxX:J,minY:w,maxY:K})}}if(l.length>0&&f.size>0){let b=1/0,M=-1/0,Z=0;for(let J of l){let w=J.padding??20;if(w>Z)Z=w;let K=f.get(J.id);if(!K)continue;b=Math.min(b,K.minY),M=Math.max(M,K.maxY)}if(b!==1/0&&M!==-1/0){let J=Math.max(0,M-b),w=36,K=Math.max(Z,36),Q=J+2*K,G=(b+M)/2;for(let W of l)W.y=G,W.height=Q,W.swimlaneContentTop=b;let L=[...l].sort((W,S)=>{let T=W.x??0,R=S.x??0;return T-R}),H=[],q=[],x=[];for(let W of L){let S=f.get(W.id);if(!S)continue;let T=Math.max(0,S.maxX-S.minX)+2*z60(W),R=(S.minX+S.maxX)/2;H.push(W.id),q.push(R),x.push(T)}let v=H.length;if(v>0){let W=new Map;if(v===1)W.set(H[0],x[0]);else{let S=[];for(let I=0;I<v-1;I++)S.push(q[I+1]-q[I]);let T=Array(v);T[0]=0;for(let I=0;I<v-1;I++)T[I+1]=2*S[I]-T[I];let R=0,Y=Number.POSITIVE_INFINITY;for(let I=0;I<v;I++){let O=x[I];if(I%2===0)R=Math.max(R,O-T[I]);else Y=Math.min(Y,T[I]-O)}let a=R;if(R<=Y)a=(R+Y)/2;else a=R;for(let I=0;I<v;I++){let O=T[I]+(I%2===0?a:-a),i=Math.max(x[I],O);W.set(H[I],i)}}for(let S of l){let T=W.get(S.id);if(T!=null)S.width=T;vV0(S)}}}}}function RV0(u){let B=[],E=[],A=new Map;for(let F of u.nodes)A.set(F.id,F);for(let F of u.edges){if(!F.label||F.label.length===0)continue;if(F.isLayoutOnly)continue;if(F.labelNodeId)continue;let U=F.start?A.get(F.start):void 0,z=F.end?A.get(F.end):void 0;if(!U||!z){z0.warn(Jb4,`Edge ${F.id} has missing source or target node`);continue}let k=`edge-label-${F.start}-${F.end}-${F.id}`,l=U.parentId!==z.parentId?z.parentId:U.parentId,b={id:k,label:F.label,edgeStart:F.start??"",edgeEnd:F.end??"",shape:"labelRect",width:0,height:0,isEdgeLabel:!0,isDummy:!0,parentId:l,isGroup:!1,labelStyle:Array.isArray(F.labelStyle)?F.labelStyle[0]:F.labelStyle??"",...U.dir?{dir:U.dir}:{}};B.push(b),F.labelNodeId=k,F.label=void 0,F.text=void 0;let M={id:`${F.id}-to-label`,start:F.start,end:k,type:"normal",isLayoutOnly:!0},Z={id:`${F.id}-from-label`,start:k,end:F.end,type:"normal",isLayoutOnly:!0};E.push(M,Z)}let C=[...u.nodes,...B],D=[...u.edges,...E];return{...u,nodes:C,edges:D}}function h60(u){let B=u.x??0,E=u.y??0,A=u.width??0,C=u.height??0;return A>0&&C>0?{cx:B,cy:E,rect:zH(B,E,A,C)}:void 0}function m60(u){if(u.isGroup)return;let B=h60(u);if(!B)return;return{id:String(u.id??""),cx:B.cx,cy:B.cy,rect:B.rect}}function CA(u,B,E=W5){return Math.abs(u.x-B.x)<E&&Math.abs(u.y-B.y)<E}function D1(u,B,E=W5){return Math.abs(u.x-B.x)<E}function f1(u,B,E=W5){return Math.abs(u.y-B.y)<E}function h9(u,B,E=W5){return f1(u,B,E)&&Math.abs(u.x-B.x)>E}function m9(u,B,E=W5){return D1(u,B,E)&&Math.abs(u.y-B.y)>E}function JB(u,B,E,A){return Math.max(0,Math.min(Math.max(u,B),Math.max(E,A))-Math.max(Math.min(u,B),Math.min(E,A)))}function IF(u,B,E=W5){if(u.horizontal&&B.horizontal&&f1(u.a,B.a,E))return JB(u.a.x,u.b.x,B.a.x,B.b.x);if(u.vertical&&B.vertical&&D1(u.a,B.a,E))return JB(u.a.y,u.b.y,B.a.y,B.b.y);return 0}function kH(u,B=W5){let E=[];for(let A=0;A<u.length-1;A++){let C=u[A],D=u[A+1],F=h9(C,D,B),U=m9(C,D,B);if(F||U)E.push({index:A,a:C,b:D,horizontal:F,vertical:U})}return E}function fE(u,B=W5){let E=kH(u,B),A=0;for(let C=1;C<E.length;C++)if(E[C-1].horizontal!==E[C].horizontal)A++;return A}function x1(u,B=W5){let E=[];for(let A of u){let C=E.length>0?E[E.length-1]:void 0;if(!C||!CA(C,A,B))E.push({x:A.x,y:A.y})}return E}function r60(u,B=W5){if(!u||u.length!==4)return;let[E,A,C,D]=u;if(h9(E,A,B)&&m9(A,C,B)&&h9(C,D,B))return{kind:"HVH",p0:E,p1:A,p2:C,p3:D};return m9(E,A,B)&&h9(A,C,B)&&m9(C,D,B)?{kind:"VHV",p0:E,p1:A,p2:C,p3:D}:void 0}function jV(u,B,E,A=0){let C=Math.min(u.x,B.x),D=Math.max(u.x,B.x),F=Math.min(u.y,B.y),U=Math.max(u.y,B.y);return D>E.left-A&&C<E.right+A&&U>E.top-A&&F<E.bottom+A}function $60(u,B,E=0){return u.x>B.left+E&&u.x<B.right-E&&u.y>B.top+E&&u.y<B.bottom-E}function TV0(u,B){return u.left<=B.left&&u.right>=B.right&&u.top<=B.top&&u.bottom>=B.bottom}function vV(u,B){return u.left<B.right&&u.right>B.left&&u.top<B.bottom&&u.bottom>B.top}function k60(u,B){return{left:u.left-B,right:u.right+B,top:u.top-B,bottom:u.bottom+B}}function zH(u,B,E,A){return{left:u-E/2,right:u+E/2,top:B-A/2,bottom:B+A/2}}function b8(u){return h60(u)?.rect}function MJ(u,B){switch(B){case"top":return{x:u.cx,y:u.rect.top};case"bottom":return{x:u.cx,y:u.rect.bottom};case"left":return{x:u.rect.left,y:u.cy};case"right":return{x:u.rect.right,y:u.cy}}}function y60(u,B,E,A,C,D=W5){let F=B==="left"||B==="right",U=A==="left"||A==="right";if(F&&U){if(B==="right"&&A==="left"&&u.x<E.x||B==="left"&&A==="right"&&u.x>E.x){if(f1(u,E,D))return[u,E];let l=(u.x+E.x)/2;return[u,{x:l,y:u.y},{x:l,y:E.y},E]}if(B===A){if(f1(u,E,D))return;let l=B==="left"?Math.min(u.x,E.x)-C:Math.max(u.x,E.x)+C;return[u,{x:l,y:u.y},{x:l,y:E.y},E]}return}if(!F&&!U){if(B===A){if(D1(u,E,D))return;let b=B==="top"?Math.min(u.y,E.y)-C:Math.max(u.y,E.y)+C;return[u,{x:u.x,y:b},{x:E.x,y:b},E]}if(!(B==="bottom"&&A==="top"&&u.y<E.y||B==="top"&&A==="bottom"&&u.y>E.y))return;if(D1(u,E,D))return[u,E];let l=(u.y+E.y)/2;return[u,{x:u.x,y:l},{x:E.x,y:l},E]}if(F&&!U){let f=B==="right"&&E.x>u.x||B==="left"&&E.x<u.x,l=A==="top"&&u.y<E.y||A==="bottom"&&u.y>E.y;return f&&l?[u,{x:E.x,y:u.y},E]:void 0}let z=B==="bottom"&&E.y>u.y||B==="top"&&E.y<u.y,k=A==="left"&&u.x<E.x||A==="right"&&u.x>E.x;return z&&k?[u,{x:u.x,y:E.y},E]:void 0}function c60(u,B,E,A){return B==="left"||B==="right"?[u,{x:A,y:u.y},{x:A,y:E.y},E]:[u,{x:u.x,y:A},{x:E.x,y:A},E]}function NV(u){let B=new Map,E=[];for(let A of u){if(A.isEdgeLabel)continue;let C=m60(A);if(!C)continue;B.set(C.id,C),E.push({id:C.id,rect:C.rect})}return{nodeInfoById:B,realNodeRects:E}}function Xl(u){let B=[],E=[];for(let A of u){let C=m60(A);if(!C)continue;let D={id:C.id,rect:C.rect};if(A.isEdgeLabel)E.push(D);else B.push(D)}return{realNodeRects:B,labelNodeRects:E}}function OV0(u,{includeEdgeLabels:B=!0}={}){let E=[];for(let A of u){if(A.isGroup||!B&&A.isEdgeLabel)continue;let C=A.x??0,D=A.y??0,F=A.width??0,U=A.height??0;E.push({nodeId:A.id,...zH(C,D,F,U)})}return E}function g60(u,B,E=W5){let{start:A,end:C}=u;if(!A||!C)return;let D=B.get(A),F=B.get(C);if(!D||!F)return;return{srcId:A,dstId:C,srcInfo:D,dstInfo:F,collinearX:Math.abs(D.cx-F.cx)<E,collinearY:Math.abs(D.cy-F.cy)<E}}function D2(u,B,E,A=[],C=0){for(let D of E){if(A.includes(D.id))continue;if(jV(u,B,D.rect,-C))return!0}return!1}function _60(u,B,E,A,C=W5,D=0.000001){let F=f1(u,B,C),U=D1(u,B,C),z=f1(E,A,C),k=D1(E,A,C);if(F&&z||U&&k)return!1;if(!(F||U)||!(z||k))return!1;let f=F?{a:u,b:B}:{a:E,b:A},l=U?{a:u,b:B}:{a:E,b:A},b=f.a.y,M=Math.min(f.a.x,f.b.x),Z=Math.max(f.a.x,f.b.x),J=l.a.x,w=Math.min(l.a.y,l.b.y),K=Math.max(l.a.y,l.b.y);if(J<M||J>Z||b<w||b>K)return!1;let Q=Math.abs(J-f.a.x)<D&&Math.abs(b-f.a.y)<D||Math.abs(J-f.b.x)<D&&Math.abs(b-f.b.y)<D,G=Math.abs(J-l.a.x)<D&&Math.abs(b-l.a.y)<D||Math.abs(J-l.b.x)<D&&Math.abs(b-l.b.y)<D;return!(Q&&G)}function IV0(u,B,E,A,C=W5){let D=f1(u,B,C),F=D1(u,B,C),U=f1(E,A,C),z=D1(E,A,C);if(F&&z&&D1(u,E,C))return JB(u.y,B.y,E.y,A.y)>C;if(D&&U&&f1(u,E,C))return JB(u.x,B.x,E.x,A.x)>C;return!1}function SV(u,B,E,A,{epsilon:C=W5,skipDegenerateOther:D=!1}={}){for(let F of E){if(F===A||F.isLayoutOnly)continue;let U=F.points;if(!U||U.length<2)continue;for(let z=0;z<U.length-1;z++){let k=U[z],f=U[z+1];if(D&&CA(k,f,C))continue;if(_60(u,B,k,f,C)||IV0(u,B,k,f,C))return!0}}return!1}function mz(u,B,E,A,C=W5){let D=f1(u,B,C),F=D1(u,B,C),U=f1(E,A,C),z=D1(E,A,C);if(!(D&&z||F&&U))return!1;let k=D?{a:u,b:B}:{a:E,b:A},f=D?{a:E,b:A}:{a:u,b:B},l=k.a.y,b=Math.min(k.a.x,k.b.x),M=Math.max(k.a.x,k.b.x),Z=f.a.x,J=Math.min(f.a.y,f.b.y),w=Math.max(f.a.y,f.b.y);return Z>b+C&&Z<M-C&&l>J+C&&l<w-C}function f60(u,B,E){let A=Math.min(B,E),C=Math.max(B,E);return u>A+W5&&u<C-W5}function PV0(u,B,E){if(D1(u,B)&&D1(B,E))return f60(B.y,u.y,E.y);if(f1(u,B)&&f1(B,E))return f60(B.x,u.x,E.x);return!1}function jV0(u){let B=!1,E=[];for(let A=0;A<u.length;A++){let C=E[E.length-1],D=u[A],F=A+1<u.length?u[A+1]:void 0;if(C&&F){if(CA(C,F)){A++,B=!0;continue}if(PV0(C,D,F)){B=!0;continue}}E.push(D)}return{points:E,changed:B}}function WV(u){let B=[u[0]];for(let A=1;A<u.length;A++){let C=B[B.length-1],D=u[A];if(!D1(C,D)&&!f1(C,D)){let F=B.length>=2?B[B.length-2]:void 0,z=(F?D1(F,C):!1)?{x:C.x,y:D.y}:{x:D.x,y:C.y};B.push(z)}B.push(D)}let E=[];for(let A of B){let C=E[E.length-1];if(!C||!CA(C,A))E.push(A)}return E}function PF(u){if(u.length<3)return u;let B=[...u];for(let E=0;E<32;E++){let A=jV0(B);if(B=A.points,!A.changed)break}return B}function n60(u,B,E){let A=u;if(A.isLayoutOnly||!A.points||A.points.length<E)return;let C=A.start?B.get(A.start):void 0,D=A.end?B.get(A.end):void 0;return{edge:A,points:A.points,srcRect:C?b8(C):void 0,dstRect:D?b8(D):void 0}}function NV0(u,B,E){if(f1(u,B,K3))return{x:u.x<E.left?E.left:E.right,y:u.y};if(D1(u,B,K3)){let A=u.y<E.top?E.top:E.bottom;return{x:u.x,y:A}}return{x:Math.min(E.right,Math.max(E.left,u.x)),y:Math.min(E.bottom,Math.max(E.top,u.y))}}function l60(u,B,E){let A=E?1:-1,C=E?0:u.length-1;while(C>=0&&C<u.length&&$60(u[C],B,wb4))C+=A;if(C<0||C>=u.length)return u;let D=C-A;if(D<0||D>=u.length)return u;let F=NV0(u[C],u[D],B);return E?[F,...u.slice(C)]:[...u.slice(0,C+1),F]}function iV0(u,B){for(let E of u){let A=n60(E,B,2);if(!A)continue;let C=[...A.points];if(A.srcRect)C=l60(C,A.srcRect,!0);if(A.dstRect)C=l60(C,A.dstRect,!1);C=PF(WV(C)),C=p60(C,A.srcRect,A.dstRect),A.edge.points=PF(WV(C))}}function b60(u,B,E,A=!1){if(f1(u,B,K3)){if(B.y<E.top-K3||B.y>E.bottom+K3)return B;if(A){if(u.x<E.left-K3)return{x:E.left,y:u.y};if(u.x>E.right+K3)return{x:E.right,y:u.y}}return{x:Math.abs(B.x-E.left)<=Math.abs(B.x-E.right)?E.left:E.right,y:u.y}}if(D1(u,B,K3)){if(B.x<E.left-K3||B.x>E.right+K3)return B;if(A){if(u.y<E.top-K3)return{x:u.x,y:E.top};if(u.y>E.bottom+K3)return{x:u.x,y:E.bottom}}let C=Math.abs(B.y-E.top)<=Math.abs(B.y-E.bottom);return{x:u.x,y:C?E.top:E.bottom}}return B}function YV(u,B,E){let A=u[B];for(let C=B+E;C>=0&&C<u.length;C+=E){let D=u[C];if(!CA(D,A,K3))return D}return u[B+E]}function RV(u,B){let E=u+zV0,A=B-zV0;return E<=A?{lo:E,hi:A}:{lo:(u+B)/2,hi:(u+B)/2}}function M60(u,B,E){let{lo:A,hi:C}=RV(B,E);return Math.min(C,Math.max(A,u))}function aV0(u){let B=Math.max(...u.map((A)=>A.lo)),E=Math.min(...u.map((A)=>A.hi));if(B>E)return;return{lo:B,hi:E}}function Z60(u,B){return B==="left"||B==="right"?RV(u.top,u.bottom):RV(u.left,u.right)}function TV(u,B,E){let A=u.y>=E.top-K3&&u.y<=E.bottom+K3,C=u.x>=E.left-K3&&u.x<=E.right+K3;if(f1(u,B,K3)&&A){if(Math.abs(u.x-E.left)<K3)return"left";if(Math.abs(u.x-E.right)<K3)return"right"}if(D1(u,B,K3)&&C){if(Math.abs(u.y-E.top)<K3)return"top";if(Math.abs(u.y-E.bottom)<K3)return"bottom"}return}function eS(u){return u==="left"||u==="right"}function VV0(u,B,E,A,C){let D=[],F=E?TV(u,B,E):void 0,U=A?TV(B,u,A):void 0;if(E&&F&&eS(F)===C)D.push(Z60(E,F));if(A&&U&&eS(U)===C)D.push(Z60(A,U));return D.length>0?aV0(D):void 0}function J60(u,B,E,A,C){let D=VV0(u,B,E,A,C);if(!D)return;let F=C?u.y:u.x,U=Math.min(D.hi,Math.max(D.lo,F));if(Math.abs(U-F)<K3)return;return C?[{x:u.x,y:U},{x:B.x,y:U}]:[{x:U,y:u.y},{x:U,y:B.y}]}function p60(u,B,E){if(u.length!==2)return u;let[A,C]=u;if(f1(A,C,K3))return J60(A,C,B,E,!0)??u;if(D1(A,C,K3))return J60(A,C,B,E,!1)??u;return u}function hV0(u,B,E){return eS(E)?{x:u.x,y:M60(u.y,B.top,B.bottom)}:{x:M60(u.x,B.left,B.right),y:u.y}}function mV0(u,B,E,A,C,D){let F=u.map((U)=>({...U}));for(let U=B;U>=0&&U<u.length;U+=E){let z=u[U];if(D&&!f1(z,A,K3))break;if(!D&&!D1(z,A,K3))break;if(D)F[U].y=C.y;else F[U].x=C.x}return F}function w60(u,B,E){if(u.length<2)return u;let A=E?0:u.length-1,C=E?1:-1,D=u[A],F=YV(u,A,C);if(!F)return u;let U=TV(D,F,B);if(!U)return u;let z=eS(U),k=hV0(D,B,U);if(CA(D,k,K3))return u;return mV0(u,A,C,D,k,z)}function K60(u,B,E){let A=Math.min(u.x,B.x)>=E.left-K3&&Math.max(u.x,B.x)<=E.right+K3,C=Math.min(u.y,B.y)>=E.top-K3&&Math.max(u.y,B.y)<=E.bottom+K3;if(Math.abs(u.y-E.top)<K3&&Math.abs(B.y-E.top)<K3&&A)return"top";if(Math.abs(u.y-E.bottom)<K3&&Math.abs(B.y-E.bottom)<K3&&A)return"bottom";if(Math.abs(u.x-E.left)<K3&&Math.abs(B.x-E.left)<K3&&C)return"left";if(Math.abs(u.x-E.right)<K3&&Math.abs(B.x-E.right)<K3&&C)return"right";return}function Q60(u,B,E,A){switch(u){case"top":return D1(B,E,K3)&&E.y<A.top-K3;case"bottom":return D1(B,E,K3)&&E.y>A.bottom+K3;case"left":return f1(B,E,K3)&&E.x<A.left-K3;case"right":return f1(B,E,K3)&&E.x>A.right+K3}}function G60(u,B,E){if(u.length<3)return u;if(E){let D=K60(u[0],u[1],B);if(D&&Q60(D,u[1],u[2],B))return u.slice(1);return u}let A=u.length-1,C=K60(u[A-1],u[A],B);if(C&&Q60(C,u[A-1],u[A-2],B))return u.slice(0,A);return u}function rV0(u,B,E){let A=u;if(B){let D=YV(A,0,1);if(D){let F=b60(D,A[0],B);if(F!==A[0])A=[F,...A.slice(1)]}A=G60(A,B,!0)}if(E){let D=A.length-1,F=YV(A,D,-1);if(F){let U=b60(F,A[D],E,!0);if(U!==A[D])A=[...A.slice(0,D),U]}A=G60(A,E,!1)}let C=p60(A,B,E);if(C!==A||A.length===2)return C;if(B)A=w60(A,B,!0);if(E)A=w60(A,E,!1);return A}function H60(u,B){for(let E of u){let A=n60(E,B,2);if(!A)continue;let C=x1(A.points,K3),D=rV0(C,A.srcRect,A.dstRect);if(D.length<3){A.edge.points=D;continue}let F=[D[0],{...D[0]},...D.slice(1,-1),D[D.length-1],{...D[D.length-1]}];A.edge.points=F}}function d60(u){return new Map(u.map((B)=>[B.id,B]))}function $V0(u,B){let E=u.parentId,A=null;while(E){let C=B.get(E);if(!C?.isGroup)break;A=C.id,E=C.parentId}return A}function L60(u,B){let E=0,A=u.parentId;while(A){let C=B.get(A);if(!C?.isGroup)break;E++,A=C.parentId}return E}function s60(u){let B=1/0,E=-1/0,A=1/0,C=-1/0;for(let D of u){let{x:F,y:U}=D;if(typeof F!=="number"||typeof U!=="number")continue;let z=D.width??0,k=D.height??0;B=Math.min(B,F-z/2),E=Math.max(E,F+z/2),A=Math.min(A,U-k/2),C=Math.max(C,U+k/2)}if(B===1/0||A===1/0)return null;return{minX:B,maxX:E,minY:A,maxY:C}}function yV0(u,B){let E=u.padding??20;u.x=(B.minX+B.maxX)/2,u.y=(B.minY+B.maxY)/2,u.width=Math.max(0,B.maxX-B.minX)+E,u.height=Math.max(0,B.maxY-B.minY)+E}function cV0(u){let B=d60(u),E=u.filter((A)=>A.isGroup&&A.parentId).sort((A,C)=>L60(C,B)-L60(A,B));for(let A of E){let C=u.filter((F)=>F.parentId===A.id),D=s60(C);if(D)yV0(A,D)}}function OV(u,B){let E=u.nodes??[],A=u.edges??[],C=E.filter((z)=>!z.isGroup),D=1/0,F=-1/0;for(let z of C){let k=z[B];if(typeof k!=="number")continue;D=Math.min(D,k),F=Math.max(F,k)}if(!Number.isFinite(D)||!Number.isFinite(F))return!1;let U=X((z)=>D+F-z,"mirror");for(let z of E){let k=z[B];if(typeof k==="number")z[B]=U(k);let f=z.groupTitleRect;if(f)z.groupTitleRect=B==="x"?{...f,left:U(f.right),right:U(f.left)}:{...f,top:U(f.bottom),bottom:U(f.top)}}for(let z of A)for(let k of z.points??[])k[B]=U(k[B]);return!0}function gV0(u){if(!(u.nodes??[]).some((E)=>!E.isGroup))return!0;return OV(u,"y")}function _V0(u,B="LR"){let E=u.nodes??[],A=u.edges??[],C=E.filter((Y)=>!Y.isGroup),D=1/0,F=1/0;for(let Y of C){let a=Y.x??0,I=Y.y??0;if(a<D)D=a;if(I<F)F=I}if(!Number.isFinite(D)||!Number.isFinite(F))return!1;let U=36,z=0,k=0;for(let Y of C)z+=Y.width??0,k+=Y.height??0;let f=z/C.length,l=k/C.length,b=l>0?Math.max(1,f/l):1;for(let Y of C){let a=Y.x??0,O=((Y.y??0)-F)*b+U,i=a-D;Y.x=O,Y.y=i}for(let Y of A){if(!Y.points)continue;for(let a of Y.points){let I=a.x,i=(a.y-F)*b+U,N=I-D;a.x=i,a.y=N}}cV0(E);let M=E.filter((Y)=>Y.isGroup&&!Y.parentId);if(M.length===0){if(B==="RL")OV(u,"x");return!0}let Z=d60(E),J=new Map;for(let Y of E){if(Y.isGroup)continue;let a=$V0(Y,Z);if(!a)continue;let I=J.get(a)??[];I.push(Y),J.set(a,I)}let w=0;for(let Y of M){let a=Y.padding??0;if(a>w)w=a}let K=[],Q=1/0,G=-1/0;for(let Y of M){let a=J.get(Y.id)??[],I=s60(a);if(!I)continue;Q=Math.min(Q,I.minX),G=Math.max(G,I.maxX),K.push({lane:Y,contentTop:I.minY,contentBottom:I.maxY,centerY:(I.minY+I.maxY)/2})}if(Q===1/0||G===-1/0)return!0;let L=Math.max(0,G-Q),H=Math.max(w,10),q=L+2*H,x=U+q,S=(Q+G)/2-q/2-U,T=S+x/2,R=Math.max(w,U);K.sort((Y,a)=>Y.centerY-a.centerY);for(let Y=0;Y<K.length;Y++){let a=K[Y],I,O;if(Y===0)I=a.contentTop-R;else I=(K[Y-1].contentBottom+a.contentTop)/2;if(Y===K.length-1)O=a.contentBottom+R;else{let V=K[Y+1];O=(a.contentBottom+V.contentTop)/2}let i=Math.max(0,O-I),N=(I+O)/2;a.lane.x=T,a.lane.y=N,a.lane.width=x,a.lane.height=i,a.lane.swimlaneContentTop=a.contentTop,a.lane.groupTitleRect={left:S,right:S+U,top:I,bottom:O}}if(B==="RL")OV(u,"x");return!0}function nV0(u,B){let{nodeInfoById:E,realNodeRects:A}=NV(B);for(let C of u){if(C.isLayoutOnly)continue;let D=C.points;if(!D||D.length<4)continue;let F=r60(x1(D,vC),vC);if(!F)continue;let{p3:U}=F,z=F.kind==="HVH",k=g60(C,E,vC);if(!k)continue;let{srcId:f,dstId:l,srcInfo:b,dstInfo:M,collinearX:Z,collinearY:J}=k;if(Z||J)continue;let w,K=b.rect;for(let Q of Qb4){let G,L,H;if(z){let T=M.cy>b.cy?K.bottom:K.top,R=b.cx+Q;if(R<=K.left+vC||R>=K.right-vC)continue;G={x:R,y:T},L={x:R,y:U.y},H={x:U.x,y:U.y}}else{let T=M.cx>b.cx?K.right:K.left,R=b.cy+Q;if(R<=K.top+vC||R>=K.bottom-vC)continue;G={x:T,y:R},L={x:U.x,y:R},H={x:U.x,y:U.y}}let q=CA(G,L,vC),x=CA(L,H,vC);if(q&&x)continue;if(!q&&D2(G,L,A,[f],1))continue;if(!x&&D2(L,H,A,[l],1))continue;let v=!q&&SV(G,L,u,C,{epsilon:vC,skipDegenerateOther:!0}),W=!x&&SV(L,H,u,C,{epsilon:vC,skipDegenerateOther:!0});if(v||W)continue;if(q)w=[L,H];else if(x)w=[G,L];else w=[G,L,H];break}if(w)C.points=w}}function pV0(u,B){let{realNodeRects:D,labelNodeRects:F}=Xl(B.values());for(let U of u){if(U.isLayoutOnly)continue;let z=U.points;if(!z||z.length<4)continue;let k=x1(z,0.001);if(k.length<4)continue;let f=k.length-1,l=k[f],b=k[f-1],M=k[f-2],Z=l.x-b.x,J=l.y-b.y,w=Math.hypot(Z,J);if(w>=10||w<0.001)continue;let K=b.x-M.x,Q=b.y-M.y;if(Math.hypot(K,Q)<0.001)continue;let L=h9(b,l,0.001),H=m9(b,l,0.001),q=h9(M,b,0.001),x=m9(M,b,0.001);if(!(L&&x||H&&q))continue;let{end:v,start:W}=U,S=v?B.get(v):void 0;if(!S)continue;let T=S.x??0,R=S.y??0,Y=b8(S);if(!Y)continue;let a,I;if(x){let m=Q<0;a={x:T,y:M.y},I={x:T,y:m?Y.bottom:Y.top}}else{let m=K>0;a={x:M.x,y:R},I={x:m?Y.right:Y.left,y:R}}if(D2(a,I,D,v?[v]:[],-2))continue;if(D2(a,I,F,[],-2))continue;if(W){let m=B.get(W),$=m?b8(m):void 0;if($&&$60(a,$,2))continue}let O=X((m,$)=>`${m.x.toFixed(3)},${m.y.toFixed(3)}|${$.x.toFixed(3)},${$.y.toFixed(3)}`,"ownSegmentKey"),i=new Set;for(let m=0;m<k.length-1;m++)i.add(O(k[m],k[m+1]));let N=X((m,$)=>{for(let y of u){if(y===U)continue;if(y.isLayoutOnly)continue;let p=y.points;if(!p||p.length<2)continue;for(let e=0;e<p.length-1;e++){let _=p[e],b0=p[e+1];if(i.has(O(_,b0)))continue;if(mz(m,$,_,b0,0.001))return!0}}return!1},"segmentCrossesOtherEdge");if(N(a,I))continue;if(f-3>=0){let m=k[f-3],$=[W,v].filter((y)=>Boolean(y));if(D2(m,a,D,$,-2))continue;if(N(m,a))continue}let h=[...k.slice(0,f-2),a,I];U.points=h;let r=U.labelNodeId;if(r){let m=B.get(r);if(m){let $=m.width??0,y=m.height??0;if($>0&&y>0){let p,e,_=-1;for(let b0=0;b0<h.length-1;b0++){let B0=h[b0],k0=h[b0+1],f0=Math.hypot(k0.x-B0.x,k0.y-B0.y),D0=f1(B0,k0,0.001),P0=D1(B0,k0,0.001);if(!(D0&&f0>=$+2||P0&&f0>=y+2))continue;if(f0>_)_=f0,p=(B0.x+k0.x)/2,e=(B0.y+k0.y)/2}if(p!==void 0&&e!==void 0)m.x=p,m.y=e}}}}}function dV0(u,B){let C=X((M,Z)=>{let J=M.x??0,w=M.y??0,K=Z.x-J,Q=Z.y-w,G=(M.width??0)/2,L=(M.height??0)/2;if(Math.abs(Q)*G>Math.abs(K)*L){if(Q<0)L=-L;return{x:J+(Q===0?0:L*K/Q),y:w+L}}if(K<0)G=-G;return{x:J+G,y:w+(K===0?0:G*Q/K)}},"rectIntersect"),D=X((M,Z)=>{let J=x1(M.points??[]);if(J.length<2)return;let w=Z?M.start:M.end,K=w?B.get(w):void 0,Q=K?b8(K):void 0;if(!K||!w||!Q)return;let G=Z?J[0]:J[J.length-1],L=Z?J[1]:J[J.length-2],H=C(K,G),q=G;if(A60(L,H))q=L;if(D1(H,q,N4))return{edge:M,edgeId:String(M.id??""),nodeId:w,atStart:Z,orientation:"V",coord:H.x,min:Math.min(H.y,q.y),max:Math.max(H.y,q.y),boundary:H,railEnd:q,rect:Q};if(f1(H,q,N4))return{edge:M,edgeId:String(M.id??""),nodeId:w,atStart:Z,orientation:"H",coord:H.y,min:Math.min(H.x,q.x),max:Math.max(H.x,q.x),boundary:H,railEnd:q,rect:Q};return},"terminalLaneFor"),F=X((M,Z)=>Math.max(0,Math.min(M.max,Z.max)-Math.max(M.min,Z.min)),"projectedOverlapLength"),U=X((M,Z)=>{if(M.nodeId!==Z.nodeId||M.orientation!==Z.orientation)return!1;if(M.orientation==="H")return(Math.abs(M.boundary.x-M.rect.left)<1||Math.abs(M.boundary.x-M.rect.right)<1)&&D1(M.boundary,Z.boundary,1);return(Math.abs(M.boundary.y-M.rect.top)<1||Math.abs(M.boundary.y-M.rect.bottom)<1)&&f1(M.boundary,Z.boundary,1)},"sameTerminalFace"),z=X((M,Z)=>{if(M.nodeId!==Z.nodeId||M.orientation!==Z.orientation)return!1;return F(M,Z)>=S5&&Math.abs(M.coord-Z.coord)<0.5},"exactTerminalLaneConflict"),k=X((M,Z)=>{if(M.nodeId!==Z.nodeId||M.orientation!==Z.orientation||M.orientation!=="H"||M.atStart===Z.atStart)return!1;let J=F(M,Z);if(J<S5)return!1;let w=M.rect.bottom-M.rect.top;if(J<w||J>2*w)return!1;return U(M,Z)&&Math.abs(M.coord-Z.coord)<16},"nearTerminalLaneConflict"),f=X((M,Z)=>{let J=x1(M.edge.points??[]);if(J.length<2)return;let w=M.orientation==="V"?{x:M.boundary.x+Z,y:M.boundary.y}:{x:M.boundary.x,y:M.boundary.y+Z},K=M.orientation==="V"?{x:M.railEnd.x+Z,y:M.railEnd.y}:{x:M.railEnd.x,y:M.railEnd.y+Z};if(!X(()=>{if(Math.abs(M.boundary.y-M.rect.top)<1||Math.abs(M.boundary.y-M.rect.bottom)<1)return f1(w,M.boundary,N4)&&w.x>=M.rect.left+1&&w.x<=M.rect.right-1;if(Math.abs(M.boundary.x-M.rect.left)<1||Math.abs(M.boundary.x-M.rect.right)<1)return D1(w,M.boundary,N4)&&w.y>=M.rect.top+1&&w.y<=M.rect.bottom-1;return!1},"boundaryStaysOnSameFace")())return;if(M.atStart){let q=J.length>1&&CA(J[1],M.railEnd,N4),x=J.slice(q?2:1),v=x[0];if(v&&!A60(v,K))return;return[w,K,...x]}let G=J.length>1&&CA(J[J.length-2],M.railEnd,N4),L=J.slice(0,G?-2:-1),H=L[L.length-1];if(H&&!A60(H,K))return;return[...L,K,w]},"shiftedCandidate"),l=X((M)=>{let Z=M.edge,J=x1(Z.points??[]);if(J.length!==2)return!1;let{start:w,end:K}=Z,Q=w?B.get(w):void 0,G=K?B.get(K):void 0;if(!Q||!G)return!1;let L=Q.x??0,H=Q.y??0,q=G.x??0,x=G.y??0,[v,W]=J;return f1(v,W,N4)&&Math.abs(H-x)<1&&Math.abs(L-q)>1||D1(v,W,N4)&&Math.abs(L-q)<1&&Math.abs(H-x)>1},"laneIsStraightCollinearConnector"),b=[-7,7,-14,14,-21,21];for(let M=0;M<8;M++){let Z=u.filter((w)=>!w.isLayoutOnly).flatMap((w)=>[D(w,!0),D(w,!1)]).filter((w)=>Boolean(w)),J=!1;for(let w=0;w<Z.length&&!J;w++)for(let K=w+1;K<Z.length&&!J;K++){let Q=Z[w],G=Z[K];if(Q.edge===G.edge||!(z(Q,G)||k(Q,G)))continue;let L=!z(Q,G),H=[Q,G].sort((q,x)=>{let v=l(q),W=l(x);if(v!==W)return Number(v)-Number(W);return Number(!x.atStart)-Number(!q.atStart)});for(let q of H){for(let x of b){let v=f(q,x);if(!v)continue;let W=D({...q.edge,points:v},q.atStart);if(!W||Z.some((S)=>S.edge!==q.edge&&(z(W,S)||L&&k(W,S))))continue;q.edge.points=v,J=!0;break}if(J)break}}if(!J)return}}function sV0(u,B){let{realNodeRects:C,labelNodeRects:D}=Xl(B.values()),F=X((z,k)=>{let{start:f,end:l}=z,b=s3(k);if(b.length!==k.length-1)return!1;let M=[f,l].filter((Z)=>Boolean(Z));for(let Z of b){if(D2(Z.a,Z.b,C,M,-2))return!1;if(D2(Z.a,Z.b,D,[],-2))return!1}for(let Z of u){if(Z===z||Z.isLayoutOnly)continue;let J=Z.points;if(!J||J.length<2)continue;for(let w of b)for(let K of s3(x1(J))){if(IF(w,K,0.5)>=S5)return!1;if(mz(w.a,w.b,K.a,K.b,N4))return!1}}return!0},"candidateIsSafe"),U=X((z,k)=>{if(k+4>=z.length)return;let f=z[k],l=z[k+1],b=z[k+2],M=z[k+3],Z=z[k+4],J=h9(f,l)&&m9(l,b)&&h9(b,M)&&m9(M,Z)&&D1(f,M,N4)&&D1(f,Z,N4)&&D1(l,b,N4)&&(l.x-f.x)*(M.x-b.x)<0,w=m9(f,l)&&h9(l,b)&&m9(b,M)&&h9(M,Z)&&f1(f,M,N4)&&f1(f,Z,N4)&&f1(l,b,N4)&&(l.y-f.y)*(M.y-b.y)<0;if(J||w)return x1([...z.slice(0,k+1),Z,...z.slice(k+5)]);if(k+5>=z.length)return;let K=z[k+5],Q=m9(f,l)&&h9(l,b)&&m9(b,M)&&h9(M,Z)&&m9(Z,K)&&D1(f,Z,N4)&&D1(f,K,N4)&&D1(b,M,N4)&&(b.x-l.x)*(Z.x-M.x)<0,G=h9(f,l)&&m9(l,b)&&h9(b,M)&&m9(M,Z)&&h9(Z,K)&&f1(f,Z,N4)&&f1(f,K,N4)&&f1(b,M,N4)&&(b.y-l.y)*(Z.y-M.y)<0;if(!Q&&!G)return;return x1([...z.slice(0,k+1),K,...z.slice(k+6)])},"withoutDogleg");for(let z=0;z<8;z++){let k=!1;for(let f of u){if(f.isLayoutOnly)continue;let l=x1(f.points??[]);for(let b=0;b<=l.length-5;b++){let M=U(l,b);if(!M||!F(f,M))continue;f.points=M,k=!0;break}if(k)break}if(!k)return}}function q60(u,B){let{realNodeRects:D,labelNodeRects:F}=Xl(B.values()),U=u.filter((Z)=>!Z.isLayoutOnly),z=X((Z,J,w)=>x1(Z===J?w??[]:Z.points??[]),"pointsFor"),k=X((Z,J)=>{let w=0;for(let K=0;K<U.length;K++){let Q=s3(z(U[K],Z,J));for(let G=K+1;G<U.length;G++){let L=s3(z(U[G],Z,J));for(let H of Q)for(let q of L)if(mz(H.a,H.b,q.a,q.b,N4))w++}}return w},"strictCrossingCount"),f=X((Z)=>{let J=s3(Z);if(J.length!==3)return;let w=J[1];if(J[0].horizontal===w.horizontal||J[2].horizontal===w.horizontal)return;return{index:w.index,horizontal:w.horizontal,vertical:w.vertical,segment:w}},"middleRail"),l=X((Z,J)=>{let w=[Z.start,Z.end].filter((K)=>Boolean(K));return D.filter((K)=>{if(w.includes(K.id))return!1;let Q=K.rect;if(J.horizontal)return JB(J.a.x,J.b.x,Q.left,Q.right)>=S5&&J.a.y>=Q.top-2&&J.a.y<=Q.bottom+2;return JB(J.a.y,J.b.y,Q.top,Q.bottom)>=S5&&J.a.x>=Q.left-2&&J.a.x<=Q.right+2})},"blockingRectsFor"),b=X((Z,J,w)=>{let K=Z.map((G)=>({...G}));if(J.horizontal)K[J.index].y=w,K[J.index+1].y=w;else if(J.vertical)K[J.index].x=w,K[J.index+1].x=w;else return;let Q=PF(x1(K));return s3(Q).length===Q.length-1?Q:void 0},"candidateByMovingRail"),M=X((Z,J,w)=>{let K=[Z.start,Z.end].filter((G)=>Boolean(G)),Q=s3(J);if(Q.length!==J.length-1)return!1;for(let G of Q){if(D2(G.a,G.b,D,K,-2))return!1;if(D2(G.a,G.b,F,[],-2))return!1}for(let G of U){if(G===Z)continue;for(let L of Q)for(let H of s3(z(G)))if(IF(L,H,0.5)>=S5)return!1}return k(Z,J)<=w},"candidateIsSafe");for(let Z=0;Z<8;Z++){let J=k(),w=!1;for(let K of U){let Q=z(K),G=f(Q);if(!G)continue;let L=l(K,G.segment);if(L.length===0)continue;let H=G.horizontal?[Math.min(...L.map((q)=>q.rect.top))-20,Math.max(...L.map((q)=>q.rect.bottom))+20]:[Math.min(...L.map((q)=>q.rect.left))-20,Math.max(...L.map((q)=>q.rect.right))+20];for(let q of H){let x=b(Q,G.segment,q);if(!x||!M(K,x,J))continue;K.points=x,w=!0;break}if(w)break}if(!w)return}}function X60(u,B){let A=X((z)=>{let k=z.groupTitleRect;if(!k||typeof k.left!=="number"||typeof k.right!=="number"||typeof k.top!=="number"||typeof k.bottom!=="number"||!Number.isFinite(k.left)||!Number.isFinite(k.right)||!Number.isFinite(k.top)||!Number.isFinite(k.bottom)||k.right<=k.left||k.bottom<=k.top)return;return{left:k.left,right:k.right,top:k.top,bottom:k.bottom}},"validTitleRect"),C=X((z)=>{if(!z.isGroup||z.parentId)return;let k=z.direction,f=typeof k==="string"?k.toUpperCase():"";if(f==="LR"||f==="RL"||f==="BT")return;let l=A(z),b=z.y,M=z.height;if(!l||typeof b!=="number"||typeof M!=="number"||!Number.isFinite(b)||!Number.isFinite(M)||M<=0)return;let Z=l.right-l.left,J=l.bottom-l.top;if(J<=0||Z<J)return;return{node:z,rect:l}},"topLaneTitleFor"),D=X((z,k)=>{if(!z.horizontal)return!1;let f=z.a.y;if(f<=k.top+N4||f>=k.bottom-N4)return!1;return JB(z.a.x,z.b.x,k.left,k.right)>=S5},"horizontalSegmentIntersectsTitle"),F=[...B.values()].map(C).filter((z)=>Boolean(z));if(F.length===0)return;let U=0;for(let z of u){if(z.isLayoutOnly)continue;let k=x1(z.points??[]);for(let f of s3(k))for(let l of F){if(!D(f,l.rect))continue;U=Math.max(U,l.rect.bottom-f.a.y+4)}}if(U<=N4)return;for(let z of F){let k=z.node.y,f=z.node.height;if(typeof k!=="number"||typeof f!=="number"||!Number.isFinite(k)||!Number.isFinite(f)||f<=0)continue;z.node.y=k-U/2,z.node.height=f+U,z.node.groupTitleRect={...z.rect,top:z.rect.top-U,bottom:z.rect.bottom-U}}}function x60(u,B){let A=X((k)=>{let f=k.groupTitleRect;if(!f||typeof f.left!=="number"||typeof f.right!=="number"||typeof f.top!=="number"||typeof f.bottom!=="number"||!Number.isFinite(f.left)||!Number.isFinite(f.right)||!Number.isFinite(f.top)||!Number.isFinite(f.bottom)||f.right<=f.left||f.bottom<=f.top)return;return{left:f.left,right:f.right,top:f.top,bottom:f.bottom}},"validTitleRect"),C=X((k)=>{if(!k.isGroup||k.parentId)return;if(k.direction!=="LR")return;let l=A(k),b=k.x,M=k.width;if(!l||typeof b!=="number"||typeof M!=="number"||!Number.isFinite(b)||!Number.isFinite(M)||M<=0)return;let Z=l.right-l.left,J=l.bottom-l.top;if(Z<=0||J<Z)return;return{node:k,rect:l}},"leftLaneTitleFor"),D=X((k,f)=>{if(!k.vertical)return!1;let l=k.a.x;if(l<=f.left+N4||l>=f.right-N4)return!1;return JB(k.a.y,k.b.y,f.top,f.bottom)>=S5},"verticalSegmentIntersectsTitle"),F=X((k,f)=>{if(!k.horizontal)return!1;let l=k.a.y;if(l<=f.top+N4||l>=f.bottom-N4)return!1;return JB(k.a.x,k.b.x,f.left,f.right)>=S5},"horizontalSegmentIntersectsTitle"),U=[...B.values()].map(C).filter((k)=>Boolean(k));if(U.length===0)return;let z=0;for(let k of u){if(k.isLayoutOnly)continue;let f=x1(k.points??[]);for(let l of s3(f))for(let b of U)if(D(l,b.rect))z=Math.max(z,b.rect.right-l.a.x+4);else if(F(l,b.rect)){let M=Math.min(l.a.x,l.b.x);z=Math.max(z,b.rect.right-M+4)}}if(z<=N4)return;for(let k of U){let f=k.node.x,l=k.node.width;if(typeof f!=="number"||typeof l!=="number"||!Number.isFinite(f)||!Number.isFinite(l)||l<=0)continue;k.node.x=f-z/2,k.node.width=l+z,k.node.groupTitleRect={...k.rect,left:k.rect.left-z,right:k.rect.right-z}}}function oV0(u,B){let{realNodeRects:C}=Xl(B.values()),D=u.filter((J)=>!J.isLayoutOnly),F=X((J,w=new Map)=>x1(w.get(J)??J.points??[]),"replacementPointsFor"),U=X((J=new Map)=>{let w=0;for(let K=0;K<D.length;K++){let Q=s3(F(D[K],J));for(let G=K+1;G<D.length;G++){let L=s3(F(D[G],J));for(let H of Q)for(let q of L)if(mz(H.a,H.b,q.a,q.b,N4))w++}}return w},"crossingCount"),z=X((J=new Map)=>D.reduce((w,K)=>w+fE(F(K,J)),0),"totalBends"),k=X((J)=>{let w=F(J);if(w.length<4)return;let K=w[w.length-2],Q=w[w.length-1];if(!h9(K,Q,N4)&&!m9(K,Q,N4))return;return{tailStart:K,terminal:Q}},"terminalTailFor"),f=X((J,w)=>{let K=F(J);if(K.length<3)return;let Q=K[0],G=K[1],L;if(h9(Q,G,N4))L={x:G.x,y:w.tailStart.y};else if(m9(Q,G,N4))L={x:w.tailStart.x,y:G.y};else return;let H=PF(x1([Q,G,L,w.tailStart,w.terminal]));return s3(H).length===H.length-1?H:void 0},"candidateWithDestinationTail"),l=X((J,w)=>{let K=[J.start,J.end].filter((Q)=>Boolean(Q));for(let Q of s3(w))if(D2(Q.a,Q.b,C,K,-2))return!0;return!1},"pathHasNodeHit"),b=X((J,w,K)=>{for(let Q of D){if(Q===J)continue;for(let G of s3(w))for(let L of s3(F(Q,K)))if(IF(G,L,0.5)>=S5)return!0}return!1},"pathHasSharedTrack"),M=X((J,w,K)=>!l(J,w)&&!b(J,w,K),"candidateIsSafe"),Z=X(()=>{let J=new Map;for(let w of D){let K=w.end;if(!K||!B.has(K))continue;if(F(w).length<4)continue;let G=J.get(K)??[];G.push(w),J.set(K,G)}return J},"edgesByDestination");for(let J=0;J<4;J++){let w=U();if(w===0)return;let K=z(),Q,G=w,L=K;for(let H of Z().values())for(let q=0;q<H.length;q++)for(let x=q+1;x<H.length;x++){let v=H[q],W=H[x],S=k(v),T=k(W);if(!S||!T)continue;let R=f(v,T),Y=f(W,S);if(!R||!Y)continue;let a=new Map([[v,R],[W,Y]]);if(!M(v,R,a)||!M(W,Y,a))continue;let I=U(a),O=z(a);if(I>=w)continue;if(I>G||I===G&&O>=L)continue;Q=a,G=I,L=O}if(!Q)return;for(let[H,q]of Q)H.points=q}}function tV0(u,B){let{realNodeRects:F,labelNodeRects:U}=Xl(B.values()),z=u.filter((H)=>!H.isLayoutOnly),k=X((H,q=new Map)=>x1(q.get(H)??H.points??[]),"replacementPointsFor"),f=X((H=new Map)=>{let q=0;for(let x=0;x<z.length;x++){let v=s3(k(z[x],H));for(let W=x+1;W<z.length;W++){let S=s3(k(z[W],H));for(let T of v)for(let R of S)if(mz(T.a,T.b,R.a,R.b,N4))q++}}return q},"strictCrossingCount"),l=X((H=new Map)=>z.reduce((q,x)=>q+fE(k(x,H)),0),"totalBends"),b=X((H)=>{let{start:q,end:x}=H,v=q?B.get(q):void 0,W=x?B.get(x):void 0,S=v?b8(v):void 0,T=W?b8(W):void 0;return S&&T?{src:S,dst:T}:void 0},"endpointRectsFor"),M=X((H,q,x)=>{if(x.index<=0||x.index+1>=q.length-1)return;let v=b(H);if(!v)return;if(x.vertical){let W=x.a.x,S=Math.min(v.src.left,v.dst.left),T=Math.max(v.src.right,v.dst.right),R=W<S-N4?"left":W>T+N4?"right":void 0;if(!R)return;return{edge:H,points:q,segmentIndex:x.index,axis:"vertical",side:R,coord:W,min:Math.min(x.a.y,x.b.y),max:Math.max(x.a.y,x.b.y)}}if(x.horizontal){let W=x.a.y,S=Math.min(v.src.top,v.dst.top),T=Math.max(v.src.bottom,v.dst.bottom),R=W<S-N4?"top":W>T+N4?"bottom":void 0;if(!R)return;return{edge:H,points:q,segmentIndex:x.index,axis:"horizontal",side:R,coord:W,min:Math.min(x.a.x,x.b.x),max:Math.max(x.a.x,x.b.x)}}return},"externalRailForSegment"),Z=X(()=>{let H=[];for(let q of z){let x=k(q);for(let v of s3(x)){let W=M(q,x,v);if(W)H.push(W)}}return H},"collectExternalRails"),J=X((H,q)=>H.edge!==q.edge&&H.axis===q.axis&&H.side===q.side&&JB(H.min,H.max,q.min,q.max)>=S5,"railsInteract"),w=X((H)=>{let q=[],x=new Set;for(let v of H){if(x.has(v))continue;let W=[v],S=[];x.add(v);while(W.length>0){let T=W.pop();S.push(T);for(let R of H)if(!x.has(R)&&J(T,R))x.add(R),W.push(R)}if(S.length>1)q.push(S)}return q},"connectedComponents"),K=X((H)=>{let q=[];for(let x of H)if(!q.some((v)=>Math.abs(v-x.coord)<N4))q.push(x.coord);while(q.length<H.length){let x=Math.min(...q),v=Math.max(...q),W=H[0].side;q.push(W==="left"||W==="top"?x-12*(H.length-q.length):v+12*(H.length-q.length))}return q},"uniqueCoordsFor"),Q=X((H)=>{let q=H.map((W)=>W.coord),x=K(H),v=[];if(H.length<=6){let W=Array(x.length).fill(!1),S=[],T=X(()=>{if(S.length===H.length){if(S.some((R,Y)=>Math.abs(R-q[Y])>=N4))v.push([...S]);return}for(let[R,Y]of x.entries()){if(W[R])continue;W[R]=!0,S.push(Y),T(),S.pop(),W[R]=!1}},"visit");return T(),v}for(let W=0;W<q.length;W++)for(let S=W+1;S<q.length;S++){let T=[...q];[T[W],T[S]]=[T[S],T[W]],v.push(T)}return v},"coordinateAssignmentsFor"),G=X((H,q)=>{let x=new Map;for(let[W,S]of H.entries()){let T=q[W],R=x.get(S.edge)??S.points.map((Y)=>({x:Y.x,y:Y.y}));if(S.axis==="vertical")R[S.segmentIndex].x=T,R[S.segmentIndex+1].x=T;else R[S.segmentIndex].y=T,R[S.segmentIndex+1].y=T;x.set(S.edge,R)}let v=new Map;for(let[W,S]of x){let T=PF(x1(S));if(s3(T).length!==T.length-1)return;v.set(W,T)}return v},"replacementsForAssignment"),L=X((H)=>{for(let[q,x]of H){let v=[q.start,q.end].filter((W)=>Boolean(W));for(let W of s3(x)){if(D2(W.a,W.b,F,v,-2))return!1;if(D2(W.a,W.b,U,[],-2))return!1}}for(let q=0;q<z.length;q++){let x=z[q],v=H.has(x),W=s3(k(x,H));for(let S=q+1;S<z.length;S++){let T=z[S];if(!v&&!H.has(T))continue;let R=s3(k(T,H));for(let Y of W)for(let a of R)if(IF(Y,a,0.5)>=S5)return!1}}return!0},"candidateIsSafe");for(let H=0;H<4;H++){let q=f();if(q===0)return;let x,v=q,W=l(),S=Number.POSITIVE_INFINITY;for(let T of w(Z()))for(let R of Q(T)){let Y=G(T,R);if(!Y||!L(Y))continue;let a=f(Y);if(a>=q)continue;let I=l(Y),O=T.reduce((i,N,V)=>i+Math.abs(R[V]-N.coord),0);if(a>v||a===v&&(I>W||I===W&&O>=S))continue;x=Y,v=a,W=I,S=O}if(!x)return;for(let[T,R]of x)T.points=R}}function eV0(u,B){let{realNodeRects:C,labelNodeRects:D}=Xl(B.values()),F=u.filter((Z)=>!Z.isLayoutOnly),U=X((Z,J,w)=>x1(Z===J?w??[]:Z.points??[]),"pointsFor"),z=X((Z)=>s3(Z).reduce((J,w)=>{let K=w.a.x-w.b.x,Q=w.a.y-w.b.y;return J+Math.hypot(K,Q)},0),"pathLength"),k=X((Z,J)=>{let w=0;for(let K=0;K<F.length;K++){let Q=s3(U(F[K],Z,J));for(let G=K+1;G<F.length;G++){let L=s3(U(F[G],Z,J));for(let H of Q)for(let q of L)if(mz(H.a,H.b,q.a,q.b,N4))w++}}return w},"strictCrossingCount"),f=X((Z,J)=>{if(Z.horizontal){let w=Z.a.y;return(Math.abs(w-J.top)<1||Math.abs(w-J.bottom)<1)&&JB(Z.a.x,Z.b.x,J.left,J.right)>=S5}if(Z.vertical){let w=Z.a.x;return(Math.abs(w-J.left)<1||Math.abs(w-J.right)<1)&&JB(Z.a.y,Z.b.y,J.top,J.bottom)>=S5}return!1},"segmentRunsAlongRectBorder"),l=X((Z)=>{let J=[Z.start,Z.end].filter((K)=>Boolean(K)),w=[];for(let K of J){let Q=B.get(K),G=Q?b8(Q):void 0;if(G)w.push(G)}return w},"endpointRectsFor"),b=X((Z,J)=>{if(J+3>=Z.length)return[];let w=Z[J],K=Z[J+1],Q=Z[J+2],G=Z[J+3],L=h9(w,K,N4)&&m9(K,Q,N4)&&h9(Q,G,N4),H=m9(w,K,N4)&&h9(K,Q,N4)&&m9(Q,G,N4);if(!L&&!H)return[];if(!(L?Math.sign(K.x-w.x)!==Math.sign(G.x-Q.x):Math.sign(K.y-w.y)!==Math.sign(G.y-Q.y)))return[];let x=D1(w,G,N4)||f1(w,G,N4)?[]:[{x:w.x,y:G.y},{x:G.x,y:w.y}],v=x.length===0?[[...Z.slice(0,J+1),...Z.slice(J+3)]]:x.map((S)=>[...Z.slice(0,J+1),S,...Z.slice(J+3)]),W=new Set;return v.map((S)=>PF(x1(S))).filter((S)=>{if(s3(S).length!==S.length-1)return!1;if(!S.some((R)=>CA(R,G,N4)))return!1;let T=S.map((R)=>`${R.x.toFixed(3)},${R.y.toFixed(3)}`).join("|");if(W.has(T))return!1;return W.add(T),!0})},"shortcutCandidatesAt"),M=X((Z,J,w)=>{let K=[Z.start,Z.end].filter((G)=>Boolean(G)),Q=l(Z);for(let G of s3(J)){if(D2(G.a,G.b,C,K,-2))return!1;if(D2(G.a,G.b,D,[],-2))return!1;if(Q.some((L)=>f(G,L)))return!1}for(let G of F){if(G===Z)continue;for(let L of s3(J))for(let H of s3(U(G)))if(IF(L,H,0.5)>=S5)return!1}return k(Z,J)<=w},"candidateIsSafe");for(let Z=0;Z<8;Z++){let J=k(),w,K,Q=J,G=Number.POSITIVE_INFINITY,L=Number.POSITIVE_INFINITY;for(let H of F){let q=U(H),x=fE(q,N4),v=z(q);for(let W=0;W<=q.length-4;W++)for(let S of b(q,W)){let T=fE(S,N4),R=z(S);if(!(T<x||T===x&&R<v-N4)||!M(H,S,J))continue;let a=k(H,S);if(a>Q||a===Q&&(T>G||T===G&&R>=L))continue;w=H,K=S,Q=a,G=T,L=R}}if(!w||!K)return;w.points=K}}function uh0(u,B){let F=[];for(let w0 of B.values()){if(w0.isGroup||w0.isEdgeLabel)continue;let v0=w0.x??0,T0=w0.y??0,Z0=b8(w0);if(!Z0)continue;F.push({id:String(w0.id??""),cx:v0,cy:T0,rect:Z0})}if(F.length===0)return;let U=new Map(F.map((w0)=>[w0.id,w0])),z=F.map((w0)=>({id:w0.id,rect:w0.rect})),k=["top","bottom","left","right"],f={top:Math.min(...F.map((w0)=>w0.rect.top))-20,bottom:Math.max(...F.map((w0)=>w0.rect.bottom))+20,left:Math.min(...F.map((w0)=>w0.rect.left))-20,right:Math.max(...F.map((w0)=>w0.rect.right))+20},l=u.filter((w0)=>!w0.isLayoutOnly),b=new Map(l.map((w0,v0)=>[w0,v0])),M=X((w0)=>{let v0=w0==="left"||w0==="top"?-1:1,T0=[];for(let Z0=0;Z0<=2;Z0++)T0.push(f[w0]+v0*20*Z0);return T0},"outwardTracksForSide"),Z=X((w0,v0=new Map)=>x1(v0.get(w0)??w0.points??[]),"replacementPointsFor"),J=X((w0,v0)=>{let T0=0;for(let Z0 of w0)for(let F0 of v0)if(mz(Z0.a,Z0.b,F0.a,F0.b,N4))T0++;return T0},"crossingCountBetweenSegments"),w=X((w0,v0)=>J(s3(w0),s3(v0)),"crossingCountBetweenPaths"),K=X((w0=new Map)=>{let v0=0,T0=[],Z0=new Set,F0=[],u0=X((M0)=>{if(!Z0.has(M0))Z0.add(M0),F0.push(M0)},"addEdge");for(let M0=0;M0<l.length;M0++){let X0=l[M0],S0=Z(X0,w0);for(let Y0=M0+1;Y0<l.length;Y0++){let h0=l[Y0],J0=w(S0,Z(h0,w0));if(J0>0)v0+=J0,T0.push({first:X0,second:h0,count:J0}),u0(X0),u0(h0)}}return F0.sort((M0,X0)=>(b.get(M0)??0)-(b.get(X0)??0)),{count:v0,pairs:T0,edgeSet:Z0,edges:F0}},"crossingSnapshot"),Q=X((w0,v0)=>{let T0=new Set(v0.keys());if(T0.size===0)return w0.count;let Z0=0;for(let u0 of w0.pairs)if(T0.has(u0.first)||T0.has(u0.second))Z0+=u0.count;let F0=0;for(let u0=0;u0<l.length;u0++){let M0=l[u0],X0=T0.has(M0),S0=Z(M0,v0);for(let Y0=u0+1;Y0<l.length;Y0++){let h0=l[Y0];if(!X0&&!T0.has(h0))continue;F0+=w(S0,Z(h0,v0))}}return w0.count-Z0+F0},"crossingCountWithReplacements"),G=X((w0)=>{let v0=new Map;for(let F0 of w0.pairs){let u0=v0.get(F0.first)??new Set;u0.add(F0.second),v0.set(F0.first,u0);let M0=v0.get(F0.second)??new Set;M0.add(F0.first),v0.set(F0.second,M0)}let T0=[],Z0=new Set;for(let F0 of w0.edges){if(Z0.has(F0))continue;let u0=[F0],M0=[];Z0.add(F0);while(u0.length>0){let X0=u0.pop();M0.push(X0);for(let S0 of v0.get(X0)??[])if(!Z0.has(S0))Z0.add(S0),u0.push(S0)}if(M0.sort((X0,S0)=>(b.get(X0)??0)-(b.get(S0)??0)),M0.length>1)T0.push(M0)}return T0},"crossingComponents"),L=X((w0)=>[w0.start,w0.end].filter((v0)=>Boolean(v0)),"endpointIdsFor"),H=X((w0)=>{let v0=[];for(let T0 of G(w0)){let Z0=new Set(T0),F0=new Set(T0.flatMap((M0)=>L(M0))),u0=[...T0];for(let M0 of l){if(Z0.has(M0))continue;if(L(M0).some((X0)=>F0.has(X0)))u0.push(M0)}u0.sort((M0,X0)=>(b.get(M0)??0)-(b.get(X0)??0)),v0.push(u0)}return v0},"pairSearchGroups"),q=X((w0,v0,T0)=>Q(w0,new Map([[v0,T0]])),"crossingCountWithSingleReplacement"),x=X((w0)=>{let v0=new Map;for(let T0 of w0.pairs)v0.set(T0.first,(v0.get(T0.first)??0)+T0.count),v0.set(T0.second,(v0.get(T0.second)??0)+T0.count);return v0},"currentCrossingsByEdge"),v=X((w0)=>w0.slice(1).reduce((v0,T0,Z0)=>{let F0=w0[Z0];return v0+Math.abs(T0.x-F0.x)+Math.abs(T0.y-F0.y)},0),"pathLength"),W=X((w0=new Map)=>l.reduce((v0,T0)=>v0+fE(Z(T0,w0)),0),"totalBends"),S=X((w0=new Map)=>l.reduce((v0,T0)=>v0+v(Z(T0,w0)),0),"totalLength"),T=X((w0,v0,T0=new Map)=>{let Z0=s3(v0);for(let F0 of l){if(F0===w0)continue;for(let u0 of Z0)for(let M0 of s3(Z(F0,T0)))if(IF(u0,M0,0.5)>=S5)return!0}return!1},"pathHasSegmentConflict"),R=X((w0,v0)=>{let T0=[w0.start,w0.end].filter((Z0)=>Boolean(Z0));for(let Z0 of s3(v0))if(D2(Z0.a,Z0.b,z,T0,-2))return!0;return!1},"pathHitsNode"),Y=X((w0,v0)=>{let T0=PF(x1(v0));if(s3(T0).length===T0.length-1)w0.push(T0)},"pushOrthogonalCandidate"),a=X((w0)=>w0==="left"||w0==="right","sideIsHorizontal"),I=X((w0,v0,T0)=>{switch(v0){case"left":return Math.min(w0.x,T0.x)-20;case"right":return Math.max(w0.x,T0.x)+20;case"top":return Math.min(w0.y,T0.y)-20;case"bottom":return Math.max(w0.y,T0.y)+20}},"localTrackForSameSide"),O=X((w0,v0,T0,Z0)=>{let F0=T0==="left"||T0==="top"?-1:1,u0=[I(v0,T0,Z0),f[T0]];for(let M0 of u0)for(let X0=0;X0<=2;X0++)Y(w0,c60(v0,T0,Z0,M0+F0*20*X0))},"addSameSideCandidates"),i=X((w0,v0,T0,Z0,F0)=>{for(let u0 of M(T0))for(let M0 of M(F0))Y(w0,[v0,{x:u0,y:v0.y},{x:u0,y:M0},{x:Z0.x,y:M0},Z0])},"addHorizontalToVerticalCandidates"),N=X((w0,v0,T0,Z0,F0)=>{for(let u0 of M(T0))for(let M0 of M(F0))Y(w0,[v0,{x:v0.x,y:u0},{x:M0,y:u0},{x:M0,y:Z0.y},Z0])},"addVerticalToHorizontalCandidates"),V=X((w0,v0,T0,Z0,F0)=>{let u0=[...M("top"),...M("bottom")];for(let M0 of M(T0))for(let X0 of M(F0))for(let S0 of u0)Y(w0,[v0,{x:M0,y:v0.y},{x:M0,y:S0},{x:X0,y:S0},{x:X0,y:Z0.y},Z0])},"addHorizontalPairCandidates"),h=X((w0,v0,T0,Z0,F0)=>{let u0=[...M("left"),...M("right")];for(let M0 of M(T0))for(let X0 of M(F0))for(let S0 of u0)Y(w0,[v0,{x:v0.x,y:M0},{x:S0,y:M0},{x:S0,y:X0},{x:Z0.x,y:X0},Z0])},"addVerticalPairCandidates"),r=X((w0)=>{let v0=new Set;return w0.map((T0)=>x1(T0)).filter((T0)=>{let Z0=T0.map((F0)=>`${F0.x.toFixed(3)},${F0.y.toFixed(3)}`).join("|");if(v0.has(Z0)||T0.length<2)return!1;return v0.add(Z0),!0})},"dedupeCandidatePaths"),m=X((w0,v0,T0,Z0)=>{let F0=[],u0=y60(w0,v0,T0,Z0,20,N4);if(u0)Y(F0,u0);if(v0===Z0)O(F0,w0,v0,T0);let M0=a(v0),X0=a(Z0);if(M0&&!X0)i(F0,w0,v0,T0,Z0);else if(!M0&&X0)N(F0,w0,v0,T0,Z0);else if(M0)V(F0,w0,v0,T0,Z0);else h(F0,w0,v0,T0,Z0);return r(F0)},"buildCandidatesForSides"),$=X((w0,v0,T0,Z0)=>{let F0=[...M("left"),...M("right")],u0=[...M("top"),...M("bottom")];for(let M0 of k){let X0=MJ(Z0,M0),S0=M0==="top"||M0==="bottom"?M(M0):u0;for(let Y0 of F0){Y(w0,[v0,T0,{x:Y0,y:T0.y},{x:Y0,y:X0.y},X0]);for(let h0 of S0)Y(w0,[v0,T0,{x:Y0,y:T0.y},{x:Y0,y:h0},{x:X0.x,y:h0},X0])}}},"addVerticalDepartureOuterTrackCandidates"),y=X((w0,v0,T0,Z0)=>{let F0=[...M("left"),...M("right")],u0=[...M("top"),...M("bottom")];for(let M0 of k){let X0=MJ(Z0,M0),S0=M0==="left"||M0==="right"?M(M0):F0;for(let Y0 of u0){Y(w0,[v0,T0,{x:T0.x,y:Y0},{x:X0.x,y:Y0},X0]);for(let h0 of S0)Y(w0,[v0,T0,{x:T0.x,y:Y0},{x:h0,y:Y0},{x:h0,y:X0.y},X0])}}},"addHorizontalDepartureOuterTrackCandidates"),p=X((w0)=>{let{start:v0,end:T0}=w0,Z0=T0?U.get(T0):void 0;if(!v0||!Z0)return[];let F0=x1(w0.points??[]);if(F0.length<4)return[];let u0=F0[0],M0=F0[1],X0=[];if(m9(u0,M0,N4))$(X0,u0,M0,Z0);else if(h9(u0,M0,N4))y(X0,u0,M0,Z0);return X0},"terminalPreservingOuterTrackCandidates"),e=X((w0)=>{let{start:v0,end:T0}=w0,Z0=v0?U.get(v0):void 0,F0=T0?U.get(T0):void 0;if(!Z0||!F0)return[];let u0=[];for(let M0 of k){let X0=MJ(Z0,M0);for(let S0 of k)u0.push(...m(X0,M0,MJ(F0,S0),S0))}return u0.push(...p(w0)),u0},"candidatePathsFor"),_=X(()=>new Map(l.map((w0)=>[w0,s3(Z(w0))])),"currentSegmentsByEdge"),b0=X((w0,v0,T0)=>{let Z0=new Set;for(let F0 of l){if(F0===w0)continue;let u0=T0.get(F0)??s3(Z(F0));if(v0.some((M0)=>u0.some((X0)=>IF(M0,X0,0.5)>=S5)))Z0.add(F0)}return Z0},"sharedTrackConflictsFor"),B0=X((w0,v0,T0,Z0)=>{let F0=new Set;return e(w0).map((M0)=>PF(x1(M0))).filter((M0)=>{if(R(w0,M0))return!1;let X0=M0.map((S0)=>`${S0.x.toFixed(3)},${S0.y.toFixed(3)}`).join("|");if(F0.has(X0)||M0.length<2)return!1;return F0.add(X0),!0}).map((M0)=>{let X0=s3(M0),S0=0;for(let Y0 of l){if(Y0===w0)continue;S0+=J(X0,T0.get(Y0)??s3(Z(Y0)))}return{candidate:M0,candidateSegments:X0,crossings:v0.count-(Z0.get(w0)??0)+S0,bends:fE(M0,N4),totalBends:fE(M0),length:v(M0)}}).filter(({crossings:M0})=>M0<=v0.count).sort((M0,X0)=>M0.crossings-X0.crossings||M0.bends-X0.bends||M0.length-X0.length).slice(0,48).map((M0)=>{return{path:M0.candidate,segments:M0.candidateSegments,sharedTrackConflicts:b0(w0,M0.candidateSegments,T0),totalBends:M0.totalBends,length:M0.length}})},"pairCandidatesFor"),k0=X((w0,v0,T0,Z0,F0,u0)=>{let M0=0;for(let S0 of w0.pairs)if(S0.first===v0||S0.second===v0||S0.first===Z0||S0.second===Z0)M0+=S0.count;let X0=J(T0.segments,F0.segments);for(let S0 of l){if(S0===v0||S0===Z0)continue;let Y0=u0.get(S0)??s3(Z(S0));X0+=J(T0.segments,Y0)+J(F0.segments,Y0)}return w0.count-M0+X0},"pairCrossingCount"),f0=X((w0,v0)=>{for(let T0 of w0.sharedTrackConflicts)if(T0!==v0)return!1;return!0},"conflictsOnlyWith"),D0=X((w0,v0)=>w0.segments.some((T0)=>v0.segments.some((Z0)=>IF(T0,Z0,0.5)>=S5)),"candidatesShareTrack"),P0=X((w0,v0,T0,Z0)=>f0(v0,T0.edge)&&f0(Z0,w0.edge)&&!D0(v0,Z0),"pairCandidatesAreCompatible"),q0=X((w0,v0,T0,Z0,F0)=>{let u0=k0(w0.current,v0.edge,T0,Z0.edge,F0,w0.baseSegments);if(u0>=w0.current.count)return;return{replacements:new Map([[v0.edge,T0.path],[Z0.edge,F0.path]]),crossings:u0,bends:w0.currentBends-(w0.baseBendsByEdge.get(v0.edge)??0)-(w0.baseBendsByEdge.get(Z0.edge)??0)+T0.totalBends+F0.totalBends,length:w0.currentLength-(w0.baseLengthByEdge.get(v0.edge)??0)-(w0.baseLengthByEdge.get(Z0.edge)??0)+T0.length+F0.length}},"scorePairReplacement"),m0=X((w0,v0)=>w0.crossings<v0.crossings||w0.crossings===v0.crossings&&(w0.bends<v0.bends||w0.bends===v0.bends&&w0.length<v0.length),"pairScoreIsBetter"),a0=X((w0,v0,T0,Z0)=>{let F0=Z0;for(let u0 of v0.candidates)for(let M0 of T0.candidates){if(!P0(v0,u0,T0,M0))continue;let X0=q0(w0,v0,u0,T0,M0);if(X0&&m0(X0,F0))F0=X0}return F0},"bestScoreForOptionPair"),_0=X((w0)=>{let v0=W(),T0=S(),Z0=_(),F0=x(w0),u0=new Map(l.map((J0)=>[J0,fE(Z(J0))])),M0=new Map(l.map((J0)=>[J0,v(Z(J0))])),X0=new Map,S0=H(w0);for(let J0 of S0)for(let n of J0){if(X0.has(n))continue;let d=B0(n,w0,Z0,F0);if(d.length>0)X0.set(n,{edge:n,candidates:d})}let Y0={replacements:new Map,crossings:w0.count,bends:v0,length:T0},h0={current:w0,currentBends:v0,currentLength:T0,baseBendsByEdge:u0,baseLengthByEdge:M0,baseSegments:Z0};for(let J0 of S0){let n=new Set(J0.filter((H0)=>w0.edgeSet.has(H0))),d=J0.map((H0)=>X0.get(H0)).filter((H0)=>Boolean(H0));for(let H0=0;H0<d.length;H0++){let o=d[H0];for(let L0=H0+1;L0<d.length;L0++){let E0=d[L0];if(!n.has(o.edge)&&!n.has(E0.edge))continue;Y0=a0(h0,o,E0,Y0)}}}return Y0.replacements.size>0?Y0.replacements:void 0},"bestPairedReplacement");for(let w0=0;w0<4;w0++){let v0=K(),T0=v0.count;if(T0===0)return;let Z0,F0,u0=T0,M0=Number.POSITIVE_INFINITY;for(let S0 of v0.edges){let Y0=fE(Z(S0),N4);for(let h0 of e(S0)){let J0=R(S0,h0),n=!J0&&T(S0,h0),d=q(v0,S0,h0),H0=fE(h0,N4);if(J0||n)continue;if(!(d<T0||d===T0&&H0<Y0))continue;if(d>u0||d===u0&&H0>=M0)continue;Z0=S0,F0=h0,u0=d,M0=H0}}if(Z0&&F0){Z0.points=F0;continue}let X0=_0(v0);if(!X0)return;for(let[S0,Y0]of X0)S0.points=Y0}}function Bh0(u,B){let{nodeInfoById:E,realNodeRects:A}=NV(B),C=["top","bottom","left","right"],D=20,F={top:Math.min(...A.map((J)=>J.rect.top))-20,bottom:Math.max(...A.map((J)=>J.rect.bottom))+20,left:Math.min(...A.map((J)=>J.rect.left))-20,right:Math.max(...A.map((J)=>J.rect.right))+20},U=X((J,w,K,Q)=>{let G=[],L=y60(J,w,K,Q,20,ql);if(L)G.push(L);if(w===Q)G.push(c60(J,w,K,F[w]));return G},"buildOrthogonalPathCandidates"),z=X((J,w)=>{for(let K=0;K<J.length-1;K++){let Q=J[K],G=J[K+1];if(D2(Q,G,A,w,1))return!0}return!1},"pathHitsNode"),k=X((J,w,K=!1)=>{let Q=0,G=kH(J,ql),L=w.start,H=w.end;for(let q of u){if(q===w||q.isLayoutOnly)continue;let{start:x,end:v}=q;if(!K&&L&&H&&(x===L||x===H||v===L||v===H))continue;let W=q.points;if(!W||W.length<2)continue;for(let S of G)for(let T of kH(W,ql)){if(_60(S.a,S.b,T.a,T.b,ql,ql)){Q++;continue}if(IF(S,T,ql)>=Gb4)Q++}}return Q},"pathConflictCount"),f=4,l=X((J,w)=>{let K=Math.abs(J.y-w.rect.top),Q=Math.abs(J.y-w.rect.bottom),G=Math.abs(J.x-w.rect.left),L=Math.abs(J.x-w.rect.right),H="top",q=K;if(Q<q)H="bottom",q=Q;if(G<q)H="left",q=G;if(L<q)H="right",q=L;return H},"nearestSideOfRect"),b=new Map,M=X((J,w,K)=>{let Q=b.get(J)??[];Q.push({side:w,edgeId:K}),b.set(J,Q)},"addFaceClaim");for(let J of u){if(J.isLayoutOnly)continue;let w=J.points??[];if(w.length<1)continue;let K=J.id??"",Q=J.start,G=J.end;if(Q){let L=E.get(Q);if(L)M(Q,l(w[0],L),K)}if(G){let L=E.get(G);if(L)M(G,l(w[w.length-1],L),K)}}let Z=X((J,w,K)=>{return b.get(J)?.some((Q)=>Q.edgeId!==K&&Q.side===w)??!1},"faceIsClaimed");for(let J of u){if(J.isLayoutOnly)continue;let w=J.points;if(!w||w.length<2)continue;let K=fE(w,ql);if(K<4)continue;let{start:Q,end:G}=J;if(!Q||!G)continue;let L=E.get(Q),H=E.get(G);if(!L||!H)continue;let q=J.id??"",x=k(w,J,!0),v=k(w,J),W,S=x,T=K;for(let R of C){if(Z(Q,R,q))continue;let Y=MJ(L,R);for(let a of C){if(Z(G,a,q))continue;let I=MJ(H,a);for(let O of U(Y,R,I,a)){if(z(O,[Q,G]))continue;let i=fE(O,ql);if(x>0){let N=k(O,J,!0);if(N>S||N===S&&i>=T)continue;S=N,T=i,W=O;continue}if(k(O,J)>v)continue;if(i<T)T=i,W=O}}}if(W){J.points=W;let R=b.get(Q);if(R)b.set(Q,R.filter((a)=>a.edgeId!==q));let Y=b.get(G);if(Y)b.set(G,Y.filter((a)=>a.edgeId!==q));M(Q,l(W[0],L),q),M(G,l(W[W.length-1],H),q)}}}function v60(u,B){let E=B?0:u.length-1,A=B?1:-1,C=u[E],D=u[E+A];if(!C||!D)return;let F=D.x-C.x,U=D.y-C.y;if(Math.abs(F)+Math.abs(U)<l8)return;if(Math.abs(U)<=l8){let k=C.x+Math.sign(F)*kV0;return{left:Math.min(C.x,k),right:Math.max(C.x,k),top:C.y-HV,bottom:C.y+HV}}if(Math.abs(F)<=l8){let k=C.y+Math.sign(U)*kV0;return{left:C.x-HV,right:C.x+HV,top:Math.min(C.y,k),bottom:Math.max(C.y,k)}}return{left:Math.min(C.x,D.x),right:Math.max(C.x,D.x),top:Math.min(C.y,D.y),bottom:Math.max(C.y,D.y)}}function Eh0(u){return{left:Math.min(u.left,u.right),right:Math.max(u.left,u.right),top:Math.min(u.top,u.bottom),bottom:Math.max(u.top,u.bottom)}}function S60(u,B){let E=x1(B),A=v60(E,!0),C=v60(E,!1);return[A,C].some((D)=>D&&vV(u,Eh0(D)))}function qV(u,B){let E=[];for(let Z of u){if(Z.isLayoutOnly)continue;let J=Z.points;if(!J||J.length<2)continue;for(let w=0;w<J.length-1;w++)E.push({edgeId:Z.id,p1:J[w],p2:J[w+1]})}let A=[],C=[];for(let Z of B.values()){let{isGroup:J,parentId:w}=Z;if(J&&!w){let Q=b8(Z);if(Q)C.push({id:Z.id,rect:Q});continue}if(J)continue;if(Z.isEdgeLabel)continue;let K=b8(Z);if(!K)continue;A.push({nodeId:Z.id,rect:K})}let D=3,F=1,U=12,z=X((Z,J)=>{let w=k60(J,D);for(let{nodeId:K,rect:Q}of A){if(K===Z)continue;if(vV(w,Q))return!0}return!1},"labelOverlapsForeignNode"),k=X((Z,J)=>{let w=k60(J,D);for(let K of E){if(K.edgeId===Z)continue;if(jV(K.p1,K.p2,w))return!0}return!1},"labelOverlapsForeignEdge"),f=X((Z,J,w)=>z(Z,w)||k(J,w),"labelOverlapsAnything"),l=[],b=X((Z)=>{for(let{id:J,rect:w}of C)if(TV0(w,Z))return J;return},"findContainingLane"),M=X((Z,J)=>l.some((w)=>w.labelId!==Z&&vV(J,w.rect)),"overlapsPlacedLabel");for(let Z of u){if(Z.isLayoutOnly)continue;let J=Z.labelNodeId;if(!J)continue;let w=B.get(J);if(!w)continue;let K=Z.points;if(!K||K.length<2)continue;let Q=w.width??0,G=w.height??0;if(Q<=0||G<=0)continue;let L=[];for(let r=0;r<K.length-1;r++){let m=K[r],$=K[r+1],y=Math.abs(m.x-$.x),p=Math.abs(m.y-$.y);if(y<l8&&p<l8)continue;if(y>=l8&&p>=l8)continue;L.push({idx:r,length:y+p,orientation:y>=l8?"horizontal":"vertical",midX:(m.x+$.x)/2,midY:(m.y+$.y)/2})}if(L.length===0)continue;let H=L.length>=3?L.filter((r)=>r.idx>0&&r.idx<L.length-1):L,q=H.length>0?H:L,x=Q>=G?"horizontal":"vertical",v=X((r)=>{return[...r].sort((m,$)=>{let y=m.orientation===x,p=$.orientation===x;if(y!==p)return y?-1:1;let e=m.length>=(m.orientation==="horizontal"?Q:G)+2,_=$.length>=($.orientation==="horizontal"?Q:G)+2;if(e!==_)return e?-1:1;return $.length-m.length})},"rankSegments"),W=L[0],S=L[L.length-1],T=[0.5,0.25,0.75,0.05,0.95,0.15,0.85,0.1,0.9],R=X((r,m)=>{let $=K[r.idx],y=K[r.idx+1];return{midX:$.x+(y.x-$.x)*m,midY:$.y+(y.y-$.y)*m}},"anchorAtT"),Y=X((r,m,$)=>Math.min($,Math.max(m,r)),"clamp"),a=X((r,m)=>r.midX>=m.left-l8&&r.midX<=m.right+l8&&r.midY>=m.top-l8&&r.midY<=m.bottom+l8,"pointInsideRectInclusive"),I=X((r)=>{let m=zH(r.midX,r.midY,Q,G),$=b(m);if($)return{laneId:$,anchor:r,rect:m};let y=C.find(({rect:f0})=>a(r,f0));if(!y)return;let p=y.rect.left+Q/2+F,e=y.rect.right-Q/2-F,_=y.rect.top+G/2+F,b0=y.rect.bottom-G/2-F;if(p>e||_>b0)return;let B0={midX:Y(r.midX,p,e),midY:Y(r.midY,_,b0)},k0=zH(B0.midX,B0.midY,Q,G);return a(r,k0)?{laneId:y.id,anchor:B0,rect:k0}:void 0},"placementForAnchor"),O=X((r,m,$)=>r.orientation==="horizontal"?Math.abs(m.midX-$.x):Math.abs(m.midY-$.y),"distanceAlongSegment"),i=X((r,m)=>{let y=(r.orientation==="horizontal"?Q/2:G/2)+U;if(r===W){let p=K[r.idx];if(O(r,m,p)+l8<y)return!1}if(r===S){let p=K[r.idx+1];if(O(r,m,p)+l8<y)return!1}return!0},"labelClearsTerminalEndpoints"),N=X((r)=>{let m=v(r);for(let $ of m)for(let y of T){let p=R($,y);if(!i($,p))continue;let e=I(p);if(!e)continue;if(S60(e.rect,K))continue;if(M(J,e.rect))continue;if(!f(J,Z.id,e.rect))return{laneId:e.laneId,anchor:e.anchor}}return},"tryPool"),V=X((r,m,$=!1)=>{let y=v(r);for(let p of y){let e={midX:p.midX,midY:p.midY};if(m&&!i(p,e))continue;let _=I(e);if(_&&!S60(_.rect,K)&&!M(J,_.rect)&&!z(J,_.rect)&&($||!k(Z.id,_.rect)))return{laneId:_.laneId,anchor:_.anchor}}return},"findLaneContainingFallback"),h=N(q)??(q.length<L.length?N(L):void 0)??V(L,!0)??V(L,!1)??V(L,!1,!0);if(h){w.x=h.anchor.midX,w.y=h.anchor.midY,w.parentId=h.laneId;let r=zH(h.anchor.midX,h.anchor.midY,Q,G),m=l.findIndex(($)=>$.labelId===J);if(m>=0)l[m]={labelId:J,rect:r};else l.push({labelId:J,rect:r})}}}function W60(u,B){return u<B?`${u}::${B}`:`${B}::${u}`}function Ah0(u,B){let{nodeInfoById:E,realNodeRects:A}=NV(B),C=new Map;for(let F of B){let U=F.id;if(F.isGroup)continue;if(F.isEdgeLabel){C.set(U,{w:F.width??0,h:F.height??0});continue}}let D=X((F,U,z,k)=>{let f=W60(U,z),l=0,b=X((M)=>{if(!M)return;let Z=C.get(M);if(!Z)return;let J=k==="x"?Z.w/2:Z.h/2;if(J>l)l=J},"consider");b(F.labelNodeId);for(let M of u){if(M===F)continue;if(M.isLayoutOnly)continue;let{start:Z,end:J}=M;if(!Z||!J)continue;if(W60(Z,J)!==f)continue;b(M.labelNodeId)}return l>0?l+Lb4:0},"labelClearanceFor");for(let F of u){if(F.isLayoutOnly)continue;let U=F.points;if(!r60(U,C60))continue;let z=g60(F,E,C60);if(!z)continue;let{srcId:k,dstId:f,srcInfo:l,dstInfo:b,collinearX:M,collinearY:Z}=z;if(M===Z)continue;let J,w;if(M){let H=b.cy>l.cy;J={x:l.cx,y:H?l.rect.bottom:l.rect.top},w={x:b.cx,y:H?b.rect.top:b.rect.bottom}}else{let H=b.cx>l.cx;J={x:H?l.rect.right:l.rect.left,y:l.cy},w={x:H?b.rect.left:b.rect.right,y:b.cy}}if(D2(J,w,A,[k,f],1))continue;let Q=D(F,k,f,M?"x":"y"),G=Q>fV0?Q:fV0,L=[0,G,-G];for(let H of L){let q={...J},x={...w};if(M){if(q.x+=H,x.x+=H,q.x<=l.rect.left||q.x>=l.rect.right)continue;if(x.x<=b.rect.left||x.x>=b.rect.right)continue}else{if(q.y+=H,x.y+=H,q.y<=l.rect.top||q.y>=l.rect.bottom)continue;if(x.y<=b.rect.top||x.y>=b.rect.bottom)continue}if(D2(q,x,A,[k,f],1))continue;if(SV(q,x,u,F,{epsilon:C60}))continue;F.points=[q,x];break}}}function Y60(u,B){let{realNodeRects:k,labelNodeRects:f}=Xl(B.values()),l=X((q,x)=>{return kH(x,0.001).map((v)=>({...v,edge:q,interior:v.index>=1&&v.index<=x.length-3}))},"segmentsFor"),b=X(()=>{let q=[];for(let x of u){if(x.isLayoutOnly)continue;let v=x.points;if(!v||v.length<2)continue;q.push(...l(x,x1(v)))}return q},"allSegments"),M=X((q,x)=>{if(q.horizontal&&x.horizontal)return JB(q.a.x,q.b.x,x.a.x,x.b.x)>=8&&Math.abs(q.a.y-x.a.y)<7;if(q.vertical&&x.vertical)return JB(q.a.y,q.b.y,x.a.y,x.b.y)>=8&&Math.abs(q.a.x-x.a.x)<7;return!1},"hasCrowdedParallelTrack"),Z=X((q,x)=>{let{start:v,end:W}=q,S=l(q,x);if(S.length!==x.length-1)return!1;let T=[v,W].filter((Y)=>Boolean(Y)),R=q.labelNodeId?[q.labelNodeId]:[];for(let Y of S){if(D2(Y.a,Y.b,k,T,-2))return!1;if(D2(Y.a,Y.b,f,R,-2))return!1}for(let Y of u){if(Y===q||Y.isLayoutOnly)continue;let a=Y.points;if(!a||a.length<2)continue;for(let I of S)for(let O of l(Y,x1(a))){if(M(I,O))return!1;if(mz(I.a,I.b,O.a,O.b,0.001))return!1}}return!0},"candidateIsSafe"),J=X((q,x)=>{let v=x1(q.edge.points??[]);if(v.length<4||q.index>=v.length-1)return;let W=v.map((S)=>({...S}));if(q.horizontal)W[q.index].y+=x,W[q.index+1].y+=x;else if(q.vertical)W[q.index].x+=x,W[q.index+1].x+=x;else return;return l(q.edge,W).length===W.length-1?W:void 0},"shiftedCandidate"),w=X((q,x)=>({x:q.x??(x.left+x.right)/2,y:q.y??(x.top+x.bottom)/2}),"nodeCenter"),K=X((q)=>{let x=q.edge,v=x1(x.points??[]);if(v.length!==4||q.index!==1)return;let W=x.start?B.get(x.start):void 0,S=x.end?B.get(x.end):void 0,T=W?b8(W):void 0,R=S?b8(S):void 0,Y=v.slice(q.index+2);if(!W||!S||!T||!R||Y.length===0)return;return{sourceCenter:w(W,T),targetCenter:w(S,R),sourceRect:T,tail:Y}},"sourceDetourContextFor"),Q=X((q,x,v,W,S,T)=>{let R=W.y>=v.y,Y=R?S.bottom:S.top,a=Y+(R?20:-20);if(R&&q.b.y<=a+0.001||!R&&q.b.y>=a-0.001)return;let I=q.a.x+x;return x1([{x:v.x,y:Y},{x:v.x,y:a},{x:I,y:a},{x:I,y:q.b.y},...T],0.001)},"verticalSourceDetour"),G=X((q,x,v,W,S,T)=>{let R=W.x>=v.x,Y=R?S.right:S.left,a=Y+(R?20:-20);if(R&&q.b.x<=a+0.001||!R&&q.b.x>=a-0.001)return;let I=q.a.y+x;return x1([{x:Y,y:v.y},{x:a,y:v.y},{x:a,y:I},{x:q.b.x,y:I},...T],0.001)},"horizontalSourceDetour"),L=X((q,x)=>{let v=K(q);if(!v)return;if(q.vertical)return Q(q,x,v.sourceCenter,v.targetCenter,v.sourceRect,v.tail);if(q.horizontal)return G(q,x,v.sourceCenter,v.targetCenter,v.sourceRect,v.tail);return},"sourceDetourCandidate"),H=[-7,7,-14,14,-21,21];for(let q=0;q<12;q++){let x=b(),v=!1;for(let W=0;W<x.length&&!v;W++)for(let S=W+1;S<x.length&&!v;S++){let T=x[W],R=x[S];if(T.edge===R.edge||!M(T,R))continue;let Y=[T,R].filter((a)=>a.interior);for(let a of Y){for(let I of H){let O=J(a,I);if(O&&Z(a.edge,O)){a.edge.points=O,v=!0;break}let i=L(a,I);if(i&&Z(a.edge,i)){a.edge.points=i,v=!0;break}}if(v)break}}if(!v)return}}function Ch0(u,B,E,A){let C=B.x-u.x,D=B.y-u.y,F=A.x-E.x,U=A.y-E.y,z=C*U-D*F;if(Math.abs(z)<0.0000000001)return!1;let k=E.x-u.x,f=E.y-u.y,l=(k*U-f*F)/z,b=(k*D-f*C)/z,M=0.01;return l>M&&l<1-M&&b>M&&b<1-M}function Dh0(u){let B=u.nodes??[],E=u.edges??[],A=[];if(!E.length||!B.length)return A;let C=OV0(B),D=1,F=[];for(let z of E){if(z.isLayoutOnly)continue;let k=z.points;if(!k||k.length<2)continue;let{start:f,end:l,labelNodeId:b}=z,M=z.id??`${f}->${l}`;for(let Z of C){if(Z.nodeId===f||Z.nodeId===l)continue;if(b&&Z.nodeId===b)continue;for(let J=0;J<k.length-1;J++)if(jV(k[J],k[J+1],Z,-D)){A.push({type:"edge-node-overlap",edgeId:M,targetId:Z.nodeId,detail:`segment ${J} passes through node "${Z.nodeId}"`});break}}for(let Z=0;Z<k.length-1;Z++)F.push({edgeId:M,start:f,end:l,p1:k[Z],p2:k[Z+1]})}let U=new Set;for(let z=0;z<F.length;z++)for(let k=z+1;k<F.length;k++){let f=F[z],l=F[k];if(f.edgeId===l.edgeId)continue;if(f.start===l.start||f.start===l.end||f.end===l.start||f.end===l.end)continue;if(Ch0(f.p1,f.p2,l.p1,l.p2)){let b=f.edgeId<l.edgeId?`${f.edgeId}|${l.edgeId}`:`${l.edgeId}|${f.edgeId}`;if(!U.has(b))U.add(b),A.push({type:"edge-edge-crossing",edgeId:f.edgeId,targetId:l.edgeId,detail:`edges "${f.edgeId}" and "${l.edgeId}" cross`})}}if(A.length>0){let z=A.filter((f)=>f.type==="edge-node-overlap").length,k=A.filter((f)=>f.type==="edge-edge-crossing").length;z0.warn(`[SWIMLANE_VALIDATE] ${A.length} issue(s) detected: ${z} edge-node overlap(s), ${k} edge crossing(s)`);for(let f of A)z0.warn(`[SWIMLANE_VALIDATE] ${f.type}: ${f.detail}`)}return A}function Fh0(u,B){let E=u.nodes??[],A=u.edges??[],C=E.filter((U)=>!U.isGroup);if((B==="LR"||B==="RL")&&C.length>0&&!_V0(u,B))return;if(B==="BT"&&C.length>0&&!gV0(u))return;for(let U of A){if(U.isLayoutOnly)continue;let z=U.points;if(!z||z.length<2)continue;U.points=PF(WV(z))}Bh0(A,E),Ah0(A,E),nV0(A,E);let D=new Map;for(let U of E)D.set(String(U.id),U);qV(A,D),iV0(A,D),pV0(A,D),Y60(A,D),dV0(A,D),sV0(A,D),q60(A,D),oV0(A,D);let F=X(()=>{uh0(A,D),tV0(A,D),eV0(A,D),qV(A,D),H60(A,D),q60(A,D),qV(A,D),H60(A,D)},"finalizeRenderedEdges");F(),Y60(A,D),F(),X60(A,D),x60(A,D),X60(A,D),x60(A,D)}function xl(u){let B=new Map(u.nodeById),E=new Set,A=[];for(let D of u.edges){if(!B.has(D.src)||!B.has(D.dst))continue;let F=`${D.id}:${D.src}->${D.dst}`;if(E.has(F))continue;E.add(F),A.push(D)}return{nodes:[...B.keys()],edges:A,layout:u.layout,nodeById:B}}function o60(u,B){return u.edges.filter((E)=>E.dst===B)}function Uh0(u){let B=new Map;for(let E of u.nodes)B.set(E,[]);for(let E of u.edges)B.get(E.src).push(E.dst);return B}function t60(u){let B=Uh0(u);for(let E of B.values())E.sort((A,C)=>A.localeCompare(C));return B}function e60(u){let B=new Map;for(let E of u.nodes)B.set(E,0);for(let E of u.edges)B.set(E.dst,(B.get(E.dst)??0)+1);return B}function u90(u){return[...u.entries()].filter(([,B])=>B===0).map(([B])=>B).sort((B,E)=>B.localeCompare(E))}function iV(u,B=()=>!0){let E=new Map,A=new Map;for(let C of u.nodes)E.set(C,[]),A.set(C,[]);for(let C of u.edges){if(!B(C))continue;A.get(C.src).push(C.dst),E.get(C.dst).push(C.src)}return{preds:E,succs:A}}function B90(u,B,E,A){let C=0;for(let F of u.nodes){if(A?.skipGroups&&u.nodeById.get(F)?.isGroup)continue;C=Math.max(C,E[F]??0)}let D=Array.from({length:C+1},()=>[]);for(let F of B){if(A?.skipGroups&&u.nodeById.get(F)?.isGroup)continue;D[Math.max(0,E[F]??0)].push(F)}return D}function uW(u){let B=e60(u),E=u90(B),A=[],C=t60(u);while(E.length){let D=E.shift();A.push(D);for(let F of C.get(D)??[])if(B.set(F,(B.get(F)??0)-1),(B.get(F)??0)===0){let U=0;while(U<E.length&&E[U]<F)U++;E.splice(U,0,F)}}return A.length===u.nodes.length?A:null}function fH(u){let B=new Map,E=0;for(let A of u)B.set(A,E),E++;return B}function E90(u){let B=Array(u.length),E=X((A,C)=>{if(C-A<=1)return 0;let D=A+C>>1,F=E(A,D)+E(D,C),U=A,z=D,k=A;while(U<D||z<C)if(z>=C||U<D&&u[U]<=u[z])B[k++]=u[U++];else B[k++]=u[z++],F+=D-U;for(let f=A;f<C;f++)u[f]=B[f];return F},"count");return E(0,u.length)}function zh0(u){let B=xl(u),E=new Map;for(let f of B.nodes)E.set(f,[]);for(let f of B.edges)E.get(f.src).push(f);for(let f of E.values())f.sort((l,b)=>l.dst===b.dst?l.id.localeCompare(b.id):l.dst.localeCompare(b.dst));let A=Object.create(null);for(let f of B.nodes)A[f]=0;let C=[],D=X((f)=>{A[f]=1;for(let l of E.get(f)??[]){let b=l.dst;if(A[b]===0)D(b);else if(A[b]===1)C.push(l)}A[f]=2},"dfs"),F=[...B.nodes].sort((f,l)=>f.localeCompare(l));for(let f of F)if(A[f]===0)D(f);let U=new Set(C.map((f)=>`${f.id}:${f.src}->${f.dst}`)),z=B.edges.map((f)=>U.has(`${f.id}:${f.src}->${f.dst}`)?{id:f.id,src:f.dst,dst:f.src,weight:f.weight,ref:f.ref}:f);return{acyclic:{nodes:[...B.nodes],edges:z,layout:B.layout,nodeById:new Map(B.nodeById)},reversed:C}}function kh0(u){let B=new Map,E=X((A)=>{if(B.has(A))return B.get(A);let C=u.nodeById.get(A);if(!C)return B.set(A,null),null;let D=C.parentId;if(!D)return B.set(A,null),null;let U=E(D)??D;return B.set(A,U),U},"resolve");for(let A of u.nodes)E(A);return B}function rz(u){let B=kh0(u);return(E)=>B.get(E)??null}function aV(u){let B=[];for(let E of u.layout.nodes??[])if(E.isGroup&&!E.parentId)B.push(E.id);return[...new Set(B)].reverse()}function A90(u,B){let E=aV(u);if(!B||B.length===0)return E;let A=new Set(E),C=new Set,D=[];for(let F of B){if(!A.has(F)||C.has(F))continue;C.add(F),D.push(F)}for(let F of E){if(C.has(F))continue;D.push(F)}return D}function fh0(u,B){let E=xl(u),A=B?.laneOf??(()=>null),C=B?.rankHint,{preds:D}=iV(E);for(let H of D.values())H.sort((q,x)=>q.localeCompare(x));let F=uW(E)??[...E.nodes].sort((H,q)=>H.localeCompare(q)),U=new Map;for(let[H,q]of F.entries())U.set(q,H);let z=new Map,k=new Map;for(let H of E.nodes)k.set(H,[]);for(let H of F){let q=(D.get(H)??[]).filter((x)=>z.has(x));if(q.length>0){let x=lh0(H,q,{laneOf:A,rankHint:C,topoIndex:U});z.set(H,x),k.get(x).push(H)}else if(!z.has(H))z.set(H,null)}for(let H of E.nodes)if(!z.has(H))z.set(H,null);let f=new Set;for(let H of E.nodes)if((z.get(H)??null)===null)f.add(H);let l=[...f].sort((H,q)=>{let x=U.get(H)??0,v=U.get(q)??0;if(x===v)return H.localeCompare(q);return x-v}),b=bh0(E),M=new Map;for(let[H,q]of b.entries())M.set(H,[...q].sort((x,v)=>x.localeCompare(v)));let Z=Mh0(M),J=Zh0(M),w=new Map;for(let H of E.nodes)w.set(H,[]);for(let H of J)for(let q of H.nodes){let x=w.get(q);if(x)x.push(H.id);else w.set(q,[H.id])}let K=[],Q=[],G=new Set,L=X((H)=>{if(G.has(H))return;G.add(H),K.push(H);for(let q of k.get(H)??[])L(q);Q.push(H)},"walk");for(let H of l)L(H);for(let H of F)L(H);return{parent:z,children:k,roots:l,componentOf:Z,blocks:J,nodeBlocks:w,adjacency:M,preorder:K,postorder:Q,topologicalOrder:F}}function lh0(u,B,E){let A=E.laneOf(u);return[...B].sort((D,F)=>{let U=E.laneOf(D),z=E.laneOf(F),k=U!=null&&U===A,f=z!=null&&z===A;if(k!==f)return k?-1:1;let l=E.rankHint?.[D],b=E.rankHint?.[F];if(l!=null&&b!=null&&l!==b)return b-l;let M=E.topoIndex.get(D)??0,Z=E.topoIndex.get(F)??0;if(M!==Z)return M-Z;return D.localeCompare(F)})[0]}function bh0(u){let B=new Map;for(let E of u.nodes)B.set(E,new Set);for(let E of u.edges)B.get(E.src).add(E.dst),B.get(E.dst).add(E.src);return B}function Mh0(u){let B=new Map,E=0;for(let A of u.keys()){if(B.has(A))continue;let C=[A];while(C.length>0){let D=C.pop();if(B.has(D))continue;B.set(D,E);for(let F of u.get(D)??[])if(!B.has(F))C.push(F)}E++}return B}function Zh0(u){let B=new Map,E=new Map,A=[],C=[],D=0,F=X((U,z)=>{B.set(U,++D),E.set(U,D);for(let k of u.get(U)??[]){if(k===z)continue;if(!B.has(k)){if(A.push([U,k]),F(k,U),E.set(U,Math.min(E.get(U)??D,E.get(k)??D)),(E.get(k)??0)>=(B.get(U)??0))C.push(Jh0(U,k,A,C.length))}else if((B.get(k)??0)<(B.get(U)??0))A.push([U,k]),E.set(U,Math.min(E.get(U)??D,B.get(k)??D))}},"visit");for(let U of u.keys())if(!B.has(U))F(U,null);return C}function Jh0(u,B,E,A){let C=[],D=new Set;while(E.length>0){let F=E.pop();if(C.push(F),D.add(F[0]),D.add(F[1]),F[0]===u&&F[1]===B||F[0]===B&&F[1]===u)break}return{id:A,edges:C,nodes:[...D]}}function wh0(u,B,E){let A=[...u.nodes],C=new Map;for(let[Q,G]of A.entries())C.set(G,Q);let D=A.length,F=Array(D).fill(-1),U=Array(D).fill(0),z=[],k=new Set;for(let Q of A){let G=E.parent.get(Q)??null,L=C.get(Q);if(L==null)continue;if(G==null){if(F[L]=-1,U[L]=0,!k.has(Q))k.add(Q),z.push(Q)}}while(z.length>0){let Q=z.shift(),G=C.get(Q);if(G==null)continue;let L=E.children.get(Q)??[];for(let H of L){if(k.has(H))continue;let q=C.get(H);if(q==null)continue;F[q]=G,U[q]=U[G]+1,k.add(H),z.push(H)}}for(let Q of A){if(k.has(Q))continue;let G=C.get(Q);if(G==null)continue;F[G]=-1,U[G]=0,k.add(Q)}let f=Math.max(1,Math.ceil(Math.log2(Math.max(1,D)))+1),l=Array.from({length:f},()=>Array(D).fill(-1));for(let Q=0;Q<D;Q++)l[0][Q]=F[Q];for(let Q=1;Q<f;Q++)for(let G=0;G<D;G++){let L=l[Q-1][G];l[Q][G]=L===-1?-1:l[Q-1][L]}let b=X((Q,G)=>{if(Q===-1||G===-1)return-1;if(U[Q]<U[G])[Q,G]=[G,Q];let L=U[Q]-U[G];for(let H=0;H<f;H++)if(L>>H&1){if(Q=l[H][Q],Q===-1)return-1}if(Q===G)return Q;for(let H=f-1;H>=0;H--){let q=l[H][Q],x=l[H][G];if(q===-1||x===-1)continue;if(q!==x)Q=q,G=x}return l[0][Q]},"lcaIndex"),M=Array.from({length:D},()=>new Map);for(let Q of u.edges){let{src:G,dst:L}=Q,H=B[G],q=B[L];if(H==null||q==null)continue;if(H>q)[G,L]=[L,G],[H,q]=[q,H];if(H==null||q==null||H===q)continue;let x=C.get(G),v=C.get(L);if(x==null||v==null)continue;let W=b(x,v);if(W===-1)continue;let S=M[W];for(let T=H;T<q;T++)S.set(T,(S.get(T)??0)+1)}let Z=new Map,J=X((Q,G)=>{if(G.size===0)return;for(let[L,H]of G)Q.set(L,(Q.get(L)??0)+H)},"mergeInto"),w=new Set,K=X((Q)=>{let G=C.get(Q);w.add(Q);let L=G==null?void 0:M[G],H=L?new Map(L):new Map,q=E.children.get(Q)??[];for(let x of q){let v=K(x),W=B[Q];if(W!=null){let S=Z.get(Q);if(!S)S=new Map,Z.set(Q,S);let T=v.get(W)??0,R=B[x];if(R!=null&&R>W)T+=1;S.set(x,T)}J(H,v)}return H},"dfs");for(let Q of E.roots)if(!w.has(Q))K(Q);for(let Q of A)if(!w.has(Q))K(Q);return Z}function Kh0(u,B,E){let A=new Map,C=X((D)=>{let F=E[D]??0,U=[...B.get(D)??[]];U.sort(C90(E));for(let z of U){C(z);let k=A.get(z);if(k!=null)F=Math.min(F,k)}A.set(D,F)},"annotate");for(let D of u)C(D);return A}function C90(u){return(B,E)=>{let A=u[B]??0,C=u[E]??0;return A===C?B.localeCompare(E):A-C}}function Qh0(u,B,E,A){let C=0;for(let z of B){let k=E[z]??0;if(k>C)C=k}let D=Array.from({length:C+1},()=>[]),F=new Set,U=X((z)=>{if(F.has(z))return;F.add(z);let k=E[z]??0;if(!D[k])D[k]=[];D[k].push(z);for(let f of A(z))U(f)},"emit");for(let z of u)U(z);for(let z of B)if(!F.has(z)){let k=E[z]??0;if(!D[k])D[k]=[];D[k].push(z),F.add(z)}return D}function Gh0(u){let B=[];for(let E of u){let A=new Set,C=[];for(let D of E){if(A.has(D))continue;A.add(D),C.push(D)}B.push(C)}return B}function Hh0(u,B,E,A){return(C)=>{let D=u.get(C)??[];if(D.length===0)return[];let F=B[C]??0,U=[],z=[],k=E.get(C);for(let f of D){let l=A.get(f)??F;if(l>F)U.push({child:f,min:l});else z.push(f)}return U.sort((f,l)=>{if(f.min===l.min)return f.child.localeCompare(l.child);return f.min-l.min}),z.sort((f,l)=>{let b=k?.get(f)??0,M=k?.get(l)??0;if(b!==M)return b-M;let Z=A.get(f)??F,J=A.get(l)??F;if(Z!==J)return Z-J;return f.localeCompare(l)}),[...U.map((f)=>f.child),...z]}}function PV(u,B,E){let A=fh0(u,{rankHint:B,laneOf:E}),{children:C,roots:D}=A;for(let l of u.nodes)if(!C.has(l))C.set(l,[]);let F=wh0(u,B,A),U=[...D].sort(C90(B)),z=Kh0(U,C,B),k=Hh0(C,B,F,z),f=Qh0(U,u.nodes,B,k);return f=Gh0(f),f}function Lh0(u,B,E){let A=new Set(u),C=new Set(B),D=fH(B),F=[];for(let U of E)if(A.has(U.src)&&C.has(U.dst))F.push(D.get(U.dst));return E90(F)}function R60(u,B,E){let A=[];for(let D of B){let F=E[D.src],U=E[D.dst];if(F==null||U==null||F===U)continue;let{src:z,dst:k}=D,f=F,l=U;if(F>U)z=D.dst,k=D.src,f=U,l=F;for(let b=f;b<l;b++)A.push({id:`${D.id}@${b}`,src:z,dst:k,ref:D.ref})}let C=0;for(let D=0;D+1<u.length;D++)C+=Lh0(u[D],u[D+1],A);return C}function qh0(u,B){let E={...B},{preds:A}=iV(u),C=rz(u),D=PV(u,E,C),F=R60(D,u.edges,E),U=IV.MAX_CROSSING_OPTIMIZATION_PASSES;for(let z=0;z<U;z++){let k=!1,f=[...u.nodes].sort((l,b)=>(E[b]??0)-(E[l]??0));for(let l of f){let b=E[l]??0;if(b===0)continue;let M=0;for(let K of A.get(l)??[])M=Math.max(M,(E[K]??0)+1);if(M>=b)continue;let Z=b;E[l]=M;let J=PV(u,E,C),w=R60(J,u.edges,E);if(w<F)F=w,k=!0;else E[l]=Z}if(!k)break}return E}function Xh0(u,B){let E=rz(u),A=[...u.nodes].sort((C,D)=>(B[C]??0)-(B[D]??0)||C.localeCompare(D));for(let C of A){let D=E(C);if(!D)continue;let F=u.edges.filter((J)=>J.src===C);if(F.length===0)continue;let U=!1,z=0;for(let J of F){let w=E(J.dst);if(w==null||w===D)U=!0;else z++}if(z===0||U)continue;let k=0,f=!1;for(let J of u.edges){if(J.dst!==C)continue;let w=E(J.src);if(!w)continue;if(w===D)f=!0;else k++}if(k>0||!f)continue;let l=B[C]??0,b=l+z,M=0;for(let J of u.edges)if(J.dst===C)M=Math.max(M,(B[J.src]??0)+1);let Z=Math.max(l,M,b);if(Z!==l)B[C]=Z}}function xh0(u,B){let E=xl(u),A=uW(E)??[...E.nodes].sort(),C=B?.compactSingleInput??!1,D=rz(E),F=Object.create(null);for(let z of A){let k=o60(E,z),f=B?.ignoreCrossLaneEdges?k.filter((l)=>{let b=D(l.src),M=D(z);if(!b||!M)return!0;return b===M}):k;if(f.length===0)F[z]=0;else if(C&&f.length===1){let l=f[0].src,b=D(l),M=D(z);if(b!==M)F[z]=F[l]??0;else F[z]=(F[l]??0)+1}else{let l=-1/0;for(let b of f)l=Math.max(l,(F[b.src]??0)+1);F[z]=l===-1/0?0:l}}if(B?.optimizeRanksByCrossings??!1)F=qh0(E,F);if(B?.ignoreCrossLaneEdges)Xh0(E,F);return{layers:PV(E,F,D),rankOf:F,dummy:new Set}}function vh0(u,B){let E=xl(u),C={...xh0(E,{compactSingleInput:B?.compactSingleInput,ignoreCrossLaneEdges:B?.ignoreCrossLaneEdges,optimizeRanksByCrossings:B?.optimizeRanksByCrossings}).rankOf},D=rz(E),{preds:F,succs:U}=iV(E,(Z)=>{if(B?.ignoreCrossLaneEdges){let J=D(Z.src),w=D(Z.dst);if(J&&w&&J!==w)return!1}return!0}),z=uW(E)??[...E.nodes],k=[...z].reverse(),f=X((Z,J)=>{let w=0;for(let G of F.get(Z)??[])w=Math.max(w,(C[G]??0)+1);let K=Number.POSITIVE_INFINITY,Q=U.get(Z)??[];if(Q.length>0)K=Math.min(...Q.map((G)=>(C[G]??0)-1));if(!Number.isFinite(K))K=Math.max(w,J);return Math.min(Math.max(J,w),K)},"clampFeasible"),l=IV.GRAVITY_ITERATIONS,b=X((Z)=>{let J=!1;for(let w of Z){let K=F.get(w)??[],Q=U.get(w)??[];if(K.length===0&&Q.length===0)continue;let G=K.length>0?K.reduce((x,v)=>x+(C[v]??0)+1,0)/K.length:C[w]??0,L=Q.length>0?Q.reduce((x,v)=>x+(C[v]??0)-1,0)/Q.length:C[w]??0,H=Math.round((G+L)/2),q=f(w,H);if(q!==C[w])C[w]=q,J=!0}return J},"relaxOrder");for(let Z=0;Z<l;Z++){let J=b(z),w=b(k);if(!J&&!w)break}for(let Z of z){let J=0;for(let w of F.get(Z)??[])J=Math.max(J,(C[w]??0)+1);if((C[Z]??0)<J)C[Z]=J}for(let Z of k){let J=U.get(Z)??[];if(J.length>0){let w=Math.min(...J.map((K)=>(C[K]??0)-1));if((C[Z]??0)>w)C[Z]=w}}return{layers:B90(E,z,C),rankOf:C,dummy:new Set}}function Sh0(u){let B=e60(u),E=t60(u),A=u90(B),C=[];while(A.length>0){let D=[];for(let F of A){C.push(F);for(let U of E.get(F)??[])if(B.set(U,(B.get(U)??0)-1),(B.get(U)??0)===0)D.push(U)}A=D.sort((F,U)=>F.localeCompare(U))}return C.length===u.nodes.length?C:null}function Wh0(u,B){let E=xl(u),A=B?.direction==="LR"?Sh0(E)??[...E.nodes].sort():uW(E)??[...E.nodes].sort(),C=rz(E),D=X((f)=>C(f)??f,"laneOf"),F=Object.create(null),U=new Map,z=X((f,l)=>{if(B?.ignoreCrossLaneEdges??!0)return D(f)===D(l)?1:0;return 1},"edgeWeight");for(let f of A){if(E.nodeById.get(f)?.isGroup)continue;let b=o60(E,f),M=0;if(b.length>0)for(let K of b){let Q=K.src,G=F[Q]??0;M=Math.max(M,G+z(Q,f))}let Z=D(f),J=U.get(Z)??0,w=Math.max(M,J);F[f]=w,U.set(Z,w+1)}return{layers:B90(E,A,F,{skipGroups:!0}),rankOf:F,dummy:new Set}}function Yh0(u,B){let E=xl(B),{rankOf:A}=u,C=u.layers.map((M)=>[...M]),D=new Set(u.dummy?[...u.dummy]:[]),F=0,U=new Map(E.nodeById),z=X((M)=>{let Z=`placeholder-${F++}`,J={id:Z,isGroup:!1,isDummy:!0,width:0,height:0};U.set(Z,J),D.add(Z);while(C.length<=M)C.push([]);return C[M].push(Z),A[Z]=M,Z},"addDummyAt"),k=[...E.edges].sort((M,Z)=>M.id===Z.id?M.src===Z.src?M.dst.localeCompare(Z.dst):M.src.localeCompare(Z.src):M.id.localeCompare(Z.id)),f=[];for(let M of k){let Z=A[M.src]??0,J=A[M.dst]??0;if(J-Z<=1){f.push(M);continue}let w=M.src;for(let Q=Z+1,G=0;Q<J;Q++,G++){let L=z(Q);f.push({id:`${M.id}#${G}`,src:w,dst:L,weight:M.weight,ref:M.ref}),w=L}let K=J-Z-2;f.push({id:`${M.id}#${Math.max(K+1,0)}`,src:w,dst:M.dst,weight:M.weight,ref:M.ref})}let b={nodes:[...E.nodes,...[...D].filter((M)=>!E.nodes.includes(M))],edges:f,layout:E.layout,nodeById:U};return{layering:{layers:C,rankOf:A,dummy:D},graphWithDummies:b}}function T60(u){let B=u.length;if(B===0)return Number.POSITIVE_INFINITY;let E=[...u].sort((A,C)=>A-C);if(B%2===1)return E[(B-1)/2];return 0.5*(E[B/2-1]+E[B/2])}function O60(u){if(u.length===0)return Number.POSITIVE_INFINITY;return u.reduce((E,A)=>E+A,0)/u.length}function Rh0(u,B,E,A){let C=new Map;for(let D of u)C.set(D,[]);for(let D of E)if(A==="down"){if(B.has(D.src)&&C.has(D.dst))C.get(D.dst).push(B.get(D.src))}else if(B.has(D.dst)&&C.has(D.src))C.get(D.src).push(B.get(D.dst));return C}function Th0(u,B,E){let A=E.get(u)??0,C=E.get(B)??0;return A!==C?A-C:u.localeCompare(B)}function I60(u,B,E){let A=new Set(u),C=new Set(B),D=fH(u),F=fH(B),U=[];for(let k of E)if(A.has(k.src)&&C.has(k.dst))U.push({u:D.get(k.src),v:F.get(k.dst)});U.sort((k,f)=>k.u===f.u?k.v-f.v:k.u-f.u);let z=U.map((k)=>k.v);return E90(z)}function XV(u,B,E){return[...u].sort((A,C)=>{let D=T60(B.get(A)??[]),F=T60(B.get(C)??[]);if(D===F)return Th0(A,C,E);if(!isFinite(D))return 1;if(!isFinite(F))return-1;return D-F})}function P60(u,B,E,A,C,D){let F=fH(u),U=fH(B),z=Rh0(B,F,E,A);if(!C||!D||D.length===0)return XV(B,z,U);let k=new Map;for(let b of B){let M=C(b),Z=k.get(M)??[];Z.push(b),k.set(M,Z)}let f=[];for(let b of D){let M=k.get(b);if(!M||M.length===0)continue;let Z=XV(M,z,U);f.push(...Z)}let l=k.get(null);if(l&&l.length>0){let b=XV(l,z,U);for(let M of b){let Z=O60(z.get(M)??[]),J=f.length;if(isFinite(Z))for(let[w,K]of f.entries()){let Q=O60(z.get(K)??[]);if(Z<Q){J=w;break}}f.splice(J,0,M)}}return f}function j60(u,B,E,A,C){let D=[...B],F=new Set(u),U=new Set(B),z=A?new Set(A):null,k=E.filter((J)=>F.has(J.src)&&U.has(J.dst)),f=z?E.filter((J)=>U.has(J.src)&&z.has(J.dst)):void 0,l=X((J)=>{let w=I60(u,J,k);if(f&&A)w+=I60(J,A,f);return w},"crossingScore"),b=C?new Map:null;if(C&&b)for(let J of B)b.set(J,C(J));let M=!0,Z=l(D);while(M){M=!1;for(let J=0;J+1<D.length;J++){if(b){let Q=b.get(D[J]),G=b.get(D[J+1]);if(Q!==G)continue}let w=Z;[D[J],D[J+1]]=[D[J+1],D[J]];let K=l(D);if(K<w)Z=K,M=!0;else[D[J],D[J+1]]=[D[J+1],D[J]]}}return D}function Oh0(u,B,E){let A=u.layers.map((U)=>[...U]),C=B.edges,D=rz(B),F=A90(B,E?.laneOrder);for(let U=0;U<3;U++){for(let z=1;z<A.length;z++)A[z]=P60(A[z-1],A[z],C,"down",D,F),A[z]=j60(A[z-1],A[z],C,A[z+1],D);for(let z=A.length-2;z>=0;z--)A[z]=P60(A[z+1],A[z],C,"up",D,F),A[z]=j60(A[z+1],A[z],C,A[z-1],D)}return{layers:A}}function Ih0(u,B,E){let A=E?.layerGap??lV0.DEFAULT_LAYER_GAP,C=E?.nodeGap??lV0.DEFAULT_NODE_GAP,D=E?.laneGap??C*2,F=E?.direction??"TB",U=F==="LR"||F==="RL",z=u.layers,k=Object.create(null),f=Object.create(null),l=X((S)=>B.nodeById.get(S),"getNode"),b=X((S)=>l(S)?.width??0,"getWidth"),M=X((S)=>l(S)?.height??0,"getHeight"),Z=rz(B),J=A90(B,E?.laneOrder),w=z.map((S)=>S.reduce((T,R)=>Math.max(T,M(R)),0)),K=[];if(U)for(let S=0;S+1<z.length;S++){let T=z[S].reduce((N,V)=>Math.max(N,b(V)),0),R=z[S+1].reduce((N,V)=>Math.max(N,b(V)),0),Y=w[S],a=w[S+1],I=Y/2+a/2,O=(T+R)/2,i=Math.max(0,O-I-A);K.push(i)}let Q=new Set;for(let S of z)for(let T of S)Q.add(Z(T));let G=Q.has(null),L=J.filter((S)=>Q.has(S)),H=[...G?[null]:[],...L],q=Object.create(null);for(let S of L)q[S]=0;if(G)q.null=0;for(let S of z){let T=Object.create(null),R=[];for(let Y of S){let a=Z(Y);if(a===null)R.push(Y);else(T[a]||=[]).push(Y)}for(let[Y,a]of Object.entries(T)){let I=a.reduce((O,i)=>O+b(i),0)+C*Math.max(0,a.length-1);q[Y]=Math.max(q[Y]??0,I)}if(G&&R.length){let Y=R.reduce((a,I)=>a+b(I),0)+C*Math.max(0,R.length-1);q.null=Math.max(q.null??0,Y)}}let x=new Map;{let S=H.map((Y)=>(Y===null?q.null:q[Y])??0),R=-(S.reduce((Y,a)=>Y+a,0)+D*Math.max(0,H.length-1))/2;for(let Y=0;Y<H.length;Y++){let a=H[Y],I=S[Y]??0,O=R+I/2;if(x.set(a,O),R+=I,Y<H.length-1)R+=D}}let v=0;for(let[S,T]of z.entries()){let R=w[S]??0,Y=new Map;for(let I of T){let O=Z(I),i=Y.get(O)??[];i.push(I),Y.set(O,i)}for(let I of H){let O=Y.get(I)??[];if(O.length===0)continue;let i=x.get(I);if(O.length===1){let N=O[0];k[N]=i,f[N]=v+R/2}else{let N=O.map((r)=>b(r)),V=N.reduce((r,m)=>r+m,0)+C*(O.length-1),h=i-V/2;for(let[r,m]of O.entries()){let $=N[r];k[m]=h+$/2,f[m]=v+R/2,h+=$+C}}}let a=K[S]??0;v+=R+A+a}let W=new Map;for(let S of B.edges){let T=S.ref.id;if(!W.has(T))W.set(T,[]);W.get(T).push(S)}for(let[,S]of W){if(S.length===0)continue;let T=S[0].ref,R=T.start,Y=T.end;if(R==null||Y==null)continue;let a=Math.round(((k[R]??0)+(k[Y]??0))/2),I=new Set;for(let O of S)I.add(O.src),I.add(O.dst);for(let O of I){if(O===R||O===Y)continue;if(B.nodeById.get(O)?.isDummy)k[O]=a}}return{x:k,y:f}}function jh0(u){let B=2166136261;for(let E=0;E<u.length;E++)B^=u.charCodeAt(E),B=Math.imul(B,16777619);return B>>>0}function Nh0(u){let B=u>>>0;return()=>{B+=1831565813;let E=B;return E=Math.imul(E^E>>>15,E|1),E^=E+Math.imul(E^E>>>7,E|61),((E^E>>>14)>>>0)/4294967296}}function ih0(u,B){let E=[...u],A=Nh0(B);for(let C=E.length-1;C>0;C--){let D=Math.floor(A()*(C+1));[E[C],E[D]]=[E[D],E[C]]}return E}function ah0(u,B){let E=0;for(let[A,C]of u.entries())E+=Math.abs(A-(B.get(C)??A));return E}function N60(u,B){let E=new Map;for(let[C,D]of u.entries())E.set(D,C);let A=0;for(let{a:C,b:D,weight:F}of B){let U=E.get(C),z=E.get(D);if(U==null||z==null)continue;A+=F*Math.abs(U-z)}return A}function Vh0(u){let B=aV(u);if(B.length<2)return[];let E=new Map(B.map((D,F)=>[D,F])),A=rz(u),C=new Map;for(let D of u.layout.edges??[]){if(D.isLayoutOnly)continue;let F=typeof D.start==="string"?D.start:void 0,U=typeof D.end==="string"?D.end:void 0;if(!F||!U||!u.nodeById.has(F)||!u.nodeById.has(U))continue;let z=A(F),k=A(U);if(!z||!k||z===k)continue;let f=E.get(z),l=E.get(k);if(f==null||l==null)continue;let[b,M]=f<=l?[z,k]:[k,z],Z=`${b}\x00${M}`,J=C.get(Z);if(J)J.weight++;else C.set(Z,{a:b,b:M,weight:1})}return[...C.values()]}function i60(u,B,E){let A=[...u],C=N60(A,B),D=!0,F=0,U=Math.max(1,A.length);while(D&&F<U){D=!1,F++;for(let z=0;z+1<A.length;z++){[A[z],A[z+1]]=[A[z+1],A[z]];let k=N60(A,B);if(k<C)C=k,D=!0;else[A[z],A[z+1]]=[A[z+1],A[z]]}}return{order:A,cost:C,sourceDistance:ah0(A,E)}}function hh0(u,B){if(u.cost!==B.cost)return u.cost<B.cost;return u.sourceDistance<B.sourceDistance}function mh0(u,B,E){let A=[...B].sort((C,D)=>C.a===D.a?C.b.localeCompare(D.b):C.a.localeCompare(D.a)).map(({a:C,b:D,weight:F})=>`${C}:${D}:${F}`).join("|");return jh0(`${u.join("|")}#${A}#${E}`)}function rh0(u,B={}){let E=aV(u);if(E.length<2)return E;let A=Vh0(u);if(A.length===0)return E;let C=new Map(E.map((U,z)=>[U,z])),D=i60(E,A,C),F=Math.max(0,B.restarts??Ph0);for(let U=0;U<F;U++){let z=mh0(E,A,U),k=ih0(E,z),f=i60(k,A,C);if(hh0(f,D))D=f}return D.order}function $h0(u,B){let E=B?.ignoreCrossLaneEdges??!0,A=B?.optimizeRanksByCrossings??!0,C=xl(u),D=B?.automaticLaneOrdering?rh0(C,{restarts:Ph0}):void 0,F=zh0(C),U=F.acyclic,z=E?Wh0(U,{compactSingleInput:B?.compactSingleInput??IV.DEFAULT_COMPACT_SINGLE_INPUT,ignoreCrossLaneEdges:!0,direction:B?.direction}):vh0(U,{compactSingleInput:B?.compactSingleInput??IV.DEFAULT_COMPACT_SINGLE_INPUT,ignoreCrossLaneEdges:!1,optimizeRanksByCrossings:A}),{layering:k,graphWithDummies:f}=Yh0(z,U),l=Oh0(k,f,{laneOrder:D}),b=Ih0(l,f,{layerGap:B?.layerGap,nodeGap:B?.nodeGap,direction:B?.direction,laneOrder:D});return{acyclic:U,reversed:F.reversed,layering:k,ordered:l,coordinates:b}}function a60(u,B,E){let A=u.x??0,C=u.y??0,D=B.x-A,F=B.y-C,U=Math.abs(D),z=Math.abs(F);if(U<e3&&z<e3)return E;let k=3;if(z>e3&&z*k>=U)return F>0?"bottom":"top";if(U>e3)return D>0?"right":"left";return E}function V60(u,B){return Math.abs(u.to-B.from)<e3||Math.abs(u.to-B.to)<e3?u.to:u.from}function bJ(u,B){return u.orient==="vertical"?{x:u.coord,y:B}:{x:B,y:u.coord}}function yh0(u,B){let E=u.nodes??[],A=u.edges??[],C=[];for(let F0 of A){if(F0.isLayoutOnly)continue;C.push({...F0,__originalEdge:F0})}let D=new Map,F=new Map,U=[],z=B==="LR";for(let F0 of E)D.set(F0.id,F0);let k=E.filter((F0)=>F0.isGroup&&!F0.parentId);for(let F0 of k){let u0={id:F0.id},M0=X((X0)=>{F.set(X0.id,u0),E.filter((S0)=>S0.parentId===X0.id).forEach(M0)},"assignLane");M0(F0)}let f=E.filter((F0)=>!F0.isGroup&&!F0.isEdgeLabel).map((F0)=>{let u0=F0.width??10,M0=F0.height??10,X0=F0.x??0,S0=F0.y??0,Y0=Xb4;return{nodeId:F0.id,minX:X0-u0/2-Y0,maxX:X0+u0/2+Y0,minY:S0-M0/2-Y0,maxY:S0+M0/2+Y0,visualXHalfExtent:z?M0/2+Y0:u0/2+Y0}}),l=X((F0,u0,M0,X0)=>{let S0=U.find((Y0)=>Y0.orientation===F0&&Math.abs(Y0.coord-u0)<1);if(!S0)S0={id:`pipe-${F0}-${u0.toFixed(0)}`,orientation:F0,coord:u0,spanMin:M0,spanMax:X0,tracks:[]},U.push(S0);return S0.spanMin=Math.min(S0.spanMin,M0),S0.spanMax=Math.max(S0.spanMax,X0),S0},"getOrAddPipe"),b=X((F0,u0)=>{let M0=F0.width??10,X0=F0.height??10,S0=F0.x??0,Y0=F0.y??0;switch(u0){case"top":return{x:S0,y:Y0-X0/2};case"bottom":return{x:S0,y:Y0+X0/2};case"left":return{x:S0-M0/2,y:Y0};case"right":return{x:S0+M0/2,y:Y0}}},"portForSide"),M=X((F0,u0,M0)=>b(F0,a60(F0,u0,M0?"bottom":"top")),"getOrthogonalPort"),Z=[],J=[],w=new Set,K=1000,Q=X((F0,u0,M0)=>{if(Z.length===0)return 0;let X0=Math.abs(u0.y-M0.y)<e3,S0=Math.abs(u0.x-M0.x)<e3;if(!X0&&!S0)return 0;let Y0=0;if(X0){let h0=u0.y,J0=Math.min(u0.x,M0.x)-e3,n=Math.max(u0.x,M0.x)+e3;if(n<=J0)return 0;for(let d of Z){if(d.edgeIndex===F0||d.orientation!=="vertical")continue;if(d.pipe.coord<J0||d.pipe.coord>n)continue;if(d.from-e3<=h0&&d.to+e3>=h0)Y0+=K}}else if(S0){let h0=u0.x,J0=Math.min(u0.y,M0.y)-e3,n=Math.max(u0.y,M0.y)+e3;if(n<=J0)return 0;for(let d of Z){if(d.edgeIndex===F0||d.orientation!=="horizontal")continue;if(d.pipe.coord<J0||d.pipe.coord>n)continue;if(d.from-e3<=h0&&d.to+e3>=h0)Y0+=K}}return Y0},"crossingPenalty"),G=C.map((F0,u0)=>{if(!F0.start||!F0.end)return{idx:u0,crossLane:0,dx:0,dy:0};let M0=D.get(F0.start),X0=D.get(F0.end),S0=F.get(F0.start),Y0=F.get(F0.end),h0=S0&&Y0&&S0.id!==Y0.id?1:0,J0=M0&&X0?Math.abs((X0.x??0)-(M0.x??0)):0,n=M0&&X0?Math.abs((X0.y??0)-(M0.y??0)):0;return{idx:u0,crossLane:h0,dx:J0,dy:n}}).sort((F0,u0)=>{if(F0.crossLane!==u0.crossLane)return u0.crossLane-F0.crossLane;let M0=F0.dx+F0.dy,X0=u0.dx+u0.dy;if(Math.abs(M0-X0)>1)return M0-X0;return F0.idx-u0.idx}).map((F0)=>F0.idx),L=X((F0,u0,M0,X0)=>{let S0=Math.min(F0.x,u0.x),Y0=Math.max(F0.x,u0.x),h0=Math.min(F0.y,u0.y),J0=Math.max(F0.y,u0.y);return!!f.find((d)=>{if(M0&&d.nodeId===M0)return!1;if(X0&&d.nodeId===X0)return!1;if(Math.abs(F0.x-u0.x)>e3)return d.minY<F0.y&&d.maxY>F0.y&&d.maxX>S0&&d.minX<Y0;else return d.minX<F0.x&&d.maxX>F0.x&&d.maxY>h0&&d.minY<J0})},"isSegmentBlocked"),H=new Map,q=new Map;for(let F0 of C){if(!F0.start||!F0.end||F0.start===F0.end)continue;q.set(F0.start,(q.get(F0.start)??0)+1),q.set(F0.end,(q.get(F0.end)??0)+1)}let x=X((F0,u0)=>a60(F0,u0,"bottom"),"determineSide"),v=new Map;for(let[F0,u0]of C.entries()){if(!u0.start||!u0.end||u0.start===u0.end)continue;if(u0.points&&u0.points.length>0)continue;let M0=D.get(u0.start),X0=D.get(u0.end);if(!M0||!X0)continue;let S0=(X0.x??0)-(M0.x??0),Y0=(X0.y??0)-(M0.y??0);v.set(F0,{edgeIdx:F0,srcId:u0.start,dstId:u0.end,srcSide:x(M0,{x:X0.x??0,y:X0.y??0}),dstSide:x(X0,{x:M0.x??0,y:M0.y??0}),absDx:Math.abs(S0),absDy:Math.abs(Y0),dxSign:Math.sign(S0),dySign:Math.sign(Y0)})}let W=X((F0)=>{if(F0.srcSide==="top"||F0.srcSide==="bottom")return F0.absDx===0?1/0:F0.absDy/F0.absDx;return F0.absDy===0?1/0:F0.absDx/F0.absDy},"preferenceStrength"),S=X((F0)=>{if(F0.srcSide==="top"||F0.srcSide==="bottom")return F0.dxSign>=0?"right":"left";return F0.dySign>=0?"bottom":"top"},"secondarySide"),T=new Map;for(let F0 of v.values()){let u0=`${F0.srcId}:${F0.srcSide}`;if(!T.has(u0))T.set(u0,[]);T.get(u0).push(F0)}let R=new Map,Y=X((F0,u0)=>`${F0}:${u0}`,"loadKey");for(let F0 of v.values())R.set(Y(F0.srcId,F0.srcSide),(R.get(Y(F0.srcId,F0.srcSide))??0)+1),R.set(Y(F0.dstId,F0.dstSide),(R.get(Y(F0.dstId,F0.dstSide))??0)+1);for(let F0 of T.values()){if(F0.length<2)continue;F0.sort((u0,M0)=>{let X0=W(u0),S0=W(M0);if(Math.abs(X0-S0)>0.000000001)return S0-X0;return u0.edgeIdx-M0.edgeIdx});for(let u0=1;u0<F0.length;u0++){let M0=F0[u0],X0=S(M0),S0=R.get(Y(M0.srcId,M0.srcSide))??0,Y0=R.get(Y(M0.srcId,X0))??0;if(Y0>=S0)continue;R.set(Y(M0.srcId,M0.srcSide),S0-1),R.set(Y(M0.srcId,X0),Y0+1),M0.srcSide=X0}}let a=X((F0)=>{let u0=F0?.shape;return u0==="question"||u0==="diamond"},"isDiamondNode"),I=new Map;for(let F0 of v.values()){if(!I.has(F0.dstId))I.set(F0.dstId,new Set);I.get(F0.dstId).add(F0.dstSide)}for(let F0 of v.values()){if(!a(D.get(F0.srcId)))continue;let u0=I.get(F0.srcId);if(!u0?.has(F0.srcSide))continue;let M0=S(F0);if(u0.has(M0)||(R.get(Y(F0.srcId,M0))??0)>0)continue;let X0=R.get(Y(F0.srcId,F0.srcSide))??0;R.set(Y(F0.srcId,F0.srcSide),Math.max(0,X0-1)),R.set(Y(F0.srcId,M0),1),F0.srcSide=M0}for(let F0 of v.values()){let{edgeIdx:u0,srcId:M0,dstId:X0,srcSide:S0,dstSide:Y0}=F0,h0=D.get(M0),J0=D.get(X0),n=`${M0}:${S0}:src`,d=S0==="top"||S0==="bottom"?J0.x??0:J0.y??0;if(!H.has(n))H.set(n,[]);H.get(n).push({edgeIdx:u0,oppositeCoord:d});let H0=`${X0}:${Y0}:dst`,o=Y0==="top"||Y0==="bottom"?h0.x??0:h0.y??0;if(!H.has(H0))H.set(H0,[]);H.get(H0).push({edgeIdx:u0,oppositeCoord:o})}let O=new Map,i=8;for(let[F0,u0]of H){if(u0.length<2)continue;u0.sort((p0,g0)=>p0.oppositeCoord-g0.oppositeCoord);let M0=F0.split(":"),X0=M0.slice(0,-2).join(":"),S0=M0[M0.length-2],Y0=M0[M0.length-1],h0=D.get(X0);if(!h0)continue;let n=S0==="left"||S0==="right"?h0.height??10:h0.width??10,d=h0.shape,o=d==="question"||d==="diamond"?n*0.3:n,E0=Math.min(20,Math.max(i,o/(u0.length+1))),c0=-(E0*(u0.length-1))/2;for(let[p0,g0]of u0.entries()){let Bu=c0+p0*E0,n0=`${g0.edgeIdx}:${Y0}`;O.set(n0,Bu)}}let N=X((F0)=>Boolean(C[F0]?.labelNodeId),"edgeHasLabelNode"),V=X((F0,u0)=>{if(!F0)return!1;return(H.get(`${F0}:${u0}:src`)??[]).some(({edgeIdx:M0})=>N(M0))||(H.get(`${F0}:${u0}:dst`)??[]).some(({edgeIdx:M0})=>N(M0))},"faceHasLabelNode"),h=X((F0,u0,M0)=>{if(u0==="top"||u0==="bottom")return{x:F0.x+M0,y:F0.y};else return{x:F0.x,y:F0.y+M0}},"applyPortOffset"),r=X((F0,u0,M0)=>{let X0=v.get(F0),S0={x:M0.x??0,y:M0.y??0},Y0={x:u0.x??0,y:u0.y??0},h0=X0?.srcSide??x(u0,S0),J0=X0?.dstSide??x(M0,Y0),n=X0?b(u0,X0.srcSide):M(u0,S0,!0),d=X0?b(M0,X0.dstSide):M(M0,Y0,!1),H0=O.get(`${F0}:src`),o=O.get(`${F0}:dst`);if(H0!==void 0)n=h(n,h0,H0);if(o!==void 0)d=h(d,J0,o);return{pSrcPort:n,pDstPort:d,srcSide:h0,dstSide:J0}},"portsForEdge");for(let F0 of G){let u0=C[F0];if(J[F0]=[],!u0.start||!u0.end)continue;if(u0.points&&u0.points.length>0)continue;if(u0.start===u0.end)continue;let M0=D.get(u0.start),X0=D.get(u0.end);if(!M0||!X0)continue;let{pSrcPort:S0,pDstPort:Y0,srcSide:h0,dstSide:J0}=r(F0,M0,X0),n={...S0},d={...Y0},H0=h0==="top"||h0==="bottom",o=J0==="top"||J0==="bottom";if(H0){let bu=S0.y>(M0.y??0);n.y=bu?S0.y+AA:S0.y-AA}else{let bu=S0.x>(M0.x??0);n.x=bu?S0.x+AA:S0.x-AA}if(o){let bu=Y0.y>(X0.y??0);d.y=bu?Y0.y+AA:Y0.y-AA}else{let bu=Y0.x>(X0.x??0);d.x=bu?Y0.x+AA:Y0.x-AA}let L0=X((bu,qu)=>{for(let nu of f){if(qu.includes(nu.nodeId))continue;if(bu.x>nu.minX&&bu.x<nu.maxX&&bu.y>nu.minY&&bu.y<nu.maxY)return{inside:!0,obstacle:nu}}return{inside:!1}},"isPointInObstacle"),E0=X((bu,qu,nu,c4,$4)=>{if($4){let E3=bu.y>(qu.y??0);return{x:(nu.x??0)>=bu.x?c4.maxX+lJ:c4.minX-lJ,y:E3?c4.maxY+FH:c4.minY-FH,leavesPositiveSide:E3}}let B3=bu.x>(qu.x??0),z1=(nu.y??0)>=bu.y;return{x:B3?c4.maxX+lJ:c4.minX-lJ,y:z1?c4.maxY+FH:c4.minY-FH,leavesPositiveSide:B3}},"obstacleDetour"),r0=[],c0=[u0.start,u0.end],p0=L0(n,c0);if(p0.inside&&p0.obstacle){let bu=p0.obstacle;if(H0){let qu=E0(S0,M0,X0,bu,!0);n.x=qu.x,n.y=qu.y;let nu=qu.leavesPositiveSide?Math.min(bu.minY-2,S0.y+AA):Math.max(bu.maxY+2,S0.y-AA);r0=[{x:S0.x,y:nu},{x:qu.x,y:nu},{x:qu.x,y:qu.y}]}else{let qu=E0(S0,M0,X0,bu,!1),nu=qu.leavesPositiveSide?Math.min(bu.minX-2,S0.x+AA):Math.max(bu.maxX+2,S0.x-AA);n.x=qu.x,n.y=qu.y,r0=[{x:nu,y:S0.y},{x:nu,y:qu.y},{x:qu.x,y:qu.y}]}}let g0=[],Bu=L0(d,c0);if(Bu.inside&&Bu.obstacle){let bu=Bu.obstacle;if(o){let qu=E0(Y0,X0,M0,bu,!0);d.x=qu.x,d.y=qu.y,g0=[{x:qu.x,y:qu.y},{x:Y0.x,y:qu.y}]}else{let qu=E0(Y0,X0,M0,bu,!1);d.x=qu.x,d.y=qu.y,g0=[{x:qu.x,y:qu.y},{x:qu.x,y:Y0.y}]}}if(r0.length===0&&g0.length===0){let bu=lJ,qu=Math.abs(n.x-d.x)<bu,nu=Math.abs(n.y-d.y)<bu,c4=O.get(`${F0}:src`)!==void 0||O.get(`${F0}:dst`)!==void 0,$4=(H.get(`${u0.start??""}:${h0}:src`)?.length??0)+(H.get(`${u0.start??""}:${h0}:dst`)?.length??0),B3=(H.get(`${u0.end??""}:${J0}:src`)?.length??0)+(H.get(`${u0.end??""}:${J0}:dst`)?.length??0),z1=$4>1||B3>1,E3=q.get(u0.start??"")??0,eu=q.get(u0.end??"")??0,au=$4>1&&V(u0.start,h0)||B3>1&&V(u0.end,J0),f4=$4<=1||E3<=2,U4=B3<=1||eu<=2;if((qu||nu)&&!c4&&(!z1||z1&&!au&&f4&&U4)){if(!L(S0,Y0,u0.start,u0.end)){u0.points=[{...S0},{...n},{...d},{...Y0}],w.add(F0);let O0=nu?"horizontal":"vertical",J1=nu?S0.y:S0.x,V0=nu?Math.min(S0.x,Y0.x):Math.min(S0.y,Y0.y),A3=nu?Math.max(S0.x,Y0.x):Math.max(S0.y,Y0.y),f6={id:`fast-path-${O0}-${J1.toFixed(0)}-${F0}`,orientation:O0,coord:J1,spanMin:V0,spanMax:A3,tracks:[]};Z.push({edgeIndex:F0,segmentIndex:0,orientation:O0,pipe:f6,trackIndex:0,from:V0,to:A3});continue}}}let n0=l("vertical",n.x,n.y,n.y);n.x=n0.coord;let e0=l("vertical",d.x,d.y,d.y);d.x=e0.coord;let t0=Math.min(n.x,d.x)-50,zu=Math.max(n.x,d.x)+50,W0=Math.min(n.y,d.y)-50,$u=Math.max(n.y,d.y)+50;for(let bu of f){let qu=Math.min(n.x,d.x),nu=Math.max(n.x,d.x),c4=Math.min(n.y,d.y),$4=Math.max(n.y,d.y);if(bu.minX<nu&&bu.maxX>qu&&bu.minY<$4&&bu.maxY>c4)t0=Math.min(t0,bu.minX-LV),zu=Math.max(zu,bu.maxX+LV),W0=Math.min(W0,bu.minY-LV),$u=Math.max($u,bu.maxY+LV)}for(let bu of f){if(bu.maxX<t0||bu.minX>zu||bu.maxY<W0||bu.minY>$u)continue;let qu=lJ;l("horizontal",bu.minY-qu,t0,zu),l("horizontal",bu.maxY+qu,t0,zu);let nu=FH;l("vertical",bu.minX-nu,W0,$u),l("vertical",bu.maxX+nu,W0,$u)}l("horizontal",n.y,t0,zu),l("horizontal",d.y,t0,zu);let i0=U.filter((bu)=>bu.orientation==="horizontal"&&bu.coord>=W0&&bu.coord<=$u),vu=U.filter((bu)=>bu.orientation==="vertical"&&bu.coord>=t0&&bu.coord<=zu),cu=X((bu,qu)=>`${bu.toFixed(1)},${qu.toFixed(1)}`,"getKey"),Du=cu(n.x,n.y),Nu=cu(d.x,d.y),du=new Map,Iu=new Map,x0=new Map,Tu=new Set,Vu=[];du.set(Du,0),x0.set(Du,"n"),Vu.push({key:Du,f:Math.hypot(d.x-n.x,d.y-n.y),pt:n}),Tu.add(Du);let Zu=[],I0=X((bu,qu)=>{return L(bu,qu,u0.start,u0.end)},"checkSegmentBlocked"),lu={x:d.x,y:n.y},Hu=I0(n,lu),Ru=I0(lu,d),W4=Hu||Ru,ru={x:n.x,y:d.y},q4=I0(n,ru),F3=I0(ru,d),i4=q4||F3;if(!W4)if(Math.abs(n.y-d.y)<e3||Math.abs(n.x-d.x)<e3)Zu=[n,d];else Zu=[n,lu,d];else if(!i4)if(Math.abs(n.x-d.x)<e3)Zu=[n,d];else Zu=[n,ru,d];if(Zu.length===0)while(Vu.length>0){Vu.sort((eu,au)=>eu.f-au.f);let bu=Vu.shift();if(Tu.delete(bu.key),bu.key===Nu){let eu=Nu,au=d;Zu=[au];while(Iu.has(eu)){let f4=Iu.get(eu);Zu.unshift(f4),au=f4,eu=cu(f4.x,f4.y)}break}let qu=bu.pt.x,nu=bu.pt.y,c4=vu.sort((eu,au)=>eu.coord-au.coord),$4=c4.findIndex((eu)=>Math.abs(eu.coord-qu)<1),B3=i0.sort((eu,au)=>eu.coord-au.coord),z1=B3.findIndex((eu)=>Math.abs(eu.coord-nu)<1),E3=[];if($4>0)E3.push({x:c4[$4-1].coord,y:nu});if($4>=0&&$4<c4.length-1)E3.push({x:c4[$4+1].coord,y:nu});if(z1>0)E3.push({x:qu,y:B3[z1-1].coord});if(z1>=0&&z1<B3.length-1)E3.push({x:qu,y:B3[z1+1].coord});for(let eu of E3){let au=Math.min(qu,eu.x),f4=Math.max(qu,eu.x),U4=Math.min(nu,eu.y),iu=Math.max(nu,eu.y);if(f.some((m2)=>{if(m2.nodeId===u0.start||m2.nodeId===u0.end)return!1;if(au!==f4)return m2.minY<nu&&m2.maxY>nu&&m2.maxX>au&&m2.minX<f4;else return m2.minX<qu&&m2.maxX>qu&&m2.maxY>U4&&m2.minY<iu}))continue;let O0=cu(eu.x,eu.y),J1=Math.abs(eu.x-qu)+Math.abs(eu.y-nu),V0=Q(F0,bu.pt,eu),A3=0,f6=d.x-n.x,h2=d.y-n.y,o9=eu.x-qu,CB=eu.y-nu;if(h2>10&&CB<-5||h2<-10&&CB>5)A3=Math.abs(CB)*100;if(f6>10&&o9<-5||f6<-10&&o9>5)A3+=Math.abs(o9)*50;let g3=0,S6=x0.get(bu.key)??"n",Q5=Math.abs(o9)>e3?"h":"v";if(S6!=="n"&&S6!==Q5)g3=50;let DB=J1+V0+A3+g3,t9=(du.get(bu.key)??1/0)+DB,Ez=Math.abs(d.x-eu.x)+Math.abs(d.y-eu.y);if(t9<(du.get(O0)??1/0))if(Iu.set(O0,bu.pt),du.set(O0,t9),x0.set(O0,Q5),!Tu.has(O0))Vu.push({key:O0,f:t9+Ez,pt:eu}),Tu.add(O0);else{let m2=Vu.findIndex((Az)=>Az.key===O0);if(m2!==-1)Vu[m2].f=t9+Ez}}}if(Zu.length===0)Zu=[n,{x:n.x,y:d.y},d];if(Zu.length>4){let bu=Zu[0],qu=Zu[Zu.length-1],nu=Math.min(bu.x,qu.x),c4=Math.max(bu.x,qu.x),$4=Math.min(bu.y,qu.y),B3=Math.max(bu.y,qu.y);for(let U4 of Zu)nu=Math.min(nu,U4.x),c4=Math.max(c4,U4.x),$4=Math.min($4,U4.y),B3=Math.max(B3,U4.y);let z1=c4>Math.max(bu.x,qu.x),E3=nu<Math.min(bu.x,qu.x);if(z){let U4=FH;if(z1){let iu=Math.max(bu.x,qu.x),X4=Math.min(bu.y,qu.y),O0=Math.max(bu.y,qu.y),J1=f.filter((V0)=>V0.minX<iu&&V0.maxX>iu&&V0.minY<O0&&V0.maxY>X4);if(J1.length>0){let V0=Math.max(bu.x,qu.x);for(let A3 of J1){let f6=(A3.minX+A3.maxX)/2;if(A3.visualXHalfExtent===void 0||isNaN(A3.visualXHalfExtent))continue;let h2=f6+A3.visualXHalfExtent+U4;V0=Math.max(V0,h2)}if(!isNaN(V0))c4=V0}}if(E3){let iu=f.filter((X4)=>X4.minX<Math.min(bu.x,qu.x)+U4&&X4.minY<Math.max(bu.y,qu.y)&&X4.maxY>Math.min(bu.y,qu.y));if(iu.length>0){let X4=Math.min(bu.x,qu.x);for(let O0 of iu){let V0=(O0.minX+O0.maxX)/2-O0.visualXHalfExtent-U4;X4=Math.min(X4,V0)}nu=X4}}}let eu=X((U4)=>{let iu=qu.y>bu.y,X4=f.filter((V0)=>{let A3=Math.min(bu.x,qu.x)<V0.maxX&&Math.max(bu.x,qu.x)>V0.minX,f6=Math.min(bu.y,qu.y)<V0.maxY&&Math.max(bu.y,qu.y)>V0.minY;return A3&&f6}),O0=X4;if(z&&X4.length>0){let V0=X4.filter((A3)=>A3.minX<U4&&A3.maxX>U4);if(V0.length>0)O0=V0}if(O0.length===0)return qu.y;let J1=lJ;if(iu){let A3=Math.max(...O0.map((f6)=>f6.maxY))+J1;if(A3<qu.y-e3)return A3}else{let A3=Math.min(...O0.map((f6)=>f6.minY))-J1;if(A3>qu.y+e3)return A3}return qu.y},"findBestReturnY"),au=X((U4)=>{let iu=eu(U4),X4={x:U4,y:bu.y},O0={x:U4,y:iu},J1={x:qu.x,y:iu},V0=I0(bu,X4),A3=I0(X4,O0),f6=I0(O0,J1),h2=iu!==qu.y?I0(J1,qu):!1;if(!V0&&!A3&&!f6&&!h2){if(Math.abs(iu-qu.y)<e3)return[bu,X4,O0,qu];return[bu,X4,O0,J1,qu]}return null},"trySimplifyWithDetourX"),f4=z1&&!E3?au(c4):E3&&!z1?au(nu):null;if(f4)Zu=f4}let b4=[S0,...r0,...Zu,...g0.reverse(),Y0];if(b4.length>=3){let bu=b4[b4.length-1],qu=b4[b4.length-2],nu=b4[b4.length-3],c4=Math.abs(nu.y-qu.y)<e3&&Math.abs(qu.y-bu.y)<e3,$4=Math.abs(nu.x-qu.x)<e3&&Math.abs(qu.x-bu.x)<e3;if(c4){let B3=Math.sign(qu.x-nu.x),z1=Math.sign(bu.x-nu.x);if(B3!==0&&B3===z1&&Math.abs(qu.x-nu.x)>Math.abs(bu.x-nu.x))b4.splice(-2,1)}else if($4){let B3=Math.sign(qu.y-nu.y),z1=Math.sign(bu.y-nu.y);if(B3!==0&&B3===z1&&Math.abs(qu.y-nu.y)>Math.abs(bu.y-nu.y))b4.splice(-2,1)}}let P4=[b4[0]];for(let bu=1;bu<b4.length-1;bu++){if(bu===1){P4.push(b4[bu]);continue}let qu=P4[P4.length-1],nu=b4[bu],c4=b4[bu+1];if(Math.abs(qu.y-nu.y)<e3&&Math.abs(nu.y-c4.y)<e3){let $4=nu.x>qu.x,B3=c4.x>nu.x;if($4!==B3){P4.push(nu);continue}continue}if(Math.abs(qu.x-nu.x)<e3&&Math.abs(nu.x-c4.x)<e3){let $4=nu.y>qu.y,B3=c4.y>nu.y;if($4!==B3){P4.push(nu);continue}continue}P4.push(nu)}P4.push(b4[b4.length-1]);for(let bu=0;bu<P4.length-1;bu++){let qu=P4[bu],nu=P4[bu+1],c4=Math.abs(qu.x-nu.x)<e3?"vertical":"horizontal",$4=c4==="vertical"?qu.x:qu.y,B3=c4==="vertical"?Math.min(qu.y,nu.y):Math.min(qu.x,nu.x),z1=c4==="vertical"?Math.max(qu.y,nu.y):Math.max(qu.x,nu.x),E3=l(c4,$4,B3,z1),eu={edgeIndex:F0,segmentIndex:bu,orientation:c4,pipe:E3,trackIndex:0,from:B3,to:z1};if(Z.push(eu),J[F0].push(Z.length-1),!E3.tracks[0])E3.tracks[0]={index:0,coord:E3.coord,segments:[]};E3.tracks[0].segments.push({edgeIndex:F0,segmentIndex:bu,from:B3,to:z1})}}let m=X((F0,u0)=>{return F0.from<u0.to&&u0.from<F0.to},"segmentsOverlap"),$=X((F0,u0,M0,X0)=>{let S0=!X0.segments.some((h0)=>(h0.edgeIndex!==u0.edgeIndex||h0.segmentIndex!==u0.segmentIndex)&&m(h0,F0)),Y0=!M0.segments.some((h0)=>(h0.edgeIndex!==F0.edgeIndex||h0.segmentIndex!==F0.segmentIndex)&&m(h0,u0));if(S0&&Y0)return F0.trackIndex=X0.index,u0.trackIndex=M0.index,M0.segments=[...M0.segments.filter((h0)=>h0.edgeIndex!==F0.edgeIndex||h0.segmentIndex!==F0.segmentIndex),{edgeIndex:u0.edgeIndex,segmentIndex:u0.segmentIndex,from:u0.from,to:u0.to}],X0.segments=[...X0.segments.filter((h0)=>h0.edgeIndex!==u0.edgeIndex||h0.segmentIndex!==u0.segmentIndex),{edgeIndex:F0.edgeIndex,segmentIndex:F0.segmentIndex,from:F0.from,to:F0.to}],!0;return!1},"trySwapSegmentsAcrossTracks"),y=X((F0)=>{let u0=F0.tracks.length;return F0.tracks[u0]={index:u0,coord:F0.coord,segments:[]},u0},"createNewTrack"),p=X((F0,u0)=>{let M0=F0.pipe.tracks[F0.trackIndex];M0.segments=M0.segments.filter((S0)=>S0.edgeIndex!==F0.edgeIndex||S0.segmentIndex!==F0.segmentIndex),F0.trackIndex=u0,F0.pipe.tracks[u0].segments.push({edgeIndex:F0.edgeIndex,segmentIndex:F0.segmentIndex,from:F0.from,to:F0.to})},"moveSegmentToTrack"),e=X((F0,u0)=>{let M0=J[F0.edgeIndex];for(let X0 of M0){let S0=Z[X0];if(S0.pipe===F0.pipe)p(S0,u0)}},"moveSegmentChainToTrack"),_=X((F0)=>{let u0=J[F0.edgeIndex],M0=u0.indexOf(Z.indexOf(F0)),X0=[];if(M0>0)X0.push(Z[u0[M0-1]]);if(M0<u0.length-1)X0.push(Z[u0[M0+1]]);return X0},"getAdjacentSegmentsAlongEdge"),b0=X((F0,u0)=>{if(F0.orientation===u0.orientation)return!1;let M0=F0.orientation==="horizontal"?F0:u0,X0=F0.orientation==="horizontal"?u0:F0;return X0.pipe.coord>M0.from&&X0.pipe.coord<M0.to&&M0.pipe.coord>X0.from&&M0.pipe.coord<X0.to},"haveAnyCrossing"),B0=X((F0,u0)=>{for(let M0 of F0.tracks)if(!M0.segments.some((S0)=>(S0.edgeIndex!==u0.edgeIndex||S0.segmentIndex!==u0.segmentIndex)&&m(S0,u0)))return M0.index;return-1},"findAvailableTrack"),k0=X((F0,u0)=>{if(F0.trackIndex===u0.trackIndex)return m(F0,u0);let M0=_(F0),X0=_(u0);return M0.some((S0)=>X0.some((Y0)=>b0(S0,Y0)))},"segmentsConflict"),f0=X((F0,u0,M0)=>{if($(F0,u0,F0.pipe.tracks[F0.trackIndex],u0.pipe.tracks[u0.trackIndex]))return;let X0=B0(F0.pipe,u0);M0(u0,X0!==-1?X0:y(F0.pipe))},"resolveTrackConflict"),D0=X((F0)=>{let u0=0;for(let M0=0;M0<F0.length;M0++)for(let X0=M0+1;X0<F0.length;X0++){let S0=F0[M0],Y0=F0[X0];if(S0.pipe!==Y0.pipe)continue;if(k0(S0,Y0))u0++,f0(S0,Y0,e)}return u0},"resolveHandleConflicts"),P0=new Map,q0=X((F0)=>{if(P0.has(F0))return P0.get(F0);let u0=J[F0];if(u0.length===0){let J0={dest:0,deviation:0,base:0,delta:0};return P0.set(F0,J0),J0}let X0=Z[u0[0]].pipe.coord,S0=X0;for(let J0=1;J0<u0.length;J0++){let n=Z[u0[J0]];if(n.orientation==="horizontal"){let{from:d,to:H0}=n;S0=Math.abs(d-X0)>Math.abs(H0-X0)?d:H0;break}}let Y0=Math.abs(S0-X0),h0={dest:S0,deviation:Y0,base:X0,delta:S0-X0};return P0.set(F0,h0),h0},"getDestInfo"),m0=X(()=>{let F0=0,u0=new Map;for(let[X0,S0]of C.entries()){if(J[X0].length===0)continue;if(!S0.start)continue;if(!u0.has(S0.start))u0.set(S0.start,[]);u0.get(S0.start).push(X0)}let M0=X((X0)=>{let S0=C[X0];if(!S0.start||!S0.end)return 0;let Y0=D.get(S0.start),h0=D.get(S0.end);if(!Y0||!h0)return 0;let J0=(h0.x??0)-(Y0.x??0),n=(h0.y??0)-(Y0.y??0);return Math.abs(J0)+Math.abs(n)},"getEdgeDistance");for(let X0 of u0.values()){X0.sort((Y0,h0)=>{let J0=q0(Y0),n=q0(h0);if(Math.abs(J0.deviation-n.deviation)>1)return J0.deviation-n.deviation;if(Math.abs(J0.dest-n.dest)>1)return J0.dest-n.dest;let d=M0(Y0),H0=M0(h0);if(Math.abs(d-H0)>1)return H0-d;let o=J[Y0].length,L0=J[h0].length;if(o!==L0)return o-L0;if(o===1){let E0=J[Y0][0],r0=J[h0][0];if(Z[E0]&&Z[r0]){let c0=Z[E0],p0=Z[r0],g0=Math.abs(c0.to-c0.from),Bu=Math.abs(p0.to-p0.from);if(Math.abs(g0-Bu)>1)return g0-Bu}}return 0});let S0=X0.map((Y0)=>Z[J[Y0][0]]);F0+=D0(S0)}return F0},"fixSourceHandleCrossings"),a0=X(()=>{let F0=0,u0=new Map;for(let[M0,X0]of C.entries()){if(J[M0].length===0)continue;if(!X0.end)continue;if(!u0.has(X0.end))u0.set(X0.end,[]);u0.get(X0.end).push(M0)}for(let M0 of u0.values()){M0.sort((S0,Y0)=>{let h0=X((d)=>{let H0=J[d];if(H0.length<2)return 0;let o=Z[H0[H0.length-2]];return Math.abs(o.to-o.from)},"getDist"),J0=h0(S0),n=h0(Y0);if(Math.abs(J0-n)>0.1)return J0-n;return S0-Y0});let X0=M0.map((S0)=>Z[J[S0][J[S0].length-1]]);F0+=D0(X0)}return F0},"fixTargetHandleCrossings"),_0=X(()=>{let F0=0;for(let u0 of U){let M0=[];for(let X0 of u0.tracks)for(let S0 of X0.segments){let Y0=J[S0.edgeIndex].find((h0)=>Z[h0].segmentIndex===S0.segmentIndex);if(Y0!==void 0)M0.push(Z[Y0])}M0.sort((X0,S0)=>X0.edgeIndex-S0.edgeIndex||X0.segmentIndex-S0.segmentIndex);for(let X0=0;X0<M0.length;X0++)for(let S0=X0+1;S0<M0.length;S0++){let Y0=M0[X0],h0=M0[S0];if(k0(Y0,h0))F0++,f0(Y0,h0,p)}}return F0},"fixPipeCrossings"),w0=0,v0=10;while(w0<v0){let F0=0;if(F0+=m0(),F0+=a0(),F0+=_0(),F0===0)break;w0++}let T0=new Map;for(let F0 of U){let u0=[];F0.tracks.forEach((X0)=>{X0.segments.forEach((S0)=>{u0.push({edgeIndex:S0.edgeIndex,segmentIndex:S0.segmentIndex,trackIndex:X0.index,from:S0.from,to:S0.to})})}),u0.sort((X0,S0)=>X0.from-S0.from);let M0=[];if(u0.length>0){let X0=[u0[0]],S0=u0[0].to;for(let Y0=1;Y0<u0.length;Y0++){let h0=u0[Y0];if(h0.from<S0)X0.push(h0),S0=Math.max(S0,h0.to);else M0.push(X0),X0=[h0],S0=h0.to}M0.push(X0)}for(let X0 of M0){let S0=new Set;X0.forEach((E0)=>S0.add(E0.trackIndex));let Y0=new Map;X0.forEach((E0)=>{let r0=q0(E0.edgeIndex);Y0.set(E0.trackIndex,(Y0.get(E0.trackIndex)??0)+r0.delta)});let h0=[...S0].filter((E0)=>(Y0.get(E0)??0)<-1),J0=[...S0].filter((E0)=>(Y0.get(E0)??0)>1),n=[...S0].filter((E0)=>Math.abs(Y0.get(E0)??0)<=1);h0.sort((E0,r0)=>(Y0.get(r0)??0)-(Y0.get(E0)??0)),J0.sort((E0,r0)=>(Y0.get(E0)??0)-(Y0.get(r0)??0));let d=X((E0,r0)=>{X0.filter((c0)=>c0.trackIndex===E0).forEach((c0)=>{let p0=w.has(c0.edgeIndex)?F0.coord:r0;T0.set(`${c0.edgeIndex}-${c0.segmentIndex}`,p0)})},"assignCoord"),H0=0;for(let E0 of h0)H0++,d(E0,F0.coord-H0*D60);if(n.length===0&&S0.size>0){let E0=[...S0].sort((p0,g0)=>Math.abs(Y0.get(p0)??0)-Math.abs(Y0.get(g0)??0))[0],r0=h0.indexOf(E0);if(r0!==-1)h0.splice(r0,1);let c0=J0.indexOf(E0);if(c0!==-1)J0.splice(c0,1);n.push(E0)}let o=0;for(let E0 of n){if(o===0)d(E0,F0.coord);else{let r0=o%2===1?1:-1,c0=Math.ceil(o/2);d(E0,F0.coord+r0*c0*D60*0.5)}o++}let L0=0;for(let E0 of J0)L0++,d(E0,F0.coord+L0*D60)}}for(let[F0,u0]of C.entries()){let M0=J[F0]??[];if(M0.length===0)continue;let X0=[],S0=D.get(u0.start),Y0=D.get(u0.end),{pSrcPort:h0,pDstPort:J0}=r(F0,S0,Y0),n=M0.map((o)=>{let L0=Z[o],E0=T0.get(`${L0.edgeIndex}-${L0.segmentIndex}`)??L0.pipe.coord;return{orient:L0.orientation,coord:E0,from:L0.from,to:L0.to}});X0.push(h0);for(let o=0;o<n.length;o++){let L0=n[o],E0=X0[X0.length-1],r0=L0.orient==="vertical"?E0.y:E0.x,c0=L0.orient==="vertical"?E0.x:E0.y,p0=n[o+1],g0=o<n.length-1;if(Math.abs(c0-L0.coord)>e3)X0.push(bJ(L0,r0));if(g0&&p0.orient===L0.orient){if(Math.abs(L0.coord-p0.coord)>e3){let Bu=L0.orient==="vertical"?(r0+p0.from)/2:V60(L0,p0);X0.push(bJ(L0,Bu),bJ(p0,Bu))}else if(o===0||o===n.length-2)X0.push(bJ(L0,V60(L0,p0)))}else if(g0)X0.push(bJ(L0,p0.coord));else{let Bu=Math.abs(L0.from-r0)<Math.abs(L0.to-r0)?L0.to:L0.from;X0.push(bJ(L0,Bu))}}let d=X0[X0.length-1];if(Math.abs(d.x-J0.x)>e3||Math.abs(d.y-J0.y)>e3)X0.push(J0);let H0=[];if(X0.length>0)H0.push(X0[0]);for(let o=1;o<X0.length;o++){let L0=X0[o],E0=H0[H0.length-1];if(Math.abs(L0.x-E0.x)>e3||Math.abs(L0.y-E0.y)>e3)H0.push(L0)}u0.points=H0}for(let F0 of C){let u0=F0.__originalEdge;if(u0&&F0.points)u0.points=F0.points}u.edges=(u.edges??[]).filter((F0)=>!F0.isLayoutOnly);let Z0=X((F0,u0)=>{let M0=u0.x??0,X0=u0.y??0,S0=u0.width??0,Y0=u0.height??0;if(S0<=0||Y0<=0)return F0;let h0=M0-S0/2,J0=M0+S0/2,n=X0-Y0/2,d=X0+Y0/2;if(F0.x<h0||F0.x>J0||F0.y<n||F0.y>d)return F0;let H0=F0.x-h0,o=J0-F0.x,L0=F0.y-n,E0=d-F0.y,r0=Math.min(H0,o,L0,E0);if(r0===H0)return{x:h0,y:F0.y};if(r0===o)return{x:J0,y:F0.y};if(r0===L0)return{x:F0.x,y:n};return{x:F0.x,y:d}},"nodeBoundaryClamp");for(let F0 of u.edges){let u0=F0.points;if(!u0||u0.length<2)continue;let{start:M0,end:X0}=F0,S0=M0?D.get(M0):void 0,Y0=X0?D.get(X0):void 0;if(S0)u0[0]=Z0(u0[0],S0);if(Y0)u0[u0.length-1]=Z0(u0[u0.length-1],Y0)}return u}function ch0(u){return u.direction??"TB"}function gh0(u){let B=WV0(u),E=u.config.flowchart?.nodeSpacing??40,A=u.config.flowchart?.rankSpacing??100,C=u.config.swimlane?.ignoreCrossLaneEdges??!0,D=u.config.swimlane?.optimizeRanksByCrossings??!0,F=u.config.swimlane?.automaticLaneOrdering??!1,U=ch0(u),{ordered:z,coordinates:k}=$h0(B,{nodeGap:E,layerGap:A,ignoreCrossLaneEdges:C,optimizeRanksByCrossings:D,automaticLaneOrdering:F,direction:U});YV0(B,z,k,{nodeGap:E,layerGap:A});for(let f of u.edges??[])delete f.points;yh0(u,U);for(let f of u.edges??[])if(!f.curve||f.curve==="basis")f.curve="rounded";return Fh0(u,U),Dh0(u),U}async function _h0(u,B){let E=B.select("g");PG(E,u.markers,u.type,u.diagramId),Ba(),Aa(),ei(),bV(),SV0(u);let A=RV0(u);u.nodes=A.nodes,u.edges=A.edges;let{groups:C}=await bV0(E,u);gh0(u),await XV0(u,C)}var FV0=5,KV=0.00001,QV=0.000001,Mb4=0.001,E60="__swimlane_default__",Zb4=21,UV0=20,Jb4="[EdgeLabelNodes]",W5=0.001,K3=0.001,wb4=0.5,zV0=4,vC=0.000001,Kb4=8,GV,Qb4,N4=0.001,S5=8,s3,A60,ql=0.001,Gb4=8,l8=0.001,kV0=10,HV=7,C60=0.000001,Hb4=8,fV0,Lb4=3,qb4,IV,lV0,Ph0=8,e3,Xb4=8,lJ=15,FH=15,LV=25,AA=20,D60=10;var ph0=g(()=>{W10();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();kE();X(bV0,"createGraphWithElements");X(xV,"buildSegmentList");X(MV0,"segmentIntersection");X(F60,"isHorizontalSeg");X(ZV0,"findEdgeIntersections");X(SC,"fmt");X(UH,"pointToString");X(JV0,"getArcSweepFlag");X(wV0,"applyMarkerOffsets");X(KV0,"emitJump");X(U60,"computeRoundedCorner");X(QV0,"rewriteEdgePath");X(GV0,"isStraightPath");X(HV0,"curveSupportsLineHops");X(LV0,"decodeDataPoints");X(qV0,"applyLineJumpsToSvg");X(XV0,"adjustLayout");X(xV0,"positionEdgeLabel");X(z60,"topLaneHorizontalPadding");X(vV0,"assignTopLaneTitleRect");X(SV0,"prepareLayoutForSwimlanes");X(WV0,"toGraphView");X(YV0,"writeBackToLayoutData");X(RV0,"createEdgeLabelNodes");X(h60,"measuredNodeRect");X(m60,"nodeBoundsInfoFor");X(CA,"samePoint");X(D1,"sameX");X(f1,"sameY");X(h9,"isHorizontalSegment");X(m9,"isVerticalSegment");X(JB,"overlapLength");X(IF,"sameAxisSegmentOverlapLength");X(kH,"orthogonalSegmentsForPoints");X(fE,"countOrthogonalBends");X(x1,"dedupeConsecutivePoints");X(r60,"classifyThreeSegmentRoute");X(jV,"segmentBoundsOverlapRect");X($60,"pointInsideRect");X(TV0,"rectContainsRect");X(vV,"rectsOverlap");X(k60,"inflateRect");X(zH,"rectFromCenterSize");X(b8,"rectOfNodeBounds");X(MJ,"portForRectSide");X(y60,"buildOrthogonalPortPath");X(c60,"buildSameSideTrackPath");X(NV,"collectRealNodeBounds");X(Xl,"collectNodeRectEntries");X(OV0,"collectLayoutNodeRects");X(g60,"getNodePairGeometry");X(D2,"segmentHitsAnyRect");X(_60,"orthogonalSegmentsCross");X(IV0,"sameAxisSegmentsOverlap");X(SV,"segmentConflictsWithAnyEdge");X(mz,"orthogonalSegmentsStrictlyCross");X(f60,"strictlyBetween");X(PV0,"isCollinearIntermediate");X(jV0,"simplifyPolylineOnce");X(WV,"orthogonalizePolyline");X(PF,"simplifyPolyline");X(n60,"endpointContextFor");X(NV0,"segmentEnterPoint");X(l60,"clipEndpoint");X(iV0,"clipEdgeEndpointsToNodeBoundaries");X(b60,"snapEndpointToBoundary");X(YV,"firstDistinctAdjacent");X(RV,"cornerClearanceRange");X(M60,"clampToCornerClearance");X(aV0,"intersectRanges");X(Z60,"clearanceRangeForSide");X(TV,"terminalSideForSegment");X(eS,"isHorizontalSide");X(VV0,"straightClearanceRange");X(J60,"clearStraightEndpointCornerAxis");X(p60,"clearStraightEndpointCornerConnections");X(hV0,"cornerClearedEndpoint");X(mV0,"moveCollinearEndpointRun");X(w60,"clearEndpointCornerConnection");X(K60,"borderSideForSegment");X(Q60,"leavesOutward");X(G60,"collapseOwnBorderStub");X(rV0,"snapAndCollapseEndpoints");X(H60,"prepareEdgeEndpointsForRenderer");X(d60,"buildNodeMap");X($V0,"resolveTopLevelGroupId");X(L60,"groupDepth");X(s60,"boundsForChildren");X(yV0,"applyGroupBounds");X(cV0,"recomputeNestedGroupBounds");X(OV,"mirrorAxis");X(gV0,"applyBtDirectionTransform");X(_V0,"applyLrDirectionTransform");GV=Kb4,Qb4=[0,GV,-GV,2*GV,-2*GV];X(nV0,"portSwapToLShape");X(pV0,"collapseShortTerminalStub");s3=kH,A60=X((u,B)=>D1(u,B,N4)||f1(u,B,N4),"orthogonallyAligned");X(dV0,"separateSharedRenderedTerminalLanes");X(sV0,"collapseRedundantRectangularDoglegs");X(q60,"liftObstacleHuggingSameSideRails");X(X60,"liftTopLaneTitleBandsAboveRails");X(x60,"shiftLeftLaneTitleBandsLeftOfRails");X(oV0,"swapDestinationTerminalTailsToReduceCrossings");X(tV0,"reassignCrossingExternalRailChannels");X(eV0,"shortcutRedundantOrthogonalJogs");X(uh0,"resolveRenderedOrthogonalCrossings");X(Bh0,"simplifyDetouredEdges");X(v60,"markerClearanceRectFor");X(Eh0,"normalizeRect");X(S60,"labelOverlapsOwnMarker");X(qV,"anchorLabelsToPolyline");fV0=Hb4/2;X(W60,"pairKey");X(Ah0,"straightenCollinearSiblingDetours");X(Y60,"nudgeSharedInteriorSubpaths");X(Ch0,"segmentsIntersect");X(Dh0,"validateSwimlanesLayout");X(Fh0,"postProcessSwimlaneLayout");X(xl,"normalizeGraph");X(o60,"incoming");X(Uh0,"buildSuccessorMap");X(t60,"buildSortedSuccessorMap");X(e60,"buildInDegreeMap");X(u90,"sortedZeroInDegreeNodes");X(iV,"buildPredecessorSuccessorMaps");X(B90,"buildLayersFromRanks");X(uW,"topoSortIfAcyclic");X(fH,"buildLayerIndex");X(E90,"countInversions");X(zh0,"removeCycles_DFS");X(kh0,"buildTopLaneMap");X(rz,"createTopLaneResolver");X(aV,"buildTopLaneOrder");X(A90,"resolveTopLaneOrder");qb4={EPSILON:0.000001},IV={GRAVITY_ITERATIONS:8,MAX_CROSSING_OPTIMIZATION_PASSES:4,DEFAULT_COMPACT_SINGLE_INPUT:!0},lV0={DEFAULT_LAYER_GAP:100,DEFAULT_NODE_GAP:40};X(fh0,"buildDrivingTree");X(lh0,"chooseParent");X(bh0,"buildAdjacency");X(Mh0,"assignComponents");X(Zh0,"computeBlocks");X(Jh0,"popBlock");X(wh0,"computeSubtreeCrossCounts");X(Kh0,"annotateMinimumLayers");X(C90,"compareByRankThenId");X(Qh0,"emitNodesInTreeOrder");X(Gh0,"deduplicateLayers");X(Hh0,"createChildOrderer");X(PV,"buildMultitreeLayerOrder");X(Lh0,"countCrossingsBetweenAdjacent");X(R60,"totalCrossings");X(qh0,"optimizeRanksByCrossings");X(Xh0,"adjustCrossLaneSources");X(xh0,"assignLayers_LongestPath");X(vh0,"assignLayers_Gravity");X(Sh0,"topoSortByGenerationIfAcyclic");X(Wh0,"assignLayers_LaneAwareCompact");X(Yh0,"makeProperLayering");X(T60,"median");X(O60,"barycenter");X(Rh0,"neighborPositionsFor");X(Th0,"currentOrderTieBreak");X(I60,"countCrossingsBetweenAdjacent");X(XV,"sortByHeuristic");X(P60,"reorderLayer");X(j60,"transposeImprove");X(Oh0,"orderLayers");X(Ih0,"assignCoordinates");X(jh0,"hashString");X(Nh0,"mulberry32");X(ih0,"deterministicShuffle");X(ah0,"sourceDistance");X(N60,"laneArrangementCost");X(Vh0,"buildWeightedLaneEdges");X(i60,"greedySwitch");X(hh0,"isBetterCandidate");X(mh0,"seedForRestart");X(rh0,"optimizeTopLaneOrder");X($h0,"sugiyamaLayout");e3=qb4.EPSILON;X(a60,"chooseOrthogonalSide");X(V60,"sharedLineEndpointCoord");X(bJ,"pointOnLine");X(yh0,"routeEdgesOrthogonal");X(ch0,"getSwimlaneDirection");X(gh0,"runSwimlaneLayoutCore");X(_h0,"render")});function N20(u,B){(B==null||B>u.length)&&(B=u.length);for(var E=0,A=Array(B);E<B;E++)A[E]=u[E];return A}function xb4(u){if(Array.isArray(u))return u}function vb4(u){if(Array.isArray(u))return N20(u)}function ml(u,B){if(!(u instanceof B))throw TypeError("Cannot call a class as a function")}function Sb4(u,B){for(var E=0;E<B.length;E++){var A=B[E];A.enumerable=A.enumerable||!1,A.configurable=!0,"value"in A&&(A.writable=!0),Object.defineProperty(u,x$0(A.key),A)}}function rl(u,B,E){return B&&Sb4(u.prototype,B),Object.defineProperty(u,"prototype",{writable:!1}),u}function Z8(u,B){var E=typeof Symbol<"u"&&u[Symbol.iterator]||u["@@iterator"];if(!E){if(Array.isArray(u)||(E=B50(u))||B){E&&(u=E);var A=0,C=function(){};return{s:C,n:function(){return A>=u.length?{done:!0}:{done:!1,value:u[A++]}},e:function(z){throw z},f:C}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var D,F=!0,U=!1;return{s:function(){E=E.call(u)},n:function(){var z=E.next();return F=z.done,z},e:function(z){U=!0,D=z},f:function(){try{F||E.return==null||E.return()}finally{if(U)throw D}}}}function X$0(u,B,E){return(B=x$0(B))in u?Object.defineProperty(u,B,{value:E,enumerable:!0,configurable:!0,writable:!0}):u[B]=E,u}function Wb4(u){if(typeof Symbol<"u"&&u[Symbol.iterator]!=null||u["@@iterator"]!=null)return Array.from(u)}function Yb4(u,B){var E=u==null?null:typeof Symbol<"u"&&u[Symbol.iterator]||u["@@iterator"];if(E!=null){var A,C,D,F,U=[],z=!0,k=!1;try{if(D=(E=E.call(u)).next,B===0){if(Object(E)!==E)return;z=!1}else for(;!(z=(A=D.call(E)).done)&&(U.push(A.value),U.length!==B);z=!0);}catch(f){k=!0,C=f}finally{try{if(!z&&E.return!=null&&(F=E.return(),Object(F)!==F))return}finally{if(k)throw C}}return U}}function Rb4(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Tb4(){throw TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function W2(u,B){return xb4(u)||Yb4(u,B)||B50(u,B)||Rb4()}function zh(u){return vb4(u)||Wb4(u)||B50(u)||Tb4()}function Ob4(u,B){if(typeof u!="object"||!u)return u;var E=u[Symbol.toPrimitive];if(E!==void 0){var A=E.call(u,B);if(typeof A!="object")return A;throw TypeError("@@toPrimitive must return a primitive value.")}return String(u)}function x$0(u){var B=Ob4(u,"string");return typeof B=="symbol"?B:B+""}function t2(u){return t2=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(B){return typeof B}:function(B){return B&&typeof Symbol=="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B},t2(u)}function B50(u,B){if(u){if(typeof u=="string")return N20(u,B);var E={}.toString.call(u).slice(8,-1);return E==="Object"&&u.constructor&&(E=u.constructor.name),E==="Map"||E==="Set"?Array.from(u):E==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(E)?N20(u,B):void 0}}function SW(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}function WW(){if(oh0)return D90;oh0=1;function u(B){var E=typeof B;return B!=null&&(E=="object"||E=="function")}return D90=u,D90}function eb4(){if(th0)return F90;th0=1;var u=typeof VV=="object"&&VV&&VV.Object===Object&&VV;return F90=u,F90}function Xh(){if(eh0)return U90;eh0=1;var u=eb4(),B=typeof self=="object"&&self&&self.Object===Object&&self,E=u||B||Function("return this")();return U90=E,U90}function uM4(){if(um0)return z90;um0=1;var u=Xh(),B=function(){return u.Date.now()};return z90=B,z90}function BM4(){if(Bm0)return k90;Bm0=1;var u=/\s/;function B(E){var A=E.length;while(A--&&u.test(E.charAt(A)));return A}return k90=B,k90}function EM4(){if(Em0)return f90;Em0=1;var u=BM4(),B=/^\s+/;function E(A){return A?A.slice(0,u(A)+1).replace(B,""):A}return f90=E,f90}function C50(){if(Am0)return l90;Am0=1;var u=Xh(),B=u.Symbol;return l90=B,l90}function AM4(){if(Cm0)return b90;Cm0=1;var u=C50(),B=Object.prototype,E=B.hasOwnProperty,A=B.toString,C=u?u.toStringTag:void 0;function D(F){var U=E.call(F,C),z=F[C];try{F[C]=void 0;var k=!0}catch(l){}var f=A.call(F);if(k)if(U)F[C]=z;else delete F[C];return f}return b90=D,b90}function CM4(){if(Dm0)return M90;Dm0=1;var u=Object.prototype,B=u.toString;function E(A){return B.call(A)}return M90=E,M90}function j$0(){if(Fm0)return Z90;Fm0=1;var u=C50(),B=AM4(),E=CM4(),A="[object Null]",C="[object Undefined]",D=u?u.toStringTag:void 0;function F(U){if(U==null)return U===void 0?C:A;return D&&D in Object(U)?B(U):E(U)}return Z90=F,Z90}function DM4(){if(Um0)return J90;Um0=1;function u(B){return B!=null&&typeof B=="object"}return J90=u,J90}function YW(){if(zm0)return w90;zm0=1;var u=j$0(),B=DM4(),E="[object Symbol]";function A(C){return typeof C=="symbol"||B(C)&&u(C)==E}return w90=A,w90}function FM4(){if(km0)return K90;km0=1;var u=EM4(),B=WW(),E=YW(),A=NaN,C=/^[-+]0x[0-9a-f]+$/i,D=/^0b[01]+$/i,F=/^0o[0-7]+$/i,U=parseInt;function z(k){if(typeof k=="number")return k;if(E(k))return A;if(B(k)){var f=typeof k.valueOf=="function"?k.valueOf():k;k=B(f)?f+"":f}if(typeof k!="string")return k===0?k:+k;k=u(k);var l=D.test(k);return l||F.test(k)?U(k.slice(2),l?2:8):C.test(k)?A:+k}return K90=z,K90}function UM4(){if(fm0)return Q90;fm0=1;var u=WW(),B=uM4(),E=FM4(),A="Expected a function",C=Math.max,D=Math.min;function F(U,z,k){var f,l,b,M,Z,J,w=0,K=!1,Q=!1,G=!0;if(typeof U!="function")throw TypeError(A);if(z=E(z)||0,u(k))K=!!k.leading,Q="maxWait"in k,b=Q?C(E(k.maxWait)||0,z):b,G="trailing"in k?!!k.trailing:G;function L(Y){var a=f,I=l;return f=l=void 0,w=Y,M=U.apply(I,a),M}function H(Y){return w=Y,Z=setTimeout(v,z),K?L(Y):M}function q(Y){var a=Y-J,I=Y-w,O=z-a;return Q?D(O,b-I):O}function x(Y){var a=Y-J,I=Y-w;return J===void 0||a>=z||a<0||Q&&I>=b}function v(){var Y=B();if(x(Y))return W(Y);Z=setTimeout(v,q(Y))}function W(Y){if(Z=void 0,G&&f)return L(Y);return f=l=void 0,M}function S(){if(Z!==void 0)clearTimeout(Z);w=0,f=J=l=Z=void 0}function T(){return Z===void 0?M:W(B())}function R(){var Y=B(),a=x(Y);if(f=arguments,l=this,J=Y,a){if(Z===void 0)return H(J);if(Q)return clearTimeout(Z),Z=setTimeout(v,z),L(J)}if(Z===void 0)Z=setTimeout(v,z);return M}return R.cancel=S,R.flush=T,R}return Q90=F,Q90}function bM4(u,B,E,A,C){var D=C*Math.PI/180,F=Math.cos(D)*(u-E)-Math.sin(D)*(B-A)+E,U=Math.sin(D)*(u-E)+Math.cos(D)*(B-A)+A;return{x:F,y:U}}function ZM4(u,B,E){if(E===0)return u;var A=(B.x1+B.x2)/2,C=(B.y1+B.y2)/2,D=B.w/B.h,F=1/D,U=bM4(u.x,u.y,A,C,E),z=MM4(U.x,U.y,A,C,D,F);return{x:z.x,y:z.y}}function vM4(){if(Jm0)return oV.exports;return Jm0=1,function(u,B){(function(){var E,A,C,D,F,U,z,k,f,l,b,M,Z,J,w;C=Math.floor,l=Math.min,A=function(K,Q){if(K<Q)return-1;if(K>Q)return 1;return 0},f=function(K,Q,G,L,H){var q;if(G==null)G=0;if(H==null)H=A;if(G<0)throw Error("lo must be non-negative");if(L==null)L=K.length;while(G<L)if(q=C((G+L)/2),H(Q,K[q])<0)L=q;else G=q+1;return[].splice.apply(K,[G,G-G].concat(Q)),Q},U=function(K,Q,G){if(G==null)G=A;return K.push(Q),J(K,0,K.length-1,G)},F=function(K,Q){var G,L;if(Q==null)Q=A;if(G=K.pop(),K.length)L=K[0],K[0]=G,w(K,0,Q);else L=G;return L},k=function(K,Q,G){var L;if(G==null)G=A;return L=K[0],K[0]=Q,w(K,0,G),L},z=function(K,Q,G){var L;if(G==null)G=A;if(K.length&&G(K[0],Q)<0)L=[K[0],Q],Q=L[0],K[0]=L[1],w(K,0,G);return Q},D=function(K,Q){var G,L,H,q,x,v;if(Q==null)Q=A;q=function(){v=[];for(var W=0,S=C(K.length/2);0<=S?W<S:W>S;0<=S?W++:W--)v.push(W);return v}.apply(this).reverse(),x=[];for(L=0,H=q.length;L<H;L++)G=q[L],x.push(w(K,G,Q));return x},Z=function(K,Q,G){var L;if(G==null)G=A;if(L=K.indexOf(Q),L===-1)return;return J(K,0,L,G),w(K,L,G)},b=function(K,Q,G){var L,H,q,x,v;if(G==null)G=A;if(H=K.slice(0,Q),!H.length)return H;D(H,G),v=K.slice(Q);for(q=0,x=v.length;q<x;q++)L=v[q],z(H,L,G);return H.sort(G).reverse()},M=function(K,Q,G){var L,H,q,x,v,W,S,T,R;if(G==null)G=A;if(Q*10<=K.length){if(q=K.slice(0,Q).sort(G),!q.length)return q;H=q[q.length-1],S=K.slice(Q);for(x=0,W=S.length;x<W;x++)if(L=S[x],G(L,H)<0)f(q,L,0,null,G),q.pop(),H=q[q.length-1];return q}D(K,G),R=[];for(v=0,T=l(Q,K.length);0<=T?v<T:v>T;0<=T?++v:--v)R.push(F(K,G));return R},J=function(K,Q,G,L){var H,q,x;if(L==null)L=A;H=K[G];while(G>Q){if(x=G-1>>1,q=K[x],L(H,q)<0){K[G]=q,G=x;continue}break}return K[G]=H},w=function(K,Q,G){var L,H,q,x,v;if(G==null)G=A;H=K.length,v=Q,q=K[Q],L=2*Q+1;while(L<H){if(x=L+1,x<H&&!(G(K[L],K[x])<0))L=x;K[Q]=K[L],Q=L,L=2*Q+1}return K[Q]=q,J(K,v,Q,G)},E=function(){K.push=U,K.pop=F,K.replace=k,K.pushpop=z,K.heapify=D,K.updateItem=Z,K.nlargest=b,K.nsmallest=M;function K(Q){this.cmp=Q!=null?Q:A,this.nodes=[]}return K.prototype.push=function(Q){return U(this.nodes,Q,this.cmp)},K.prototype.pop=function(){return F(this.nodes,this.cmp)},K.prototype.peek=function(){return this.nodes[0]},K.prototype.contains=function(Q){return this.nodes.indexOf(Q)!==-1},K.prototype.replace=function(Q){return k(this.nodes,Q,this.cmp)},K.prototype.pushpop=function(Q){return z(this.nodes,Q,this.cmp)},K.prototype.heapify=function(){return D(this.nodes,this.cmp)},K.prototype.updateItem=function(Q){return Z(this.nodes,Q,this.cmp)},K.prototype.clear=function(){return this.nodes=[]},K.prototype.empty=function(){return this.nodes.length===0},K.prototype.size=function(){return this.nodes.length},K.prototype.clone=function(){var Q=new K;return Q.nodes=this.nodes.slice(0),Q},K.prototype.toArray=function(){return this.nodes.slice(0)},K.prototype.insert=K.prototype.push,K.prototype.top=K.prototype.peek,K.prototype.front=K.prototype.peek,K.prototype.has=K.prototype.contains,K.prototype.copy=K.prototype.clone,K}(),function(K,Q){return u.exports=Q()}(this,function(){return E})}).call(xM4)}(oV),oV.exports}function SM4(){if(wm0)return H90;return wm0=1,H90=vM4(),H90}function eM4(u,B){if(u.length<3)throw Error("Need at least 3 vertices");var E=function(v,W){return{x:v.x+W.x,y:v.y+W.y}},A=function(v,W){return{x:v.x-W.x,y:v.y-W.y}},C=function(v,W){return{x:v.x*W,y:v.y*W}},D=function(v,W){return v.x*W.y-v.y*W.x},F=function(v){var W=tM4(v.x,v.y);return W===0?{x:0,y:0}:{x:v.x/W,y:v.y/W}},U=function(v){var W=0;for(var S=0;S<v.length;S++){var T=v[S],R=v[(S+1)%v.length];W+=T.x*R.y-R.x*T.y}return W/2},z=function(v,W,S,T){var R=A(W,v),Y=A(T,S),a=D(R,Y);if(Math.abs(a)<0.000000001)return E(v,C(R,0.5));var I=D(A(S,v),Y)/a;return E(v,C(R,I))},k=u.map(function(x){return{x:x.x,y:x.y}});if(U(k)<0)k.reverse();var f=k.length,l=[];for(var b=0;b<f;b++){var M=k[b],Z=k[(b+1)%f],J=A(Z,M),w=F({x:J.y,y:-J.x});l.push(w)}var K=l.map(function(x,v){var W=E(k[v],C(x,B)),S=E(k[(v+1)%f],C(x,B));return{p1:W,p2:S}}),Q=[];for(var G=0;G<f;G++){var L=K[(G-1+f)%f],H=K[G],q=z(L.p1,L.p2,H.p1,H.p2);Q.push(q)}return Q}function uZ4(u,B,E,A,C,D){var F=kZ4(u,B,E,A,C),U=eM4(F,D),z=QB();return U.forEach(function(k){return g$0(z,k.x,k.y)}),z}function x90(u,B){function E(l){var b=[];for(var M=0;M<l.length;M++){var Z=l[M],J=l[(M+1)%l.length],w={x:J.x-Z.x,y:J.y-Z.y},K={x:-w.y,y:w.x},Q=Math.sqrt(K.x*K.x+K.y*K.y);b.push({x:K.x/Q,y:K.y/Q})}return b}function A(l,b){var M=1/0,Z=-1/0,J=Z8(l),w;try{for(J.s();!(w=J.n()).done;){var K=w.value,Q=K.x*b.x+K.y*b.y;M=Math.min(M,Q),Z=Math.max(Z,Q)}}catch(G){J.e(G)}finally{J.f()}return{min:M,max:Z}}function C(l,b){return!(l.max<b.min||b.max<l.min)}var D=[].concat(zh(E(u)),zh(E(B))),F=Z8(D),U;try{for(F.s();!(U=F.n()).done;){var z=U.value,k=A(u,z),f=A(B,z);if(!C(k,f))return!1}}catch(l){F.e(l)}finally{F.f()}return!0}function Sh(u,B,E,A,C,D){var F;if(H9(u))F=u;else F=WH[u]||WH.euclidean;if(B===0&&H9(u))return F(C,D);else return F(B,E,A,C,D)}function Wh(){if(jm0)return S90;jm0=1;var u=Array.isArray;return S90=u,S90}function EJ4(){if(Nm0)return W90;Nm0=1;var u=Wh(),B=YW(),E=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,A=/^\w*$/;function C(D,F){if(u(D))return!1;var U=typeof D;if(U=="number"||U=="symbol"||U=="boolean"||D==null||B(D))return!0;return A.test(D)||!E.test(D)||F!=null&&D in Object(F)}return W90=C,W90}function AJ4(){if(im0)return Y90;im0=1;var u=j$0(),B=WW(),E="[object AsyncFunction]",A="[object Function]",C="[object GeneratorFunction]",D="[object Proxy]";function F(U){if(!B(U))return!1;var z=u(U);return z==A||z==C||z==E||z==D}return Y90=F,Y90}function CJ4(){if(am0)return R90;am0=1;var u=Xh(),B=u["__core-js_shared__"];return R90=B,R90}function DJ4(){if(Vm0)return T90;Vm0=1;var u=CJ4(),B=function(){var A=/[^.]+$/.exec(u&&u.keys&&u.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();function E(A){return!!B&&B in A}return T90=E,T90}function FJ4(){if(hm0)return O90;hm0=1;var u=Function.prototype,B=u.toString;function E(A){if(A!=null){try{return B.call(A)}catch(C){}try{return A+""}catch(C){}}return""}return O90=E,O90}function UJ4(){if(mm0)return I90;mm0=1;var u=AJ4(),B=DJ4(),E=WW(),A=FJ4(),C=/[\\^$.*+?()[\]{}|]/g,D=/^\[object .+?Constructor\]$/,F=Function.prototype,U=Object.prototype,z=F.toString,k=U.hasOwnProperty,f=RegExp("^"+z.call(k).replace(C,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function l(b){if(!E(b)||B(b))return!1;var M=u(b)?f:D;return M.test(A(b))}return I90=l,I90}function zJ4(){if(rm0)return P90;rm0=1;function u(B,E){return B==null?void 0:B[E]}return P90=u,P90}function M50(){if($m0)return j90;$m0=1;var u=UJ4(),B=zJ4();function E(A,C){var D=B(A,C);return u(D)?D:void 0}return j90=E,j90}function Yh(){if(ym0)return N90;ym0=1;var u=M50(),B=u(Object,"create");return N90=B,N90}function kJ4(){if(cm0)return i90;cm0=1;var u=Yh();function B(){this.__data__=u?u(null):{},this.size=0}return i90=B,i90}function fJ4(){if(gm0)return a90;gm0=1;function u(B){var E=this.has(B)&&delete this.__data__[B];return this.size-=E?1:0,E}return a90=u,a90}function lJ4(){if(_m0)return V90;_m0=1;var u=Yh(),B="__lodash_hash_undefined__",E=Object.prototype,A=E.hasOwnProperty;function C(D){var F=this.__data__;if(u){var U=F[D];return U===B?void 0:U}return A.call(F,D)?F[D]:void 0}return V90=C,V90}function bJ4(){if(nm0)return h90;nm0=1;var u=Yh(),B=Object.prototype,E=B.hasOwnProperty;function A(C){var D=this.__data__;return u?D[C]!==void 0:E.call(D,C)}return h90=A,h90}function MJ4(){if(pm0)return m90;pm0=1;var u=Yh(),B="__lodash_hash_undefined__";function E(A,C){var D=this.__data__;return this.size+=this.has(A)?0:1,D[A]=u&&C===void 0?B:C,this}return m90=E,m90}function ZJ4(){if(dm0)return r90;dm0=1;var u=kJ4(),B=fJ4(),E=lJ4(),A=bJ4(),C=MJ4();function D(F){var U=-1,z=F==null?0:F.length;this.clear();while(++U<z){var k=F[U];this.set(k[0],k[1])}}return D.prototype.clear=u,D.prototype.delete=B,D.prototype.get=E,D.prototype.has=A,D.prototype.set=C,r90=D,r90}function JJ4(){if(sm0)return $90;sm0=1;function u(){this.__data__=[],this.size=0}return $90=u,$90}function Fy0(){if(om0)return y90;om0=1;function u(B,E){return B===E||B!==B&&E!==E}return y90=u,y90}function Rh(){if(tm0)return c90;tm0=1;var u=Fy0();function B(E,A){var C=E.length;while(C--)if(u(E[C][0],A))return C;return-1}return c90=B,c90}function wJ4(){if(em0)return g90;em0=1;var u=Rh(),B=Array.prototype,E=B.splice;function A(C){var D=this.__data__,F=u(D,C);if(F<0)return!1;var U=D.length-1;if(F==U)D.pop();else E.call(D,F,1);return--this.size,!0}return g90=A,g90}function KJ4(){if(ur0)return _90;ur0=1;var u=Rh();function B(E){var A=this.__data__,C=u(A,E);return C<0?void 0:A[C][1]}return _90=B,_90}function QJ4(){if(Br0)return n90;Br0=1;var u=Rh();function B(E){return u(this.__data__,E)>-1}return n90=B,n90}function GJ4(){if(Er0)return p90;Er0=1;var u=Rh();function B(E,A){var C=this.__data__,D=u(C,E);if(D<0)++this.size,C.push([E,A]);else C[D][1]=A;return this}return p90=B,p90}function HJ4(){if(Ar0)return d90;Ar0=1;var u=JJ4(),B=wJ4(),E=KJ4(),A=QJ4(),C=GJ4();function D(F){var U=-1,z=F==null?0:F.length;this.clear();while(++U<z){var k=F[U];this.set(k[0],k[1])}}return D.prototype.clear=u,D.prototype.delete=B,D.prototype.get=E,D.prototype.has=A,D.prototype.set=C,d90=D,d90}function LJ4(){if(Cr0)return s90;Cr0=1;var u=M50(),B=Xh(),E=u(B,"Map");return s90=E,s90}function qJ4(){if(Dr0)return o90;Dr0=1;var u=ZJ4(),B=HJ4(),E=LJ4();function A(){this.size=0,this.__data__={hash:new u,map:new(E||B),string:new u}}return o90=A,o90}function XJ4(){if(Fr0)return t90;Fr0=1;function u(B){var E=typeof B;return E=="string"||E=="number"||E=="symbol"||E=="boolean"?B!=="__proto__":B===null}return t90=u,t90}function Th(){if(Ur0)return e90;Ur0=1;var u=XJ4();function B(E,A){var C=E.__data__;return u(A)?C[typeof A=="string"?"string":"hash"]:C.map}return e90=B,e90}function xJ4(){if(zr0)return u20;zr0=1;var u=Th();function B(E){var A=u(this,E).delete(E);return this.size-=A?1:0,A}return u20=B,u20}function vJ4(){if(kr0)return B20;kr0=1;var u=Th();function B(E){return u(this,E).get(E)}return B20=B,B20}function SJ4(){if(fr0)return E20;fr0=1;var u=Th();function B(E){return u(this,E).has(E)}return E20=B,E20}function WJ4(){if(lr0)return A20;lr0=1;var u=Th();function B(E,A){var C=u(this,E),D=C.size;return C.set(E,A),this.size+=C.size==D?0:1,this}return A20=B,A20}function YJ4(){if(br0)return C20;br0=1;var u=qJ4(),B=xJ4(),E=vJ4(),A=SJ4(),C=WJ4();function D(F){var U=-1,z=F==null?0:F.length;this.clear();while(++U<z){var k=F[U];this.set(k[0],k[1])}}return D.prototype.clear=u,D.prototype.delete=B,D.prototype.get=E,D.prototype.has=A,D.prototype.set=C,C20=D,C20}function RJ4(){if(Mr0)return D20;Mr0=1;var u=YJ4(),B="Expected a function";function E(A,C){if(typeof A!="function"||C!=null&&typeof C!="function")throw TypeError(B);var D=function(){var F=arguments,U=C?C.apply(this,F):F[0],z=D.cache;if(z.has(U))return z.get(U);var k=A.apply(this,F);return D.cache=z.set(U,k)||z,k};return D.cache=new(E.Cache||u),D}return E.Cache=u,D20=E,D20}function TJ4(){if(Zr0)return F20;Zr0=1;var u=RJ4(),B=500;function E(A){var C=u(A,function(F){if(D.size===B)D.clear();return F}),D=C.cache;return C}return F20=E,F20}function Uy0(){if(Jr0)return U20;Jr0=1;var u=TJ4(),B=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,E=/\\(\\)?/g,A=u(function(C){var D=[];if(C.charCodeAt(0)===46)D.push("");return C.replace(B,function(F,U,z,k){D.push(z?k.replace(E,"$1"):U||F)}),D});return U20=A,U20}function zy0(){if(wr0)return z20;wr0=1;function u(B,E){var A=-1,C=B==null?0:B.length,D=Array(C);while(++A<C)D[A]=E(B[A],A,B);return D}return z20=u,z20}function OJ4(){if(Kr0)return k20;Kr0=1;var u=C50(),B=zy0(),E=Wh(),A=YW(),C=u?u.prototype:void 0,D=C?C.toString:void 0;function F(U){if(typeof U=="string")return U;if(E(U))return B(U,F)+"";if(A(U))return D?D.call(U):"";var z=U+"";return z=="0"&&1/U==-1/0?"-0":z}return k20=F,k20}function ky0(){if(Qr0)return f20;Qr0=1;var u=OJ4();function B(E){return E==null?"":u(E)}return f20=B,f20}function fy0(){if(Gr0)return l20;Gr0=1;var u=Wh(),B=EJ4(),E=Uy0(),A=ky0();function C(D,F){if(u(D))return D;return B(D,F)?[D]:E(A(D))}return l20=C,l20}function Z50(){if(Hr0)return b20;Hr0=1;var u=YW();function B(E){if(typeof E=="string"||u(E))return E;var A=E+"";return A=="0"&&1/E==-1/0?"-0":A}return b20=B,b20}function IJ4(){if(Lr0)return M20;Lr0=1;var u=fy0(),B=Z50();function E(A,C){C=u(C,A);var D=0,F=C.length;while(A!=null&&D<F)A=A[B(C[D++])];return D&&D==F?A:void 0}return M20=E,M20}function PJ4(){if(qr0)return Z20;qr0=1;var u=IJ4();function B(E,A,C){var D=E==null?void 0:u(E,A);return D===void 0?C:D}return Z20=B,Z20}function iJ4(){if(Xr0)return J20;Xr0=1;var u=M50(),B=function(){try{var E=u(Object,"defineProperty");return E({},"",{}),E}catch(A){}}();return J20=B,J20}function aJ4(){if(xr0)return w20;xr0=1;var u=iJ4();function B(E,A,C){if(A=="__proto__"&&u)u(E,A,{configurable:!0,enumerable:!0,value:C,writable:!0});else E[A]=C}return w20=B,w20}function VJ4(){if(vr0)return K20;vr0=1;var u=aJ4(),B=Fy0(),E=Object.prototype,A=E.hasOwnProperty;function C(D,F,U){var z=D[F];if(!(A.call(D,F)&&B(z,U))||U===void 0&&!(F in D))u(D,F,U)}return K20=C,K20}function hJ4(){if(Sr0)return Q20;Sr0=1;var u=9007199254740991,B=/^(?:0|[1-9]\d*)$/;function E(A,C){var D=typeof A;return C=C==null?u:C,!!C&&(D=="number"||D!="symbol"&&B.test(A))&&(A>-1&&A%1==0&&A<C)}return Q20=E,Q20}function mJ4(){if(Wr0)return G20;Wr0=1;var u=VJ4(),B=fy0(),E=hJ4(),A=WW(),C=Z50();function D(F,U,z,k){if(!A(F))return F;U=B(U,F);var f=-1,l=U.length,b=l-1,M=F;while(M!=null&&++f<l){var Z=C(U[f]),J=z;if(Z==="__proto__"||Z==="constructor"||Z==="prototype")return F;if(f!=b){var w=M[Z];if(J=k?k(w,Z,M):void 0,J===void 0)J=A(w)?w:E(U[f+1])?[]:{}}u(M,Z,J),M=M[Z]}return F}return G20=D,G20}function rJ4(){if(Yr0)return H20;Yr0=1;var u=mJ4();function B(E,A,C){return E==null?E:u(E,A,C)}return H20=B,H20}function cJ4(){if(Rr0)return L20;Rr0=1;function u(B,E){var A=-1,C=B.length;E||(E=Array(C));while(++A<C)E[A]=B[A];return E}return L20=u,L20}function gJ4(){if(Tr0)return q20;Tr0=1;var u=zy0(),B=cJ4(),E=Wh(),A=YW(),C=Uy0(),D=Z50(),F=ky0();function U(z){if(E(z))return u(z,D);return A(z)?[z]:B(C(F(z)))}return q20=U,q20}function w50(u,B,E,A){var C=[],D=new OH,F=u.cy(),U=F.hasCompoundNodes();for(var z=0;z<u.length;z++){var k=u[z];if(E)C.push(k);else if(U)A(C,D,k)}while(C.length>0){var f=C.shift();if(B(f),D.add(f.id()),U)A(C,D,f)}return u}function by0(u,B,E){if(E.isParent()){var A=E._private.children;for(var C=0;C<A.length;C++){var D=A[C];if(!B.has(D.id()))u.push(D)}}}function My0(u,B,E){if(E.isChild()){var A=E._private.parent;if(!B.has(A.id()))u.push(A)}}function lw4(u,B,E){My0(u,B,E),by0(u,B,E)}function X20(u){return function(B){var E=this;if(B===void 0)B=!0;if(E.length===0)return;if(E.isNode()&&!E.removed()){var A=0,C=E[0],D=C._private.edges;for(var F=0;F<D.length;F++){var U=D[F];if(!B&&U.isLoop())continue;A+=u(C,U)}return A}else return}}function bH(u,B){return function(E){var A,C=this.nodes();for(var D=0;D<C.length;D++){var F=C[D],U=F[u](E);if(U!==void 0&&(A===void 0||B(U,A)))A=U}return A}}function AW(){return!1}function gV(){return!0}function Ih(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Ow4,B=arguments.length>1?arguments[1]:void 0;for(var E=0;E<ar0.length;E++){var A=ar0[E];this[A]=u[A]||Xy0[A]}this.context=B||this.context,this.listeners=[],this.emitting=0}function Yy0(u,B,E){var A=E._private,C=A.styleCache=A.styleCache||[],D;if((D=C[u])!=null)return D;else return D=C[u]=B(E),D}function Ph(u,B){return u=LJ(u),function(A){return Yy0(u,B,A)}}function jh(u,B){u=LJ(u);var E=function(C){return B.call(C)};return function(){var C=this[0];if(C)return Yy0(u,E,C)}}function v20(u,B){var E=u._private,A=E.data.parent?u.parents():null;if(A)for(var C=0;C<A.length;C++){var D=A[C];if(!B(D))return!1}return!0}function K50(u){var B=u.ok,E=u.edgeOkViaNode||u.ok,A=u.parentOk||u.ok;return function(){var C=this.cy();if(!C.styleEnabled())return!0;var D=this[0],F=C.hasCompoundNodes();if(D){var U=D._private;if(!B(D))return!1;if(D.isNode())return!F||v20(D,A);else{var{source:z,target:k}=U;return E(z)&&(!F||v20(z,E))&&(z===k||E(k)&&(!F||v20(k,E)))}}}}function hr0(u){return function(){var B=arguments,E=[];if(B.length===2){var A=B[0],C=B[1];this.on(u.event,A,C)}else if(B.length===1&&H9(B[0])){var D=B[0];this.on(u.event,D)}else if(B.length===0||B.length===1&&q6(B[0])){var F=B.length===1?B[0]:null;for(var U=0;U<this.length;U++){var z=this[U],k=!u.ableField||z._private[u.ableField],f=z._private[u.field]!=u.value;if(u.overrideAble){var l=u.overrideAble(z);if(l!==void 0){if(k=l,!l)return this}}if(k){if(z._private[u.field]=u.value,f)E.push(z)}}var b=this.spawn(E);if(b.updateStyle(),b.emit(u.event),F)b.emit(F)}return this}}function jH(u){Pl[u.field]=function(){var B=this[0];if(B){if(u.overrideField){var E=u.overrideField(B);if(E!==void 0)return E}return B._private[u.field]}},Pl[u.on]=hr0({event:u.on,field:u.field,ableField:u.ableField,overrideAble:u.overrideAble,value:!0}),Pl[u.off]=hr0({event:u.off,field:u.field,ableField:u.ableField,overrideAble:u.overrideAble,value:!1})}function yr0(u){return function(E){var A=[];for(var C=0;C<this.length;C++){var D=this[C],F=D._private[u.attr];if(F)A.push(F)}return this.spawn(A,!0).filter(E)}}function cr0(u){return function(E){var A=[],C=this._private.cy,D=u||{};if(p4(E))E=C.$(E);for(var F=0;F<E.length;F++){var U=E[F]._private.edges;for(var z=0;z<U.length;z++){var k=U[z],f=k._private.data,l=this.hasElementWithId(f.source)&&E.hasElementWithId(f.target),b=E.hasElementWithId(f.source)&&this.hasElementWithId(f.target),M=l||b;if(!M)continue;if(D.thisIsSrc||D.thisIsTgt){if(D.thisIsSrc&&!l)continue;if(D.thisIsTgt&&!b)continue}A.push(k)}}return this.spawn(A,!0)}}function gr0(u){var B={codirected:!1};return u=k3({},B,u),function(A){var C=[],D=this.edges(),F=u;for(var U=0;U<D.length;U++){var z=D[U],k=z._private,f=k.source,l=f._private.data.id,b=k.data.target,M=f._private.edges;for(var Z=0;Z<M.length;Z++){var J=M[Z],w=J._private.data,K=w.target,Q=w.source,G=K===b&&Q===l,L=l===K&&b===Q;if(F.codirected&&G||!F.codirected&&(G||L))C.push(J)}}return this.spawn(C,!0).filter(A)}}function $w4(u,B,E,A){var C=4,D=0.001,F=0.0000001,U=10,z=11,k=1/(z-1),f=typeof Float32Array<"u";if(arguments.length!==4)return!1;for(var l=0;l<4;++l)if(typeof arguments[l]!=="number"||isNaN(arguments[l])||!isFinite(arguments[l]))return!1;u=Math.min(u,1),E=Math.min(E,1),u=Math.max(u,0),E=Math.max(E,0);var b=f?new Float32Array(z):Array(z);function M(S,T){return 1-3*T+3*S}function Z(S,T){return 3*T-6*S}function J(S){return 3*S}function w(S,T,R){return((M(T,R)*S+Z(T,R))*S+J(T))*S}function K(S,T,R){return 3*M(T,R)*S*S+2*Z(T,R)*S+J(T)}function Q(S,T){for(var R=0;R<C;++R){var Y=K(T,u,E);if(Y===0)return T;var a=w(T,u,E)-S;T-=a/Y}return T}function G(){for(var S=0;S<z;++S)b[S]=w(S*k,u,E)}function L(S,T,R){var Y,a,I=0;do if(a=T+(R-T)/2,Y=w(a,u,E)-S,Y>0)R=a;else T=a;while(Math.abs(Y)>F&&++I<U);return a}function H(S){var T=0,R=1,Y=z-1;for(;R!==Y&&b[R]<=S;++R)T+=k;--R;var a=(S-b[R])/(b[R+1]-b[R]),I=T+a*k,O=K(I,u,E);if(O>=D)return Q(S,I);else if(O===0)return I;else return L(S,T,T+k)}var q=!1;function x(){if(q=!0,u!==B||E!==A)G()}var v=function(T){if(!q)x();if(u===B&&E===A)return T;if(T===0)return 0;if(T===1)return 1;return w(H(T),B,A)};v.getControlPoints=function(){return[{x:u,y:B},{x:E,y:A}]};var W="generateBezier("+[u,B,E,A]+")";return v.toString=function(){return W},v}function _r0(u,B,E,A,C){if(A===1)return E;if(B===E)return E;var D=C(B,E,A);if(u==null)return D;if(u.roundValue||u.color)D=Math.round(D);if(u.min!==void 0)D=Math.max(D,u.min);if(u.max!==void 0)D=Math.min(D,u.max);return D}function nr0(u,B){if(u.pfValue!=null||u.value!=null)if(u.pfValue!=null&&(B==null||B.type.units!=="%"))return u.pfValue;else return u.value;else return u}function MH(u,B,E,A,C){var D=C!=null?C.type:null;if(E<0)E=0;else if(E>1)E=1;var F=nr0(u,C),U=nr0(B,C);if(J4(F)&&J4(U))return _r0(D,F,U,E,A);else if(q6(F)&&q6(U)){var z=[];for(var k=0;k<U.length;k++){var f=F[k],l=U[k];if(f!=null&&l!=null){var b=_r0(D,f,l,E,A);z.push(b)}else z.push(l)}return z}return}function cw4(u,B,E,A){var C=!A,D=u._private,F=B._private,U=F.easing,z=F.startTime,k=A?u:u.cy(),f=k.style();if(!F.easingImpl)if(U==null)F.easingImpl=Eh.linear;else{var l;if(p4(U)){var b=f.parse("transition-timing-function",U);l=b.value}else l=U;var M,Z;if(p4(l))M=l,Z=[];else M=l[1],Z=l.slice(2).map(function(V){return+V});if(Z.length>0){if(M==="spring")Z.push(F.duration);F.easingImpl=Eh[M].apply(null,Z)}else F.easingImpl=Eh[M]}var J=F.easingImpl,w;if(F.duration===0)w=1;else w=(E-z)/F.duration;if(F.applying)w=F.progress;if(w<0)w=0;else if(w>1)w=1;if(F.delay==null){var{startPosition:K,position:Q}=F;if(Q&&C&&!u.locked()){var G={};if(CW(K.x,Q.x))G.x=MH(K.x,Q.x,w,J);if(CW(K.y,Q.y))G.y=MH(K.y,Q.y,w,J);u.position(G)}var{startPan:L,pan:H}=F,q=D.pan,x=H!=null&&A;if(x){if(CW(L.x,H.x))q.x=MH(L.x,H.x,w,J);if(CW(L.y,H.y))q.y=MH(L.y,H.y,w,J);u.emit("pan")}var{startZoom:v,zoom:W}=F,S=W!=null&&A;if(S){if(CW(v,W))D.zoom=KW(D.minZoom,MH(v,W,w,J),D.maxZoom);u.emit("zoom")}if(x||S)u.emit("viewport");var T=F.style;if(T&&T.length>0&&C){for(var R=0;R<T.length;R++){var Y=T[R],a=Y.name,I=Y,O=F.startStyle[a],i=f.properties[O.name],N=MH(O,I,w,J,i);f.overrideBypass(u,a,N)}u.emit("style")}}return F.progress=w,w}function CW(u,B){if(u==null||B==null)return!1;if(J4(u)&&J4(B))return!0;else if(u&&B)return!0;return!1}function gw4(u,B,E,A){var C=B._private;C.started=!0,C.startTime=E-C.progress*C.duration}function pr0(u,B){var E=B._private.aniEles,A=[];function C(f,l){var b=f._private,M=b.animation.current,Z=b.animation.queue,J=!1;if(M.length===0){var w=Z.shift();if(w)M.push(w)}var K=function(q){for(var x=q.length-1;x>=0;x--){var v=q[x];v()}q.splice(0,q.length)};for(var Q=M.length-1;Q>=0;Q--){var G=M[Q],L=G._private;if(L.stopped){M.splice(Q,1),L.hooked=!1,L.playing=!1,L.started=!1,K(L.frames);continue}if(!L.playing&&!L.applying)continue;if(L.playing&&L.applying)L.applying=!1;if(!L.started)gw4(f,G,u);if(cw4(f,G,u,l),L.applying)L.applying=!1;if(K(L.frames),L.step!=null)L.step(u);if(G.completed())M.splice(Q,1),L.hooked=!1,L.playing=!1,L.started=!1,K(L.completes);J=!0}if(!l&&M.length===0&&Z.length===0)A.push(f);return J}var D=!1;for(var F=0;F<E.length;F++){var U=E[F],z=C(U);D=D||z}var k=C(B,!0);if(D||k)if(E.length>0)B.notify("draw",E);else B.notify("draw");E.unmerge(A),B.emit("step")}function Ty0(u){this.options=k3({},ew4,uK4,u)}function Oy0(u){this.options=k3({},BK4,u)}function Iy0(u){this.options=k3({},EK4,u)}function ah(u){this.options=k3({},AK4,u),this.options.layout=this;var B=this.options.eles.nodes(),E=this.options.eles.edges(),A=E.filter(function(C){var D=C.source().data("id"),F=C.target().data("id"),U=B.some(function(k){return k.data("id")===D}),z=B.some(function(k){return k.data("id")===F});return!U||!z});this.options.eles=this.options.eles.not(A)}function iy0(u){this.options=k3({},QK4,u)}function H50(u){this.options=k3({},GK4,u)}function ay0(u){this.options=k3({},HK4,u)}function Vy0(u){this.options=k3({},LK4,u)}function hy0(u){this.options=u,this.notifications=0}function $y0(u,B){if(B.radius===0)u.lineTo(B.cx,B.cy);else u.arc(B.cx,B.cy,B.radius,B.startAngle,B.endAngle,B.counterClockwise)}function q50(u,B,E,A){var C=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;if(A===0||B.radius===0)return{cx:B.x,cy:B.y,radius:0,startX:B.x,startY:B.y,stopX:B.x,stopY:B.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0};return xK4(u,B,E,A,C),{cx:_20,cy:n20,radius:KJ,startX:my0,startY:ry0,stopX:p20,stopY:d20,startAngle:iF.ang+Math.PI/2*GJ,endAngle:DA.ang-Math.PI/2*GJ,counterClockwise:Dh}}function yy0(u){var B=[];if(u==null)return;for(var E=0;E<u.length;E+=2){var A=u[E],C=u[E+1];B.push({x:A,y:C})}return B}function SK4(u,B,E){var A=function(k,f,l,b){return Y5(k,f,l,b)},C=B._private,D=C.rstyle.bezierPts;for(var F=0;F<u.bezierProjPcts.length;F++){var U=u.bezierProjPcts[F];D.push({x:A(E[0],E[2],E[4],U),y:A(E[1],E[3],E[5],U)})}}function CQ4(u,B){for(var E=0;E<B.length;E++){var A=B[E];u.lineTo(A.x,A.y)}}function DQ4(u,B,E){var A;for(var C=0;C<B.length;C++){var D=B[C];if(C===0)A=D;u.lineTo(D.x,D.y)}u.quadraticCurveTo(E.x,E.y,A.x,A.y)}function b$0(u,B,E){if(u.beginPath)u.beginPath();var A=B;for(var C=0;C<A.length;C++){var D=A[C];u.lineTo(D.x,D.y)}var F=E,U=E[0];u.moveTo(U.x,U.y);for(var C=1;C<F.length;C++){var D=F[C];u.lineTo(D.x,D.y)}if(u.closePath)u.closePath()}function FQ4(u,B,E,A,C){if(u.beginPath)u.beginPath();u.arc(E,A,C,0,Math.PI*2,!1);var D=B,F=D[0];u.moveTo(F.x,F.y);for(var U=0;U<D.length;U++){var z=D[U];u.lineTo(z.x,z.y)}if(u.closePath)u.closePath()}function UQ4(u,B,E,A){u.arc(B,E,A,0,Math.PI*2,!1)}function MQ4(u,B,E,A,C){var D=Math.min(A,C),F=D/2,U=B+A/2,z=E+C/2;u.beginPath(),u.arc(U,z,F,0,Math.PI*2),u.closePath()}function M$0(u,B,E,A,C){var D=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5,F=Math.min(D,A/2,C/2);u.beginPath(),u.moveTo(B+F,E),u.lineTo(B+A-F,E),u.quadraticCurveTo(B+A,E,B+A,E+F),u.lineTo(B+A,E+C-F),u.quadraticCurveTo(B+A,E+C,B+A-F,E+C),u.lineTo(B+F,E+C),u.quadraticCurveTo(B,E+C,B,E+C-F),u.lineTo(B,E+F),u.quadraticCurveTo(B,E,B+F,E),u.closePath()}function Z$0(u,B,E){var A=u.createShader(B);if(u.shaderSource(A,E),u.compileShader(A),!u.getShaderParameter(A,u.COMPILE_STATUS))throw Error(u.getShaderInfoLog(A));return A}function JQ4(u,B,E){var A=Z$0(u,u.VERTEX_SHADER,B),C=Z$0(u,u.FRAGMENT_SHADER,E),D=u.createProgram();if(u.attachShader(D,A),u.attachShader(D,C),u.linkProgram(D),!u.getProgramParameter(D,u.LINK_STATUS))throw Error("Could not initialize shaders");return D}function wQ4(u,B,E){if(E===void 0)E=B;var A=u.makeOffscreenCanvas(B,E),C=A.context=A.getContext("2d");return A.clear=function(){return C.clearRect(0,0,A.width,A.height)},A.clear(),A}function v50(u){var B=u.pixelRatio,E=u.cy.zoom(),A=u.cy.pan();return{zoom:E*B,pan:{x:A.x*B,y:A.y*B}}}function KQ4(u){var B=u.pixelRatio,E=u.cy.zoom();return E*B}function QQ4(u,B,E,A,C){var D=A*E+B.x,F=C*E+B.y;return F=Math.round(u.canvasHeight-F),[D,F]}function GQ4(u,B){if(B.picking)return!0;else{if(u.pstyle("background-fill").value!=="solid")return!1;if(u.pstyle("background-image").strValue!=="none")return!1;if(u.pstyle("border-width").value===0)return!0;if(u.pstyle("border-opacity").value===0)return!0;if(u.pstyle("border-style").value!=="solid")return!1;return!0}}function HQ4(u,B){if(u.length!==B.length)return!1;for(var E=0;E<u.length;E++)if(u[E]!==B[E])return!1;return!0}function JJ(u,B,E){var A=u[0]/255,C=u[1]/255,D=u[2]/255,F=B,U=E||[,,,,];return U[0]=A*F,U[1]=C*F,U[2]=D*F,U[3]=F,U}function wH(u,B){var E=B||[,,,,];return E[0]=(u>>0&255)/255,E[1]=(u>>8&255)/255,E[2]=(u>>16&255)/255,E[3]=(u>>24&255)/255,E}function LQ4(u){return u[0]+(u[1]<<8)+(u[2]<<16)+(u[3]<<24)}function qQ4(u,B){var E=u.createTexture();return E.buffer=function(A){u.bindTexture(u.TEXTURE_2D,E),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_WRAP_S,u.CLAMP_TO_EDGE),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_WRAP_T,u.CLAMP_TO_EDGE),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_MAG_FILTER,u.LINEAR),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_MIN_FILTER,u.LINEAR_MIPMAP_NEAREST),u.pixelStorei(u.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),u.texImage2D(u.TEXTURE_2D,0,u.RGBA,u.RGBA,u.UNSIGNED_BYTE,A),u.generateMipmap(u.TEXTURE_2D),u.bindTexture(u.TEXTURE_2D,null)},E.deleteTexture=function(){u.deleteTexture(E)},E}function Ac0(u,B){switch(B){case"float":return[1,u.FLOAT,4];case"vec2":return[2,u.FLOAT,4];case"vec3":return[3,u.FLOAT,4];case"vec4":return[4,u.FLOAT,4];case"int":return[1,u.INT,4];case"ivec2":return[2,u.INT,4]}}function Cc0(u,B,E){switch(B){case u.FLOAT:return new Float32Array(E);case u.INT:return new Int32Array(E)}}function XQ4(u,B,E,A,C,D){switch(B){case u.FLOAT:return new Float32Array(E.buffer,D*A,C);case u.INT:return new Int32Array(E.buffer,D*A,C)}}function xQ4(u,B,E,A){var C=Ac0(u,B),D=W2(C,2),F=D[0],U=D[1],z=Cc0(u,U,A),k=u.createBuffer();if(u.bindBuffer(u.ARRAY_BUFFER,k),u.bufferData(u.ARRAY_BUFFER,z,u.STATIC_DRAW),U===u.FLOAT)u.vertexAttribPointer(E,F,U,!1,0,0);else if(U===u.INT)u.vertexAttribIPointer(E,F,U,0,0);return u.enableVertexAttribArray(E),u.bindBuffer(u.ARRAY_BUFFER,null),k}function NF(u,B,E,A){var C=Ac0(u,E),D=W2(C,3),F=D[0],U=D[1],z=D[2],k=Cc0(u,U,B*F),f=F*z,l=u.createBuffer();if(u.bindBuffer(u.ARRAY_BUFFER,l),u.bufferData(u.ARRAY_BUFFER,B*f,u.DYNAMIC_DRAW),u.enableVertexAttribArray(A),U===u.FLOAT)u.vertexAttribPointer(A,F,U,!1,f,0);else if(U===u.INT)u.vertexAttribIPointer(A,F,U,f,0);u.vertexAttribDivisor(A,1),u.bindBuffer(u.ARRAY_BUFFER,null);var b=Array(B);for(var M=0;M<B;M++)b[M]=XQ4(u,U,k,f,F,M);return l.dataArray=k,l.stride=f,l.size=F,l.getView=function(Z){return b[Z]},l.setPoint=function(Z,J,w){var K=b[Z];K[0]=J,K[1]=w},l.bufferSubData=function(Z){if(u.bindBuffer(u.ARRAY_BUFFER,l),Z)u.bufferSubData(u.ARRAY_BUFFER,0,k,0,Z*F);else u.bufferSubData(u.ARRAY_BUFFER,0,k)},l}function vQ4(u,B,E){var A=9,C=new Float32Array(B*A),D=Array(B);for(var F=0;F<B;F++){var U=F*A*4;D[F]=new Float32Array(C.buffer,U,A)}var z=u.createBuffer();u.bindBuffer(u.ARRAY_BUFFER,z),u.bufferData(u.ARRAY_BUFFER,C.byteLength,u.DYNAMIC_DRAW);for(var k=0;k<3;k++){var f=E+k;u.enableVertexAttribArray(f),u.vertexAttribPointer(f,3,u.FLOAT,!1,36,k*12),u.vertexAttribDivisor(f,1)}return u.bindBuffer(u.ARRAY_BUFFER,null),z.getMatrixView=function(l){return D[l]},z.setData=function(l,b){D[b].set(l,0)},z.bufferSubData=function(){u.bindBuffer(u.ARRAY_BUFFER,z),u.bufferSubData(u.ARRAY_BUFFER,0,C)},z}function SQ4(u){var B=u.createFramebuffer();u.bindFramebuffer(u.FRAMEBUFFER,B);var E=u.createTexture();return u.bindTexture(u.TEXTURE_2D,E),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_MIN_FILTER,u.LINEAR),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_WRAP_S,u.CLAMP_TO_EDGE),u.texParameteri(u.TEXTURE_2D,u.TEXTURE_WRAP_T,u.CLAMP_TO_EDGE),u.framebufferTexture2D(u.FRAMEBUFFER,u.COLOR_ATTACHMENT0,u.TEXTURE_2D,E,0),u.bindFramebuffer(u.FRAMEBUFFER,null),B.setFramebufferAttachmentSizes=function(A,C){u.bindTexture(u.TEXTURE_2D,E),u.texImage2D(u.TEXTURE_2D,0,u.RGBA,A,C,0,u.RGBA,u.UNSIGNED_BYTE,null)},B}function R20(){var u=new J$0(9);if(J$0!=Float32Array)u[1]=0,u[2]=0,u[3]=0,u[5]=0,u[6]=0,u[7]=0;return u[0]=1,u[4]=1,u[8]=1,u}function w$0(u){return u[0]=1,u[1]=0,u[2]=0,u[3]=0,u[4]=1,u[5]=0,u[6]=0,u[7]=0,u[8]=1,u}function WQ4(u,B,E){var A=B[0],C=B[1],D=B[2],F=B[3],U=B[4],z=B[5],k=B[6],f=B[7],l=B[8],b=E[0],M=E[1],Z=E[2],J=E[3],w=E[4],K=E[5],Q=E[6],G=E[7],L=E[8];return u[0]=b*A+M*F+Z*k,u[1]=b*C+M*U+Z*f,u[2]=b*D+M*z+Z*l,u[3]=J*A+w*F+K*k,u[4]=J*C+w*U+K*f,u[5]=J*D+w*z+K*l,u[6]=Q*A+G*F+L*k,u[7]=Q*C+G*U+L*f,u[8]=Q*D+G*z+L*l,u}function Uh(u,B,E){var A=B[0],C=B[1],D=B[2],F=B[3],U=B[4],z=B[5],k=B[6],f=B[7],l=B[8],b=E[0],M=E[1];return u[0]=A,u[1]=C,u[2]=D,u[3]=F,u[4]=U,u[5]=z,u[6]=b*A+M*F+k,u[7]=b*C+M*U+f,u[8]=b*D+M*z+l,u}function K$0(u,B,E){var A=B[0],C=B[1],D=B[2],F=B[3],U=B[4],z=B[5],k=B[6],f=B[7],l=B[8],b=Math.sin(E),M=Math.cos(E);return u[0]=M*A+b*F,u[1]=M*C+b*U,u[2]=M*D+b*z,u[3]=M*F-b*A,u[4]=M*U-b*C,u[5]=M*z-b*D,u[6]=k,u[7]=f,u[8]=l,u}function o20(u,B,E){var A=E[0],C=E[1];return u[0]=A*B[0],u[1]=A*B[1],u[2]=A*B[2],u[3]=C*B[3],u[4]=C*B[4],u[5]=C*B[5],u[6]=B[6],u[7]=B[7],u[8]=B[8],u}function YQ4(u,B,E){return u[0]=2/B,u[1]=0,u[2]=0,u[3]=0,u[4]=-2/E,u[5]=0,u[6]=-1,u[7]=1,u[8]=1,u}function OQ4(u,B){if(u.intersection)return u.intersection(B);else return new Set(zh(u).filter(function(E){return B.has(E)}))}function hQ4(u){var B=u.cy.container(),E=B&&B.style&&B.style.backgroundColor||"white";return O$0(E)}function Fc0(u,B){var E=u._private.rscratch;return KB(E,"labelWrapCachedLines",B)||[]}function mQ4(u){{var B=u.render;u.render=function(D){D=D||{};var F=u.cy;if(u.webgl)if(F.zoom()>ty0)rQ4(u),B.call(u,D);else $Q4(u),zc0(u,D,MW.SCREEN)}}{var E=u.matchCanvasSize;u.matchCanvasSize=function(D){E.call(u,D),u.pickingFrameBuffer.setFramebufferAttachmentSizes(u.canvasWidth,u.canvasHeight),u.pickingFrameBuffer.needsDraw=!0}}u.findNearestElements=function(D,F,U,z){return pQ4(u,D,F)};{var A=u.invalidateCachedZSortedEles;u.invalidateCachedZSortedEles=function(){A.call(u),u.pickingFrameBuffer.needsDraw=!0}}{var C=u.notify;u.notify=function(D,F){if(C.call(u,D,F),D==="viewport"||D==="bounds")u.pickingFrameBuffer.needsDraw=!0;else if(D==="background")u.drawing.invalidate(F,{type:"node-body"})}}}function rQ4(u){var B=u.data.contexts[u.WEBGL];B.clear(B.COLOR_BUFFER_BIT|B.DEPTH_BUFFER_BIT)}function $Q4(u){var B=function(A){A.save(),A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,u.canvasWidth,u.canvasHeight),A.restore()};B(u.data.contexts[u.NODE]),B(u.data.contexts[u.DRAG])}function yQ4(u){var{canvasWidth:B,canvasHeight:E}=u,A=v50(u),C=A.pan,D=A.zoom,F=R20();Uh(F,F,[C.x,C.y]),o20(F,F,[D,D]);var U=R20();YQ4(U,B,E);var z=R20();return WQ4(z,U,F),z}function Uc0(u,B){var{canvasWidth:E,canvasHeight:A}=u,C=v50(u),D=C.pan,F=C.zoom;B.setTransform(1,0,0,1,0,0),B.clearRect(0,0,E,A),B.translate(D.x,D.y),B.scale(F,F)}function cQ4(u,B){u.drawSelectionRectangle(B,function(E){return Uc0(u,E)})}function gQ4(u){var B=u.data.contexts[u.NODE];B.save(),Uc0(u,B),B.strokeStyle="rgba(0, 0, 0, 0.3)",B.beginPath(),B.moveTo(-1000,0),B.lineTo(1000,0),B.stroke(),B.beginPath(),B.moveTo(0,-1000),B.lineTo(0,1000),B.stroke(),B.restore()}function _Q4(u){var B=function(C,D,F){var U=C.atlasManager.getAtlasCollection(D),z=u.data.contexts[u.NODE],k=U.atlases;for(var f=0;f<k.length;f++){var l=k[f],b=l.canvas;if(b){var{width:M,height:Z}=b,J=M*f,w=b.height*F,K=0.4;z.save(),z.scale(K,K),z.drawImage(b,J,w),z.strokeStyle="black",z.rect(J,w,M,Z),z.stroke(),z.restore()}}},E=0;B(u.drawing,"node",E++),B(u.drawing,"label",E++)}function nQ4(u,B,E,A,C){var D,F,U,z,k=v50(u),f=k.pan,l=k.zoom;{var b=QQ4(u,f,l,B,E),M=W2(b,2),Z=M[0],J=M[1],w=6;D=Z-w/2,F=J-w/2,U=w,z=w}if(U===0||z===0)return[];var K=u.data.contexts[u.WEBGL];if(K.bindFramebuffer(K.FRAMEBUFFER,u.pickingFrameBuffer),u.pickingFrameBuffer.needsDraw)K.viewport(0,0,K.canvas.width,K.canvas.height),zc0(u,null,MW.PICKING),u.pickingFrameBuffer.needsDraw=!1;var Q=U*z,G=new Uint8Array(Q*4);K.readPixels(D,F,U,z,K.RGBA,K.UNSIGNED_BYTE,G),K.bindFramebuffer(K.FRAMEBUFFER,null);var L=new Set;for(var H=0;H<Q;H++){var q=G.slice(H*4,H*4+4),x=LQ4(q)-1;if(x>=0)L.add(x)}return L}function pQ4(u,B,E){var A=nQ4(u,B,E),C=u.getCachedZSortedEles(),D,F,U=Z8(A),z;try{for(U.s();!(z=U.n()).done;){var k=z.value,f=C[k];if(!D&&f.isNode())D=f;if(!F&&f.isEdge())F=f;if(D&&F)break}}catch(l){U.e(l)}finally{U.f()}return[D,F].filter(Boolean)}function j20(u,B,E){var A=u.drawing;if(B+=1,E.isNode())A.drawNode(E,B,"node-underlay"),A.drawNode(E,B,"node-body"),A.drawTexture(E,B,"label"),A.drawNode(E,B,"node-overlay");else A.drawEdgeLine(E,B),A.drawEdgeArrow(E,B,"source"),A.drawEdgeArrow(E,B,"target"),A.drawTexture(E,B,"label"),A.drawTexture(E,B,"edge-source-label"),A.drawTexture(E,B,"edge-target-label")}function zc0(u,B,E){var A;if(u.webglDebug)A=performance.now();var C=u.drawing,D=0;if(E.screen){if(u.data.canvasNeedsRedraw[u.SELECT_BOX])cQ4(u,B)}if(u.data.canvasNeedsRedraw[u.NODE]||E.picking){var F=u.data.contexts[u.WEBGL];if(E.screen)F.clearColor(0,0,0,0),F.enable(F.BLEND),F.blendFunc(F.ONE,F.ONE_MINUS_SRC_ALPHA);else F.disable(F.BLEND);F.clear(F.COLOR_BUFFER_BIT|F.DEPTH_BUFFER_BIT),F.viewport(0,0,F.canvas.width,F.canvas.height);var U=yQ4(u),z=u.getCachedZSortedEles();if(D=z.length,C.startFrame(U,E),E.screen){for(var k=0;k<z.nondrag.length;k++)j20(u,k,z.nondrag[k]);for(var f=0;f<z.drag.length;f++)j20(u,f,z.drag[f])}else if(E.picking)for(var l=0;l<z.length;l++)j20(u,l,z[l]);if(C.endFrame(),E.screen&&u.webglDebugShowAtlases)gQ4(u),_Q4(u);u.data.canvasNeedsRedraw[u.NODE]=!1,u.data.canvasNeedsRedraw[u.DRAG]=!1}if(u.webglDebug){var b=performance.now(),M=!1,Z=Math.ceil(b-A),J=C.getDebugInfo(),w=["".concat(D," elements"),"".concat(J.totalInstances," instances"),"".concat(J.batchCount," batches"),"".concat(J.totalAtlases," atlases"),"".concat(J.wrappedCount," wrapped textures"),"".concat(J.simpleCount," simple shapes")].join(", ");if(M)console.log("WebGL (".concat(E.name,") - time ").concat(Z,"ms, ").concat(w));else{console.log("WebGL (".concat(E.name,") - frame time ").concat(Z,"ms")),console.log("Totals:"),console.log(" ".concat(w)),console.log("Texture Atlases Used:");var K=J.atlasInfo,Q=Z8(K),G;try{for(Q.s();!(G=Q.n()).done;){var L=G.value;console.log(" ".concat(L.type,": ").concat(L.keyCount," keys, ").concat(L.atlasCount," atlases"))}}catch(H){Q.e(H)}finally{Q.f()}console.log("")}}if(u.data.gc)console.log("Garbage Collect!"),u.data.gc=!1,C.gc()}function dQ4(u,B){var E=atob(u),A=new ArrayBuffer(E.length),C=new Uint8Array(A);for(var D=0;D<E.length;D++)C[D]=E.charCodeAt(D);return new Blob([A],{type:B})}function q$0(u){var B=u.indexOf(",");return u.substr(B+1)}function fc0(u,B,E){var A=function(){return B.toDataURL(E,u.quality)};switch(u.output){case"blob-promise":return new IH(function(C,D){try{B.toBlob(function(F){if(F!=null)C(F);else D(Error("`canvas.toBlob()` sent a null value in its callback"))},E,u.quality)}catch(F){D(F)}});case"blob":return dQ4(q$0(A()),E);case"base64":return q$0(A());case"base64uri":default:return A()}}function bc0(u){var B=this,E=B.cy.window(),A=E.document;if(u.webgl)u1.CANVAS_LAYERS=B.CANVAS_LAYERS=4,console.log("webgl rendering enabled");B.data={canvases:Array(u1.CANVAS_LAYERS),contexts:Array(u1.CANVAS_LAYERS),canvasNeedsRedraw:Array(u1.CANVAS_LAYERS),bufferCanvases:Array(u1.BUFFER_COUNT),bufferContexts:Array(u1.CANVAS_LAYERS)};var C="-webkit-tap-highlight-color",D="rgba(0,0,0,0)";B.data.canvasContainer=A.createElement("div");var F=B.data.canvasContainer.style;B.data.canvasContainer.style[C]=D,F.position="relative",F.zIndex="0",F.overflow="hidden";var U=u.cy.container();U.appendChild(B.data.canvasContainer),U.style[C]=D;var z={"-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(mb4())z["-ms-touch-action"]="none",z["touch-action"]="none";for(var k=0;k<u1.CANVAS_LAYERS;k++){var f=B.data.canvases[k]=A.createElement("canvas"),l=u1.CANVAS_TYPES[k];if(B.data.contexts[k]=f.getContext(l),!B.data.contexts[k])F9("Could not create canvas of type "+l);Object.keys(z).forEach(function(B0){f.style[B0]=z[B0]}),f.style.position="absolute",f.setAttribute("data-id","layer"+k),f.style.zIndex=String(u1.CANVAS_LAYERS-k),B.data.canvasContainer.appendChild(f),B.data.canvasNeedsRedraw[k]=!1}if(B.data.topCanvas=B.data.canvases[0],B.data.canvases[u1.NODE].setAttribute("data-id","layer"+u1.NODE+"-node"),B.data.canvases[u1.SELECT_BOX].setAttribute("data-id","layer"+u1.SELECT_BOX+"-selectbox"),B.data.canvases[u1.DRAG].setAttribute("data-id","layer"+u1.DRAG+"-drag"),B.data.canvases[u1.WEBGL])B.data.canvases[u1.WEBGL].setAttribute("data-id","layer"+u1.WEBGL+"-webgl");for(var k=0;k<u1.BUFFER_COUNT;k++)B.data.bufferCanvases[k]=A.createElement("canvas"),B.data.bufferContexts[k]=B.data.bufferCanvases[k].getContext("2d"),B.data.bufferCanvases[k].style.position="absolute",B.data.bufferCanvases[k].setAttribute("data-id","buffer"+k),B.data.bufferCanvases[k].style.zIndex=String(-k-1),B.data.bufferCanvases[k].style.visibility="hidden";B.pathsEnabled=!0;var b=QB(),M=function(k0){return{x:(k0.x1+k0.x2)/2,y:(k0.y1+k0.y2)/2}},Z=function(k0){return{x:-k0.w/2,y:-k0.h/2}},J=function(k0){var f0=k0[0]._private,D0=f0.oldBackgroundTimestamp===f0.backgroundTimestamp;return!D0},w=function(k0){return k0[0]._private.nodeKey},K=function(k0){return k0[0]._private.labelStyleKey},Q=function(k0){return k0[0]._private.sourceLabelStyleKey},G=function(k0){return k0[0]._private.targetLabelStyleKey},L=function(k0,f0,D0,P0,q0){return B.drawElement(k0,f0,D0,!1,!1,q0)},H=function(k0,f0,D0,P0,q0){return B.drawElementText(k0,f0,D0,P0,"main",q0)},q=function(k0,f0,D0,P0,q0){return B.drawElementText(k0,f0,D0,P0,"source",q0)},x=function(k0,f0,D0,P0,q0){return B.drawElementText(k0,f0,D0,P0,"target",q0)},v=function(k0){return k0.boundingBox(),k0[0]._private.bodyBounds},W=function(k0){return k0.boundingBox(),k0[0]._private.labelBounds.main||b},S=function(k0){return k0.boundingBox(),k0[0]._private.labelBounds.source||b},T=function(k0){return k0.boundingBox(),k0[0]._private.labelBounds.target||b},R=function(k0,f0){return f0},Y=function(k0){return M(v(k0))},a=function(k0,f0,D0){var P0=k0?k0+"-":"";return{x:f0.x+D0.pstyle(P0+"text-margin-x").pfValue,y:f0.y+D0.pstyle(P0+"text-margin-y").pfValue}},I=function(k0,f0,D0){var P0=k0[0]._private.rscratch;return{x:P0[f0],y:P0[D0]}},O=function(k0){return a("",I(k0,"labelX","labelY"),k0)},i=function(k0){return a("source",I(k0,"sourceLabelX","sourceLabelY"),k0)},N=function(k0){return a("target",I(k0,"targetLabelX","targetLabelY"),k0)},V=function(k0){return Z(v(k0))},h=function(k0){return Z(S(k0))},r=function(k0){return Z(T(k0))},m=function(k0){var f0=W(k0),D0=Z(W(k0));if(k0.isNode()){switch(RH(k0.pstyle("text-halign").value)){case"left":D0.x=-f0.w-(f0.leftPad||0);break;case"right":D0.x=-(f0.rightPad||0);break}switch(TH(k0.pstyle("text-valign").value)){case"top":D0.y=-f0.h-(f0.topPad||0);break;case"bottom":D0.y=-(f0.botPad||0);break}}return D0},$=B.data.eleTxrCache=new fW(B,{getKey:w,doesEleInvalidateKey:J,drawElement:L,getBoundingBox:v,getRotationPoint:Y,getRotationOffset:V,allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),y=B.data.lblTxrCache=new fW(B,{getKey:K,drawElement:H,getBoundingBox:W,getRotationPoint:O,getRotationOffset:m,isVisible:R}),p=B.data.slbTxrCache=new fW(B,{getKey:Q,drawElement:q,getBoundingBox:S,getRotationPoint:i,getRotationOffset:h,isVisible:R}),e=B.data.tlbTxrCache=new fW(B,{getKey:G,drawElement:x,getBoundingBox:T,getRotationPoint:N,getRotationOffset:r,isVisible:R}),_=B.data.lyrTxrCache=new ey0(B);B.onUpdateEleCalcs(function(k0,f0){$.invalidateElements(f0),y.invalidateElements(f0),p.invalidateElements(f0),e.invalidateElements(f0),_.invalidateElements(f0);for(var D0=0;D0<f0.length;D0++){var P0=f0[D0]._private;P0.oldBackgroundTimestamp=P0.backgroundTimestamp}});var b0=function(k0){for(var f0=0;f0<k0.length;f0++)_.enqueueElementRefinement(k0[f0].ele)};if($.onDequeue(b0),y.onDequeue(b0),p.onDequeue(b0),e.onDequeue(b0),u.webgl)B.initWebgl(u,{getStyleKey:w,getLabelKey:K,getSourceLabelKey:Q,getTargetLabelKey:G,drawElement:L,drawLabel:H,drawSourceLabel:q,drawTargetLabel:x,getElementBox:v,getLabelBox:W,getSourceLabelBox:S,getTargetLabelBox:T,getElementRotationPoint:Y,getElementRotationOffset:V,getLabelRotationPoint:O,getSourceLabelRotationPoint:i,getTargetLabelRotationPoint:N,getLabelRotationOffset:m,getSourceLabelRotationOffset:h,getTargetLabelRotationOffset:r})}function Jc0(u,B,E){var A=E,C=function(v){A6("Can not register `"+B+"` for `"+u+"` since `"+v+"` already exists in the prototype and can not be overridden")};if(u==="core")if(qW.prototype[B])return C(B);else qW.prototype[B]=E;else if(u==="collection")if(A7.prototype[B])return C(B);else A7.prototype[B]=E;else if(u==="layout"){var D=function(v){if(this.options=v,E.call(this,v),!S1(this._private))this._private={};this._private.cy=v.cy,this._private.listeners=[],this.createEmitter()},F=D.prototype=Object.create(E.prototype),U=[];for(var z=0;z<U.length;z++){var k=U[z];F[k]=F[k]||function(){return this}}if(F.start&&!F.run)F.run=function(){return this.start(),this};else if(!F.start&&F.run)F.start=function(){return this.run(),this};var f=E.prototype.stop;if(F.stop=function(){var x=this.options;if(x&&x.animate){var v=this.animations;if(v)for(var W=0;W<v.length;W++)v[W].stop()}if(f)f.call(this);else this.emit("layoutstop");return this},!F.destroy)F.destroy=function(){return this};F.cy=function(){return this._private.cy};var l=function(v){return v._private.cy},b={addEventFields:function(v,W){W.layout=v,W.cy=l(v),W.target=v},bubble:function(){return!0},parent:function(v){return l(v)}};k3(F,{createEmitter:function(){return this._private.emitter=new Ih(b,this),this},emitter:function(){return this._private.emitter},on:function(v,W){return this.emitter().on(v,W),this},one:function(v,W){return this.emitter().one(v,W),this},once:function(v,W){return this.emitter().one(v,W),this},removeListener:function(v,W){return this.emitter().removeListener(v,W),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},emit:function(v,W){return this.emitter().emit(v,W),this}}),E6.eventAliasesOn(F),A=D}else if(u==="renderer"&&B!=="null"&&B!=="base"){var M=wc0("renderer","base"),Z=M.prototype,J=E,w=E.prototype,K=function(){M.apply(this,arguments),J.apply(this,arguments)},Q=K.prototype;for(var G in Z){var L=Z[G],H=w[G]!=null;if(H)return C(G);Q[G]=L}for(var q in w)Q[q]=w[q];Z.clientFunctions.forEach(function(x){Q[x]=Q[x]||function(){F9("Renderer does not implement `renderer."+x+"()` on its prototype")}}),A=K}else if(u==="__proto__"||u==="constructor"||u==="prototype")return F9(u+" is an illegal type to be registered, possibly lead to prototype pollutions");return I$0({map:Mc0,keys:[u,B],value:A})}function wc0(u,B){return P$0({map:Mc0,keys:[u,B]})}function uG4(u,B,E,A,C){return I$0({map:Zc0,keys:[u,B,E,A],value:C})}function BG4(u,B,E,A){return P$0({map:Zc0,keys:[u,B,E,A]})}var s2,dh0,Ib4,v$0,Pb4,jb4,xW=function(B){return B&&B.instanceString&&H9(B.instanceString)?B.instanceString():null},p4=function(B){return B!=null&&t2(B)==Ib4},H9=function(B){return B!=null&&t2(B)===Pb4},q6=function(B){return!lE(B)&&(Array.isArray?Array.isArray(B):B!=null&&B instanceof Array)},S1=function(B){return B!=null&&t2(B)===v$0&&!q6(B)&&B.constructor===Object},Nb4=function(B){return B!=null&&t2(B)===v$0},J4=function(B){return B!=null&&t2(B)===t2(1)&&!isNaN(B)},S$0=function(B){return J4(B)&&Math.floor(B)===B},kh=function(B){if(jb4==="undefined")return;else return B!=null&&B instanceof HTMLElement},lE=function(B){return vW(B)||W$0(B)},vW=function(B){return xW(B)==="collection"&&B._private.single},W$0=function(B){return xW(B)==="collection"&&!B._private.single},E50=function(B){return xW(B)==="core"},Y$0=function(B){return xW(B)==="stylesheet"},ib4=function(B){return xW(B)==="event"},jl=function(B){if(B===void 0||B===null)return!0;else if(B===""||B.match(/^\s+$/))return!0;return!1},ab4=function(B){if(typeof HTMLElement>"u")return!1;else return B instanceof HTMLElement},Vb4=function(B){return S1(B)&&J4(B.x1)&&J4(B.x2)&&J4(B.y1)&&J4(B.y2)},hb4=function(B){return Nb4(B)&&H9(B.then)},mb4=function(){return dh0&&dh0.userAgent.match(/msie|trident|edge/i)},SH=function(B,E){if(!E)E=function(){if(arguments.length===1)return arguments[0];else if(arguments.length===0)return"undefined";var D=[];for(var F=0;F<arguments.length;F++)D.push(arguments[F]);return D.join("$")};var A=function(){var D=this,F=arguments,U,z=E.apply(D,F),k=A.cache;if(!(U=k[z]))U=k[z]=B.apply(D,F);return U};return A.cache={},A},A50,qh,R$0,sh0=function(B){if(jl(B))return B;return B.charAt(0).toUpperCase()+B.substring(1)},Rl=function(B,E){return B.slice(-1*E.length)===E},o2="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",rb4,$b4,yb4,cb4,gb4="\\#[0-9a-fA-F]{3}",_b4="\\#[0-9a-fA-F]{6}",T$0=function(B,E){if(B<E)return-1;else if(B>E)return 1;else return 0},nb4=function(B,E){return-1*T$0(B,E)},k3,pb4=function(B){if(!(B.length===4||B.length===7)||B[0]!=="#")return;var E=B.length===4,A,C,D,F=16;if(E)A=parseInt(B[1]+B[1],F),C=parseInt(B[2]+B[2],F),D=parseInt(B[3]+B[3],F);else A=parseInt(B[1]+B[2],F),C=parseInt(B[3]+B[4],F),D=parseInt(B[5]+B[6],F);return[A,C,D]},db4=function(B){var E,A,C,D,F,U,z,k;function f(Z,J,w){if(w<0)w+=1;if(w>1)w-=1;if(w<0.16666666666666666)return Z+(J-Z)*6*w;if(w<0.5)return J;if(w<0.6666666666666666)return Z+(J-Z)*(0.6666666666666666-w)*6;return Z}var l=new RegExp("^"+yb4+"$").exec(B);if(l){if(A=parseInt(l[1]),A<0)A=(360- -1*A%360)%360;else if(A>360)A=A%360;if(A/=360,C=parseFloat(l[2]),C<0||C>100)return;if(C=C/100,D=parseFloat(l[3]),D<0||D>100)return;if(D=D/100,F=l[4],F!==void 0){if(F=parseFloat(F),F<0||F>1)return}if(C===0)U=z=k=Math.round(D*255);else{var b=D<0.5?D*(1+C):D+C-D*C,M=2*D-b;U=Math.round(255*f(M,b,A+0.3333333333333333)),z=Math.round(255*f(M,b,A)),k=Math.round(255*f(M,b,A-0.3333333333333333))}E=[U,z,k,F]}return E},sb4=function(B){var E,A=new RegExp("^"+rb4+"$").exec(B);if(A){E=[];var C=[];for(var D=1;D<=3;D++){var F=A[D];if(F[F.length-1]==="%")C[D]=!0;if(F=parseFloat(F),C[D])F=F/100*255;if(F<0||F>255)return;E.push(Math.floor(F))}var U=C[1]||C[2]||C[3],z=C[1]&&C[2]&&C[3];if(U&&!z)return;var k=A[4];if(k!==void 0){if(k=parseFloat(k),k<0||k>1)return;E.push(k)}}return E},ob4=function(B){return tb4[B.toLowerCase()]},O$0=function(B){return(q6(B)?B:null)||ob4(B)||pb4(B)||sb4(B)||db4(B)},tb4,I$0=function(B){var{map:E,keys:A}=B,C=A.length;for(var D=0;D<C;D++){var F=A[D];if(S1(F))throw Error("Tried to set map with object key");if(D<A.length-1){if(E[F]==null)E[F]={};E=E[F]}else E[F]=B.value}},P$0=function(B){var{map:E,keys:A}=B,C=A.length;for(var D=0;D<C;D++){var F=A[D];if(S1(F))throw Error("Tried to get map with object key");if(E=E[F],E==null)return E}return E},VV,D90,oh0,F90,th0,U90,eh0,z90,um0,k90,Bm0,f90,Em0,l90,Am0,b90,Cm0,M90,Dm0,Z90,Fm0,J90,Um0,w90,zm0,K90,km0,Q90,fm0,zM4,RW,G90,N$0,kM4,fh=function(B){return kM4(B)},cz,QJ=9261,i$0=65599,QH=5381,a$0=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:QJ,A=E,C;for(;;){if(C=B.next(),C.done)break;A=A*i$0+C.value|0}return A},ZW=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:QJ;return E*i$0+B|0},JW=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:QH;return(E<<5)+E+B|0},fM4=function(B,E){return B*2097152+E},vl=function(B){return B[0]*2097152+B[1]},hV=function(B,E){return[ZW(B[0],E[0]),JW(B[1],E[1])]},lm0=function(B,E){var A={value:0,done:!1},C=0,D=B.length,F={next:function(){if(C<D)A.value=B[C++];else A.done=!0;return A}};return a$0(F,E)},LJ=function(B,E){var A={value:0,done:!1},C=0,D=B.length,F={next:function(){if(C<D)A.value=B.charCodeAt(C++);else A.done=!0;return A}};return a$0(F,E)},V$0=function(){return lM4(arguments)},lM4=function(B){var E;for(var A=0;A<B.length;A++){var C=B[A];if(A===0)E=LJ(C);else E=LJ(C,E)}return E},MM4=function(B,E,A,C,D,F){return{x:(B-A)*D+A,y:(E-C)*F+C}},bm0=!0,JM4,wM4,D50,h$0=function(){return!0},lh=function(){return!1},Mm0=function(){return 0},F50=function(){},F9=function(B){throw Error(B)},m$0=function(B){if(B!==void 0)bm0=!!B;else return bm0},A6=function(B){if(!m$0())return;if(JM4)console.warn(B);else if(console.log(B),wM4)console.trace()},KM4=function(B){return k3({},B)},VF=function(B){if(B==null)return B;if(q6(B))return B.slice();else if(S1(B))return KM4(B);else return B},QM4=function(B){return B.slice()},r$0=function(B,E){for(E=B="";B++<36;E+=B*51&52?(B^15?8^Math.random()*(B^20?16:4):4).toString(16):"-");return E},GM4,$$0=function(){return GM4},C7=function(B){var E=Object.keys(B);return function(A){var C={};for(var D=0;D<E.length;D++){var F=E[D],U=A==null?void 0:A[F];C[F]=U===void 0?B[F]:U}return C}},Nl=function(B,E,A){for(var C=B.length-1;C>=0;C--)if(B[C]===E)B.splice(C,1)},U50=function(B){B.splice(0,B.length)},HM4=function(B,E){for(var A=0;A<E.length;A++){var C=E[A];B.push(C)}},KB=function(B,E,A){if(A)E=R$0(A,E);return B[E]},aF=function(B,E,A,C){if(A)E=R$0(A,E);B[E]=C},LM4,yz,qM4="undefined",XM4,OH,xh=function(B,E){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(B===void 0||E===void 0||!E50(B)){F9("An element must have a core reference and parameters set");return}var C=E.group;if(C==null)if(E.data&&E.data.source!=null&&E.data.target!=null)C="edges";else C="nodes";if(C!=="nodes"&&C!=="edges"){F9("An element must be of type `nodes` or `edges`; you specified `"+C+"`");return}this.length=1,this[0]=this;var D=this._private={cy:B,single:!0,data:E.data||{},position:E.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:C,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:E.selected?!0:!1,selectable:E.selectable===void 0?!0:E.selectable?!0:!1,locked:E.locked?!0:!1,grabbed:!1,grabbable:E.grabbable===void 0?!0:E.grabbable?!0:!1,pannable:E.pannable===void 0?C==="edges"?!0:!1:E.pannable?!0:!1,active:!1,classes:new OH,animation:{current:[],queue:[]},rscratch:{},scratch:E.scratch||{},edges:[],children:[],parent:E.parent&&E.parent.isNode()?E.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(D.position.x==null)D.position.x=0;if(D.position.y==null)D.position.y=0;if(E.renderedPosition){var F=E.renderedPosition,U=B.pan(),z=B.zoom();D.position={x:(F.x-U.x)/z,y:(F.y-U.y)/z}}var k=[];if(q6(E.classes))k=E.classes;else if(p4(E.classes))k=E.classes.split(/\s+/);for(var f=0,l=k.length;f<l;f++){var b=k[f];if(!b||b==="")continue;D.classes.add(b)}if(this.createEmitter(),A===void 0||A)this.restore();var M=E.style||E.css;if(M)A6("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(M)},Zm0=function(B){return B={bfs:B.bfs||!B.dfs,dfs:B.dfs||!B.bfs},function(A,C,D){var F;if(S1(A)&&!lE(A))F=A,A=F.roots||F.root,C=F.visit,D=F.directed;D=arguments.length===2&&!H9(C)?C:D,C=H9(C)?C:function(){};var U=this._private.cy,z=A=p4(A)?this.filter(A):A,k=[],f=[],l={},b={},M={},Z=0,J,w=this.byGroup(),K=w.nodes,Q=w.edges;for(var G=0;G<z.length;G++){var L=z[G],H=L.id();if(L.isNode()){if(k.unshift(L),B.bfs)M[H]=!0,f.push(L);b[H]=0}}var q=function(){var Y=B.bfs?k.shift():k.pop(),a=Y.id();if(B.dfs){if(M[a])return 0;M[a]=!0,f.push(Y)}var I=b[a],O=l[a],i=O!=null?O.source():null,N=O!=null?O.target():null,V=O==null?void 0:Y.same(i)?N[0]:i[0],h;if(h=C(Y,O,V,Z++,I),h===!0)return J=Y,1;if(h===!1)return 1;var r=Y.connectedEdges().filter(function(e){return(!D||e.source().same(Y))&&Q.has(e)});for(var m=0;m<r.length;m++){var $=r[m],y=$.connectedNodes().filter(function(e){return!e.same(Y)&&K.has(e)}),p=y.id();if(y.length!==0&&!M[p]){if(y=y[0],k.push(y),B.bfs)M[p]=!0,f.push(y);l[p]=$,b[p]=b[a]+1}}},x;while(k.length!==0){if(x=q(),x===0)continue;if(x===1)break}var v=U.collection();for(var W=0;W<f.length;W++){var S=f[W],T=l[S.id()];if(T!=null)v.push(T);v.push(S)}return{path:U.collection(v),found:U.collection(J)}}},wW,oV,xM4,Jm0,H90,wm0,WM4,TW,YM4,RM4,TM4,OM4,IM4,PM4,jM4,NM4,iM4,aM4,VM4=function(B,E,A){if(A.length===0)F9("Karger-Stein must be run on a connected (sub)graph");var C=A[B],D=C[1],F=C[2],U=E[D],z=E[F],k=A;for(var f=k.length-1;f>=0;f--){var l=k[f],b=l[1],M=l[2];if(E[b]===U&&E[M]===z||E[b]===z&&E[M]===U)k.splice(f,1)}for(var Z=0;Z<k.length;Z++){var J=k[Z];if(J[1]===z)k[Z]=J.slice(),k[Z][1]=U;else if(J[2]===z)k[Z]=J.slice(),k[Z][2]=U}for(var w=0;w<E.length;w++)if(E[w]===z)E[w]=U;return k},L90=function(B,E,A,C){while(A>C){var D=Math.floor(Math.random()*E.length);E=VM4(D,B,E),A--}return E},hM4,q90,mM4=function(B){return{x:B.x,y:B.y}},vh=function(B,E,A){return{x:B.x*E+A.x,y:B.y*E+A.y}},y$0=function(B,E,A){return{x:(B.x-A.x)/E,y:(B.y-A.y)/E}},GH=function(B){return{x:B[0],y:B[1]}},rM4=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:B.length,C=1/0;for(var D=E;D<A;D++){var F=B[D];if(isFinite(F))C=Math.min(F,C)}return C},$M4=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:B.length,C=-1/0;for(var D=E;D<A;D++){var F=B[D];if(isFinite(F))C=Math.max(F,C)}return C},yM4=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:B.length,C=0,D=0;for(var F=E;F<A;F++){var U=B[F];if(isFinite(U))C+=U,D++}return C/D},cM4=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:B.length,C=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,D=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,F=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;if(C)B=B.slice(E,A);else{if(A<B.length)B.splice(A,B.length-A);if(E>0)B.splice(0,E)}var U=0;for(var z=B.length-1;z>=0;z--){var k=B[z];if(F){if(!isFinite(k))B[z]=-1/0,U++}else B.splice(z,1)}if(D)B.sort(function(b,M){return b-M});var f=B.length,l=Math.floor(f/2);if(f%2!==0)return B[l+1+U];else return(B[l-1+U]+B[l+U])/2},c$0=function(B,E){if(E===0)return B;return c$0(E,B%E)},gM4=function(B){var E=B[0];for(var A=0;A<B.length;A++)if(!S$0(B[A]))return 0;else if(A>0)E=c$0(E,B[A]);return E},_M4=function(B){return Math.PI*B/180},mV=function(B,E){return Math.atan2(E,B)-Math.PI/2},z50,k50=function(B){if(B>0)return 1;else if(B<0)return-1;else return 0},qJ=function(B,E){return Math.sqrt(wJ(B,E))},wJ=function(B,E){var A=E.x-B.x,C=E.y-B.y;return A*A+C*C},nM4=function(B){var E=B.length,A=0;for(var C=0;C<E;C++)A+=B[C];for(var D=0;D<E;D++)B[D]=B[D]/A;return B},Y5=function(B,E,A,C){return(1-C)*(1-C)*B+2*(1-C)*C*E+C*C*A},qH=function(B,E,A,C){return{x:Y5(B.x,E.x,A.x,C),y:Y5(B.y,E.y,A.y,C)}},pM4=function(B,E,A,C){var D={x:E.x-B.x,y:E.y-B.y},F=qJ(B,E),U={x:D.x/F,y:D.y/F};return A=A==null?0:A,C=C!=null?C:A*F,{x:B.x+U.x*C,y:B.y+U.y*C}},KW=function(B,E,A){return Math.max(B,Math.min(A,E))},QB=function(B){if(B==null)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};else if(B.x1!=null&&B.y1!=null){if(B.x2!=null&&B.y2!=null&&B.x2>=B.x1&&B.y2>=B.y1)return{x1:B.x1,y1:B.y1,x2:B.x2,y2:B.y2,w:B.x2-B.x1,h:B.y2-B.y1};else if(B.w!=null&&B.h!=null&&B.w>=0&&B.h>=0)return{x1:B.x1,y1:B.y1,x2:B.x1+B.w,y2:B.y1+B.h,w:B.w,h:B.h}}},dM4=function(B){return{x1:B.x1,x2:B.x2,w:B.w,y1:B.y1,y2:B.y2,h:B.h}},sM4=function(B){B.x1=1/0,B.y1=1/0,B.x2=-1/0,B.y2=-1/0,B.w=0,B.h=0},oM4=function(B,E){B.x1=Math.min(B.x1,E.x1),B.x2=Math.max(B.x2,E.x2),B.w=B.x2-B.x1,B.y1=Math.min(B.y1,E.y1),B.y2=Math.max(B.y2,E.y2),B.h=B.y2-B.y1},g$0=function(B,E,A){B.x1=Math.min(B.x1,E),B.x2=Math.max(B.x2,E),B.w=B.x2-B.x1,B.y1=Math.min(B.y1,A),B.y2=Math.max(B.y2,A),B.h=B.y2-B.y1},tV=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return B.x1-=E,B.x2+=E,B.y1-=E,B.y2+=E,B.w=B.x2-B.x1,B.h=B.y2-B.y1,B},eV=function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],A,C,D,F;if(E.length===1)A=C=D=F=E[0];else if(E.length===2)A=D=E[0],F=C=E[1];else if(E.length===4){var U=W2(E,4);A=U[0],C=U[1],D=U[2],F=U[3]}return B.x1-=F,B.x2+=C,B.y1-=A,B.y2+=D,B.w=B.x2-B.x1,B.h=B.y2-B.y1,B},Km0=function(B,E){B.x1=E.x1,B.y1=E.y1,B.x2=E.x2,B.y2=E.y2,B.w=B.x2-B.x1,B.h=B.y2-B.y1},f50=function(B,E){if(B.x1>E.x2)return!1;if(E.x1>B.x2)return!1;if(B.x2<E.x1)return!1;if(E.x2<B.x1)return!1;if(B.y2<E.y1)return!1;if(E.y2<B.y1)return!1;if(B.y1>E.y2)return!1;if(E.y1>B.y2)return!1;return!0},Tl=function(B,E,A){return B.x1<=E&&E<=B.x2&&B.y1<=A&&A<=B.y2},Qm0=function(B,E){return Tl(B,E.x,E.y)},_$0=function(B,E){return Tl(B,E.x1,E.y1)&&Tl(B,E.x2,E.y2)},tM4,n$0=function(B,E,A,C,D,F,U){var z=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",k=z==="auto"?il(D,F):z,f=D/2,l=F/2;k=Math.min(k,f,l);var b=k!==f,M=k!==l,Z;if(b){var J=A-f+k-U,w=C-l-U,K=A+f-k+U,Q=w;if(Z=Ol(B,E,A,C,J,w,K,Q,!1),Z.length>0)return Z}if(M){var G=A+f+U,L=C-l+k-U,H=G,q=C+l-k+U;if(Z=Ol(B,E,A,C,G,L,H,q,!1),Z.length>0)return Z}if(b){var x=A-f+k-U,v=C+l+U,W=A+f-k+U,S=v;if(Z=Ol(B,E,A,C,x,v,W,S,!1),Z.length>0)return Z}if(M){var T=A-f-U,R=C-l+k-U,Y=T,a=C+l-k+U;if(Z=Ol(B,E,A,C,T,R,Y,a,!1),Z.length>0)return Z}var I;{var O=A-f+k,i=C-l+k;if(I=zW(B,E,A,C,O,i,k+U),I.length>0&&I[0]<=O&&I[1]<=i)return[I[0],I[1]]}{var N=A+f-k,V=C-l+k;if(I=zW(B,E,A,C,N,V,k+U),I.length>0&&I[0]>=N&&I[1]<=V)return[I[0],I[1]]}{var h=A+f-k,r=C+l-k;if(I=zW(B,E,A,C,h,r,k+U),I.length>0&&I[0]>=h&&I[1]>=r)return[I[0],I[1]]}{var m=A-f+k,$=C+l-k;if(I=zW(B,E,A,C,m,$,k+U),I.length>0&&I[0]<=m&&I[1]>=$)return[I[0],I[1]]}return[]},BZ4=function(B,E,A,C,D,F,U){var z=U,k=Math.min(A,D),f=Math.max(A,D),l=Math.min(C,F),b=Math.max(C,F);return k-z<=B&&B<=f+z&&l-z<=E&&E<=b+z},EZ4=function(B,E,A,C,D,F,U,z,k){var f={x1:Math.min(A,U,D)-k,x2:Math.max(A,U,D)+k,y1:Math.min(C,z,F)-k,y2:Math.max(C,z,F)+k};if(B<f.x1||B>f.x2||E<f.y1||E>f.y2)return!1;else return!0},AZ4=function(B,E,A,C){A-=C;var D=E*E-4*B*A;if(D<0)return[];var F=Math.sqrt(D),U=2*B,z=(-E+F)/U,k=(-E-F)/U;return[z,k]},CZ4=function(B,E,A,C,D){var F=0.00001;if(B===0)B=F;E/=B,A/=B,C/=B;var U,z,k,f,l,b,M,Z;if(z=(3*A-E*E)/9,k=-(27*C)+E*(9*A-2*(E*E)),k/=54,U=z*z*z+k*k,D[1]=0,M=E/3,U>0){l=k+Math.sqrt(U),l=l<0?-Math.pow(-l,0.3333333333333333):Math.pow(l,0.3333333333333333),b=k-Math.sqrt(U),b=b<0?-Math.pow(-b,0.3333333333333333):Math.pow(b,0.3333333333333333),D[0]=-M+l+b,M+=(l+b)/2,D[4]=D[2]=-M,M=Math.sqrt(3)*(-b+l)/2,D[3]=M,D[5]=-M;return}if(D[5]=D[3]=0,U===0){Z=k<0?-Math.pow(-k,0.3333333333333333):Math.pow(k,0.3333333333333333),D[0]=-M+2*Z,D[4]=D[2]=-(Z+M);return}z=-z,f=z*z*z,f=Math.acos(k/Math.sqrt(f)),Z=2*Math.sqrt(z),D[0]=-M+Z*Math.cos(f/3),D[2]=-M+Z*Math.cos((f+2*Math.PI)/3),D[4]=-M+Z*Math.cos((f+4*Math.PI)/3);return},DZ4=function(B,E,A,C,D,F,U,z){var k=1*A*A-4*A*D+2*A*U+4*D*D-4*D*U+U*U+C*C-4*C*F+2*C*z+4*F*F-4*F*z+z*z,f=9*A*D-3*A*A-3*A*U-6*D*D+3*D*U+9*C*F-3*C*C-3*C*z-6*F*F+3*F*z,l=3*A*A-6*A*D+A*U-A*B+2*D*D+2*D*B-U*B+3*C*C-6*C*F+C*z-C*E+2*F*F+2*F*E-z*E,b=1*A*D-A*A+A*B-D*B+C*F-C*C+C*E-F*E,M=[];CZ4(k,f,l,b,M);var Z=0.0000001,J=[];for(var w=0;w<6;w+=2)if(Math.abs(M[w+1])<Z&&M[w]>=0&&M[w]<=1)J.push(M[w]);J.push(1),J.push(0);var K=-1,Q,G,L;for(var H=0;H<J.length;H++)if(Q=Math.pow(1-J[H],2)*A+2*(1-J[H])*J[H]*D+J[H]*J[H]*U,G=Math.pow(1-J[H],2)*C+2*(1-J[H])*J[H]*F+J[H]*J[H]*z,L=Math.pow(Q-B,2)+Math.pow(G-E,2),K>=0){if(L<K)K=L}else K=L;return K},FZ4=function(B,E,A,C,D,F){var U=[B-A,E-C],z=[D-A,F-C],k=z[0]*z[0]+z[1]*z[1],f=U[0]*U[0]+U[1]*U[1],l=U[0]*z[0]+U[1]*z[1],b=l*l/k;if(l<0)return f;if(b>k)return(B-D)*(B-D)+(E-F)*(E-F);return f-b},M8=function(B,E,A){var C,D,F,U,z,k=0;for(var f=0;f<A.length/2;f++){if(C=A[f*2],D=A[f*2+1],f+1<A.length/2)F=A[(f+1)*2],U=A[(f+1)*2+1];else F=A[(f+1-A.length/2)*2],U=A[(f+1-A.length/2)*2+1];if(C==B&&F==B);else if(C>=B&&B>=F||C<=B&&B<=F){if(z=(B-C)/(F-C)*(U-D)+D,z>E)k++}else continue}if(k%2===0)return!1;else return!0},gz=function(B,E,A,C,D,F,U,z,k){var f=Array(A.length),l;if(z[0]!=null)if(l=Math.atan(z[1]/z[0]),z[0]<0)l=l+Math.PI/2;else l=-l-Math.PI/2;else l=z;var b=Math.cos(-l),M=Math.sin(-l);for(var Z=0;Z<f.length/2;Z++)f[Z*2]=F/2*(A[Z*2]*b-A[Z*2+1]*M),f[Z*2+1]=U/2*(A[Z*2+1]*b+A[Z*2]*M),f[Z*2]+=C,f[Z*2+1]+=D;var J;if(k>0){var w=Mh(f,-k);J=bh(w)}else J=f;return M8(B,E,J)},UZ4=function(B,E,A,C,D,F,U,z){var k=Array(A.length*2);for(var f=0;f<z.length;f++){var l=z[f];k[f*4+0]=l.startX,k[f*4+1]=l.startY,k[f*4+2]=l.stopX,k[f*4+3]=l.stopY;var b=Math.pow(l.cx-B,2)+Math.pow(l.cy-E,2);if(b<=Math.pow(l.radius,2))return!0}return M8(B,E,k)},bh=function(B){var E=Array(B.length/2),A,C,D,F,U,z,k,f;for(var l=0;l<B.length/4;l++){if(A=B[l*4],C=B[l*4+1],D=B[l*4+2],F=B[l*4+3],l<B.length/4-1)U=B[(l+1)*4],z=B[(l+1)*4+1],k=B[(l+1)*4+2],f=B[(l+1)*4+3];else U=B[0],z=B[1],k=B[2],f=B[3];var b=Ol(A,C,D,F,U,z,k,f,!0);E[l*2]=b[0],E[l*2+1]=b[1]}return E},Mh=function(B,E){var A=Array(B.length*2),C,D,F,U;for(var z=0;z<B.length/2;z++){if(C=B[z*2],D=B[z*2+1],z<B.length/2-1)F=B[(z+1)*2],U=B[(z+1)*2+1];else F=B[0],U=B[1];var k=U-D,f=-(F-C),l=Math.sqrt(k*k+f*f),b=k/l,M=f/l;A[z*4]=C+b*E,A[z*4+1]=D+M*E,A[z*4+2]=F+b*E,A[z*4+3]=U+M*E}return A},zZ4=function(B,E,A,C,D,F){var U=A-B,z=C-E;U/=D,z/=F;var k=Math.sqrt(U*U+z*z),f=k-1;if(f<0)return[];var l=f/k;return[(A-B)*l+B,(C-E)*l+E]},HJ=function(B,E,A,C,D,F,U){return B-=D,E-=F,B/=A/2+U,E/=C/2+U,B*B+E*E<=1},zW=function(B,E,A,C,D,F,U){var z=[A-B,C-E],k=[B-D,E-F],f=z[0]*z[0]+z[1]*z[1],l=2*(k[0]*z[0]+k[1]*z[1]),b=k[0]*k[0]+k[1]*k[1]-U*U,M=l*l-4*f*b;if(M<0)return[];var Z=(-l+Math.sqrt(M))/(2*f),J=(-l-Math.sqrt(M))/(2*f),w=Math.min(Z,J),K=Math.max(Z,J),Q=[];if(w>=0&&w<=1)Q.push(w);if(K>=0&&K<=1)Q.push(K);if(Q.length===0)return[];var G=Q[0]*z[0]+B,L=Q[0]*z[1]+E;if(Q.length>1)if(Q[0]==Q[1])return[G,L];else{var H=Q[1]*z[0]+B,q=Q[1]*z[1]+E;return[G,L,H,q]}else return[G,L]},X90=function(B,E,A){if(E<=B&&B<=A||A<=B&&B<=E)return B;else if(B<=E&&E<=A||A<=E&&E<=B)return E;else return A},Ol=function(B,E,A,C,D,F,U,z,k){var f=B-D,l=A-B,b=U-D,M=E-F,Z=C-E,J=z-F,w=b*M-J*f,K=l*M-Z*f,Q=J*l-b*Z;if(Q!==0){var G=w/Q,L=K/Q,H=0.001,q=0-H,x=1+H;if(q<=G&&G<=x&&q<=L&&L<=x)return[B+G*l,E+G*Z];else if(!k)return[];else return[B+G*l,E+G*Z]}else if(w===0||K===0){if(X90(B,A,U)===U)return[U,z];if(X90(B,A,D)===D)return[D,F];if(X90(D,U,A)===A)return[A,C];return[]}else return[]},kZ4=function(B,E,A,C,D){var F=[],U=C/2,z=D/2,k=E,f=A;F.push({x:k+U*B[0],y:f+z*B[1]});for(var l=1;l<B.length/2;l++)F.push({x:k+U*B[l*2],y:f+z*B[l*2+1]});return F},QW=function(B,E,A,C,D,F,U,z){var k=[],f,l=Array(A.length),b=!0;if(F==null)b=!1;var M;if(b){for(var Z=0;Z<l.length/2;Z++)l[Z*2]=A[Z*2]*F+C,l[Z*2+1]=A[Z*2+1]*U+D;if(z>0){var J=Mh(l,-z);M=bh(J)}else M=l}else M=A;var w,K,Q,G;for(var L=0;L<M.length/2;L++){if(w=M[L*2],K=M[L*2+1],L<M.length/2-1)Q=M[(L+1)*2],G=M[(L+1)*2+1];else Q=M[0],G=M[1];if(f=Ol(B,E,C,D,w,K,Q,G),f.length!==0)k.push(f[0],f[1])}return k},fZ4=function(B,E,A,C,D,F,U,z,k){var f=[],l,b=Array(A.length*2);k.forEach(function(Q,G){if(G===0)b[b.length-2]=Q.startX,b[b.length-1]=Q.startY;else b[G*4-2]=Q.startX,b[G*4-1]=Q.startY;if(b[G*4]=Q.stopX,b[G*4+1]=Q.stopY,l=zW(B,E,C,D,Q.cx,Q.cy,Q.radius),l.length!==0)f.push(l[0],l[1])});for(var M=0;M<b.length/4;M++)if(l=Ol(B,E,C,D,b[M*4],b[M*4+1],b[M*4+2],b[M*4+3],!1),l.length!==0)f.push(l[0],l[1]);if(f.length>2){var Z=[f[0],f[1]],J=Math.pow(Z[0]-B,2)+Math.pow(Z[1]-E,2);for(var w=1;w<f.length/2;w++){var K=Math.pow(f[w*2]-B,2)+Math.pow(f[w*2+1]-E,2);if(K<=J)Z[0]=f[w*2],Z[1]=f[w*2+1],J=K}return Z}return f},rV=function(B,E,A){var C=[B[0]-E[0],B[1]-E[1]],D=Math.sqrt(C[0]*C[0]+C[1]*C[1]),F=(D-A)/D;if(F<0)F=0.00001;return[E[0]+F*C[0],E[1]+F*C[1]]},wB=function(B,E){var A=i20(B,E);return A=p$0(A),A},p$0=function(B){var E,A,C=B.length/2,D=1/0,F=1/0,U=-1/0,z=-1/0;for(var k=0;k<C;k++)E=B[2*k],A=B[2*k+1],D=Math.min(D,E),U=Math.max(U,E),F=Math.min(F,A),z=Math.max(z,A);var f=2/(U-D),l=2/(z-F);for(var b=0;b<C;b++)E=B[2*b]=B[2*b]*f,A=B[2*b+1]=B[2*b+1]*l,D=Math.min(D,E),U=Math.max(U,E),F=Math.min(F,A),z=Math.max(z,A);if(F<-1)for(var M=0;M<C;M++)A=B[2*M+1]=B[2*M+1]+(-1-F);return B},i20=function(B,E){var A=1/B*2*Math.PI,C=B%2===0?Math.PI/2+A/2:Math.PI/2;C+=E;var D=Array(B*2),F;for(var U=0;U<B;U++)F=U*A+C,D[2*U]=Math.cos(F),D[2*U+1]=Math.sin(-F);return D},il=function(B,E){return Math.min(B/4,E/4,8)},d$0=function(B,E){return Math.min(B/10,E/10,8)},l50=function(){return 8},lZ4=function(B,E,A){return[B-2*E+A,2*(E-B),B]},a20=function(B,E){return{heightOffset:Math.min(15,0.05*E),widthOffset:Math.min(100,0.25*B),ctrlPtOffsetPct:0.05}},bZ4,MZ4,Gm0,XH,Hm0,xH,ZZ4,V20,JZ4,wZ4=function(B){return JZ4(B)},KZ4=function(B,E){var A=0;for(var C=0;C<E.length;C++)A+=E[C](B);return A},QZ4=function(B,E,A){for(var C=0;C<E;C++)B[C*E+C]=A},s$0=function(B,E){var A;for(var C=0;C<E;C++){A=0;for(var D=0;D<E;D++)A+=B[D*E+C];for(var F=0;F<E;F++)B[F*E+C]=B[F*E+C]/A}},GZ4=function(B,E,A){var C=Array(A*A);for(var D=0;D<A;D++){for(var F=0;F<A;F++)C[D*A+F]=0;for(var U=0;U<A;U++)for(var z=0;z<A;z++)C[D*A+z]+=B[D*A+U]*E[U*A+z]}return C},HZ4=function(B,E,A){var C=B.slice(0);for(var D=1;D<A;D++)B=GZ4(B,C,E);return B},LZ4=function(B,E,A){var C=Array(E*E);for(var D=0;D<E*E;D++)C[D]=Math.pow(B[D],A);return s$0(C,E),C},qZ4=function(B,E,A,C){for(var D=0;D<A;D++){var F=Math.round(B[D]*Math.pow(10,C))/Math.pow(10,C),U=Math.round(E[D]*Math.pow(10,C))/Math.pow(10,C);if(F!==U)return!1}return!0},XZ4=function(B,E,A,C){var D=[];for(var F=0;F<E;F++){var U=[];for(var z=0;z<E;z++)if(Math.round(B[F*E+z]*1000)/1000>0)U.push(A[z]);if(U.length!==0)D.push(C.collection(U))}return D},xZ4=function(B,E){for(var A=0;A<B.length;A++)if(!E[A]||B[A].id()!==E[A].id())return!1;return!0},vZ4=function(B){for(var E=0;E<B.length;E++)for(var A=0;A<B.length;A++)if(E!=A&&xZ4(B[E],B[A]))B.splice(A,1);return B},Lm0=function(B){var E=this.nodes(),A=this.edges(),C=this.cy(),D=wZ4(B),F={};for(var U=0;U<E.length;U++)F[E[U].id()]=U;var z=E.length,k=z*z,f=Array(k),l;for(var b=0;b<k;b++)f[b]=0;for(var M=0;M<A.length;M++){var Z=A[M],J=F[Z.source().id()],w=F[Z.target().id()],K=KZ4(Z,D.attributes);f[J*z+w]+=K,f[w*z+J]+=K}QZ4(f,z,D.multFactor),s$0(f,z);var Q=!0,G=0;while(Q&&G<D.maxIterations){if(Q=!1,l=HZ4(f,z,D.expandFactor),f=LZ4(l,z,D.inflateFactor),!qZ4(f,l,k,4))Q=!0;G++}var L=XZ4(f,z,E,C);return L=vZ4(L),L},SZ4,WZ4=function(B){return B},o$0=function(B,E){return Math.abs(E-B)},qm0=function(B,E,A){return B+o$0(E,A)},Xm0=function(B,E,A){return B+Math.pow(A-E,2)},YZ4=function(B){return Math.sqrt(B)},RZ4=function(B,E,A){return Math.max(B,o$0(E,A))},BW=function(B,E,A,C,D){var F=arguments.length>5&&arguments[5]!==void 0?arguments[5]:WZ4,U=C,z,k;for(var f=0;f<B;f++)z=E(f),k=A(f),U=D(U,z,k);return F(U)},WH,TZ4,b50=function(B){return TZ4(B)},Zh=function(B,E,A,C,D){var F=D!=="kMedoids",U=F?function(l){return A[l]}:function(l){return C[l](A)},z=function(b){return C[b](E)},k=A,f=E;return Sh(B,C.length,U,z,k,f)},v90=function(B,E,A){var C=A.length,D=Array(C),F=Array(C),U=Array(E),z=null;for(var k=0;k<C;k++)D[k]=B.min(A[k]).value,F[k]=B.max(A[k]).value;for(var f=0;f<E;f++){z=[];for(var l=0;l<C;l++)z[l]=Math.random()*(F[l]-D[l])+D[l];U[f]=z}return U},t$0=function(B,E,A,C,D){var F=1/0,U=0;for(var z=0;z<E.length;z++){var k=Zh(A,B,E[z],C,D);if(k<F)F=k,U=z}return U},e$0=function(B,E,A){var C=[],D=null;for(var F=0;F<E.length;F++)if(D=E[F],A[D.id()]===B)C.push(D);return C},OZ4=function(B,E,A){return Math.abs(E-B)<=A},IZ4=function(B,E,A){for(var C=0;C<B.length;C++)for(var D=0;D<B[C].length;D++){var F=Math.abs(B[C][D]-E[C][D]);if(F>A)return!1}return!0},PZ4=function(B,E,A){for(var C=0;C<A;C++)if(B===E[C])return!0;return!1},xm0=function(B,E){var A=Array(E);if(B.length<50)for(var C=0;C<E;C++){var D=B[Math.floor(Math.random()*B.length)];while(PZ4(D,A,C))D=B[Math.floor(Math.random()*B.length)];A[C]=D}else for(var F=0;F<E;F++)A[F]=B[Math.floor(Math.random()*B.length)];return A},vm0=function(B,E,A){var C=0;for(var D=0;D<E.length;D++)C+=Zh("manhattan",E[D],B,A,"kMedoids");return C},jZ4=function(B){var E=this.cy(),A=this.nodes(),C=null,D=b50(B),F=Array(D.k),U={},z;if(D.testMode)if(typeof D.testCentroids==="number")D.testCentroids,z=v90(A,D.k,D.attributes);else if(t2(D.testCentroids)==="object")z=D.testCentroids;else z=v90(A,D.k,D.attributes);else z=v90(A,D.k,D.attributes);var k=!0,f=0;while(k&&f<D.maxIterations){for(var l=0;l<A.length;l++)C=A[l],U[C.id()]=t$0(C,z,D.distance,D.attributes,"kMeans");k=!1;for(var b=0;b<D.k;b++){var M=e$0(b,A,U);if(M.length===0)continue;var Z=D.attributes.length,J=z[b],w=Array(Z),K=Array(Z);for(var Q=0;Q<Z;Q++){K[Q]=0;for(var G=0;G<M.length;G++)C=M[G],K[Q]+=D.attributes[Q](C);if(w[Q]=K[Q]/M.length,!OZ4(w[Q],J[Q],D.sensitivityThreshold))k=!0}z[b]=w,F[b]=E.collection(M)}f++}return F},NZ4=function(B){var E=this.cy(),A=this.nodes(),C=null,D=b50(B),F=Array(D.k),U,z={},k,f=Array(D.k);if(D.testMode)if(typeof D.testCentroids==="number");else if(t2(D.testCentroids)==="object")U=D.testCentroids;else U=xm0(A,D.k);else U=xm0(A,D.k);var l=!0,b=0;while(l&&b<D.maxIterations){for(var M=0;M<A.length;M++)C=A[M],z[C.id()]=t$0(C,U,D.distance,D.attributes,"kMedoids");l=!1;for(var Z=0;Z<U.length;Z++){var J=e$0(Z,A,z);if(J.length===0)continue;f[Z]=vm0(U[Z],J,D.attributes);for(var w=0;w<J.length;w++)if(k=vm0(J[w],J,D.attributes),k<f[Z])f[Z]=k,U[Z]=J[w],l=!0;F[Z]=E.collection(J)}b++}return F},iZ4=function(B,E,A,C,D){var F,U;for(var z=0;z<E.length;z++)for(var k=0;k<B.length;k++)C[z][k]=Math.pow(A[z][k],D.m);for(var f=0;f<B.length;f++)for(var l=0;l<D.attributes.length;l++){F=0,U=0;for(var b=0;b<E.length;b++)F+=C[b][f]*D.attributes[l](E[b]),U+=C[b][f];B[f][l]=F/U}},aZ4=function(B,E,A,C,D){for(var F=0;F<B.length;F++)E[F]=B[F].slice();var U,z,k,f=2/(D.m-1);for(var l=0;l<A.length;l++)for(var b=0;b<C.length;b++){U=0;for(var M=0;M<A.length;M++)z=Zh(D.distance,C[b],A[l],D.attributes,"cmeans"),k=Zh(D.distance,C[b],A[M],D.attributes,"cmeans"),U+=Math.pow(z/k,f);B[b][l]=1/U}},VZ4=function(B,E,A,C){var D=Array(A.k);for(var F=0;F<D.length;F++)D[F]=[];var U,z;for(var k=0;k<E.length;k++){U=-1/0,z=-1;for(var f=0;f<E[0].length;f++)if(E[k][f]>U)U=E[k][f],z=f;D[z].push(B[k])}for(var l=0;l<D.length;l++)D[l]=C.collection(D[l]);return D},Sm0=function(B){var E=this.cy(),A=this.nodes(),C=b50(B),D,F,U,z,k;z=Array(A.length);for(var f=0;f<A.length;f++)z[f]=Array(C.k);U=Array(A.length);for(var l=0;l<A.length;l++)U[l]=Array(C.k);for(var b=0;b<A.length;b++){var M=0;for(var Z=0;Z<C.k;Z++)U[b][Z]=Math.random(),M+=U[b][Z];for(var J=0;J<C.k;J++)U[b][J]=U[b][J]/M}F=Array(C.k);for(var w=0;w<C.k;w++)F[w]=Array(C.attributes.length);k=Array(A.length);for(var K=0;K<A.length;K++)k[K]=Array(C.k);var Q=!0,G=0;while(Q&&G<C.maxIterations){if(Q=!1,iZ4(F,A,U,k,C),aZ4(U,z,F,A,C),!IZ4(U,z,C.sensitivityThreshold))Q=!0;G++}return D=VZ4(A,U,C,E),{clusters:D,degreeOfMembership:U}},hZ4,mZ4,rZ4,$Z4=function(B){var E=mZ4(B),A=rZ4[E.linkage];if(A!=null)E.linkage=A;return E},Wm0=function(B,E,A,C,D){var F=0,U=1/0,z,k=D.attributes,f=function(W,S){return Sh(D.distance,k.length,function(T){return k[T](W)},function(T){return k[T](S)},W,S)};for(var l=0;l<B.length;l++){var b=B[l].key,M=A[b][C[b]];if(M<U)F=b,U=M}if(D.mode==="threshold"&&U>=D.threshold||D.mode==="dendrogram"&&B.length===1)return!1;var Z=E[F],J=E[C[F]],w;if(D.mode==="dendrogram")w={left:Z,right:J,key:Z.key};else w={value:Z.value.concat(J.value),key:Z.key};B[Z.index]=w,B.splice(J.index,1),E[Z.key]=w;for(var K=0;K<B.length;K++){var Q=B[K];if(Z.key===Q.key)z=1/0;else if(D.linkage==="min"){if(z=A[Z.key][Q.key],A[Z.key][Q.key]>A[J.key][Q.key])z=A[J.key][Q.key]}else if(D.linkage==="max"){if(z=A[Z.key][Q.key],A[Z.key][Q.key]<A[J.key][Q.key])z=A[J.key][Q.key]}else if(D.linkage==="mean")z=(A[Z.key][Q.key]*Z.size+A[J.key][Q.key]*J.size)/(Z.size+J.size);else if(D.mode==="dendrogram")z=f(Q.value,Z.value);else z=f(Q.value[0],Z.value[0]);A[Z.key][Q.key]=A[Q.key][Z.key]=z}for(var G=0;G<B.length;G++){var L=B[G].key;if(C[L]===Z.key||C[L]===J.key){var H=L;for(var q=0;q<B.length;q++){var x=B[q].key;if(A[L][x]<A[L][H])H=x}C[L]=H}B[G].index=G}return Z.key=J.key=Z.index=J.index=null,!0},HH=function(B,E,A){if(!B)return;if(B.value)E.push(B.value);else{if(B.left)HH(B.left,E);if(B.right)HH(B.right,E)}},h20=function(B,E){if(!B)return"";if(B.left&&B.right){var A=h20(B.left,E),C=h20(B.right,E),D=E.add({group:"nodes",data:{id:A+","+C}});return E.add({group:"edges",data:{source:A,target:D.id()}}),E.add({group:"edges",data:{source:C,target:D.id()}}),D.id()}else if(B.value)return B.value.id()},m20=function(B,E,A){if(!B)return[];var C=[],D=[],F=[];if(E===0){if(B.left)HH(B.left,C);if(B.right)HH(B.right,D);return F=C.concat(D),[A.collection(F)]}else if(E===1)if(B.value)return[A.collection(B.value)];else{if(B.left)HH(B.left,C);if(B.right)HH(B.right,D);return[A.collection(C),A.collection(D)]}else if(B.value)return[A.collection(B.value)];else{if(B.left)C=m20(B.left,E-1,A);if(B.right)D=m20(B.right,E-1,A);return C.concat(D)}},Ym0=function(B){var E=this.cy(),A=this.nodes(),C=$Z4(B),D=C.attributes,F=function(G,L){return Sh(C.distance,D.length,function(H){return D[H](G)},function(H){return D[H](L)},G,L)},U=[],z=[],k=[],f=[];for(var l=0;l<A.length;l++){var b={value:C.mode==="dendrogram"?A[l]:[A[l]],key:l,index:l};U[l]=b,f[l]=b,z[l]=[],k[l]=0}for(var M=0;M<U.length;M++)for(var Z=0;Z<=M;Z++){var J=void 0;if(C.mode==="dendrogram")J=M===Z?1/0:F(U[M].value,U[Z].value);else J=M===Z?1/0:F(U[M].value[0],U[Z].value[0]);if(z[M][Z]=J,z[Z][M]=J,J<z[M][k[M]])k[M]=Z}var w=Wm0(U,f,z,k,C);while(w)w=Wm0(U,f,z,k,C);var K;if(C.mode==="dendrogram"){if(K=m20(U[0],C.dendrogramDepth,E),C.addDendrogram)h20(U[0],E)}else K=Array(U.length),U.forEach(function(Q,G){Q.key=Q.index=null,K[G]=E.collection(Q.value)});return K},yZ4,cZ4,gZ4=function(B){var{damping:E,preference:A}=B;if(!(0.5<=E&&E<1))F9("Damping must range on [0.5, 1). Got: ".concat(E));var C=["median","mean","min","max"];if(!(C.some(function(D){return D===A})||J4(A)))F9("Preference must be one of [".concat(C.map(function(D){return"'".concat(D,"'")}).join(", "),"] or a number. Got: ").concat(A));return cZ4(B)},_Z4=function(B,E,A,C){var D=function(U,z){return C[z](U)};return-Sh(B,C.length,function(F){return D(E,F)},function(F){return D(A,F)},E,A)},nZ4=function(B,E){var A=null;if(E==="median")A=cM4(B);else if(E==="mean")A=yM4(B);else if(E==="min")A=rM4(B);else if(E==="max")A=$M4(B);else A=E;return A},pZ4=function(B,E,A){var C=[];for(var D=0;D<B;D++)if(E[D*B+D]+A[D*B+D]>0)C.push(D);return C},Rm0=function(B,E,A){var C=[];for(var D=0;D<B;D++){var F=-1,U=-1/0;for(var z=0;z<A.length;z++){var k=A[z];if(E[D*B+k]>U)F=k,U=E[D*B+k]}if(F>0)C.push(F)}for(var f=0;f<A.length;f++)C[A[f]]=A[f];return C},dZ4=function(B,E,A){var C=Rm0(B,E,A);for(var D=0;D<A.length;D++){var F=[];for(var U=0;U<C.length;U++)if(C[U]===A[D])F.push(U);var z=-1,k=-1/0;for(var f=0;f<F.length;f++){var l=0;for(var b=0;b<F.length;b++)l+=E[F[b]*B+F[f]];if(l>k)z=f,k=l}A[D]=F[z]}return C=Rm0(B,E,A),C},Tm0=function(B){var E=this.cy(),A=this.nodes(),C=gZ4(B),D={};for(var F=0;F<A.length;F++)D[A[F].id()]=F;var U,z,k,f,l,b;U=A.length,z=U*U,k=Array(z);for(var M=0;M<z;M++)k[M]=-1/0;for(var Z=0;Z<U;Z++)for(var J=0;J<U;J++)if(Z!==J)k[Z*U+J]=_Z4(C.distance,A[Z],A[J],C.attributes);f=nZ4(k,C.preference);for(var w=0;w<U;w++)k[w*U+w]=f;l=Array(z);for(var K=0;K<z;K++)l[K]=0;b=Array(z);for(var Q=0;Q<z;Q++)b[Q]=0;var G=Array(U),L=Array(U),H=Array(U);for(var q=0;q<U;q++)G[q]=0,L[q]=0,H[q]=0;var x=Array(U*C.minIterations);for(var v=0;v<x.length;v++)x[v]=0;var W;for(W=0;W<C.maxIterations;W++){for(var S=0;S<U;S++){var T=-1/0,R=-1/0,Y=-1,a=0;for(var I=0;I<U;I++)if(G[I]=l[S*U+I],a=b[S*U+I]+k[S*U+I],a>=T)R=T,T=a,Y=I;else if(a>R)R=a;for(var O=0;O<U;O++)l[S*U+O]=(1-C.damping)*(k[S*U+O]-T)+C.damping*G[O];l[S*U+Y]=(1-C.damping)*(k[S*U+Y]-R)+C.damping*G[Y]}for(var i=0;i<U;i++){var N=0;for(var V=0;V<U;V++)G[V]=b[V*U+i],L[V]=Math.max(0,l[V*U+i]),N+=L[V];N-=L[i],L[i]=l[i*U+i],N+=L[i];for(var h=0;h<U;h++)b[h*U+i]=(1-C.damping)*Math.min(0,N-L[h])+C.damping*G[h];b[i*U+i]=(1-C.damping)*(N-L[i])+C.damping*G[i]}var r=0;for(var m=0;m<U;m++){var $=b[m*U+m]+l[m*U+m]>0?1:0;x[W%C.minIterations*U+m]=$,r+=$}if(r>0&&(W>=C.minIterations-1||W==C.maxIterations-1)){var y=0;for(var p=0;p<U;p++){H[p]=0;for(var e=0;e<C.minIterations;e++)H[p]+=x[e*U+p];if(H[p]===0||H[p]===C.minIterations)y++}if(y===U)break}}var _=pZ4(U,l,b),b0=dZ4(U,k,_),B0={};for(var k0=0;k0<_.length;k0++)B0[_[k0]]=[];for(var f0=0;f0<A.length;f0++){var D0=D[A[f0].id()],P0=b0[D0];if(P0!=null)B0[P0].push(A[f0])}var q0=Array(_.length);for(var m0=0;m0<_.length;m0++)q0[m0]=E.collection(B0[_[m0]]);return q0},sZ4,oZ4,tZ4,$V=function(){var B=this,E={},A=0,C=0,D=[],F=[],U={},z=function(b,M){var Z=F.length-1,J=[],w=B.spawn();while(F[Z].x!=b||F[Z].y!=M)J.push(F.pop().edge),Z--;J.push(F.pop().edge),J.forEach(function(K){var Q=K.connectedNodes().intersection(B);w.merge(K),Q.forEach(function(G){var L=G.id(),H=G.connectedEdges().intersection(B);if(w.merge(G),!E[L].cutVertex)w.merge(H);else w.merge(H.filter(function(q){return q.isLoop()}))})}),D.push(w)},k=function(b,M,Z){if(b===Z)C+=1;E[M]={id:A,low:A++,cutVertex:!1};var J=B.getElementById(M).connectedEdges().intersection(B);if(J.size()===0)D.push(B.spawn(B.getElementById(M)));else{var w,K,Q,G;J.forEach(function(L){if(w=L.source().id(),K=L.target().id(),Q=w===M?K:w,Q!==Z){if(G=L.id(),!U[G])U[G]=!0,F.push({x:M,y:Q,edge:L});if(!(Q in E)){if(k(b,Q,M),E[M].low=Math.min(E[M].low,E[Q].low),E[M].id<=E[Q].low)E[M].cutVertex=!0,z(M,Q)}else E[M].low=Math.min(E[M].low,E[Q].id)}})}};B.forEach(function(l){if(l.isNode()){var b=l.id();if(!(b in E))C=0,k(b,b),E[b].cutVertex=C>1}});var f=Object.keys(E).filter(function(l){return E[l].cutVertex}).map(function(l){return B.getElementById(l)});return{cut:B.spawn(f),components:D}},eZ4,yV=function(){var B=this,E={},A=0,C=[],D=[],F=B.spawn(B),U=function(k){D.push(k),E[k]={index:A,low:A++,explored:!1};var f=B.getElementById(k).connectedEdges().intersection(B);if(f.forEach(function(J){var w=J.target().id();if(w!==k){if(!(w in E))U(w);if(!E[w].explored)E[k].low=Math.min(E[k].low,E[w].low)}}),E[k].index===E[k].low){var l=B.spawn();for(;;){var b=D.pop();if(l.merge(B.getElementById(b)),E[b].low=E[k].index,E[b].explored=!0,b===k)break}var M=l.edgesWith(l),Z=l.merge(M);C.push(Z),F=F.difference(Z)}};return B.forEach(function(z){if(z.isNode()){var k=z.id();if(!(k in E))U(k)}}),{cut:F,components:C}},uJ4,uy0,By0=0,Ey0=1,Ay0=2,RC=function(B){if(!(this instanceof RC))return new RC(B);if(this.id="Thenable/1.0.7",this.state=By0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof B==="function")B.call(this,this.fulfill.bind(this),this.reject.bind(this))},Om0=function(B,E,A,C){if(B.state===By0)B.state=E,B[A]=C,Cy0(B);return B},Cy0=function(B){if(B.state===Ey0)Im0(B,"onFulfilled",B.fulfillValue);else if(B.state===Ay0)Im0(B,"onRejected",B.rejectReason)},Im0=function(B,E,A){if(B[E].length===0)return;var C=B[E];B[E]=[];var D=function(){for(var U=0;U<C.length;U++)C[U](A)};if(typeof setImmediate==="function")setImmediate(D);else setTimeout(D,0)},Pm0=function(B,E,A){return function(C){if(typeof B!=="function")E[A].call(E,C);else{var D;try{D=B(C)}catch(F){E.reject(F);return}Dy0(E,D)}}},Dy0=function(B,E){if(B===E||B.proxy===E){B.reject(TypeError("cannot resolve promise with itself"));return}var A;if(t2(E)==="object"&&E!==null||typeof E==="function")try{A=E.then}catch(D){B.reject(D);return}if(typeof A==="function"){var C=!1;try{A.call(E,function(D){if(C)return;if(C=!0,D===E)B.reject(TypeError("circular thenable chain"));else Dy0(B,D)},function(D){if(C)return;C=!0,B.reject(D)})}catch(D){if(!C)B.reject(D)}return}B.fulfill(E)},IH,r20=function(B,E,A){var C=E50(B),D=!C,F=this._private=k3({duration:1000},E,A);if(F.target=B,F.style=F.style||F.css,F.started=!1,F.playing=!1,F.hooked=!1,F.applying=!1,F.progress=0,F.completes=[],F.frames=[],F.complete&&H9(F.complete))F.completes.push(F.complete);if(D){var U=B.position();F.startPosition=F.startPosition||{x:U.x,y:U.y},F.startStyle=F.startStyle||B.cy().style().getAnimationStartStyle(B,F.style)}if(C){var z=B.pan();F.startPan={x:z.x,y:z.y},F.startZoom=B.zoom()}this.length=1,this[0]=this},XJ,BJ4,S90,jm0,W90,Nm0,Y90,im0,R90,am0,T90,Vm0,O90,hm0,I90,mm0,P90,rm0,j90,$m0,N90,ym0,i90,cm0,a90,gm0,V90,_m0,h90,nm0,m90,pm0,r90,dm0,$90,sm0,y90,om0,c90,tm0,g90,em0,_90,ur0,n90,Br0,p90,Er0,d90,Ar0,s90,Cr0,o90,Dr0,t90,Fr0,e90,Ur0,u20,zr0,B20,kr0,E20,fr0,A20,lr0,C20,br0,D20,Mr0,F20,Zr0,U20,Jr0,z20,wr0,k20,Kr0,f20,Qr0,l20,Gr0,b20,Hr0,M20,Lr0,Z20,qr0,jJ4,NJ4,J20,Xr0,w20,xr0,K20,vr0,Q20,Sr0,G20,Wr0,H20,Yr0,$J4,yJ4,L20,Rr0,q20,Tr0,_J4,nJ4,pJ4,dJ4,E6,sJ4,uh,v1,b6=function(){return{checks:[]}},T4,$20,oJ4,tJ4=function(B,E){return oJ4[B](E)},eJ4,lH=function(B){return B.replace(new RegExp("\\\\("+v1.metaChar+")","g"),function(E,A){return A})},Sl=function(B,E,A){B[B.length-1]=A},y20,uw4=function(B){var E,A,C;for(var D=0;D<y20.length;D++){var F=y20[D],U=F.name,z=B.match(F.regexObj);if(z!=null){A=z,E=F,C=U;var k=z[0];B=B.substring(k.length);break}}return{expr:E,match:A,name:C,remaining:B}},Bw4=function(B){var E=B.match(/^\s+/);if(E){var A=E[0];B=B.substring(A.length)}return B},Ew4=function(B){var E=this,A=E.inputText=B,C=E[0]=b6();E.length=1,A=Bw4(A);for(;;){var D=uw4(A);if(D.expr==null)return A6("The selector `"+B+"`is invalid"),!1;else{var F=D.match.slice(1),U=D.expr.populate(E,C,F);if(U===!1)return!1;else if(U!=null)C=U}if(A=D.remaining,A.match(/^\s*$/))break}var z=E[E.length-1];if(E.currentSubject!=null)z.subject=E.currentSubject;z.edgeCount=E.edgeCount,z.compoundCount=E.compoundCount;for(var k=0;k<E.length;k++){var f=E[k];if(f.compoundCount>0&&f.edgeCount>0)return A6("The selector `"+B+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return A6("The selector `"+B+"` is invalid because it uses multiple edge selectors"),!1;else if(f.edgeCount===1)A6("The selector `"+B+"` 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},Aw4=function(){if(this.toStringCache!=null)return this.toStringCache;var B=function(f){if(f==null)return"";else return f},E=function(f){if(p4(f))return'"'+f+'"';else return B(f)},A=function(f){return" "+f+" "},C=function(f,l){var{type:b,value:M}=f;switch(b){case T4.GROUP:{var Z=B(M);return Z.substring(0,Z.length-1)}case T4.DATA_COMPARE:{var{field:J,operator:w}=f;return"["+J+A(B(w))+E(M)+"]"}case T4.DATA_BOOL:{var{operator:K,field:Q}=f;return"["+B(K)+Q+"]"}case T4.DATA_EXIST:{var G=f.field;return"["+G+"]"}case T4.META_COMPARE:{var{operator:L,field:H}=f;return"[["+H+A(B(L))+E(M)+"]]"}case T4.STATE:return M;case T4.ID:return"#"+M;case T4.CLASS:return"."+M;case T4.PARENT:case T4.CHILD:return D(f.parent,l)+A(">")+D(f.child,l);case T4.ANCESTOR:case T4.DESCENDANT:return D(f.ancestor,l)+" "+D(f.descendant,l);case T4.COMPOUND_SPLIT:{var q=D(f.left,l),x=D(f.subject,l),v=D(f.right,l);return q+(q.length>0?" ":"")+x+v}case T4.TRUE:return""}},D=function(f,l){return f.checks.reduce(function(b,M,Z){return b+(l===f&&Z===0?"$":"")+C(M,l)},"")},F="";for(var U=0;U<this.length;U++){var z=this[U];if(F+=D(z,z.subject),this.length>1&&U<this.length-1)F+=", "}return this.toStringCache=F,F},Cw4,ly0=function(B,E,A){var C,D=p4(B),F=J4(B),U=p4(A),z,k,f=!1,l=!1,b=!1;if(E.indexOf("!")>=0)E=E.replace("!",""),l=!0;if(E.indexOf("@")>=0)E=E.replace("@",""),f=!0;if(D||U||f)z=!D&&!F?"":""+B,k=""+A;if(f)B=z=z.toLowerCase(),A=k=k.toLowerCase();switch(E){case"*=":C=z.indexOf(k)>=0;break;case"$=":C=z.indexOf(k,z.length-k.length)>=0;break;case"^=":C=z.indexOf(k)===0;break;case"=":C=B===A;break;case">":b=!0,C=B>A;break;case">=":b=!0,C=B>=A;break;case"<":b=!0,C=B<A;break;case"<=":b=!0,C=B<=A;break;default:C=!1;break}if(l&&(B!=null||!b))C=!C;return C},Dw4=function(B,E){switch(E){case"?":return B?!0:!1;case"!":return B?!1:!0;case"^":return B===void 0}},Fw4=function(B){return B!==void 0},J50=function(B,E){return B.data(E)},Uw4=function(B,E){return B[E]()},r9,$6=function(B,E){return B.checks.every(function(A){return r9[A.type](A,E)})},zw4=function(B){var E=this;if(E.length===1&&E[0].checks.length===1&&E[0].checks[0].type===T4.ID)return B.getElementById(E[0].checks[0].value).collection();var A=function(D){for(var F=0;F<E.length;F++){var U=E[F];if($6(U,D))return!0}return!1};if(E.text()==null)A=function(){return!0};return B.filter(A)},kw4=function(B){var E=this;for(var A=0;A<E.length;A++){var C=E[A];if($6(C,B))return!0}return!1},fw4,al=function(B){if(this.inputText=B,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,B==null||p4(B)&&B.match(/^\s*$/));else if(lE(B))this.addQuery({checks:[{type:T4.COLLECTION,value:B.collection()}]});else if(H9(B))this.addQuery({checks:[{type:T4.FILTER,value:B}]});else if(p4(B)){if(!this.parse(B))this.invalid=!0}else F9("A selector must be created from a string; found ")},Vl,Il,UA=function(B,E){return function(C,D,F,U){var z=C,k=this,f;if(z==null)f="";else if(lE(z)&&z.length===1)f=z.id();if(k.length===1&&f){var l=k[0]._private,b=l.traversalCache=l.traversalCache||{},M=b[E]=b[E]||[],Z=LJ(f),J=M[Z];if(J)return J;else return M[Z]=B.call(k,C,D,F,U)}else return B.call(k,C,D,F,U)}},YH,GW,Zy0,bw4,Oh,YC,Jy0,wy0=function(B,E,A){for(var C=0;C<B.length;C++){var D=B[C];if(!D.locked()){var F=D._private.position,U={x:E.x!=null?E.x-F.x:0,y:E.y!=null?E.y-F.y:0};if(D.isParent()&&!(U.x===0&&U.y===0))D.children().shift(U,A);D.dirtyBoundingBoxCache()}}},Or0,Mw4,RH=function(B){switch(B){case"left":case"right-inside":return"left";case"right":case"left-inside":return"right";default:return"center"}},TH=function(B){switch(B){case"top":case"bottom-inside":return"top";case"bottom":case"top-inside":return"bottom";default:return"center"}},Zw4=function(B){switch(B){case"left":return"right";case"right":return"left";case"left-inside":return"left";case"right-inside":return"right";default:return"center"}},vH,$l,FA=function(B){if(B===1/0||B===-1/0)return 0;return B},WC=function(B,E,A,C,D){if(C-E===0||D-A===0)return;if(E==null||A==null||C==null||D==null)return;B.x1=E<B.x1?E:B.x1,B.x2=C>B.x2?C:B.x2,B.y1=A<B.y1?A:B.y1,B.y2=D>B.y2?D:B.y2,B.w=B.x2-B.x1,B.h=B.y2-B.y1},Yl=function(B,E){if(E==null)return B;return WC(B,E.x1,E.y1,E.x2,E.y2)},EW=function(B,E,A){return KB(B,E,A)},cV=function(B,E,A){if(E.cy().headless())return;var C=E._private,D=C.rstyle,F=D.arrowWidth/2,U=E.pstyle(A+"-arrow-shape").value,z,k;if(U!=="none"){if(A==="source")z=D.srcX,k=D.srcY;else if(A==="target")z=D.tgtX,k=D.tgtY;else z=D.midX,k=D.midY;var f=C.arrowBounds=C.arrowBounds||{},l=f[A]=f[A]||{};l.x1=z-F,l.y1=k-F,l.x2=z+F,l.y2=k+F,l.w=l.x2-l.x1,l.h=l.y2-l.y1,tV(l,1),WC(B,l.x1,l.y1,l.x2,l.y2)}},x20=function(B,E,A){if(E.cy().headless())return;var C;if(A)C=A+"-";else C="";var D=E._private,F=D.rstyle,U=E.pstyle(C+"label").strValue;if(U){var z=E.pstyle("text-halign"),k=E.pstyle("text-valign"),f=EW(F,"labelWidth",A),l=EW(F,"labelHeight",A),b=EW(F,"labelX",A),M=EW(F,"labelY",A),Z=E.pstyle(C+"text-margin-x").pfValue,J=E.pstyle(C+"text-margin-y").pfValue,w=E.isEdge(),K=E.pstyle(C+"text-rotation"),Q=E.pstyle("text-outline-width").pfValue,G=E.pstyle("text-border-width").pfValue,L=G/2,H=E.pstyle("text-background-padding").pfValue,q=2,x=l,v=f,W=v/2,S=x/2,T,R,Y,a;if(w)T=b-W,R=b+W,Y=M-S,a=M+S;else{switch(RH(z.value)){case"left":T=b-v,R=b;break;case"center":T=b-W,R=b+W;break;case"right":T=b,R=b+v;break}switch(TH(k.value)){case"top":Y=M-x,a=M;break;case"center":Y=M-S,a=M+S;break;case"bottom":Y=M,a=M+x;break}}var I=Z-Math.max(Q,L)-H-q,O=Z+Math.max(Q,L)+H+q,i=J-Math.max(Q,L)-H-q,N=J+Math.max(Q,L)+H+q;T+=I,R+=O,Y+=i,a+=N;var V=A||"main",h=D.labelBounds,r=h[V]=h[V]||{};r.x1=T,r.y1=Y,r.x2=R,r.y2=a,r.w=R-T,r.h=a-Y,r.leftPad=I,r.rightPad=O,r.topPad=i,r.botPad=N;var m=w&&K.strValue==="autorotate",$=K.pfValue!=null&&K.pfValue!==0;if(m||$){var y=m?EW(D.rstyle,"labelAngle",A):K.pfValue,p=Math.cos(y),e=Math.sin(y),_=(T+R)/2,b0=(Y+a)/2;if(!w){switch(RH(z.value)){case"left":_=R;break;case"right":_=T;break}switch(TH(k.value)){case"top":b0=a;break;case"bottom":b0=Y;break}}var B0=function(_0,w0){return _0=_0-_,w0=w0-b0,{x:_0*p-w0*e+_,y:_0*e+w0*p+b0}},k0=B0(T,Y),f0=B0(T,a),D0=B0(R,Y),P0=B0(R,a);T=Math.min(k0.x,f0.x,D0.x,P0.x),R=Math.max(k0.x,f0.x,D0.x,P0.x),Y=Math.min(k0.y,f0.y,D0.y,P0.y),a=Math.max(k0.y,f0.y,D0.y,P0.y)}var q0=V+"Rot",m0=h[q0]=h[q0]||{};m0.x1=T,m0.y1=Y,m0.x2=R,m0.y2=a,m0.w=R-T,m0.h=a-Y,WC(B,T,Y,R,a),WC(D.labelBounds.all,T,Y,R,a)}return B},Ir0=function(B,E){if(E.cy().headless())return;var A=E.pstyle("outline-opacity").value,C=E.pstyle("outline-width").value,D=E.pstyle("outline-offset").value,F=C+D;Ky0(B,E,A,F,"outside",F/2)},Ky0=function(B,E,A,C,D,F){if(A===0||C<=0||D==="inside")return;var U=E.cy(),z=U.renderer(),k=z.nodeShapes[z.getNodeShape(E)];if(!k)return;var f=E.position(),l=f.x,b=f.y,M=E.width(),Z=E.height();if(k.hasMiterBounds){if(D==="center")C/=2;var J=k.miterBounds(l,b,M,Z,C);Yl(B,J)}else if(F!=null&&F>0)eV(B,[F,F,F,F])},Jw4=function(B,E){if(E.cy().headless())return;var A=E.pstyle("border-opacity").value,C=E.pstyle("border-width").pfValue,D=E.pstyle("border-position").value;Ky0(B,E,A,C,D)},ww4=function(B,E){var A=B._private.cy,C=A.styleEnabled(),D=A.headless(),F=QB(),U=B._private,z=B.isNode(),k=B.isEdge(),f,l,b,M,Z,J,w=U.rstyle,K=z&&C?B.pstyle("bounds-expansion").pfValue:[0],Q=function(a0){return a0.pstyle("display").value!=="none"},G=!C||Q(B)&&(!k||Q(B.source())&&Q(B.target()));if(G){var L=0,H=0;if(C&&E.includeOverlays){if(L=B.pstyle("overlay-opacity").value,L!==0)H=B.pstyle("overlay-padding").value}var q=0,x=0;if(C&&E.includeUnderlays){if(q=B.pstyle("underlay-opacity").value,q!==0)x=B.pstyle("underlay-padding").value}var v=Math.max(H,x),W=0,S=0;if(C)W=B.pstyle("width").pfValue,S=W/2;if(z&&E.includeNodes){var T=B.position();Z=T.x,J=T.y;var R=B.outerWidth(),Y=R/2,a=B.outerHeight(),I=a/2;if(f=Z-Y,l=Z+Y,b=J-I,M=J+I,WC(F,f,b,l,M),C)Ir0(F,B);if(C&&E.includeOutlines&&!D)Ir0(F,B);if(C)Jw4(F,B)}else if(k&&E.includeEdges)if(C&&!D){var O=B.pstyle("curve-style").strValue;if(f=Math.min(w.srcX,w.midX,w.tgtX),l=Math.max(w.srcX,w.midX,w.tgtX),b=Math.min(w.srcY,w.midY,w.tgtY),M=Math.max(w.srcY,w.midY,w.tgtY),f-=S,l+=S,b-=S,M+=S,WC(F,f,b,l,M),O==="haystack"){var i=w.haystackPts;if(i&&i.length===2){if(f=i[0].x,b=i[0].y,l=i[1].x,M=i[1].y,f>l){var N=f;f=l,l=N}if(b>M){var V=b;b=M,M=V}WC(F,f-S,b-S,l+S,M+S)}}else if(O==="bezier"||O==="unbundled-bezier"||Rl(O,"segments")||Rl(O,"taxi")){var h;switch(O){case"bezier":case"unbundled-bezier":h=w.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":h=w.linePts;break}if(h!=null)for(var r=0;r<h.length;r++){var m=h[r];f=m.x-S,l=m.x+S,b=m.y-S,M=m.y+S,WC(F,f,b,l,M)}}}else{var $=B.source(),y=$.position(),p=B.target(),e=p.position();if(f=y.x,l=e.x,b=y.y,M=e.y,f>l){var _=f;f=l,l=_}if(b>M){var b0=b;b=M,M=b0}f-=S,l+=S,b-=S,M+=S,WC(F,f,b,l,M)}if(C&&E.includeEdges&&k)cV(F,B,"mid-source"),cV(F,B,"mid-target"),cV(F,B,"source"),cV(F,B,"target");if(C){var B0=B.pstyle("ghost").value==="yes";if(B0){var k0=B.pstyle("ghost-offset-x").pfValue,f0=B.pstyle("ghost-offset-y").pfValue;WC(F,F.x1+k0,F.y1+f0,F.x2+k0,F.y2+f0)}}var D0=U.bodyBounds=U.bodyBounds||{};if(Km0(D0,F),eV(D0,K),tV(D0,1),C)f=F.x1,l=F.x2,b=F.y1,M=F.y2,WC(F,f-v,b-v,l+v,M+v);var P0=U.overlayBounds=U.overlayBounds||{};Km0(P0,F),eV(P0,K),tV(P0,1);var q0=U.labelBounds=U.labelBounds||{};if(q0.all!=null)sM4(q0.all);else q0.all=QB();if(C&&E.includeLabels){if(E.includeMainLabels)x20(F,B,null);if(k){if(E.includeSourceLabels)x20(F,B,"source");if(E.includeTargetLabels)x20(F,B,"target")}}}if(F.x1=FA(F.x1),F.y1=FA(F.y1),F.x2=FA(F.x2),F.y2=FA(F.y2),F.w=FA(F.x2-F.x1),F.h=FA(F.y2-F.y1),F.w>0&&F.h>0&&G)eV(F,K),tV(F,1);return F},Qy0=function(B){var E=0,A=function(F){return(F?1:0)<<E++},C=0;return C+=A(B.incudeNodes),C+=A(B.includeEdges),C+=A(B.includeLabels),C+=A(B.includeMainLabels),C+=A(B.includeSourceLabels),C+=A(B.includeTargetLabels),C+=A(B.includeOverlays),C+=A(B.includeOutlines),C},Gy0=function(B){var E=function(U){return Math.round(U)};if(B.isEdge()){var A=B.source().position(),C=B.target().position();return lm0([E(A.x),E(A.y),E(C.x),E(C.y)])}else{var D=B.position();return lm0([E(D.x),E(D.y)])}},Pr0=function(B,E){var A=B._private,C,D=B.isEdge(),F=E==null?jr0:Qy0(E),U=F===jr0;if(A.bbCache==null)C=ww4(B,HW),A.bbCache=C,A.bbCachePosKey=Gy0(B);else C=A.bbCache;if(!U){var z=B.isNode();if(C=QB(),E.includeNodes&&z||E.includeEdges&&!z)if(E.includeOverlays)Yl(C,A.overlayBounds);else Yl(C,A.bodyBounds);if(E.includeLabels)if(E.includeMainLabels&&(!D||E.includeSourceLabels&&E.includeTargetLabels))Yl(C,A.labelBounds.all);else{if(E.includeMainLabels)Yl(C,A.labelBounds.mainRot);if(E.includeSourceLabels)Yl(C,A.labelBounds.sourceRot);if(E.includeTargetLabels)Yl(C,A.labelBounds.targetRot)}C.w=C.x2-C.x1,C.h=C.y2-C.y1}return C},HW,jr0,Nr0,Kw4,kW,OW,Hy0=function(B){B.uppercaseName=sh0(B.name),B.autoName="auto"+B.uppercaseName,B.labelName="label"+B.uppercaseName,B.outerName="outer"+B.uppercaseName,B.uppercaseOuterName=sh0(B.outerName),kW[B.name]=function(){var A=this[0],C=A._private,D=C.cy,F=D._private.styleEnabled;if(A)if(F){if(A.isParent())return A.updateCompoundBounds(),C[B.autoName]||0;var U=A.pstyle(B.name);switch(U.strValue){case"label":return A.recalculateRenderedStyle(),C.rstyle[B.labelName]||0;default:return U.pfValue}}else return 1},kW["outer"+B.uppercaseName]=function(){var A=this[0],C=A._private,D=C.cy,F=D._private.styleEnabled;if(A)if(F){var U=A[B.name](),z=A.pstyle("border-position").value,k;if(z==="center")k=A.pstyle("border-width").pfValue;else if(z==="outside")k=2*A.pstyle("border-width").pfValue;else k=0;var f=2*A.padding();return U+k+f}else return 1},kW["rendered"+B.uppercaseName]=function(){var A=this[0];if(A){var C=A[B.name]();return C*this.cy().zoom()}},kW["rendered"+B.uppercaseOuterName]=function(){var A=this[0];if(A){var C=A[B.outerName]();return C*this.cy().zoom()}}},Qw4,Gw4=function(B,E){if(B.isEdge()&&B.takesUpSpace())return E(B)},Hw4=function(B,E){if(B.isEdge()&&B.takesUpSpace()){var A=B.cy();return vh(E(B),A.zoom(),A.pan())}},Lw4=function(B,E){if(B.isEdge()&&B.takesUpSpace()){var A=B.cy(),C=A.pan(),D=A.zoom();return E(B).map(function(F){return vh(F,D,C)})}},qw4=function(B){return B.renderer().getControlPoints(B)},Xw4=function(B){return B.renderer().getSegmentPoints(B)},xw4=function(B){return B.renderer().getSourceEndpoint(B)},vw4=function(B){return B.renderer().getTargetEndpoint(B)},Sw4=function(B){return B.renderer().getEdgeMidpoint(B)},ir0,Ww4=function(B){return"rendered"+B[0].toUpperCase()+B.substr(1)},Yw4,Rw4,Ly0=function(B,E){this.recycle(B,E)},qy0,Tw4=".*",Xy0,ar0,Ow4,hl,xy0=function(B,E,A,C,D,F,U){if(H9(C))D=C,C=null;if(U)if(F==null)F=U;else F=k3({},F,U);var z=q6(A)?A:A.split(/\s+/);for(var k=0;k<z.length;k++){var f=z[k];if(jl(f))continue;var l=f.match(qy0);if(l){var b=l[1],M=l[2]?l[2]:null,Z=E(B,f,b,M,C,D,F);if(Z===!1)break}}},Vr0=function(B,E){return B.addEventFields(B.context,E),new Ly0(E.type,E)},Iw4=function(B,E,A){if(ib4(A)){E(B,A);return}else if(S1(A)){E(B,Vr0(B,A));return}var C=q6(A)?A:A.split(/\s+/);for(var D=0;D<C.length;D++){var F=C[D];if(jl(F))continue;var U=F.match(qy0);if(U){var z=U[1],k=U[2]?U[2]:null,f=Vr0(B,{type:z,namespace:k,target:B.context});E(B,f)}}},Pw4,_V=function(B){if(p4(B))return new al(B);else return B},vy0,Sy0,h1,jw4,Wy0=function(B,E){var A=B.cy(),C=A.hasCompoundNodes();function D(f){var l=f.pstyle("z-compound-depth");if(l.value==="auto")return C?f.zDepth():0;else if(l.value==="bottom")return-1;else if(l.value==="top")return D50;return 0}var F=D(B)-D(E);if(F!==0)return F;function U(f){var l=f.pstyle("z-index-compare");if(l.value==="auto")return f.isNode()?1:0;return 0}var z=U(B)-U(E);if(z!==0)return z;var k=B.pstyle("z-index").value-E.pstyle("z-index").value;if(k!==0)return k;return B.poolIndex()-E.poolIndex()},Jh,Nw4=function(){var B="undefined",E=(typeof Symbol>"u"?"undefined":t2(Symbol))!=B&&t2(Symbol.iterator)!=B;if(E)Jh[Symbol.iterator]=function(){var A=this,C={value:void 0,done:!1},D=0,F=this.length;return X$0({next:function(){if(D<F)C.value=A[D++];else C.value=void 0,C.done=!0;return C}},Symbol.iterator,function(){return this})}},iw4,Bh,E7,PH,aw4,Vw4,hw4,mw4,Pl,I7,mr0=function(B){return function(A){var C=this,D=[];for(var F=0;F<C.length;F++){var U=C[F];if(!U.isNode())continue;var z=!1,k=U.connectedEdges();for(var f=0;f<k.length;f++){var l=k[f],b=l.source(),M=l.target();if(B.noIncomingEdges&&M===U&&b!==U||B.noOutgoingEdges&&b===U&&M!==U){z=!0;break}}if(!z)D.push(U)}return this.spawn(D,!0).filter(A)}},rr0=function(B){return function(E){var A=this,C=[];for(var D=0;D<A.length;D++){var F=A[D];if(!F.isNode())continue;var U=F.connectedEdges();for(var z=0;z<U.length;z++){var k=U[z],f=k.source(),l=k.target();if(B.outgoing&&f===F)C.push(k),C.push(l);else if(B.incoming&&l===F)C.push(k),C.push(f)}}return this.spawn(C,!0).filter(E)}},$r0=function(B){return function(E){var A=this,C=[],D={};for(;;){var F=B.outgoing?A.outgoers():A.incomers();if(F.length===0)break;var U=!1;for(var z=0;z<F.length;z++){var k=F[z],f=k.id();if(!D[f])D[f]=!0,C.push(k),U=!0}if(!U)break;A=F}return this.spawn(C,!0).filter(E)}},A7=function(B,E){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,C=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(B===void 0){F9("A collection must have a reference to the core");return}var D=new yz,F=!1;if(!E)E=[];else if(E.length>0&&S1(E[0])&&!vW(E[0])){F=!0;var U=[],z=new OH;for(var k=0,f=E.length;k<f;k++){var l=E[k];if(l.data==null)l.data={};var b=l.data;if(b.id==null)b.id=r$0();else if(B.hasElementWithId(b.id)||z.has(b.id))continue;var M=new xh(B,l,!1);U.push(M),z.add(b.id)}E=U}this.length=0;for(var Z=0,J=E.length;Z<J;Z++){var w=E[Z][0];if(w==null)continue;var K=w._private.data.id;if(!A||!D.has(K)){if(A)D.set(K,{index:this.length,ele:w});this[this.length]=w,this.length++}}if(this._private={eles:this,cy:B,get map(){if(this.lazyMap==null)this.rebuildMap();return this.lazyMap},set map(Q){this.lazyMap=Q},rebuildMap:function(){var G=this.lazyMap=new yz,L=this.eles;for(var H=0;H<L.length;H++){var q=L[H];G.set(q.id(),{index:H,ele:q})}}},A)this._private.map=D;if(F&&!C)this.restore()},R6,rw4,yw4,Y6=function(B,E,A,C){var D=$w4(B,E,A,C);return function(F,U,z){return F+(U-F)*D(z)}},Eh,_w4,nw4,nV=function(B){if(p4(B))return new al(B);else return B},Ry0,c20,Ah,pw4,dw4,g20,Ch,T5,lW="t",sw4="f",IW,Q50,hF,Nh,G50,S2,ih,R5=function(B){if(!(this instanceof R5))return new R5(B);if(!E50(B)){F9("A style must have a core reference");return}this._private={cy:B,coreStyle:{}},this.length=0,this.resetToDefault()},P7,ow4,tw4="single",xJ,LW,qW=function(B){var E=this;B=k3({},B);var A=B.container;if(A&&!kh(A)&&kh(A[0]))A=A[0];var C=A?A._cyreg:null;if(C=C||{},C&&C.cy)C.cy.destroy(),C={};var D=C.readies=C.readies||[];if(A)A._cyreg=C;C.cy=E;var F=s2!==void 0&&A!==void 0&&!B.headless,U=B;U.layout=k3({name:F?"grid":"null"},U.layout),U.renderer=k3({name:F?"canvas":"null"},U.renderer);var z=function(Z,J,w){if(J!==void 0)return J;else if(w!==void 0)return w;else return Z},k=this._private={container:A,ready:!1,options:U,elements:new A7(this),listeners:[],aniEles:new A7(this),data:U.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:0.00000000000000000000000000000000000000000000000001,maxZoom:100000000000000000000000000000000000000000000000000,zoomingEnabled:z(!0,U.zoomingEnabled),userZoomingEnabled:z(!0,U.userZoomingEnabled),panningEnabled:z(!0,U.panningEnabled),userPanningEnabled:z(!0,U.userPanningEnabled),boxSelectionEnabled:z(!0,U.boxSelectionEnabled),autolock:z(!1,U.autolock,U.autolockNodes),autoungrabify:z(!1,U.autoungrabify,U.autoungrabifyNodes),autounselectify:z(!1,U.autounselectify),styleEnabled:U.styleEnabled===void 0?F:U.styleEnabled,zoom:J4(U.zoom)?U.zoom:1,pan:{x:S1(U.pan)&&J4(U.pan.x)?U.pan.x:0,y:S1(U.pan)&&J4(U.pan.y)?U.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:z(250,U.multiClickDebounceTime)};this.createEmitter(),this.selectionType(U.selectionType),this.zoomRange({min:U.minZoom,max:U.maxZoom});var f=function(Z,J){var w=Z.some(hb4);if(w)return IH.all(Z).then(J);else J(Z)};if(k.styleEnabled)E.setStyle([]);var l=k3({},U,U.renderer);E.initRenderer(l);var b=function(Z,J,w){E.notifications(!1);var K=E.mutableElements();if(K.length>0)K.remove();if(Z!=null){if(S1(Z)||q6(Z))E.add(Z)}E.one("layoutready",function(G){E.notifications(!0),E.emit(G),E.one("load",J),E.emitAndNotify("load")}).one("layoutstop",function(){E.one("done",w),E.emit("done")});var Q=k3({},E._private.options.layout);Q.eles=E.elements(),E.layout(Q).run()};f([U.style,U.elements],function(M){var Z=M[0],J=M[1];if(k.styleEnabled)E.style().append(Z);b(J,function(){if(E.startAnimationLoop(),k.ready=!0,H9(U.ready))E.on("ready",U.ready);for(var w=0;w<D.length;w++){var K=D[w];E.on("ready",K)}if(C)C.readies=[];E.emit("ready")},U.done)})},wh,ew4,uK4,ZH=function(B){return B.scratch("breadthfirst")},dr0=function(B,E){return B.scratch("breadthfirst",E)},BK4,EK4,S20,AK4,CK4=function(B,E,A){var C=A.eles.edges(),D=A.eles.nodes(),F=QB(A.boundingBox?A.boundingBox:{x1:0,y1:0,w:B.width(),h:B.height()}),U={isCompound:B.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:D.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:C.size(),temperature:A.initialTemp,clientWidth:F.w,clientHeight:F.h,boundingBox:F},z=A.eles.components(),k={};for(var f=0;f<z.length;f++){var l=z[f];for(var b=0;b<l.length;b++){var M=l[b];k[M.id()]=f}}for(var f=0;f<U.nodeSize;f++){var Z=D[f],J=Z.layoutDimensions(A),w={};w.isLocked=Z.locked(),w.id=Z.data("id"),w.parentId=Z.data("parent"),w.cmptId=k[Z.id()],w.children=[],w.positionX=Z.position("x"),w.positionY=Z.position("y"),w.offsetX=0,w.offsetY=0,w.height=J.w,w.width=J.h,w.maxX=w.positionX+w.width/2,w.minX=w.positionX-w.width/2,w.maxY=w.positionY+w.height/2,w.minY=w.positionY-w.height/2,w.padLeft=parseFloat(Z.style("padding")),w.padRight=parseFloat(Z.style("padding")),w.padTop=parseFloat(Z.style("padding")),w.padBottom=parseFloat(Z.style("padding")),w.nodeRepulsion=H9(A.nodeRepulsion)?A.nodeRepulsion(Z):A.nodeRepulsion,U.layoutNodes.push(w),U.idToIndex[w.id]=f}var K=[],Q=0,G=-1,L=[];for(var f=0;f<U.nodeSize;f++){var Z=U.layoutNodes[f],H=Z.parentId;if(H!=null)U.layoutNodes[U.idToIndex[H]].children.push(Z.id);else K[++G]=Z.id,L.push(Z.id)}U.graphSet.push(L);while(Q<=G){var q=K[Q++],x=U.idToIndex[q],M=U.layoutNodes[x],v=M.children;if(v.length>0){U.graphSet.push(v);for(var f=0;f<v.length;f++)K[++G]=v[f]}}for(var f=0;f<U.graphSet.length;f++){var W=U.graphSet[f];for(var b=0;b<W.length;b++){var S=U.idToIndex[W[b]];U.indexToGraph[S]=f}}for(var f=0;f<U.edgeSize;f++){var T=C[f],R={};R.id=T.data("id"),R.sourceId=T.data("source"),R.targetId=T.data("target");var Y=H9(A.idealEdgeLength)?A.idealEdgeLength(T):A.idealEdgeLength,a=H9(A.edgeElasticity)?A.edgeElasticity(T):A.edgeElasticity,I=U.idToIndex[R.sourceId],O=U.idToIndex[R.targetId],i=U.indexToGraph[I],N=U.indexToGraph[O];if(i!=N){var V=DK4(R.sourceId,R.targetId,U),h=U.graphSet[V],r=0,w=U.layoutNodes[I];while(h.indexOf(w.id)===-1)w=U.layoutNodes[U.idToIndex[w.parentId]],r++;w=U.layoutNodes[O];while(h.indexOf(w.id)===-1)w=U.layoutNodes[U.idToIndex[w.parentId]],r++;Y*=r*A.nestingFactor}R.idealLength=Y,R.elasticity=a,U.layoutEdges.push(R)}return U},DK4=function(B,E,A){var C=Py0(B,E,0,A);if(2>C.count)return 0;else return C.graph},Py0=function(B,E,A,C){var D=C.graphSet[A];if(-1<D.indexOf(B)&&-1<D.indexOf(E))return{count:2,graph:A};var F=0;for(var U=0;U<D.length;U++){var z=D[U],k=C.idToIndex[z],f=C.layoutNodes[k].children;if(f.length===0)continue;var l=C.indexToGraph[C.idToIndex[f[0]]],b=Py0(B,E,l,C);if(b.count===0)continue;else if(b.count===1){if(F++,F===2)break}else return b}return{count:F,graph:A}},FK4,UK4=function(B,E){var{clientWidth:A,clientHeight:C}=B;for(var D=0;D<B.nodeSize;D++){var F=B.layoutNodes[D];if(F.children.length===0&&!F.isLocked)F.positionX=Math.random()*A,F.positionY=Math.random()*C}},jy0=function(B,E,A){var C=B.boundingBox,D={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};if(E.boundingBox)A.forEach(function(F){var U=B.layoutNodes[B.idToIndex[F.data("id")]];D.x1=Math.min(D.x1,U.positionX),D.x2=Math.max(D.x2,U.positionX),D.y1=Math.min(D.y1,U.positionY),D.y2=Math.max(D.y2,U.positionY)}),D.w=D.x2-D.x1,D.h=D.y2-D.y1;return function(F,U){var z=B.layoutNodes[B.idToIndex[F.data("id")]];if(E.boundingBox){var k=D.w===0?0.5:(z.positionX-D.x1)/D.w,f=D.h===0?0.5:(z.positionY-D.y1)/D.h;return{x:C.x1+k*C.w,y:C.y1+f*C.h}}else return{x:z.positionX,y:z.positionY}}},zK4=function(B,E,A){var C=A.layout,D=A.eles.nodes(),F=jy0(B,A,D);if(D.positions(F),B.ready!==!0)B.ready=!0,C.one("layoutready",A.ready),C.emit({type:"layoutready",layout:this})},kK4=function(B,E,A){fK4(B,E),MK4(B),ZK4(B,E),JK4(B),wK4(B)},fK4=function(B,E){for(var A=0;A<B.graphSet.length;A++){var C=B.graphSet[A],D=C.length;for(var F=0;F<D;F++){var U=B.layoutNodes[B.idToIndex[C[F]]];for(var z=F+1;z<D;z++){var k=B.layoutNodes[B.idToIndex[C[z]]];lK4(U,k,B,E)}}}},sr0=function(B){return-B+2*B*Math.random()},lK4=function(B,E,A,C){var D=B.cmptId,F=E.cmptId;if(D!==F&&!A.isCompound)return;var U=E.positionX-B.positionX,z=E.positionY-B.positionY,k=1;if(U===0&&z===0)U=sr0(k),z=sr0(k);var f=bK4(B,E,U,z);if(f>0)var l=C.nodeOverlap*f,b=Math.sqrt(U*U+z*z),M=l*U/b,Z=l*z/b;else var J=Kh(B,U,z),w=Kh(E,-1*U,-1*z),K=w.x-J.x,Q=w.y-J.y,G=K*K+Q*Q,b=Math.sqrt(G),l=(B.nodeRepulsion+E.nodeRepulsion)/G,M=l*K/b,Z=l*Q/b;if(!B.isLocked)B.offsetX-=M,B.offsetY-=Z;if(!E.isLocked)E.offsetX+=M,E.offsetY+=Z;return},bK4=function(B,E,A,C){if(A>0)var D=B.maxX-E.minX;else var D=E.maxX-B.minX;if(C>0)var F=B.maxY-E.minY;else var F=E.maxY-B.minY;if(D>=0&&F>=0)return Math.sqrt(D*D+F*F);else return 0},Kh=function(B,E,A){var{positionX:C,positionY:D}=B,F=B.height||1,U=B.width||1,z=A/E,k=F/U,f={};if(E===0&&0<A)return f.x=C,f.y=D+F/2,f;if(E===0&&0>A)return f.x=C,f.y=D+F/2,f;if(0<E&&-1*k<=z&&z<=k)return f.x=C+U/2,f.y=D+U*A/2/E,f;if(0>E&&-1*k<=z&&z<=k)return f.x=C-U/2,f.y=D-U*A/2/E,f;if(0<A&&(z<=-1*k||z>=k))return f.x=C+F*E/2/A,f.y=D+F/2,f;if(0>A&&(z<=-1*k||z>=k))return f.x=C-F*E/2/A,f.y=D-F/2,f;return f},MK4=function(B,E){for(var A=0;A<B.edgeSize;A++){var C=B.layoutEdges[A],D=B.idToIndex[C.sourceId],F=B.layoutNodes[D],U=B.idToIndex[C.targetId],z=B.layoutNodes[U],k=z.positionX-F.positionX,f=z.positionY-F.positionY;if(k===0&&f===0)continue;var l=Kh(F,k,f),b=Kh(z,-1*k,-1*f),M=b.x-l.x,Z=b.y-l.y,J=Math.sqrt(M*M+Z*Z),w=Math.pow(C.idealLength-J,2)/C.elasticity;if(J!==0)var K=w*M/J,Q=w*Z/J;else var K=0,Q=0;if(!F.isLocked)F.offsetX+=K,F.offsetY+=Q;if(!z.isLocked)z.offsetX-=K,z.offsetY-=Q}},ZK4=function(B,E){if(E.gravity===0)return;var A=1;for(var C=0;C<B.graphSet.length;C++){var D=B.graphSet[C],F=D.length;if(C===0)var U=B.clientHeight/2,z=B.clientWidth/2;else var k=B.layoutNodes[B.idToIndex[D[0]]],f=B.layoutNodes[B.idToIndex[k.parentId]],U=f.positionX,z=f.positionY;for(var l=0;l<F;l++){var b=B.layoutNodes[B.idToIndex[D[l]]];if(b.isLocked)continue;var M=U-b.positionX,Z=z-b.positionY,J=Math.sqrt(M*M+Z*Z);if(J>A){var w=E.gravity*M/J,K=E.gravity*Z/J;b.offsetX+=w,b.offsetY+=K}}}},JK4=function(B,E){var A=[],C=0,D=-1;A.push.apply(A,B.graphSet[0]),D+=B.graphSet[0].length;while(C<=D){var F=A[C++],U=B.idToIndex[F],z=B.layoutNodes[U],k=z.children;if(0<k.length&&!z.isLocked){var{offsetX:f,offsetY:l}=z;for(var b=0;b<k.length;b++){var M=B.layoutNodes[B.idToIndex[k[b]]];M.offsetX+=f,M.offsetY+=l,A[++D]=k[b]}z.offsetX=0,z.offsetY=0}}},wK4=function(B,E){for(var A=0;A<B.nodeSize;A++){var C=B.layoutNodes[A];if(0<C.children.length)C.maxX=void 0,C.minX=void 0,C.maxY=void 0,C.minY=void 0}for(var A=0;A<B.nodeSize;A++){var C=B.layoutNodes[A];if(0<C.children.length||C.isLocked)continue;var D=KK4(C.offsetX,C.offsetY,B.temperature);C.positionX+=D.x,C.positionY+=D.y,C.offsetX=0,C.offsetY=0,C.minX=C.positionX-C.width,C.maxX=C.positionX+C.width,C.minY=C.positionY-C.height,C.maxY=C.positionY+C.height,Ny0(C,B)}for(var A=0;A<B.nodeSize;A++){var C=B.layoutNodes[A];if(0<C.children.length&&!C.isLocked)C.positionX=(C.maxX+C.minX)/2,C.positionY=(C.maxY+C.minY)/2,C.width=C.maxX-C.minX,C.height=C.maxY-C.minY}},KK4=function(B,E,A){var C=Math.sqrt(B*B+E*E);if(C>A)var D={x:A*B/C,y:A*E/C};else var D={x:B,y:E};return D},Ny0=function(B,E){var A=B.parentId;if(A==null)return;var C=E.layoutNodes[E.idToIndex[A]],D=!1;if(C.maxX==null||B.maxX+C.padRight>C.maxX)C.maxX=B.maxX+C.padRight,D=!0;if(C.minX==null||B.minX-C.padLeft<C.minX)C.minX=B.minX-C.padLeft,D=!0;if(C.maxY==null||B.maxY+C.padBottom>C.maxY)C.maxY=B.maxY+C.padBottom,D=!0;if(C.minY==null||B.minY-C.padTop<C.minY)C.minY=B.minY-C.padTop,D=!0;if(D)return Ny0(C,E);return},or0=function(B,E){var A=B.layoutNodes,C=[];for(var D=0;D<A.length;D++){var F=A[D],U=F.cmptId,z=C[U]=C[U]||[];z.push(F)}var k=0;for(var D=0;D<C.length;D++){var f=C[D];if(!f)continue;f.x1=1/0,f.x2=-1/0,f.y1=1/0,f.y2=-1/0;for(var l=0;l<f.length;l++){var b=f[l];f.x1=Math.min(f.x1,b.positionX-b.width/2),f.x2=Math.max(f.x2,b.positionX+b.width/2),f.y1=Math.min(f.y1,b.positionY-b.height/2),f.y2=Math.max(f.y2,b.positionY+b.height/2)}f.w=f.x2-f.x1,f.h=f.y2-f.y1,k+=f.w*f.h}C.sort(function(Q,G){return G.w*G.h-Q.w*Q.h});var M=0,Z=0,J=0,w=0,K=Math.sqrt(k)*B.clientWidth/B.clientHeight;for(var D=0;D<C.length;D++){var f=C[D];if(!f)continue;for(var l=0;l<f.length;l++){var b=f[l];if(!b.isLocked)b.positionX+=M-f.x1,b.positionY+=Z-f.y1}if(M+=f.w+E.componentSpacing,J+=f.w+E.componentSpacing,w=Math.max(w,f.h),J>K)Z+=w+E.componentSpacing,M=0,J=0,w=0}},QK4,GK4,HK4,LK4,qK4,tr0=function(){},er0=function(){throw Error("A headless instance can not render images")},L50,SJ,Qh,_20,n20,iF,DA,u$0,B$0,GJ,Dh,$z,ZJ,KJ,jF,JH,pV,my0,ry0,p20,d20,E$0,A$0=function(B,E,A){A.x=E.x-B.x,A.y=E.y-B.y,A.len=Math.sqrt(A.x*A.x+A.y*A.y),A.nx=A.x/A.len,A.ny=A.y/A.len,A.ang=Math.atan2(A.ny,A.nx)},XK4=function(B,E){E.x=B.x*-1,E.y=B.y*-1,E.nx=B.nx*-1,E.ny=B.ny*-1,E.ang=B.ang>0?-(Math.PI-B.ang):Math.PI+B.ang},xK4=function(B,E,A,C,D){if(B!==E$0?A$0(E,B,iF):XK4(DA,iF),A$0(E,A,DA),u$0=iF.nx*DA.ny-iF.ny*DA.nx,B$0=iF.nx*DA.nx-iF.ny*-DA.ny,$z=Math.asin(Math.max(-1,Math.min(1,u$0))),Math.abs($z)<0.000001){_20=E.x,n20=E.y,KJ=JH=0;return}if(GJ=1,Dh=!1,B$0<0)if($z<0)$z=Math.PI+$z;else $z=Math.PI-$z,GJ=-1,Dh=!0;else if($z>0)GJ=-1,Dh=!0;if(E.radius!==void 0)JH=E.radius;else JH=C;if(ZJ=$z/2,pV=Math.min(iF.len/2,DA.len/2),D)if(jF=Math.abs(Math.cos(ZJ)*JH/Math.sin(ZJ)),jF>pV)jF=pV,KJ=Math.abs(jF*Math.sin(ZJ)/Math.cos(ZJ));else KJ=JH;else jF=Math.min(pV,JH),KJ=Math.abs(jF*Math.sin(ZJ)/Math.cos(ZJ));p20=E.x+DA.nx*jF,d20=E.y+DA.ny*jF,_20=p20-DA.ny*KJ*GJ,n20=d20+DA.nx*KJ*GJ,my0=E.x+iF.nx*jF,ry0=E.y+iF.ny*jF,E$0=E},XW=0.01,vK4,j7,PW,X50,mF,cy0=function(B,E){var A=Math.atan(E/B);if(B===0&&A<0)A=A*-1;return A},gy0=function(B,E){var A=E.x-B.x,C=E.y-B.y;return cy0(A,C)},WK4=function(B,E,A,C){var D=KW(0,C-0.001,1),F=KW(0,C+0.001,1),U=qH(B,E,A,D),z=qH(B,E,A,F);return gy0(U,z)},_y0,C$0=28,D$0=!1,Vh,hh,ny0,py0,dy0=function(B,E){var A=B[0];if(!A||A._private.grabbed===E)return;A._private.grabbed=E,B.updateStyle(!1)},YK4=function(B){dy0(B,!0)},RK4=function(B){dy0(B,!1)},NH,_z,jW,F$0=function(B,E,A){var C=B.beforeRenderCallbacks;for(var D=0;D<C.length;D++)C[D].fn(E,A)},TK4=function(B){this.init(B)},sy0,iH,W20=16.666666666666668,oy0,OK4,U$0=25,dV=50,Fh=-4,s20=3,ty0=7.99,IK4=8,PK4=1024,jK4=1024,NK4=1024,iK4=0.2,aK4=0.8,VK4=10,hK4=0.15,mK4=0.1,rK4=0.9,$K4=0.9,yK4=100,cK4=1,LH,gK4,fW=function(B,E){var A=this;A.renderer=B,A.onDequeues=[];var C=gK4(E);k3(A,C),A.lookup=new OK4(C.getKey,C.doesEleInvalidateKey),A.setupDequeueing()},e2,_K4=1,bW=-4,Gh=2,nK4=3.99,pK4=50,dK4=50,sK4=0.15,oK4=0.1,tK4=0.9,eK4=0.9,uQ4=1,z$0=250,BQ4=16000000,k$0=32767,EQ4=!0,ey0=function(B){var E=this,A=E.renderer=B,C=A.cy;E.layersByLevel={},E.firstGet=!0,E.lastInvalidationTime=cz()-2*z$0,E.skipping=!1,E.eleTxrDeqs=C.collection(),E.scheduleElementRefinement=RW(function(){E.refineElementTextures(E.eleTxrDeqs),E.eleTxrDeqs.unmerge(E.eleTxrDeqs)},dK4),A.beforeRender(function(F,U){if(U-E.lastInvalidationTime<=z$0)E.skipping=!0;else E.skipping=!1},A.beforeRenderPriorities.lyrTxrSkip);var D=function(U,z){return z.reqs-U.reqs};E.layersQueue=new TW(D),E.setupDequeueing()},D7,f$0=0,AQ4,uc0,l$0,rF,zQ4=function(){return 0},kQ4=function(B,E){return B.getTextAngle(E,null)},fQ4=function(B,E){return B.getTextAngle(E,"source")},lQ4=function(B,E){return B.getTextAngle(E,"target")},bQ4=function(B,E){return E.effectiveOpacity()},Y20=function(B,E){return E.pstyle("text-opacity").pfValue*E.effectiveOpacity()},nz,Bc0=function(B){if(!["overlay","underlay"].includes(B))throw Error("Invalid state");return function(E,A){if(!A.visible())return;var C=A.pstyle("".concat(B,"-opacity")).value;if(C===0)return;var D=this,F=D.usePaths(),U=A._private.rscratch,z=A.pstyle("".concat(B,"-padding")).pfValue,k=2*z,f=A.pstyle("".concat(B,"-color")).value;if(E.lineWidth=k,U.edgeType==="self"&&!F)E.lineCap="butt";else E.lineCap="round";D.colorStrokeStyle(E,f[0],f[1],f[2],C),D.drawEdgePath(A,E,U.allpts,"solid")}},x50,WJ,yl,Ec0=function(B){if(!["overlay","underlay"].includes(B))throw Error("Invalid state");return function(E,A,C,D,F){var U=this;if(!A.visible())return;var z=A.pstyle("".concat(B,"-padding")).pfValue,k=A.pstyle("".concat(B,"-opacity")).value,f=A.pstyle("".concat(B,"-color")).value,l=A.pstyle("".concat(B,"-shape")).value,b=A.pstyle("".concat(B,"-corner-radius")).value;if(k>0){if(C=C||A.position(),D==null||F==null){var M=A.padding();D=A.width()+2*M,F=A.height()+2*M}U.colorFillStyle(E,f[0],f[1],f[2],k),U.nodeShapes[l].draw(E,C.x,C.y,D+z*2,F+z*2,b),E.fill()}}},GB,ZQ4=100,DW,J$0,RQ4,TQ4,IQ4,PQ4,jQ4=`
float circleSD(vec2 p, float r) {
return distance(vec2(0), p) - r; // signed distance
}
`,NQ4=`
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);
}
`,iQ4=`
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;
}
`,aQ4=`
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;
}
`,MW,Hh,T20=0,Q$0=1,G$0=2,O20=3,KH=4,sV=5,FW=6,UW=7,VQ4,Dc0,I20=function(B,E){return function(A){var C=B(A),D=Fc0(A,E);if(D.length>1)return D.map(function(F,U){return"".concat(C,"_").concat(U)});return C}},P20=function(B,E){return function(A,C){var D=B(A);if(typeof C==="string"){var F=C.indexOf("_");if(F>0){var U=Number(C.substring(F+1)),z=Fc0(A,E),k=D.h/z.length,f=k*U,l=D.y1+f;return{x1:D.x1,w:D.w,y1:l,h:k,yOffset:f}}}return D}},cl,H$0,L$0,t20,e20,kc0,Wl,NW,lc0,sQ4,u1,oQ4,tQ4,eQ4,Mc0,Zc0,u50=function(){if(arguments.length===2)return wc0.apply(null,arguments);else if(arguments.length===3)return Jc0.apply(null,arguments);else if(arguments.length===4)return BG4.apply(null,arguments);else if(arguments.length===5)return uG4.apply(null,arguments);else F9("Invalid extension access syntax")},Lh=function(){if(!(this instanceof Lh))return new Lh;this.length=0},vJ,EG4="3.34.2",zA=function(B){if(B===void 0)B={};if(S1(B))return new qW(B);else if(p4(B))return u50.apply(u50,arguments)};var S50=g(()=>{s2=typeof window>"u"?null:window,dh0=s2?s2.navigator:null;s2&&s2.document;Ib4=t2(""),v$0=t2({}),Pb4=t2(function(){}),jb4=typeof HTMLElement>"u"?"undefined":t2(HTMLElement),A50=SH(function(u){return u.replace(/([A-Z])/g,function(B){return"-"+B.toLowerCase()})}),qh=SH(function(u){return u.replace(/(-\w)/g,function(B){return B[1].toUpperCase()})}),R$0=SH(function(u,B){return u+B[0].toUpperCase()+B.substring(1)},function(u,B){return u+"$"+B}),rb4="rgb[a]?\\(("+o2+"[%]?)\\s*,\\s*("+o2+"[%]?)\\s*,\\s*("+o2+"[%]?)(?:\\s*,\\s*("+o2+"))?\\)",$b4="rgb[a]?\\((?:"+o2+"[%]?)\\s*,\\s*(?:"+o2+"[%]?)\\s*,\\s*(?:"+o2+"[%]?)(?:\\s*,\\s*(?:"+o2+"))?\\)",yb4="hsl[a]?\\(("+o2+")\\s*,\\s*("+o2+"[%])\\s*,\\s*("+o2+"[%])(?:\\s*,\\s*("+o2+"))?\\)",cb4="hsl[a]?\\((?:"+o2+")\\s*,\\s*(?:"+o2+"[%])\\s*,\\s*(?:"+o2+"[%])(?:\\s*,\\s*(?:"+o2+"))?\\)",k3=Object.assign!=null?Object.assign.bind(Object):function(u){var B=arguments;for(var E=1;E<B.length;E++){var A=B[E];if(A==null)continue;var C=Object.keys(A);for(var D=0;D<C.length;D++){var F=C[D];u[F]=A[F]}}return u},tb4={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]},VV=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};zM4=UM4(),RW=SW(zM4),G90=s2?s2.performance:null,N$0=G90&&G90.now?function(){return G90.now()}:function(){return Date.now()},kM4=function(){if(s2){if(s2.requestAnimationFrame)return function(u){s2.requestAnimationFrame(u)};else if(s2.mozRequestAnimationFrame)return function(u){s2.mozRequestAnimationFrame(u)};else if(s2.webkitRequestAnimationFrame)return function(u){s2.webkitRequestAnimationFrame(u)};else if(s2.msRequestAnimationFrame)return function(u){s2.msRequestAnimationFrame(u)}}return function(u){if(u)setTimeout(function(){u(N$0())},16.666666666666668)}}(),cz=N$0;JM4=console.warn!=null,wM4=console.trace!=null,D50=Number.MAX_SAFE_INTEGER||9007199254740991,GM4={},LM4=function(){function u(){ml(this,u),this._obj={}}return rl(u,[{key:"set",value:function(E,A){return this._obj[E]=A,this}},{key:"delete",value:function(E){return this._obj[E]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(E){return this._obj[E]!==void 0}},{key:"get",value:function(E){return this._obj[E]}}])}(),yz=typeof Map<"u"?Map:LM4,XM4=function(){function u(B){if(ml(this,u),this._obj=Object.create(null),this.size=0,B!=null){var E;if(B.instanceString!=null&&B.instanceString()===this.instanceString())E=B.toArray();else E=B;for(var A=0;A<E.length;A++)this.add(E[A])}}return rl(u,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(E){var A=this._obj;if(A[E]!==1)A[E]=1,this.size++}},{key:"delete",value:function(E){var A=this._obj;if(A[E]===1)A[E]=0,this.size--}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(E){return this._obj[E]===1}},{key:"toArray",value:function(){var E=this;return Object.keys(this._obj).filter(function(A){return E.has(A)})}},{key:"forEach",value:function(E,A){return this.toArray().forEach(E,A)}}])}(),OH=(typeof Set>"u"?"undefined":t2(Set))!==qM4?Set:XM4,wW={breadthFirstSearch:Zm0({bfs:!0}),depthFirstSearch:Zm0({dfs:!0})};wW.bfs=wW.breadthFirstSearch;wW.dfs=wW.depthFirstSearch;oV={exports:{}},xM4=oV.exports;WM4=SM4(),TW=SW(WM4),YM4=C7({root:null,weight:function(B){return 1},directed:!1}),RM4={dijkstra:function(B){if(!S1(B)){var E=arguments;B={root:E[0],weight:E[1],directed:E[2]}}var A=YM4(B),C=A.root,D=A.weight,F=A.directed,U=this,z=D,k=p4(C)?this.filter(C)[0]:C[0],f={},l={},b={},M=this.byGroup(),Z=M.nodes,J=M.edges;J.unmergeBy(function(I){return I.isLoop()});var w=function(O){return f[O.id()]},K=function(O,i){f[O.id()]=i,Q.updateItem(O)},Q=new TW(function(I,O){return w(I)-w(O)});for(var G=0;G<Z.length;G++){var L=Z[G];f[L.id()]=L.same(k)?0:1/0,Q.push(L)}var H=function(O,i){var N=(F?O.edgesTo(i):O.edgesWith(i)).intersect(J),V=1/0,h;for(var r=0;r<N.length;r++){var m=N[r],$=z(m);if($<V||!h)V=$,h=m}return{edge:h,dist:V}};while(Q.size()>0){var q=Q.pop(),x=w(q),v=q.id();if(b[v]=x,x===1/0)continue;var W=q.neighborhood().intersect(Z);for(var S=0;S<W.length;S++){var T=W[S],R=T.id(),Y=H(q,T),a=x+Y.dist;if(a<w(T))K(T,a),l[R]={node:q,edge:Y.edge}}}return{distanceTo:function(O){var i=p4(O)?Z.filter(O)[0]:O[0];return b[i.id()]},pathTo:function(O){var i=p4(O)?Z.filter(O)[0]:O[0],N=[],V=i,h=V.id();if(i.length>0){N.unshift(i);while(l[h]){var r=l[h];N.unshift(r.edge),N.unshift(r.node),V=r.node,h=V.id()}}return U.spawn(N)}}}},TM4={kruskal:function(B){B=B||function(G){return 1};var E=this.byGroup(),A=E.nodes,C=E.edges,D=A.length,F=Array(D),U=A,z=function(L){for(var H=0;H<F.length;H++){var q=F[H];if(q.has(L))return H}};for(var k=0;k<D;k++)F[k]=this.spawn(A[k]);var f=C.sort(function(G,L){return B(G)-B(L)});for(var l=0;l<f.length;l++){var b=f[l],M=b.source()[0],Z=b.target()[0],J=z(M),w=z(Z),K=F[J],Q=F[w];if(J!==w)U.merge(b),K.merge(Q),F.splice(w,1)}return U}},OM4=C7({root:null,goal:null,weight:function(B){return 1},heuristic:function(B){return 0},directed:!1}),IM4={aStar:function(B){var E=this.cy(),A=OM4(B),C=A.root,D=A.goal,F=A.heuristic,U=A.directed,z=A.weight;C=E.collection(C)[0],D=E.collection(D)[0];var k=C.id(),f=D.id(),l={},b={},M={},Z=new TW(function(h,r){return b[h.id()]-b[r.id()]}),J=new OH,w={},K={},Q=function(r,m){Z.push(r),J.add(m)},G,L,H=function(){G=Z.pop(),L=G.id(),J.delete(L)},q=function(r){return J.has(r)};Q(C,k),l[k]=0,b[k]=F(C);var x=0;while(Z.size()>0){if(H(),x++,L===f){var v=[],W=D,S=f,T=K[S];for(;;){if(v.unshift(W),T!=null)v.unshift(T);if(W=w[S],W==null)break;S=W.id(),T=K[S]}return{found:!0,distance:l[L],path:this.spawn(v),steps:x}}M[L]=!0;var R=G._private.edges;for(var Y=0;Y<R.length;Y++){var a=R[Y];if(!this.hasElementWithId(a.id()))continue;if(U&&a.data("source")!==L)continue;var I=a.source(),O=a.target(),i=I.id()!==L?I:O,N=i.id();if(!this.hasElementWithId(N))continue;if(M[N])continue;var V=l[L]+z(a);if(!q(N)){l[N]=V,b[N]=V+F(i),Q(i,N),w[N]=G,K[N]=a;continue}if(V<l[N])l[N]=V,b[N]=V+F(i),Z.updateItem(i),w[N]=G,K[N]=a}}return{found:!1,distance:void 0,path:void 0,steps:x}}},PM4=C7({weight:function(B){return 1},directed:!1}),jM4={floydWarshall:function(B){var E=this.cy(),A=PM4(B),C=A.weight,D=A.directed,F=C,U=this.byGroup(),z=U.nodes,k=U.edges,f=z.length,l=f*f,b=function($){return z.indexOf($)},M=function($){return z[$]},Z=Array(l);for(var J=0;J<l;J++){var w=J%f,K=(J-w)/f;if(K===w)Z[J]=0;else Z[J]=1/0}var Q=Array(l),G=Array(l);for(var L=0;L<k.length;L++){var H=k[L],q=H.source()[0],x=H.target()[0];if(q===x)continue;var v=b(q),W=b(x),S=v*f+W,T=F(H);if(Z[S]>T)Z[S]=T,Q[S]=W,G[S]=H;if(!D){var R=W*f+v;if(!D&&Z[R]>T)Z[R]=T,Q[R]=v,G[R]=H}}for(var Y=0;Y<f;Y++)for(var a=0;a<f;a++){var I=a*f+Y;for(var O=0;O<f;O++){var i=a*f+O,N=Y*f+O;if(Z[I]+Z[N]<Z[i])Z[i]=Z[I]+Z[N],Q[i]=Q[I]}}var V=function($){return(p4($)?E.filter($):$)[0]},h=function($){return b(V($))},r={distance:function($,y){var p=h($),e=h(y);return Z[p*f+e]},path:function($,y){var p=h($),e=h(y),_=M(p);if(p===e)return _.collection();if(Q[p*f+e]==null)return E.collection();var b0=E.collection(),B0=p,k0;b0.merge(_);while(p!==e)B0=p,p=Q[p*f+e],k0=G[B0*f+p],b0.merge(k0),b0.merge(M(p));return b0}};return r}},NM4=C7({weight:function(B){return 1},directed:!1,root:null}),iM4={bellmanFord:function(B){var E=this,A=NM4(B),C=A.weight,D=A.directed,F=A.root,U=C,z=this,k=this.cy(),f=this.byGroup(),l=f.edges,b=f.nodes,M=b.length,Z=new yz,J=!1,w=[];F=k.collection(F)[0],l.unmergeBy(function(_0){return _0.isLoop()});var K=l.length,Q=function(w0){var v0=Z.get(w0.id());if(!v0)v0={},Z.set(w0.id(),v0);return v0},G=function(w0){return(p4(w0)?k.$(w0):w0)[0]},L=function(w0){return Q(G(w0)).dist},H=function(w0){var v0=arguments.length>1&&arguments[1]!==void 0?arguments[1]:F,T0=G(w0),Z0=[],F0=T0;for(;;){if(F0==null)return E.spawn();var u0=Q(F0),M0=u0.edge,X0=u0.pred;if(Z0.unshift(F0[0]),F0.same(v0)&&Z0.length>0)break;if(M0!=null)Z0.unshift(M0);F0=X0}return z.spawn(Z0)};for(var q=0;q<M;q++){var x=b[q],v=Q(x);if(x.same(F))v.dist=0;else v.dist=1/0;v.pred=null,v.edge=null}var W=!1,S=function(w0,v0,T0,Z0,F0,u0){var M0=Z0.dist+u0;if(M0<F0.dist&&!T0.same(Z0.edge))F0.dist=M0,F0.pred=w0,F0.edge=T0,W=!0};for(var T=1;T<M;T++){W=!1;for(var R=0;R<K;R++){var Y=l[R],a=Y.source(),I=Y.target(),O=U(Y),i=Q(a),N=Q(I);if(S(a,I,Y,i,N,O),!D)S(I,a,Y,N,i,O)}if(!W)break}if(W){var V=[];for(var h=0;h<K;h++){var r=l[h],m=r.source(),$=r.target(),y=U(r),p=Q(m).dist,e=Q($).dist;if(p+y<e||!D&&e+y<p){if(!J)A6("Graph contains a negative weight cycle for Bellman-Ford"),J=!0;if(B.findNegativeWeightCycles!==!1){var _=[];if(p+y<e)_.push(m);if(!D&&e+y<p)_.push($);var b0=_.length;for(var B0=0;B0<b0;B0++){var k0=_[B0],f0=[k0];f0.push(Q(k0).edge);var D0=Q(k0).pred;while(f0.indexOf(D0)===-1)f0.push(D0),f0.push(Q(D0).edge),D0=Q(D0).pred;f0=f0.slice(f0.indexOf(D0));var P0=f0[0].id(),q0=0;for(var m0=2;m0<f0.length;m0+=2)if(f0[m0].id()<P0)P0=f0[m0].id(),q0=m0;f0=f0.slice(q0).concat(f0.slice(0,q0)),f0.push(f0[0]);var a0=f0.map(function(_0){return _0.id()}).join(",");if(V.indexOf(a0)===-1)w.push(z.spawn(f0)),V.push(a0)}}else break}}}return{distanceTo:L,pathTo:H,hasNegativeWeightCycle:J,negativeWeightCycles:w}}},aM4=Math.sqrt(2),hM4={kargerStein:function(){var B=this,E=this.byGroup(),A=E.nodes,C=E.edges;C.unmergeBy(function(N){return N.isLoop()});var D=A.length,F=C.length,U=Math.ceil(Math.pow(Math.log(D)/Math.LN2,2)),z=Math.floor(D/aM4);if(D<2){F9("At least 2 nodes are required for Karger-Stein algorithm");return}var k=[];for(var f=0;f<F;f++){var l=C[f];k.push([f,A.indexOf(l.source()),A.indexOf(l.target())])}var b=1/0,M=[],Z=Array(D),J=Array(D),w=Array(D),K=function(V,h){for(var r=0;r<D;r++)h[r]=V[r]};for(var Q=0;Q<=U;Q++){for(var G=0;G<D;G++)J[G]=G;var L=L90(J,k.slice(),D,z),H=L.slice();K(J,w);var q=L90(J,L,z,2),x=L90(w,H,z,2);if(q.length<=x.length&&q.length<b)b=q.length,M=q,K(J,Z);else if(x.length<=q.length&&x.length<b)b=x.length,M=x,K(w,Z)}var v=this.spawn(M.map(function(N){return C[N[0]]})),W=this.spawn(),S=this.spawn(),T=Z[0];for(var R=0;R<Z.length;R++){var Y=Z[R],a=A[R];if(Y===T)W.merge(a);else S.merge(a)}var I=function(V){var h=B.spawn();return V.forEach(function(r){h.merge(r),r.connectedEdges().forEach(function(m){if(B.contains(m)&&!v.contains(m))h.merge(m)})}),h},O=[I(W),I(S)],i={cut:v,components:O,partition1:W,partition2:S};return i}},z50=Math.log2||function(u){return Math.log(u)/Math.log(2)},tM4=(q90=Math.hypot)!==null&&q90!==void 0?q90:function(u,B){return Math.sqrt(u*u+B*B)};bZ4=C7({dampingFactor:0.8,precision:0.000001,iterations:200,weight:function(B){return 1}}),MZ4={pageRank:function(B){var E=bZ4(B),A=E.dampingFactor,C=E.precision,D=E.iterations,F=E.weight,U=this._private.cy,z=this.byGroup(),k=z.nodes,f=z.edges,l=k.length,b=l*l,M=f.length,Z=Array(b),J=Array(l),w=(1-A)/l;for(var K=0;K<l;K++){for(var Q=0;Q<l;Q++){var G=K*l+Q;Z[G]=0}J[K]=0}for(var L=0;L<M;L++){var H=f[L],q=H.data("source"),x=H.data("target");if(q===x)continue;var v=k.indexOfId(q),W=k.indexOfId(x),S=F(H),T=W*l+v;Z[T]+=S,J[v]+=S}var R=1/l+w;for(var Y=0;Y<l;Y++)if(J[Y]===0)for(var a=0;a<l;a++){var I=a*l+Y;Z[I]=R}else for(var O=0;O<l;O++){var i=O*l+Y;Z[i]=Z[i]/J[Y]+w}var N=Array(l),V=Array(l),h;for(var r=0;r<l;r++)N[r]=1;for(var m=0;m<D;m++){for(var $=0;$<l;$++)V[$]=0;for(var y=0;y<l;y++)for(var p=0;p<l;p++){var e=y*l+p;V[y]+=Z[e]*N[p]}nM4(V),h=N,N=V,V=h;var _=0;for(var b0=0;b0<l;b0++){var B0=h[b0]-N[b0];_+=B0*B0}if(_<C)break}var k0={rank:function(D0){return D0=U.collection(D0)[0],N[k.indexOf(D0)]}};return k0}},Gm0=C7({root:null,weight:function(B){return 1},directed:!1,alpha:0}),XH={degreeCentralityNormalized:function(B){B=Gm0(B);var E=this.cy(),A=this.nodes(),C=A.length;if(!B.directed){var D={},F=0;for(var U=0;U<C;U++){var z=A[U];B.root=z;var k=this.degreeCentrality(B);if(F<k.degree)F=k.degree;D[z.id()]=k.degree}return{degree:function(G){if(F===0)return 0;if(p4(G))G=E.filter(G);return D[G.id()]/F}}}else{var f={},l={},b=0,M=0;for(var Z=0;Z<C;Z++){var J=A[Z],w=J.id();B.root=J;var K=this.degreeCentrality(B);if(b<K.indegree)b=K.indegree;if(M<K.outdegree)M=K.outdegree;f[w]=K.indegree,l[w]=K.outdegree}return{indegree:function(G){if(b==0)return 0;if(p4(G))G=E.filter(G);return f[G.id()]/b},outdegree:function(G){if(M===0)return 0;if(p4(G))G=E.filter(G);return l[G.id()]/M}}}},degreeCentrality:function(B){B=Gm0(B);var E=this.cy(),A=this,C=B,D=C.root,F=C.weight,U=C.directed,z=C.alpha;if(D=E.collection(D)[0],!U){var k=D.connectedEdges().intersection(A),f=k.length,l=0;for(var b=0;b<k.length;b++)l+=F(k[b]);return{degree:Math.pow(f,1-z)*Math.pow(l,z)}}else{var M=D.connectedEdges(),Z=M.filter(function(q){return q.target().same(D)&&A.has(q)}),J=M.filter(function(q){return q.source().same(D)&&A.has(q)}),w=Z.length,K=J.length,Q=0,G=0;for(var L=0;L<Z.length;L++)Q+=F(Z[L]);for(var H=0;H<J.length;H++)G+=F(J[H]);return{indegree:Math.pow(w,1-z)*Math.pow(Q,z),outdegree:Math.pow(K,1-z)*Math.pow(G,z)}}}};XH.dc=XH.degreeCentrality;XH.dcn=XH.degreeCentralityNormalised=XH.degreeCentralityNormalized;Hm0=C7({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),xH={closenessCentralityNormalized:function(B){var E=Hm0(B),A=E.harmonic,C=E.weight,D=E.directed,F=this.cy(),U={},z=0,k=this.nodes(),f=this.floydWarshall({weight:C,directed:D});for(var l=0;l<k.length;l++){var b=0,M=k[l];for(var Z=0;Z<k.length;Z++)if(l!==Z){var J=f.distance(M,k[Z]);if(A)b+=1/J;else b+=J}if(!A)b=1/b;if(z<b)z=b;U[M.id()]=b}return{closeness:function(K){if(z==0)return 0;if(p4(K))K=F.filter(K)[0].id();else K=K.id();return U[K]/z}}},closenessCentrality:function(B){var E=Hm0(B),A=E.root,C=E.weight,D=E.directed,F=E.harmonic;A=this.filter(A)[0];var U=this.dijkstra({root:A,weight:C,directed:D}),z=0,k=this.nodes();for(var f=0;f<k.length;f++){var l=k[f];if(!l.same(A)){var b=U.distanceTo(l);if(F)z+=1/b;else z+=b}}return F?z:1/z}};xH.cc=xH.closenessCentrality;xH.ccn=xH.closenessCentralityNormalised=xH.closenessCentralityNormalized;ZZ4=C7({weight:null,directed:!1}),V20={betweennessCentrality:function(B){var E=ZZ4(B),A=E.directed,C=E.weight,D=C!=null,F=this.cy(),U=this.nodes(),z={},k={},f=0,l={set:function(G,L){if(k[G]=L,L>f)f=L},get:function(G){return k[G]}};for(var b=0;b<U.length;b++){var M=U[b],Z=M.id();if(A)z[Z]=M.outgoers().nodes();else z[Z]=M.openNeighborhood().nodes();l.set(Z,0)}var J=function(){var G=U[w].id(),L=[],H={},q={},x={},v=new TW(function(y,p){return x[y]-x[p]});for(var W=0;W<U.length;W++){var S=U[W].id();H[S]=[],q[S]=0,x[S]=1/0}q[G]=1,x[G]=0,v.push(G);while(!v.empty()){var T=v.pop();if(L.push(T),D)for(var R=0;R<z[T].length;R++){var Y=z[T][R],a=F.getElementById(T),I=void 0;if(a.edgesTo(Y).length>0)I=a.edgesTo(Y)[0];else I=Y.edgesTo(a)[0];var O=C(I);if(Y=Y.id(),x[Y]>x[T]+O){if(x[Y]=x[T]+O,v.nodes.indexOf(Y)<0)v.push(Y);else v.updateItem(Y);q[Y]=0,H[Y]=[]}if(x[Y]==x[T]+O)q[Y]=q[Y]+q[T],H[Y].push(T)}else for(var i=0;i<z[T].length;i++){var N=z[T][i].id();if(x[N]==1/0)v.push(N),x[N]=x[T]+1;if(x[N]==x[T]+1)q[N]=q[N]+q[T],H[N].push(T)}}var V={};for(var h=0;h<U.length;h++)V[U[h].id()]=0;while(L.length>0){var r=L.pop();for(var m=0;m<H[r].length;m++){var $=H[r][m];V[$]=V[$]+q[$]/q[r]*(1+V[r])}if(r!=U[w].id())l.set(r,l.get(r)+V[r])}};for(var w=0;w<U.length;w++)J();var K={betweenness:function(G){var L=F.collection(G).id();return l.get(L)},betweennessNormalized:function(G){if(f==0)return 0;var L=F.collection(G).id();return l.get(L)/f}};return K.betweennessNormalised=K.betweennessNormalized,K}};V20.bc=V20.betweennessCentrality;JZ4=C7({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(u){return 1}]}),SZ4={markovClustering:Lm0,mcl:Lm0},WH={euclidean:function(B,E,A){if(B>=2)return BW(B,E,A,0,Xm0,YZ4);else return BW(B,E,A,0,qm0)},squaredEuclidean:function(B,E,A){return BW(B,E,A,0,Xm0)},manhattan:function(B,E,A){return BW(B,E,A,0,qm0)},max:function(B,E,A){return BW(B,E,A,-1/0,RZ4)}};WH["squared-euclidean"]=WH.squaredEuclidean;WH.squaredeuclidean=WH.squaredEuclidean;TZ4=C7({k:2,m:2,sensitivityThreshold:0.0001,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),hZ4={kMeans:jZ4,kMedoids:NZ4,fuzzyCMeans:Sm0,fcm:Sm0},mZ4=C7({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),rZ4={single:"min",complete:"max"},yZ4={hierarchicalClustering:Ym0,hca:Ym0},cZ4=C7({distance:"euclidean",preference:"median",damping:0.8,maxIterations:1000,minIterations:100,attributes:[]}),sZ4={affinityPropagation:Tm0,ap:Tm0},oZ4=C7({root:void 0,directed:!1}),tZ4={hierholzer:function(B){if(!S1(B)){var E=arguments;B={root:E[0],directed:E[1]}}var A=oZ4(B),C=A.root,D=A.directed,F=this,U=!1,z,k,f;if(C)f=p4(C)?this.filter(C)[0].id():C[0].id();var l={},b={};if(D)F.forEach(function(Q){var G=Q.id();if(Q.isNode()){var L=Q.indegree(!0),H=Q.outdegree(!0),q=L-H,x=H-L;if(q==1)if(z)U=!0;else z=G;else if(x==1)if(k)U=!0;else k=G;else if(x>1||q>1)U=!0;l[G]=[],Q.outgoers().forEach(function(v){if(v.isEdge())l[G].push(v.id())})}else b[G]=[void 0,Q.target().id()]});else F.forEach(function(Q){var G=Q.id();if(Q.isNode()){var L=Q.degree(!0);if(L%2)if(!z)z=G;else if(!k)k=G;else U=!0;l[G]=[],Q.connectedEdges().forEach(function(H){return l[G].push(H.id())})}else b[G]=[Q.source().id(),Q.target().id()]});var M={found:!1,trail:void 0};if(U)return M;else if(k&&z){if(D){if(f&&k!=f)return M;f=k}else if(f&&k!=f&&z!=f)return M;else if(!f)f=k}else if(!f)f=F[0].id();var Z=function(G){var L=G,H=[G],q,x,v;while(l[L].length){if(q=l[L].shift(),x=b[q][0],v=b[q][1],L!=v)l[v]=l[v].filter(function(W){return W!=q}),L=v;else if(!D&&L!=x)l[x]=l[x].filter(function(W){return W!=q}),L=x;H.unshift(q),H.unshift(L)}return H},J=[],w=[];w=Z(f);while(w.length!=1)if(l[w[0]].length==0)J.unshift(F.getElementById(w.shift())),J.unshift(F.getElementById(w.shift()));else w=Z(w.shift()).concat(w);J.unshift(F.getElementById(w.shift()));for(var K in l)if(l[K].length)return M;return M.found=!0,M.trail=this.spawn(J,!0),M}},eZ4={hopcroftTarjanBiconnected:$V,htbc:$V,htb:$V,hopcroftTarjanBiconnectedComponents:$V},uJ4={tarjanStronglyConnected:yV,tsc:yV,tscc:yV,tarjanStronglyConnectedComponents:yV},uy0={};[wW,RM4,TM4,IM4,jM4,iM4,hM4,MZ4,XH,xH,V20,SZ4,hZ4,yZ4,sZ4,tZ4,eZ4,uJ4].forEach(function(u){k3(uy0,u)});/*!
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)
*/RC.prototype={fulfill:function(B){return Om0(this,Ey0,"fulfillValue",B)},reject:function(B){return Om0(this,Ay0,"rejectReason",B)},then:function(B,E){var A=this,C=new RC;return A.onFulfilled.push(Pm0(B,C,"fulfill")),A.onRejected.push(Pm0(E,C,"reject")),Cy0(A),C.proxy}};RC.all=function(u){return new RC(function(B,E){var A=Array(u.length),C=0,D=function(z,k){if(A[z]=k,C++,C===u.length)B(A)};for(var F=0;F<u.length;F++)(function(U){var z=u[U],k=z!=null&&z.then!=null;if(k)z.then(function(l){D(U,l)},function(l){E(l)});else{var f=z;D(U,f)}})(F)})};RC.resolve=function(u){return new RC(function(B,E){B(u)})};RC.reject=function(u){return new RC(function(B,E){E(u)})};IH=typeof Promise<"u"?Promise:RC,XJ=r20.prototype;k3(XJ,{instanceString:function(){return"animation"},hook:function(){var B=this._private;if(!B.hooked){var E,A=B.target._private.animation;if(B.queue)E=A.queue;else E=A.current;if(E.push(this),lE(B.target))B.target.cy().addToAnimationPool(B.target);B.hooked=!0}return this},play:function(){var B=this._private;if(B.progress===1)B.progress=0;return B.playing=!0,B.started=!1,B.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var B=this._private;return B.applying=!0,B.started=!1,B.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var B=this._private;return B.playing=!1,B.started=!1,this},stop:function(){var B=this._private;return B.playing=!1,B.started=!1,B.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(B){var E=this._private;if(B===void 0)return E.progress*E.duration;else return this.progress(B/E.duration)},progress:function(B){var E=this._private,A=E.playing;if(B===void 0)return E.progress;else{if(A)this.pause();if(E.progress=B,E.started=!1,A)this.play()}return this},completed:function(){return this._private.progress===1},reverse:function(){var B=this._private,E=B.playing;if(E)this.pause();B.progress=1-B.progress,B.started=!1;var A=function(k,f){var l=B[k];if(l==null)return;B[k]=B[f],B[f]=l};if(A("zoom","startZoom"),A("pan","startPan"),A("position","startPosition"),B.style)for(var C=0;C<B.style.length;C++){var D=B.style[C],F=D.name,U=B.startStyle[F];B.startStyle[F]=D,B.style[C]=U}if(E)this.play();return this},promise:function(B){var E=this._private,A;switch(B){case"frame":A=E.frames;break;default:case"complete":case"completed":A=E.completes}return new IH(function(C,D){A.push(function(){C()})})}});XJ.complete=XJ.completed;XJ.run=XJ.play;XJ.running=XJ.playing;BJ4={animated:function(){return function(){var E=this,A=E.length!==void 0,C=A?E:[E],D=this._private.cy||this;if(!D.styleEnabled())return!1;var F=C[0];if(F)return F._private.animation.current.length>0}},clearQueue:function(){return function(){var E=this,A=E.length!==void 0,C=A?E:[E],D=this._private.cy||this;if(!D.styleEnabled())return this;for(var F=0;F<C.length;F++){var U=C[F];U._private.animation.queue=[]}return this}},delay:function(){return function(E,A){var C=this._private.cy||this;if(!C.styleEnabled())return this;return this.animate({delay:E,duration:E,complete:A})}},delayAnimation:function(){return function(E,A){var C=this._private.cy||this;if(!C.styleEnabled())return this;return this.animation({delay:E,duration:E,complete:A})}},animation:function(){return function(E,A){var C=this,D=C.length!==void 0,F=D?C:[C],U=this._private.cy||this,z=!D,k=!z;if(!U.styleEnabled())return this;var f=U.style();E=k3({},E,A);var l=Object.keys(E).length===0;if(l)return new r20(F[0],E);if(E.duration===void 0)E.duration=400;switch(E.duration){case"slow":E.duration=600;break;case"fast":E.duration=200;break}if(k)E.style=f.getPropsList(E.style||E.css),E.css=void 0;if(k&&E.renderedPosition!=null){var b=E.renderedPosition,M=U.pan(),Z=U.zoom();E.position=y$0(b,Z,M)}if(z&&E.panBy!=null){var J=E.panBy,w=U.pan();E.pan={x:w.x+J.x,y:w.y+J.y}}var K=E.center||E.centre;if(z&&K!=null){var Q=U.getCenterPan(K.eles,E.zoom);if(Q!=null)E.pan=Q}if(z&&E.fit!=null){var G=E.fit,L=U.getFitViewport(G.eles||G.boundingBox,G.padding);if(L!=null)E.pan=L.pan,E.zoom=L.zoom}if(z&&S1(E.zoom)){var H=U.getZoomedViewport(E.zoom);if(H!=null){if(H.zoomed)E.zoom=H.zoom;if(H.panned)E.pan=H.pan}else E.zoom=null}return new r20(F[0],E)}},animate:function(){return function(E,A){var C=this,D=C.length!==void 0,F=D?C:[C],U=this._private.cy||this;if(!U.styleEnabled())return this;if(A)E=k3({},E,A);for(var z=0;z<F.length;z++){var k=F[z],f=k.animated()&&(E.queue===void 0||E.queue),l=k.animation(E,f?{queue:!0}:void 0);l.play()}return this}},stop:function(){return function(E,A){var C=this,D=C.length!==void 0,F=D?C:[C],U=this._private.cy||this;if(!U.styleEnabled())return this;for(var z=0;z<F.length;z++){var k=F[z],f=k._private,l=f.animation.current;for(var b=0;b<l.length;b++){var M=l[b],Z=M._private;if(A)Z.duration=0}if(E)f.animation.queue=[];if(!A)f.animation.current=[]}return U.notify("draw"),this}}};jJ4=PJ4(),NJ4=SW(jJ4);$J4=rJ4(),yJ4=SW($J4);_J4=gJ4(),nJ4=SW(_J4),pJ4={data:function(B){var E={field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(C){},beforeSet:function(C,D){},onSet:function(C){},canSet:function(C){return!0}};return B=k3({},E,B),function(C,D){var F=B,U=this,z=U.length!==void 0,k=z?U:[U],f=z?U[0]:U;if(p4(C)){var l=C.indexOf(".")!==-1,b=l&&nJ4(C);if(F.allowGetting&&D===void 0){var M;if(f)if(F.beforeGet(f),b&&f._private[F.field][C]===void 0)M=NJ4(f._private[F.field],b);else M=f._private[F.field][C];return M}else if(F.allowSetting&&D!==void 0){var Z=!F.immutableKeys[C];if(Z){var J=X$0({},C,D);F.beforeSet(U,J);for(var w=0,K=k.length;w<K;w++){var Q=k[w];if(F.canSet(Q))if(b&&f._private[F.field][C]===void 0)yJ4(Q._private[F.field],b,D);else Q._private[F.field][C]=D}if(F.updateStyle)U.updateStyle();if(F.onSet(U),F.settingTriggersEvent)U[F.triggerFnName](F.settingEvent)}}}else if(F.allowSetting&&S1(C)){var G=C,L,H,q=Object.keys(G);F.beforeSet(U,G);for(var x=0;x<q.length;x++){L=q[x],H=G[L];var v=!F.immutableKeys[L];if(v)for(var W=0;W<k.length;W++){var S=k[W];if(F.canSet(S))S._private[F.field][L]=H}}if(F.updateStyle)U.updateStyle();if(F.onSet(U),F.settingTriggersEvent)U[F.triggerFnName](F.settingEvent)}else if(F.allowBinding&&H9(C)){var T=C;U.on(F.bindingEvent,T)}else if(F.allowGetting&&C===void 0){var R;if(f)F.beforeGet(f),R=f._private[F.field];return R}return U}},removeData:function(B){var E={field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}};return B=k3({},E,B),function(C){var D=B,F=this,U=F.length!==void 0,z=U?F:[F];if(p4(C)){var k=C.split(/\s+/),f=k.length;for(var l=0;l<f;l++){var b=k[l];if(jl(b))continue;var M=!D.immutableKeys[b];if(M)for(var Z=0,J=z.length;Z<J;Z++)z[Z]._private[D.field][b]=void 0}if(D.triggerEvent)F[D.triggerFnName](D.event)}else if(C===void 0){for(var w=0,K=z.length;w<K;w++){var Q=z[w]._private[D.field],G=Object.keys(Q);for(var L=0;L<G.length;L++){var H=G[L],q=!D.immutableKeys[H];if(q)Q[H]=void 0}}if(D.triggerEvent)F[D.triggerFnName](D.event)}return F}}},dJ4={eventAliasesOn:function(B){var E=B;E.addListener=E.listen=E.bind=E.on,E.unlisten=E.unbind=E.off=E.removeListener,E.trigger=E.emit,E.pon=E.promiseOn=function(A,C){var D=this,F=Array.prototype.slice.call(arguments,0);return new IH(function(U,z){var k=function(M){D.off.apply(D,l),U(M)},f=F.concat([k]),l=f.concat([]);D.on.apply(D,f)})}}},E6={};[BJ4,pJ4,dJ4].forEach(function(u){k3(E6,u)});sJ4={animate:E6.animate(),animation:E6.animation(),animated:E6.animated(),clearQueue:E6.clearQueue(),delay:E6.delay(),delayAnimation:E6.delayAnimation(),stop:E6.stop()},uh={classes:function(B){var E=this;if(B===void 0){var A=[];return E[0]._private.classes.forEach(function(Z){return A.push(Z)}),A}else if(!q6(B))B=(B||"").match(/\S+/g)||[];var C=[],D=new OH(B);for(var F=0;F<E.length;F++){var U=E[F],z=U._private,k=z.classes,f=!1;for(var l=0;l<B.length;l++){var b=B[l],M=k.has(b);if(!M){f=!0;break}}if(!f)f=k.size!==B.length;if(f)z.classes=D,C.push(U)}if(C.length>0)this.spawn(C).updateStyle().emit("class");return E},addClass:function(B){return this.toggleClass(B,!0)},hasClass:function(B){var E=this[0];return E!=null&&E._private.classes.has(B)},toggleClass:function(B,E){if(!q6(B))B=B.match(/\S+/g)||[];var A=this,C=E===void 0,D=[];for(var F=0,U=A.length;F<U;F++){var z=A[F],k=z._private.classes,f=!1;for(var l=0;l<B.length;l++){var b=B[l],M=k.has(b),Z=!1;if(E||C&&!M)k.add(b),Z=!0;else if(!E||C&&M)k.delete(b),Z=!0;if(!f&&Z)D.push(z),f=!0}}if(D.length>0)this.spawn(D).updateStyle().emit("class");return A},removeClass:function(B){return this.toggleClass(B,!1)},flashClass:function(B,E){var A=this;if(E==null)E=250;else if(E===0)return A;return A.addClass(B),setTimeout(function(){A.removeClass(B)},E),A}};uh.className=uh.classNames=uh.classes;v1={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:o2,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};v1.variable="(?:[\\w-.]|(?:\\\\"+v1.metaChar+"))+";v1.className="(?:[\\w-]|(?:\\\\"+v1.metaChar+"))+";v1.value=v1.string+"|"+v1.number;v1.id=v1.variable;(function(){var u,B,E;u=v1.comparatorOp.split("|");for(E=0;E<u.length;E++)B=u[E],v1.comparatorOp+="|@"+B;u=v1.comparatorOp.split("|");for(E=0;E<u.length;E++){if(B=u[E],B.indexOf("!")>=0)continue;if(B==="=")continue;v1.comparatorOp+="|\\!"+B}})();T4={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},$20=[{selector:":selected",matches:function(B){return B.selected()}},{selector:":unselected",matches:function(B){return!B.selected()}},{selector:":selectable",matches:function(B){return B.selectable()}},{selector:":unselectable",matches:function(B){return!B.selectable()}},{selector:":locked",matches:function(B){return B.locked()}},{selector:":unlocked",matches:function(B){return!B.locked()}},{selector:":visible",matches:function(B){return B.visible()}},{selector:":hidden",matches:function(B){return!B.visible()}},{selector:":transparent",matches:function(B){return B.transparent()}},{selector:":grabbed",matches:function(B){return B.grabbed()}},{selector:":free",matches:function(B){return!B.grabbed()}},{selector:":removed",matches:function(B){return B.removed()}},{selector:":inside",matches:function(B){return!B.removed()}},{selector:":grabbable",matches:function(B){return B.grabbable()}},{selector:":ungrabbable",matches:function(B){return!B.grabbable()}},{selector:":animated",matches:function(B){return B.animated()}},{selector:":unanimated",matches:function(B){return!B.animated()}},{selector:":parent",matches:function(B){return B.isParent()}},{selector:":childless",matches:function(B){return B.isChildless()}},{selector:":child",matches:function(B){return B.isChild()}},{selector:":orphan",matches:function(B){return B.isOrphan()}},{selector:":nonorphan",matches:function(B){return B.isChild()}},{selector:":compound",matches:function(B){if(B.isNode())return B.isParent();else return B.source().isParent()||B.target().isParent()}},{selector:":loop",matches:function(B){return B.isLoop()}},{selector:":simple",matches:function(B){return B.isSimple()}},{selector:":active",matches:function(B){return B.active()}},{selector:":inactive",matches:function(B){return!B.active()}},{selector:":backgrounding",matches:function(B){return B.backgrounding()}},{selector:":nonbackgrounding",matches:function(B){return!B.backgrounding()}}].sort(function(u,B){return nb4(u.selector,B.selector)}),oJ4=function(){var u={},B;for(var E=0;E<$20.length;E++)B=$20[E],u[B.selector]=B.matches;return u}(),eJ4="("+$20.map(function(u){return u.selector}).join("|")+")",y20=[{name:"group",query:!0,regex:"("+v1.group+")",populate:function(B,E,A){var C=W2(A,1),D=C[0];E.checks.push({type:T4.GROUP,value:D==="*"?D:D+"s"})}},{name:"state",query:!0,regex:eJ4,populate:function(B,E,A){var C=W2(A,1),D=C[0];E.checks.push({type:T4.STATE,value:D})}},{name:"id",query:!0,regex:"\\#("+v1.id+")",populate:function(B,E,A){var C=W2(A,1),D=C[0];E.checks.push({type:T4.ID,value:lH(D)})}},{name:"className",query:!0,regex:"\\.("+v1.className+")",populate:function(B,E,A){var C=W2(A,1),D=C[0];E.checks.push({type:T4.CLASS,value:lH(D)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+v1.variable+")\\s*\\]",populate:function(B,E,A){var C=W2(A,1),D=C[0];E.checks.push({type:T4.DATA_EXIST,field:lH(D)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+v1.variable+")\\s*("+v1.comparatorOp+")\\s*("+v1.value+")\\s*\\]",populate:function(B,E,A){var C=W2(A,3),D=C[0],F=C[1],U=C[2],z=new RegExp("^"+v1.string+"$").exec(U)!=null;if(z)U=U.substring(1,U.length-1);else U=parseFloat(U);E.checks.push({type:T4.DATA_COMPARE,field:lH(D),operator:F,value:U})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+v1.boolOp+")\\s*("+v1.variable+")\\s*\\]",populate:function(B,E,A){var C=W2(A,2),D=C[0],F=C[1];E.checks.push({type:T4.DATA_BOOL,field:lH(F),operator:D})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+v1.meta+")\\s*("+v1.comparatorOp+")\\s*("+v1.number+")\\s*\\]\\]",populate:function(B,E,A){var C=W2(A,3),D=C[0],F=C[1],U=C[2];E.checks.push({type:T4.META_COMPARE,field:lH(D),operator:F,value:parseFloat(U)})}},{name:"nextQuery",separator:!0,regex:v1.separator,populate:function(B,E){var{currentSubject:A,edgeCount:C,compoundCount:D}=B,F=B[B.length-1];if(A!=null)F.subject=A,B.currentSubject=null;F.edgeCount=C,F.compoundCount=D,B.edgeCount=0,B.compoundCount=0;var U=B[B.length++]=b6();return U}},{name:"directedEdge",separator:!0,regex:v1.directedEdge,populate:function(B,E){if(B.currentSubject==null){var A=b6(),C=E,D=b6();return A.checks.push({type:T4.DIRECTED_EDGE,source:C,target:D}),Sl(B,E,A),B.edgeCount++,D}else{var F=b6(),U=E,z=b6();return F.checks.push({type:T4.NODE_SOURCE,source:U,target:z}),Sl(B,E,F),B.edgeCount++,z}}},{name:"undirectedEdge",separator:!0,regex:v1.undirectedEdge,populate:function(B,E){if(B.currentSubject==null){var A=b6(),C=E,D=b6();return A.checks.push({type:T4.UNDIRECTED_EDGE,nodes:[C,D]}),Sl(B,E,A),B.edgeCount++,D}else{var F=b6(),U=E,z=b6();return F.checks.push({type:T4.NODE_NEIGHBOR,node:U,neighbor:z}),Sl(B,E,F),z}}},{name:"child",separator:!0,regex:v1.child,populate:function(B,E){if(B.currentSubject==null){var A=b6(),C=b6(),D=B[B.length-1];return A.checks.push({type:T4.CHILD,parent:D,child:C}),Sl(B,E,A),B.compoundCount++,C}else if(B.currentSubject===E){var F=b6(),U=B[B.length-1],z=b6(),k=b6(),f=b6(),l=b6();return F.checks.push({type:T4.COMPOUND_SPLIT,left:U,right:z,subject:k}),k.checks=E.checks,E.checks=[{type:T4.TRUE}],l.checks.push({type:T4.TRUE}),z.checks.push({type:T4.PARENT,parent:l,child:f}),Sl(B,U,F),B.currentSubject=k,B.compoundCount++,f}else{var b=b6(),M=b6(),Z=[{type:T4.PARENT,parent:b,child:M}];return b.checks=E.checks,E.checks=Z,B.compoundCount++,M}}},{name:"descendant",separator:!0,regex:v1.descendant,populate:function(B,E){if(B.currentSubject==null){var A=b6(),C=b6(),D=B[B.length-1];return A.checks.push({type:T4.DESCENDANT,ancestor:D,descendant:C}),Sl(B,E,A),B.compoundCount++,C}else if(B.currentSubject===E){var F=b6(),U=B[B.length-1],z=b6(),k=b6(),f=b6(),l=b6();return F.checks.push({type:T4.COMPOUND_SPLIT,left:U,right:z,subject:k}),k.checks=E.checks,E.checks=[{type:T4.TRUE}],l.checks.push({type:T4.TRUE}),z.checks.push({type:T4.ANCESTOR,ancestor:l,descendant:f}),Sl(B,U,F),B.currentSubject=k,B.compoundCount++,f}else{var b=b6(),M=b6(),Z=[{type:T4.ANCESTOR,ancestor:b,descendant:M}];return b.checks=E.checks,E.checks=Z,B.compoundCount++,M}}},{name:"subject",modifier:!0,regex:v1.subject,populate:function(B,E){if(B.currentSubject!=null&&B.currentSubject!==E)return A6("Redefinition of subject in selector `"+B.toString()+"`"),!1;B.currentSubject=E;var A=B[B.length-1],C=A.checks[0],D=C==null?null:C.type;if(D===T4.DIRECTED_EDGE)C.type=T4.NODE_TARGET;else if(D===T4.UNDIRECTED_EDGE)C.type=T4.NODE_NEIGHBOR,C.node=C.nodes[1],C.neighbor=C.nodes[0],C.nodes=null}}];y20.forEach(function(u){return u.regexObj=new RegExp("^"+u.regex)});Cw4={parse:Ew4,toString:Aw4},r9=[];r9[T4.GROUP]=function(u,B){var E=u.value;return E==="*"||E===B.group()};r9[T4.STATE]=function(u,B){var E=u.value;return tJ4(E,B)};r9[T4.ID]=function(u,B){var E=u.value;return B.id()===E};r9[T4.CLASS]=function(u,B){var E=u.value;return B.hasClass(E)};r9[T4.META_COMPARE]=function(u,B){var{field:E,operator:A,value:C}=u;return ly0(Uw4(B,E),A,C)};r9[T4.DATA_COMPARE]=function(u,B){var{field:E,operator:A,value:C}=u;return ly0(J50(B,E),A,C)};r9[T4.DATA_BOOL]=function(u,B){var{field:E,operator:A}=u;return Dw4(J50(B,E),A)};r9[T4.DATA_EXIST]=function(u,B){var E=u.field;return u.operator,Fw4(J50(B,E))};r9[T4.UNDIRECTED_EDGE]=function(u,B){var E=u.nodes[0],A=u.nodes[1],C=B.source(),D=B.target();return $6(E,C)&&$6(A,D)||$6(A,C)&&$6(E,D)};r9[T4.NODE_NEIGHBOR]=function(u,B){return $6(u.node,B)&&B.neighborhood().some(function(E){return E.isNode()&&$6(u.neighbor,E)})};r9[T4.DIRECTED_EDGE]=function(u,B){return $6(u.source,B.source())&&$6(u.target,B.target())};r9[T4.NODE_SOURCE]=function(u,B){return $6(u.source,B)&&B.outgoers().some(function(E){return E.isNode()&&$6(u.target,E)})};r9[T4.NODE_TARGET]=function(u,B){return $6(u.target,B)&&B.incomers().some(function(E){return E.isNode()&&$6(u.source,E)})};r9[T4.CHILD]=function(u,B){return $6(u.child,B)&&$6(u.parent,B.parent())};r9[T4.PARENT]=function(u,B){return $6(u.parent,B)&&B.children().some(function(E){return $6(u.child,E)})};r9[T4.DESCENDANT]=function(u,B){return $6(u.descendant,B)&&B.ancestors().some(function(E){return $6(u.ancestor,E)})};r9[T4.ANCESTOR]=function(u,B){return $6(u.ancestor,B)&&B.descendants().some(function(E){return $6(u.descendant,E)})};r9[T4.COMPOUND_SPLIT]=function(u,B){return $6(u.subject,B)&&$6(u.left,B)&&$6(u.right,B)};r9[T4.TRUE]=function(){return!0};r9[T4.COLLECTION]=function(u,B){var E=u.value;return E.has(B)};r9[T4.FILTER]=function(u,B){var E=u.value;return E(B)};fw4={matches:kw4,filter:zw4},Vl=al.prototype;[Cw4,fw4].forEach(function(u){return k3(Vl,u)});Vl.text=function(){return this.inputText};Vl.size=function(){return this.length};Vl.eq=function(u){return this[u]};Vl.sameText=function(u){return!this.invalid&&!u.invalid&&this.text()===u.text()};Vl.addQuery=function(u){this[this.length++]=u};Vl.selector=Vl.toString;Il={allAre:function(B){var E=new al(B);return this.every(function(A){return E.matches(A)})},is:function(B){var E=new al(B);return this.some(function(A){return E.matches(A)})},some:function(B,E){for(var A=0;A<this.length;A++){var C=!E?B(this[A],A,this):B.apply(E,[this[A],A,this]);if(C)return!0}return!1},every:function(B,E){for(var A=0;A<this.length;A++){var C=!E?B(this[A],A,this):B.apply(E,[this[A],A,this]);if(!C)return!1}return!0},same:function(B){if(this===B)return!0;B=this.cy().collection(B);var E=this.length,A=B.length;if(E!==A)return!1;if(E===1)return this[0]===B[0];return this.every(function(C){return B.hasElementWithId(C.id())})},anySame:function(B){return B=this.cy().collection(B),this.some(function(E){return B.hasElementWithId(E.id())})},allAreNeighbors:function(B){B=this.cy().collection(B);var E=this.neighborhood();return B.every(function(A){return E.hasElementWithId(A.id())})},contains:function(B){B=this.cy().collection(B);var E=this;return B.every(function(A){return E.hasElementWithId(A.id())})}};Il.allAreNeighbours=Il.allAreNeighbors;Il.has=Il.contains;Il.equal=Il.equals=Il.same;YH={parent:function(B){var E=[];if(this.length===1){var A=this[0]._private.parent;if(A)return A}for(var C=0;C<this.length;C++){var D=this[C],F=D._private.parent;if(F)E.push(F)}return this.spawn(E,!0).filter(B)},parents:function(B){var E=[],A=this.parent();while(A.nonempty()){for(var C=0;C<A.length;C++){var D=A[C];E.push(D)}A=A.parent()}return this.spawn(E,!0).filter(B)},commonAncestors:function(B){var E;for(var A=0;A<this.length;A++){var C=this[A],D=C.parents();E=E||D,E=E.intersect(D)}return E.filter(B)},orphans:function(B){return this.stdFilter(function(E){return E.isOrphan()}).filter(B)},nonorphans:function(B){return this.stdFilter(function(E){return E.isChild()}).filter(B)},children:UA(function(u){var B=[];for(var E=0;E<this.length;E++){var A=this[E],C=A._private.children;for(var D=0;D<C.length;D++)B.push(C[D])}return this.spawn(B,!0).filter(u)},"children"),siblings:function(B){return this.parent().children().not(this).filter(B)},isParent:function(){var B=this[0];if(B)return B.isNode()&&B._private.children.length!==0},isChildless:function(){var B=this[0];if(B)return B.isNode()&&B._private.children.length===0},isChild:function(){var B=this[0];if(B)return B.isNode()&&B._private.parent!=null},isOrphan:function(){var B=this[0];if(B)return B.isNode()&&B._private.parent==null},descendants:function(B){var E=[];function A(C){for(var D=0;D<C.length;D++){var F=C[D];if(E.push(F),F.children().nonempty())A(F.children())}}return A(this.children()),this.spawn(E,!0).filter(B)}};YH.forEachDown=function(u){var B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return w50(this,u,B,by0)};YH.forEachUp=function(u){var B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return w50(this,u,B,My0)};YH.forEachUpAndDown=function(u){var B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return w50(this,u,B,lw4)};YH.ancestors=YH.parents;GW=Zy0={data:E6.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:E6.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:E6.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:E6.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:E6.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:E6.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var B=this[0];if(B)return B._private.data.id}};GW.attr=GW.data;GW.removeAttr=GW.removeData;bw4=Zy0,Oh={};k3(Oh,{degree:X20(function(u,B){if(B.source().same(B.target()))return 2;else return 1}),indegree:X20(function(u,B){if(B.target().same(u))return 1;else return 0}),outdegree:X20(function(u,B){if(B.source().same(u))return 1;else return 0})});k3(Oh,{minDegree:bH("degree",function(u,B){return u<B}),maxDegree:bH("degree",function(u,B){return u>B}),minIndegree:bH("indegree",function(u,B){return u<B}),maxIndegree:bH("indegree",function(u,B){return u>B}),minOutdegree:bH("outdegree",function(u,B){return u<B}),maxOutdegree:bH("outdegree",function(u,B){return u>B})});k3(Oh,{totalDegree:function(B){var E=0,A=this.nodes();for(var C=0;C<A.length;C++)E+=A[C].degree(B);return E}});Or0={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(B){B.updateCompoundBounds()},beforeSet:function(B,E){wy0(B,E,!1)},onSet:function(B){B.dirtyCompoundBoundsCache()},canSet:function(B){return!B.locked()}};YC=Jy0={position:E6.data(Or0),silentPosition:E6.data(k3({},Or0,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(B,E){wy0(B,E,!0)},onSet:function(B){B.dirtyCompoundBoundsCache()}})),positions:function(B,E){if(S1(B))if(E)this.silentPosition(B);else this.position(B);else if(H9(B)){var A=B,C=this.cy();C.startBatch();for(var D=0;D<this.length;D++){var F=this[D],U=void 0;if(U=A(F,D))if(E)F.silentPosition(U);else F.position(U)}C.endBatch()}return this},silentPositions:function(B){return this.positions(B,!0)},shift:function(B,E,A){var C;if(S1(B))C={x:J4(B.x)?B.x:0,y:J4(B.y)?B.y:0},A=E;else if(p4(B)&&J4(E))C={x:0,y:0},C[B]=E;if(C!=null){var D=this.cy();D.startBatch();for(var F=0;F<this.length;F++){var U=this[F];if(D.hasCompoundNodes()&&U.isChild()&&U.ancestors().anySame(this))continue;var z=U.position(),k={x:z.x+C.x,y:z.y+C.y};if(A)U.silentPosition(k);else U.position(k)}D.endBatch()}return this},silentShift:function(B,E){if(S1(B))this.shift(B,!0);else if(p4(B)&&J4(E))this.shift(B,E,!0);return this},renderedPosition:function(B,E){var A=this[0],C=this.cy(),D=C.zoom(),F=C.pan(),U=S1(B)?B:void 0,z=U!==void 0||E!==void 0&&p4(B);if(A&&A.isNode())if(z)for(var k=0;k<this.length;k++){var f=this[k];if(E!==void 0)f.position(B,(E-F[B])/D);else if(U!==void 0)f.position(y$0(U,D,F))}else{var l=A.position();if(U=vh(l,D,F),B===void 0)return U;else return U[B]}else if(!z)return;return this},relativePosition:function(B,E){var A=this[0],C=this.cy(),D=S1(B)?B:void 0,F=D!==void 0||E!==void 0&&p4(B),U=C.hasCompoundNodes();if(A&&A.isNode())if(F)for(var z=0;z<this.length;z++){var k=this[z],f=U?k.parent():null,l=f&&f.length>0,b=l;if(l)f=f[0];var M=b?f.position():{x:0,y:0};if(E!==void 0)k.position(B,E+M[B]);else if(D!==void 0)k.position({x:D.x+M.x,y:D.y+M.y})}else{var Z=A.position(),J=U?A.parent():null,w=J&&J.length>0,K=w;if(w)J=J[0];var Q=K?J.position():{x:0,y:0};if(D={x:Z.x-Q.x,y:Z.y-Q.y},B===void 0)return D;else return D[B]}else if(!F)return;return this}};YC.modelPosition=YC.point=YC.position;YC.modelPositions=YC.points=YC.positions;YC.renderedPoint=YC.renderedPosition;YC.relativePoint=YC.relativePosition;Mw4=Jy0;vH=$l={};$l.renderedBoundingBox=function(u){var B=this.boundingBox(u),E=this.cy(),A=E.zoom(),C=E.pan(),D=B.x1*A+C.x,F=B.x2*A+C.x,U=B.y1*A+C.y,z=B.y2*A+C.y;return{x1:D,x2:F,y1:U,y2:z,w:F-D,h:z-U}};$l.dirtyCompoundBoundsCache=function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,B=this.cy();if(!B.styleEnabled()||!B.hasCompoundNodes())return this;return this.forEachUp(function(E){if(E.isParent()){var A=E._private;if(A.compoundBoundsClean=!1,A.bbCache=null,!u)E.emitAndNotify("bounds")}}),this};$l.updateCompoundBounds=function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,B=this.cy();if(!B.styleEnabled()||!B.hasCompoundNodes())return this;if(!u&&B.batching())return this;function E(F){if(!F.isParent())return;var U=F._private,z=F.children(),k=F.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:F.pstyle("min-width").pfValue,left:F.pstyle("min-width-bias-left"),right:F.pstyle("min-width-bias-right")},height:{val:F.pstyle("min-height").pfValue,top:F.pstyle("min-height-bias-top"),bottom:F.pstyle("min-height-bias-bottom")}},l=z.boundingBox({includeLabels:k,includeOverlays:!1,useCache:!1}),b=U.position;if(l.w===0||l.h===0)l={w:F.pstyle("width").pfValue,h:F.pstyle("height").pfValue},l.x1=b.x-l.w/2,l.x2=b.x+l.w/2,l.y1=b.y-l.h/2,l.y2=b.y+l.h/2;function M(W,S,T){var R=0,Y=0,a=S+T;if(W>0&&a>0)R=S/a*W,Y=T/a*W;return{biasDiff:R,biasComplementDiff:Y}}function Z(W,S,T,R){if(T.units==="%")switch(R){case"width":return W>0?T.pfValue*W:0;case"height":return S>0?T.pfValue*S:0;case"average":return W>0&&S>0?T.pfValue*(W+S)/2:0;case"min":return W>0&&S>0?W>S?T.pfValue*S:T.pfValue*W:0;case"max":return W>0&&S>0?W>S?T.pfValue*W:T.pfValue*S:0;default:return 0}else if(T.units==="px")return T.pfValue;else return 0}var J=f.width.left.value;if(f.width.left.units==="px"&&f.width.val>0)J=J*100/f.width.val;var w=f.width.right.value;if(f.width.right.units==="px"&&f.width.val>0)w=w*100/f.width.val;var K=f.height.top.value;if(f.height.top.units==="px"&&f.height.val>0)K=K*100/f.height.val;var Q=f.height.bottom.value;if(f.height.bottom.units==="px"&&f.height.val>0)Q=Q*100/f.height.val;var G=M(f.width.val-l.w,J,w),L=G.biasDiff,H=G.biasComplementDiff,q=M(f.height.val-l.h,K,Q),x=q.biasDiff,v=q.biasComplementDiff;U.autoPadding=Z(l.w,l.h,F.pstyle("padding"),F.pstyle("padding-relative-to").value),U.autoWidth=Math.max(l.w,f.width.val),b.x=(-L+l.x1+l.x2+H)/2,U.autoHeight=Math.max(l.h,f.height.val),b.y=(-x+l.y1+l.y2+v)/2}for(var A=0;A<this.length;A++){var C=this[A],D=C._private;if(!D.compoundBoundsClean||u){if(E(C),!B.batching())D.compoundBoundsClean=!0}}return this};HW={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},jr0=Qy0(HW),Nr0=C7(HW);$l.boundingBox=function(u){var B,E=u===void 0||u.useCache===void 0||u.useCache===!0,A=SH(function(f){var l=f._private;return l.bbCache==null||l.styleDirty||l.bbCachePosKey!==Gy0(f)},function(f){return f.id()});if(E&&this.length===1&&!A(this[0])){if(u===void 0)u=HW;else u=Nr0(u);B=Pr0(this[0],u)}else{B=QB(),u=u||HW;var C=Nr0(u),D=this,F=D.cy(),U=F.styleEnabled();if(this.edges().forEach(A),this.nodes().forEach(A),U)this.recalculateRenderedStyle(E);this.updateCompoundBounds(!E);for(var z=0;z<D.length;z++){var k=D[z];if(A(k))k.dirtyBoundingBoxCache();Yl(B,Pr0(k,C))}}return B.x1=FA(B.x1),B.y1=FA(B.y1),B.x2=FA(B.x2),B.y2=FA(B.y2),B.w=FA(B.x2-B.x1),B.h=FA(B.y2-B.y1),B};$l.dirtyBoundingBoxCache=function(){for(var u=0;u<this.length;u++){var B=this[u]._private;B.bbCache=null,B.bbCachePosKey=null,B.bodyBounds=null,B.overlayBounds=null,B.labelBounds.all=null,B.labelBounds.source=null,B.labelBounds.target=null,B.labelBounds.main=null,B.labelBounds.sourceRot=null,B.labelBounds.targetRot=null,B.labelBounds.mainRot=null,B.arrowBounds.source=null,B.arrowBounds.target=null,B.arrowBounds["mid-source"]=null,B.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this};$l.boundingBoxAt=function(u){var B=this.nodes(),E=this.cy(),A=E.hasCompoundNodes(),C=E.collection();if(A)C=B.filter(function(k){return k.isParent()}),B=B.not(C);if(S1(u)){var D=u;u=function(){return D}}var F=function(f,l){return f._private.bbAtOldPos=u(f,l)},U=function(f){return f._private.bbAtOldPos};if(E.startBatch(),B.forEach(F).silentPositions(u),A)C.dirtyCompoundBoundsCache(),C.dirtyBoundingBoxCache(),C.updateCompoundBounds(!0);var z=dM4(this.boundingBox({useCache:!1}));if(B.silentPositions(U),A)C.dirtyCompoundBoundsCache(),C.dirtyBoundingBoxCache(),C.updateCompoundBounds(!0);return E.endBatch(),z};vH.boundingbox=vH.bb=vH.boundingBox;vH.renderedBoundingbox=vH.renderedBoundingBox;Kw4=$l;kW=OW={};Hy0({name:"width"});Hy0({name:"height"});OW.padding=function(){var u=this[0],B=u._private;if(u.isParent())if(u.updateCompoundBounds(),B.autoPadding!==void 0)return B.autoPadding;else return u.pstyle("padding").pfValue;else return u.pstyle("padding").pfValue};OW.paddedHeight=function(){var u=this[0];return u.height()+2*u.padding()};OW.paddedWidth=function(){var u=this[0];return u.width()+2*u.padding()};Qw4=OW,ir0={controlPoints:{get:qw4,mult:!0},segmentPoints:{get:Xw4,mult:!0},sourceEndpoint:{get:xw4},targetEndpoint:{get:vw4},midpoint:{get:Sw4}},Yw4=Object.keys(ir0).reduce(function(u,B){var E=ir0[B],A=Ww4(B);if(u[B]=function(){return Gw4(this,E.get)},E.mult)u[A]=function(){return Lw4(this,E.get)};else u[A]=function(){return Hw4(this,E.get)};return u},{}),Rw4=k3({},Mw4,Kw4,Qw4,Yw4);/*!
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
*/Ly0.prototype={instanceString:function(){return"event"},recycle:function(B,E){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=AW,B!=null&&B.preventDefault)this.type=B.type,this.isDefaultPrevented=B.defaultPrevented?gV:AW;else if(B!=null&&B.type)E=B;else this.type=B;if(E!=null)this.originalEvent=E.originalEvent,this.type=E.type!=null?E.type:this.type,this.cy=E.cy,this.target=E.target,this.position=E.position,this.renderedPosition=E.renderedPosition,this.namespace=E.namespace,this.layout=E.layout;if(this.cy!=null&&this.position!=null&&this.renderedPosition==null){var A=this.position,C=this.cy.zoom(),D=this.cy.pan();this.renderedPosition={x:A.x*C+D.x,y:A.y*C+D.y}}this.timeStamp=B&&B.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=gV;var B=this.originalEvent;if(!B)return;if(B.preventDefault)B.preventDefault()},stopPropagation:function(){this.isPropagationStopped=gV;var B=this.originalEvent;if(!B)return;if(B.stopPropagation)B.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=gV,this.stopPropagation()},isDefaultPrevented:AW,isPropagationStopped:AW,isImmediatePropagationStopped:AW};qy0=/^([^.]+)(\.(?:[^.]+))?$/,Xy0={qualifierCompare:function(B,E){return B===E},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(B){return B},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},ar0=Object.keys(Xy0),Ow4={};hl=Ih.prototype;hl.on=hl.addListener=function(u,B,E,A,C){return xy0(this,function(D,F,U,z,k,f,l){if(H9(f))D.listeners.push({event:F,callback:f,type:U,namespace:z,qualifier:k,conf:l})},u,B,E,A,C),this};hl.one=function(u,B,E,A){return this.on(u,B,E,A,{one:!0})};hl.removeListener=hl.off=function(u,B,E,A){var C=this;if(this.emitting!==0)this.listeners=QM4(this.listeners);var D=this.listeners,F=function(k){var f=D[k];xy0(C,function(l,b,M,Z,J,w){if((f.type===M||u==="*")&&(!Z&&f.namespace!==".*"||f.namespace===Z)&&(!J||l.qualifierCompare(f.qualifier,J))&&(!w||f.callback===w))return D.splice(k,1),!1},u,B,E,A)};for(var U=D.length-1;U>=0;U--)F(U);return this};hl.removeAllListeners=function(){return this.removeListener("*")};hl.emit=hl.trigger=function(u,B,E){var A=this.listeners,C=A.length;if(this.emitting++,!q6(B))B=[B];return Iw4(this,function(D,F){if(E!=null)A=[{event:F.event,type:F.type,namespace:F.namespace,callback:E}],C=A.length;var U=function(){var f=A[z];if(f.type===F.type&&(!f.namespace||f.namespace===F.namespace||f.namespace===Tw4)&&D.eventMatches(D.context,f,F)){var l=[F];if(B!=null)HM4(l,B);if(D.beforeEmit(D.context,f,F),f.conf&&f.conf.one)D.listeners=D.listeners.filter(function(Z){return Z!==f});var b=D.callbackContext(D.context,f,F),M=f.callback.apply(b,l);if(D.afterEmit(D.context,f,F),M===!1)F.stopPropagation(),F.preventDefault()}};for(var z=0;z<C;z++)U();if(D.bubble(D.context)&&!F.isPropagationStopped())D.parent(D.context).emit(F,B)},u),this.emitting--,this};Pw4={qualifierCompare:function(B,E){if(B==null||E==null)return B==null&&E==null;else return B.sameText(E)},eventMatches:function(B,E,A){var C=E.qualifier;if(C!=null)return B!==A.target&&vW(A.target)&&C.matches(A.target);return!0},addEventFields:function(B,E){E.cy=B.cy(),E.target=B},callbackContext:function(B,E,A){return E.qualifier!=null?A.target:B},beforeEmit:function(B,E){if(E.conf&&E.conf.once)E.conf.onceCollection.removeListener(E.event,E.qualifier,E.callback)},bubble:function(){return!0},parent:function(B){return B.isChild()?B.parent():B.cy()}},vy0={createEmitter:function(){for(var B=0;B<this.length;B++){var E=this[B],A=E._private;if(!A.emitter)A.emitter=new Ih(Pw4,E)}return this},emitter:function(){return this._private.emitter},on:function(B,E,A){var C=_V(E);for(var D=0;D<this.length;D++){var F=this[D];F.emitter().on(B,C,A)}return this},removeListener:function(B,E,A){var C=_V(E);for(var D=0;D<this.length;D++){var F=this[D];F.emitter().removeListener(B,C,A)}return this},removeAllListeners:function(){for(var B=0;B<this.length;B++){var E=this[B];E.emitter().removeAllListeners()}return this},one:function(B,E,A){var C=_V(E);for(var D=0;D<this.length;D++){var F=this[D];F.emitter().one(B,C,A)}return this},once:function(B,E,A){var C=_V(E);for(var D=0;D<this.length;D++){var F=this[D];F.emitter().on(B,C,A,{once:!0,onceCollection:this})}},emit:function(B,E){for(var A=0;A<this.length;A++){var C=this[A];C.emitter().emit(B,E)}return this},emitAndNotify:function(B,E){if(this.length===0)return;return this.cy().notify(B,this),this.emit(B,E),this}};E6.eventAliasesOn(vy0);Sy0={nodes:function(B){return this.filter(function(E){return E.isNode()}).filter(B)},edges:function(B){return this.filter(function(E){return E.isEdge()}).filter(B)},byGroup:function(){var B=this.spawn(),E=this.spawn();for(var A=0;A<this.length;A++){var C=this[A];if(C.isNode())B.push(C);else E.push(C)}return{nodes:B,edges:E}},filter:function(B,E){if(B===void 0)return this;else if(p4(B)||lE(B))return new al(B).filter(this);else if(H9(B)){var A=this.spawn(),C=this;for(var D=0;D<C.length;D++){var F=C[D],U=E?B.apply(E,[F,D,C]):B(F,D,C);if(U)A.push(F)}return A}return this.spawn()},not:function(B){if(!B)return this;else{if(p4(B))B=this.filter(B);var E=this.spawn();for(var A=0;A<this.length;A++){var C=this[A],D=B.has(C);if(!D)E.push(C)}return E}},absoluteComplement:function(){var B=this.cy();return B.mutableElements().not(this)},intersect:function(B){if(p4(B)){var E=B;return this.filter(E)}var A=this.spawn(),C=this,D=B,F=this.length<B.length,U=F?C:D,z=F?D:C;for(var k=0;k<U.length;k++){var f=U[k];if(z.has(f))A.push(f)}return A},xor:function(B){var E=this._private.cy;if(p4(B))B=E.$(B);var A=this.spawn(),C=this,D=B,F=function(z,k){for(var f=0;f<z.length;f++){var l=z[f],b=l._private.data.id,M=k.hasElementWithId(b);if(!M)A.push(l)}};return F(C,D),F(D,C),A},diff:function(B){var E=this._private.cy;if(p4(B))B=E.$(B);var A=this.spawn(),C=this.spawn(),D=this.spawn(),F=this,U=B,z=function(f,l,b){for(var M=0;M<f.length;M++){var Z=f[M],J=Z._private.data.id,w=l.hasElementWithId(J);if(w)D.merge(Z);else b.push(Z)}};return z(F,U,A),z(U,F,C),{left:A,right:C,both:D}},add:function(B){var E=this._private.cy;if(!B)return this;if(p4(B)){var A=B;B=E.mutableElements().filter(A)}var C=this.spawnSelf();for(var D=0;D<B.length;D++){var F=B[D],U=!this.has(F);if(U)C.push(F)}return C},merge:function(B){var E=this._private,A=E.cy;if(!B)return this;if(B&&p4(B)){var C=B;B=A.mutableElements().filter(C)}var D=E.map;for(var F=0;F<B.length;F++){var U=B[F],z=U._private.data.id,k=!D.has(z);if(k){var f=this.length++;this[f]=U,D.set(z,{ele:U,index:f})}}return this},unmergeAt:function(B){var E=this[B],A=E.id(),C=this._private,D=C.map;this[B]=void 0,D.delete(A);var F=B===this.length-1;if(this.length>1&&!F){var U=this.length-1,z=this[U],k=z._private.data.id;this[U]=void 0,this[B]=z,D.set(k,{ele:z,index:B})}return this.length--,this},unmergeOne:function(B){B=B[0];var E=this._private,A=B._private.data.id,C=E.map,D=C.get(A);if(!D)return this;var F=D.index;return this.unmergeAt(F),this},unmerge:function(B){var E=this._private.cy;if(!B)return this;if(B&&p4(B)){var A=B;B=E.mutableElements().filter(A)}for(var C=0;C<B.length;C++)this.unmergeOne(B[C]);return this},unmergeBy:function(B){for(var E=this.length-1;E>=0;E--){var A=this[E];if(B(A))this.unmergeAt(E)}return this},map:function(B,E){var A=[],C=this;for(var D=0;D<C.length;D++){var F=C[D],U=E?B.apply(E,[F,D,C]):B(F,D,C);A.push(U)}return A},reduce:function(B,E){var A=E,C=this;for(var D=0;D<C.length;D++)A=B(A,C[D],D,C);return A},max:function(B,E){var A=-1/0,C,D=this;for(var F=0;F<D.length;F++){var U=D[F],z=E?B.apply(E,[U,F,D]):B(U,F,D);if(z>A)A=z,C=U}return{value:A,ele:C}},min:function(B,E){var A=1/0,C,D=this;for(var F=0;F<D.length;F++){var U=D[F],z=E?B.apply(E,[U,F,D]):B(U,F,D);if(z<A)A=z,C=U}return{value:A,ele:C}}},h1=Sy0;h1.u=h1["|"]=h1["+"]=h1.union=h1.or=h1.add;h1["\\"]=h1["!"]=h1["-"]=h1.difference=h1.relativeComplement=h1.subtract=h1.not;h1.n=h1["&"]=h1["."]=h1.and=h1.intersection=h1.intersect;h1["^"]=h1["(+)"]=h1["(-)"]=h1.symmetricDifference=h1.symdiff=h1.xor;h1.fnFilter=h1.filterFn=h1.stdFilter=h1.filter;h1.complement=h1.abscomp=h1.absoluteComplement;jw4={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 B=this[0];if(B)return B._private.group}},Jh={forEach:function(B,E){if(H9(B)){var A=this.length;for(var C=0;C<A;C++){var D=this[C],F=E?B.apply(E,[D,C,this]):B(D,C,this);if(F===!1)break}}return this},toArray:function(){var B=[];for(var E=0;E<this.length;E++)B.push(this[E]);return B},slice:function(B,E){var A=[],C=this.length;if(E==null)E=C;if(B==null)B=0;if(B<0)B=C+B;if(E<0)E=C+E;for(var D=B;D>=0&&D<E&&D<C;D++)A.push(this[D]);return this.spawn(A)},size:function(){return this.length},eq:function(B){return this[B]||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(B){if(!H9(B))return this;var E=this.toArray().sort(B);return this.spawn(E)},sortByZIndex:function(){return this.sort(Wy0)},zDepth:function(){var B=this[0];if(!B)return;var E=B._private,A=E.group;if(A==="nodes"){var C=E.data.parent?B.parents().size():0;if(!B.isParent())return D50-1;return C}else{var{source:D,target:F}=E,U=D.zDepth(),z=F.zDepth();return Math.max(U,z,0)}}};Jh.each=Jh.forEach;Nw4();iw4=C7({nodeDimensionsIncludeLabels:!1}),Bh={layoutDimensions:function(B){B=iw4(B);var E;if(!this.takesUpSpace())E={w:0,h:0};else if(B.nodeDimensionsIncludeLabels){var A=this.boundingBox();E={w:A.w,h:A.h}}else E={w:this.outerWidth(),h:this.outerHeight()};if(E.w===0||E.h===0)E.w=E.h=1;return E},layoutPositions:function(B,E,A){var C=this.nodes().filter(function(H){return!H.isParent()}),D=this.cy(),F=E.eles,U=function(q){return q.id()},z=SH(A,U);B.emit({type:"layoutstart",layout:B}),B.animations=[];var k=function(q,x,v){var W={x:x.x1+x.w/2,y:x.y1+x.h/2},S={x:(v.x-W.x)*q,y:(v.y-W.y)*q};return{x:W.x+S.x,y:W.y+S.y}},f=E.spacingFactor&&E.spacingFactor!==1,l=function(){if(!f)return null;var q=QB();for(var x=0;x<C.length;x++){var v=C[x],W=z(v,x);g$0(q,W.x,W.y)}return q},b=l(),M=SH(function(H,q){var x=z(H,q);if(f){var v=Math.abs(E.spacingFactor);x=k(v,b,x)}if(E.transform!=null)x=E.transform(H,x);return x},U);if(E.animate){for(var Z=0;Z<C.length;Z++){var J=C[Z],w=M(J,Z),K=E.animateFilter==null||E.animateFilter(J,Z);if(K){var Q=J.animation({position:w,duration:E.animationDuration,easing:E.animationEasing});B.animations.push(Q)}else J.position(w)}if(E.fit){var G=D.animation({fit:{boundingBox:F.boundingBoxAt(M),padding:E.padding},duration:E.animationDuration,easing:E.animationEasing});B.animations.push(G)}else if(E.zoom!==void 0&&E.pan!==void 0){var L=D.animation({zoom:E.zoom,pan:E.pan,duration:E.animationDuration,easing:E.animationEasing});B.animations.push(L)}B.animations.forEach(function(H){return H.play()}),B.one("layoutready",E.ready),B.emit({type:"layoutready",layout:B}),IH.all(B.animations.map(function(H){return H.promise()})).then(function(){B.one("layoutstop",E.stop),B.emit({type:"layoutstop",layout:B})})}else{if(C.positions(M),E.fit)D.fit(E.eles,E.padding);if(E.zoom!=null)D.zoom(E.zoom);if(E.pan)D.pan(E.pan);B.one("layoutready",E.ready),B.emit({type:"layoutready",layout:B}),B.one("layoutstop",E.stop),B.emit({type:"layoutstop",layout:B})}return this},layout:function(B){var E=this.cy();return E.makeLayout(k3({},B,{eles:this}))}};Bh.createLayout=Bh.makeLayout=Bh.layout;E7={recalculateRenderedStyle:function(B){var E=this.cy(),A=E.renderer(),C=E.styleEnabled();if(A&&C)A.recalculateRenderedStyle(this,B);return this},dirtyStyleCache:function(){var B=this.cy(),E=function(D){return D._private.styleCache=null};if(B.hasCompoundNodes()){var A=this.spawnSelf().merge(this.descendants()).merge(this.parents());A.merge(A.connectedEdges()),A.forEach(E)}else this.forEach(function(C){E(C),C.connectedEdges().forEach(E)});return this},updateStyle:function(B){var E=this._private.cy;if(!E.styleEnabled())return this;if(E.batching()){var A=E._private.batchStyleEles;return A.merge(this),this}var C=E.hasCompoundNodes(),D=this;if(B=B||B===void 0?!0:!1,C)D=this.spawnSelf().merge(this.descendants()).merge(this.parents());var F=D;if(B)F.emitAndNotify("style");else F.emit("style");return D.forEach(function(U){return U._private.styleDirty=!0}),this},cleanStyle:function(){var B=this.cy();if(!B.styleEnabled())return;for(var E=0;E<this.length;E++){var A=this[E];if(A._private.styleDirty)A._private.styleDirty=!1,B.style().apply(A)}},parsedStyle:function(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,A=this[0],C=A.cy();if(!C.styleEnabled())return;if(A){if(A._private.styleDirty)A._private.styleDirty=!1,C.style().apply(A);var D=A._private.style[B];if(D!=null)return D;else if(E)return C.style().getDefaultProperty(B);else return null}},numericStyle:function(B){var E=this[0];if(!E.cy().styleEnabled())return;if(E){var A=E.pstyle(B);return A.pfValue!==void 0?A.pfValue:A.value}},numericStyleUnits:function(B){var E=this[0];if(!E.cy().styleEnabled())return;if(E)return E.pstyle(B).units},renderedStyle:function(B){var E=this.cy();if(!E.styleEnabled())return this;var A=this[0];if(A)return E.style().getRenderedStyle(A,B)},style:function(B,E){var A=this.cy();if(!A.styleEnabled())return this;var C=!1,D=A.style();if(S1(B)){var F=B;D.applyBypass(this,F,C),this.emitAndNotify("style")}else if(p4(B))if(E===void 0){var U=this[0];if(U)return D.getStylePropertyValue(U,B);else return}else D.applyBypass(this,B,E,C),this.emitAndNotify("style");else if(B===void 0){var z=this[0];if(z)return D.getRawStyle(z);else return}return this},removeStyle:function(B){var E=this.cy();if(!E.styleEnabled())return this;var A=!1,C=E.style(),D=this;if(B===void 0)for(var F=0;F<D.length;F++){var U=D[F];C.removeAllBypasses(U,A)}else{B=B.split(/\s+/);for(var z=0;z<D.length;z++){var k=D[z];C.removeBypasses(k,B,A)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var B=this.cy();if(!B.styleEnabled())return 1;var E=B.hasCompoundNodes(),A=this[0];if(A){var C=A._private,D=A.pstyle("opacity").value;if(!E)return D;var F=!C.data.parent?null:A.parents();if(F)for(var U=0;U<F.length;U++){var z=F[U],k=z.pstyle("opacity").value;D=k*D}return D}},transparent:function(){var B=this.cy();if(!B.styleEnabled())return!1;var E=this[0],A=E.cy().hasCompoundNodes();if(E)if(!A)return E.pstyle("opacity").value===0;else return E.effectiveOpacity()===0},backgrounding:function(){var B=this.cy();if(!B.styleEnabled())return!1;var E=this[0];return E._private.backgrounding?!0:!1}};PH=Ph("eleTakesUpSpace",function(u){return u.pstyle("display").value==="element"&&u.width()!==0&&(u.isNode()?u.height()!==0:!0)});E7.takesUpSpace=jh("takesUpSpace",K50({ok:PH}));aw4=Ph("eleInteractive",function(u){return u.pstyle("events").value==="yes"&&u.pstyle("visibility").value==="visible"&&PH(u)}),Vw4=Ph("parentInteractive",function(u){return u.pstyle("visibility").value==="visible"&&PH(u)});E7.interactive=jh("interactive",K50({ok:aw4,parentOk:Vw4,edgeOkViaNode:PH}));E7.noninteractive=function(){var u=this[0];if(u)return!u.interactive()};hw4=Ph("eleVisible",function(u){return u.pstyle("visibility").value==="visible"&&u.pstyle("opacity").pfValue!==0&&PH(u)}),mw4=PH;E7.visible=jh("visible",K50({ok:hw4,edgeOkViaNode:mw4}));E7.hidden=function(){var u=this[0];if(u)return!u.visible()};E7.isBundledBezier=jh("isBundledBezier",function(){if(!this.cy().styleEnabled())return!1;return!this.removed()&&this.pstyle("curve-style").value==="bezier"&&this.takesUpSpace()});E7.bypass=E7.css=E7.style;E7.renderedCss=E7.renderedStyle;E7.removeBypass=E7.removeCss=E7.removeStyle;E7.pstyle=E7.parsedStyle;Pl={};jH({field:"locked",overrideField:function(B){return B.cy().autolock()?!0:void 0},on:"lock",off:"unlock"});jH({field:"grabbable",overrideField:function(B){return B.cy().autoungrabify()||B.pannable()?!1:void 0},on:"grabify",off:"ungrabify"});jH({field:"selected",ableField:"selectable",overrideAble:function(B){return B.cy().autounselectify()?!1:void 0},on:"select",off:"unselect"});jH({field:"selectable",overrideField:function(B){return B.cy().autounselectify()?!1:void 0},on:"selectify",off:"unselectify"});Pl.deselect=Pl.unselect;Pl.grabbed=function(){var u=this[0];if(u)return u._private.grabbed};jH({field:"active",on:"activate",off:"unactivate"});jH({field:"pannable",on:"panify",off:"unpanify"});Pl.inactive=function(){var u=this[0];if(u)return!u._private.active};I7={};I7.clearTraversalCache=function(){for(var u=0;u<this.length;u++)this[u]._private.traversalCache=null};k3(I7,{roots:mr0({noIncomingEdges:!0}),leaves:mr0({noOutgoingEdges:!0}),outgoers:UA(rr0({outgoing:!0}),"outgoers"),successors:$r0({outgoing:!0}),incomers:UA(rr0({incoming:!0}),"incomers"),predecessors:$r0({})});k3(I7,{neighborhood:UA(function(u){var B=[],E=this.nodes();for(var A=0;A<E.length;A++){var C=E[A],D=C.connectedEdges();for(var F=0;F<D.length;F++){var U=D[F],z=U.source(),k=U.target(),f=C===z?k:z;if(f.length>0)B.push(f[0]);B.push(U[0])}}return this.spawn(B,!0).filter(u)},"neighborhood"),closedNeighborhood:function(B){return this.neighborhood().add(this).filter(B)},openNeighborhood:function(B){return this.neighborhood(B)}});I7.neighbourhood=I7.neighborhood;I7.closedNeighbourhood=I7.closedNeighborhood;I7.openNeighbourhood=I7.openNeighborhood;k3(I7,{source:UA(function(B){var E=this[0],A;if(E)A=E._private.source||E.cy().collection();return A&&B?A.filter(B):A},"source"),target:UA(function(B){var E=this[0],A;if(E)A=E._private.target||E.cy().collection();return A&&B?A.filter(B):A},"target"),sources:yr0({attr:"source"}),targets:yr0({attr:"target"})});k3(I7,{edgesWith:UA(cr0(),"edgesWith"),edgesTo:UA(cr0({thisIsSrc:!0}),"edgesTo")});k3(I7,{connectedEdges:UA(function(u){var B=[],E=this;for(var A=0;A<E.length;A++){var C=E[A];if(!C.isNode())continue;var D=C._private.edges;for(var F=0;F<D.length;F++){var U=D[F];B.push(U)}}return this.spawn(B,!0).filter(u)},"connectedEdges"),connectedNodes:UA(function(u){var B=[],E=this;for(var A=0;A<E.length;A++){var C=E[A];if(!C.isEdge())continue;B.push(C.source()[0]),B.push(C.target()[0])}return this.spawn(B,!0).filter(u)},"connectedNodes"),parallelEdges:UA(gr0(),"parallelEdges"),codirectedEdges:UA(gr0({codirected:!0}),"codirectedEdges")});k3(I7,{components:function(B){var E=this,A=E.cy(),C=A.collection(),D=B==null?E.nodes():B.nodes(),F=[];if(B!=null&&D.empty())D=B.sources();var U=function(f,l){C.merge(f),D.unmerge(f),l.merge(f)};if(D.empty())return E.spawn();var z=function(){var f=A.collection();F.push(f);var l=D[0];U(l,f),E.bfs({directed:!1,roots:l,visit:function(M){return U(M,f)}}),f.forEach(function(b){b.connectedEdges().forEach(function(M){if(E.has(M)&&f.has(M.source())&&f.has(M.target()))f.merge(M)})})};do z();while(D.length>0);return F},component:function(){var B=this[0];return B.cy().mutableElements().components(B)[0]}});I7.componentsOf=I7.components;R6=xh.prototype=A7.prototype=Object.create(Array.prototype);R6.instanceString=function(){return"collection"};R6.spawn=function(u,B){return new A7(this.cy(),u,B)};R6.spawnSelf=function(){return this.spawn(this)};R6.cy=function(){return this._private.cy};R6.renderer=function(){return this._private.cy.renderer()};R6.element=function(){return this[0]};R6.collection=function(){if(W$0(this))return this;else return new A7(this._private.cy,[this])};R6.unique=function(){return new A7(this._private.cy,this,!0)};R6.hasElementWithId=function(u){return u=""+u,this._private.map.has(u)};R6.getElementById=function(u){u=""+u;var B=this._private.cy,E=this._private.map.get(u);return E?E.ele:new A7(B)};R6.$id=R6.getElementById;R6.poolIndex=function(){var u=this._private.cy,B=u._private.elements,E=this[0]._private.data.id;return B._private.map.get(E).index};R6.indexOf=function(u){var B=u[0]._private.data.id;return this._private.map.get(B).index};R6.indexOfId=function(u){return u=""+u,this._private.map.get(u).index};R6.json=function(u){var B=this.element(),E=this.cy();if(B==null&&u)return this;if(B==null)return;var A=B._private;if(S1(u)){if(E.startBatch(),u.data){B.data(u.data);var C=A.data;if(B.isEdge()){var D=!1,F={},U=u.data.source,z=u.data.target;if(U!=null&&U!=C.source)F.source=""+U,D=!0;if(z!=null&&z!=C.target)F.target=""+z,D=!0;if(D)B=B.move(F)}else{var k="parent"in u.data,f=u.data.parent;if(k&&(f!=null||C.parent!=null)&&f!=C.parent){if(f===void 0)f=null;if(f!=null)f=""+f;B=B.move({parent:f})}}}if(u.position)B.position(u.position);var l=function(J,w,K){var Q=u[J];if(Q!=null&&Q!==A[J])if(Q)B[w]();else B[K]()};if(l("removed","remove","restore"),l("selected","select","unselect"),l("selectable","selectify","unselectify"),l("locked","lock","unlock"),l("grabbable","grabify","ungrabify"),l("pannable","panify","unpanify"),u.classes!=null)B.classes(u.classes);return E.endBatch(),this}else if(u===void 0){var b={data:VF(A.data),position:VF(A.position),group:A.group,removed:A.removed,selected:A.selected,selectable:A.selectable,locked:A.locked,grabbable:A.grabbable,pannable:A.pannable,classes:null};b.classes="";var M=0;return A.classes.forEach(function(Z){return b.classes+=M++===0?Z:" "+Z}),b}};R6.jsons=function(){var u=[];for(var B=0;B<this.length;B++){var E=this[B],A=E.json();u.push(A)}return u};R6.clone=function(){var u=this.cy(),B=[];for(var E=0;E<this.length;E++){var A=this[E],C=A.json(),D=new xh(u,C,!1);B.push(D)}return new A7(u,B)};R6.copy=R6.clone;R6.restore=function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,E=this,A=E.cy(),C=A._private,D=[],F=[],U;for(var z=0,k=E.length;z<k;z++){var f=E[z];if(B&&!f.removed())continue;if(f.isNode())D.push(f);else F.push(f)}U=D.concat(F);var l,b=function(){U.splice(l,1),l--};for(l=0;l<U.length;l++){var M=U[l],Z=M._private,J=Z.data;if(M.clearTraversalCache(),!B&&!Z.removed);else if(J.id===void 0)J.id=r$0();else if(J4(J.id))J.id=""+J.id;else if(jl(J.id)||!p4(J.id)){F9("Can not create element with invalid string ID `"+J.id+"`"),b();continue}else if(A.hasElementWithId(J.id)){F9("Can not create second element with ID `"+J.id+"`"),b();continue}var w=J.id;if(M.isNode()){var K=Z.position;if(K.x==null)K.x=0;if(K.y==null)K.y=0}if(M.isEdge()){var Q=M,G=["source","target"],L=G.length,H=!1;for(var q=0;q<L;q++){var x=G[q],v=J[x];if(J4(v))v=J[x]=""+J[x];if(v==null||v==="")F9("Can not create edge `"+w+"` with unspecified "+x),H=!0;else if(!A.hasElementWithId(v))F9("Can not create edge `"+w+"` with nonexistent "+x+" `"+v+"`"),H=!0}if(H){b();continue}var W=A.getElementById(J.source),S=A.getElementById(J.target);if(W.same(S))W._private.edges.push(Q);else W._private.edges.push(Q),S._private.edges.push(Q);Q._private.source=W,Q._private.target=S}if(Z.map=new yz,Z.map.set(w,{ele:M,index:0}),Z.removed=!1,B)A.addToPool(M)}for(var T=0;T<D.length;T++){var R=D[T],Y=R._private.data;if(J4(Y.parent))Y.parent=""+Y.parent;var a=Y.parent,I=a!=null;if(I||R._private.parent){var O=R._private.parent?A.collection().merge(R._private.parent):A.getElementById(a);if(O.empty())Y.parent=void 0;else if(O[0].removed())A6("Node added with missing parent, reference to parent removed"),Y.parent=void 0,R._private.parent=null;else{var i=!1,N=O;while(!N.empty()){if(R.same(N)){i=!0,Y.parent=void 0;break}N=N.parent()}if(!i)O[0]._private.children.push(R),R._private.parent=O[0],C.hasCompoundNodes=!0}}}if(U.length>0){var V=U.length===E.length?E:new A7(A,U);for(var h=0;h<V.length;h++){var r=V[h];if(r.isNode())continue;r.parallelEdges().clearTraversalCache(),r.source().clearTraversalCache(),r.target().clearTraversalCache()}var m;if(C.hasCompoundNodes)m=A.collection().merge(V).merge(V.connectedNodes()).merge(V.parent());else m=V;if(m.dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(u),u)V.emitAndNotify("add");else if(B)V.emit("add")}return E};R6.removed=function(){var u=this[0];return u&&u._private.removed};R6.inside=function(){var u=this[0];return u&&!u._private.removed};R6.remove=function(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,E=this,A=[],C={},D=E._private.cy;function F(a){var I=a._private.edges;for(var O=0;O<I.length;O++)z(I[O])}function U(a){var I=a._private.children;for(var O=0;O<I.length;O++)z(I[O])}function z(a){var I=C[a.id()];if(B&&a.removed()||I)return;else C[a.id()]=!0;if(a.isNode())A.push(a),F(a),U(a);else A.unshift(a)}for(var k=0,f=E.length;k<f;k++){var l=E[k];z(l)}function b(a,I){var O=a._private.edges;Nl(O,I),a.clearTraversalCache()}function M(a){a.clearTraversalCache()}var Z=[];Z.ids={};function J(a,I){I=I[0],a=a[0];var O=a._private.children,i=a.id();if(Nl(O,I),I._private.parent=null,!Z.ids[i])Z.ids[i]=!0,Z.push(a)}if(E.dirtyCompoundBoundsCache(),B)D.removeFromPool(A);for(var w=0;w<A.length;w++){var K=A[w];if(K.isEdge()){var Q=K.source()[0],G=K.target()[0];b(Q,K),b(G,K);var L=K.parallelEdges();for(var H=0;H<L.length;H++){var q=L[H];if(M(q),q.isBundledBezier())q.dirtyBoundingBoxCache()}}else{var x=K.parent();if(x.length!==0)J(x,K)}if(B)K._private.removed=!0}var v=D._private.elements;D._private.hasCompoundNodes=!1;for(var W=0;W<v.length;W++){var S=v[W];if(S.isParent()){D._private.hasCompoundNodes=!0;break}}var T=new A7(this.cy(),A);if(T.size()>0){if(u)T.emitAndNotify("remove");else if(B)T.emit("remove")}for(var R=0;R<Z.length;R++){var Y=Z[R];if(!B||!Y.removed())Y.updateStyle()}return T};R6.move=function(u){var B=this._private.cy,E=this,A=!1,C=!1,D=function(Z){return Z==null?Z:""+Z};if(u.source!==void 0||u.target!==void 0){var F=D(u.source),U=D(u.target),z=F!=null&&B.hasElementWithId(F),k=U!=null&&B.hasElementWithId(U);if(z||k)B.batch(function(){E.remove(A,C),E.emitAndNotify("moveout");for(var M=0;M<E.length;M++){var Z=E[M],J=Z._private.data;if(Z.isEdge()){if(z)J.source=F;if(k)J.target=U}}E.restore(A,C)}),E.emitAndNotify("move")}else if(u.parent!==void 0){var f=D(u.parent),l=f===null||B.hasElementWithId(f);if(l){var b=f===null?void 0:f;B.batch(function(){var M=E.remove(A,C);M.emitAndNotify("moveout");for(var Z=0;Z<E.length;Z++){var J=E[Z],w=J._private.data;if(J.isNode())w.parent=b}M.restore(A,C)}),E.emitAndNotify("move")}}return this};[uy0,sJ4,uh,Il,YH,bw4,Oh,Rw4,vy0,Sy0,jw4,Jh,Bh,E7,Pl,I7].forEach(function(u){k3(R6,u)});rw4={add:function(B){var E,A=this;if(lE(B)){var C=B;if(C._private.cy===A)E=C.restore();else{var D=[];for(var F=0;F<C.length;F++){var U=C[F];D.push(U.json())}E=new A7(A,D)}}else if(q6(B)){var z=B;E=new A7(A,z)}else if(S1(B)&&(q6(B.nodes)||q6(B.edges))){var k=B,f=[],l=["nodes","edges"];for(var b=0,M=l.length;b<M;b++){var Z=l[b],J=k[Z];if(q6(J))for(var w=0,K=J.length;w<K;w++){var Q=k3({group:Z},J[w]);f.push(Q)}}E=new A7(A,f)}else{var G=B;E=new xh(A,G).collection()}return E},remove:function(B){if(lE(B));else if(p4(B)){var E=B;B=this.$(E)}return B.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 */yw4=function(){function u(A){return-A.tension*A.x-A.friction*A.v}function B(A,C,D){var F={x:A.x+D.dx*C,v:A.v+D.dv*C,tension:A.tension,friction:A.friction};return{dx:F.v,dv:u(F)}}function E(A,C){var D={dx:A.v,dv:u(A)},F=B(A,C*0.5,D),U=B(A,C*0.5,F),z=B(A,C,U),k=0.16666666666666666*(D.dx+2*(F.dx+U.dx)+z.dx),f=0.16666666666666666*(D.dv+2*(F.dv+U.dv)+z.dv);return A.x=A.x+k*C,A.v=A.v+f*C,A}return function A(C,D,F){var U={x:-1,v:0,tension:null,friction:null},z=[0],k=0,f=0.0001,l=0.016,b,M,Z;if(C=parseFloat(C)||500,D=parseFloat(D)||20,F=F||null,U.tension=C,U.friction=D,b=F!==null,b)k=A(C,D),M=k/F*l;else M=l;for(;;)if(Z=E(Z||U,M),z.push(1+Z.x),k+=16,!(Math.abs(Z.x)>f&&Math.abs(Z.v)>f))break;return!b?k:function(J){return z[J*(z.length-1)|0]}}}(),Eh={linear:function(B,E,A){return B+(E-B)*A},ease:Y6(0.25,0.1,0.25,1),"ease-in":Y6(0.42,0,1,1),"ease-out":Y6(0,0,0.58,1),"ease-in-out":Y6(0.42,0,0.58,1),"ease-in-sine":Y6(0.47,0,0.745,0.715),"ease-out-sine":Y6(0.39,0.575,0.565,1),"ease-in-out-sine":Y6(0.445,0.05,0.55,0.95),"ease-in-quad":Y6(0.55,0.085,0.68,0.53),"ease-out-quad":Y6(0.25,0.46,0.45,0.94),"ease-in-out-quad":Y6(0.455,0.03,0.515,0.955),"ease-in-cubic":Y6(0.55,0.055,0.675,0.19),"ease-out-cubic":Y6(0.215,0.61,0.355,1),"ease-in-out-cubic":Y6(0.645,0.045,0.355,1),"ease-in-quart":Y6(0.895,0.03,0.685,0.22),"ease-out-quart":Y6(0.165,0.84,0.44,1),"ease-in-out-quart":Y6(0.77,0,0.175,1),"ease-in-quint":Y6(0.755,0.05,0.855,0.06),"ease-out-quint":Y6(0.23,1,0.32,1),"ease-in-out-quint":Y6(0.86,0,0.07,1),"ease-in-expo":Y6(0.95,0.05,0.795,0.035),"ease-out-expo":Y6(0.19,1,0.22,1),"ease-in-out-expo":Y6(1,0,0,1),"ease-in-circ":Y6(0.6,0.04,0.98,0.335),"ease-out-circ":Y6(0.075,0.82,0.165,1),"ease-in-out-circ":Y6(0.785,0.135,0.15,0.86),spring:function(B,E,A){if(A===0)return Eh.linear;var C=yw4(B,E,A);return function(D,F,U){return D+(F-D)*C(U)}},"cubic-bezier":Y6};_w4={animate:E6.animate(),animation:E6.animation(),animated:E6.animated(),clearQueue:E6.clearQueue(),delay:E6.delay(),delayAnimation:E6.delayAnimation(),stop:E6.stop(),addToAnimationPool:function(B){var E=this;if(!E.styleEnabled())return;E._private.aniEles.merge(B)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var B=this;if(B._private.animationsRunning=!0,!B.styleEnabled())return;function E(){if(!B._private.animationsRunning)return;fh(function(D){pr0(D,B),E()})}var A=B.renderer();if(A&&A.beforeRender)A.beforeRender(function(D,F){pr0(F,B)},A.beforeRenderPriorities.animations);else E()}},nw4={qualifierCompare:function(B,E){if(B==null||E==null)return B==null&&E==null;else return B.sameText(E)},eventMatches:function(B,E,A){var C=E.qualifier;if(C!=null)return B!==A.target&&vW(A.target)&&C.matches(A.target);return!0},addEventFields:function(B,E){E.cy=B,E.target=B},callbackContext:function(B,E,A){return E.qualifier!=null?A.target:B}},Ry0={createEmitter:function(){var B=this._private;if(!B.emitter)B.emitter=new Ih(nw4,this);return this},emitter:function(){return this._private.emitter},on:function(B,E,A){return this.emitter().on(B,nV(E),A),this},removeListener:function(B,E,A){return this.emitter().removeListener(B,nV(E),A),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(B,E,A){return this.emitter().one(B,nV(E),A),this},once:function(B,E,A){return this.emitter().one(B,nV(E),A),this},emit:function(B,E){return this.emitter().emit(B,E),this},emitAndNotify:function(B,E){return this.emit(B),this.notify(B,E),this}};E6.eventAliasesOn(Ry0);c20={png:function(B){var E=this._private.renderer;return B=B||{},E.png(B)},jpg:function(B){var E=this._private.renderer;return B=B||{},B.bg=B.bg||"#fff",E.jpg(B)}};c20.jpeg=c20.jpg;Ah={layout:function(B){var E=this;if(B==null){F9("Layout options must be specified to make a layout");return}if(B.name==null){F9("A `name` must be specified to make a layout");return}var A=B.name,C=E.extension("layout",A);if(C==null){F9("No such layout `"+A+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var D;if(p4(B.eles))D=E.$(B.eles);else D=B.eles!=null?B.eles:E.$();var F=new C(k3({},B,{cy:E,eles:D}));return F}};Ah.createLayout=Ah.makeLayout=Ah.layout;pw4={notify:function(B,E){var A=this._private;if(this.batching()){A.batchNotifications=A.batchNotifications||{};var C=A.batchNotifications[B]=A.batchNotifications[B]||this.collection();if(E!=null)C.merge(E);return}if(!A.notificationsEnabled)return;var D=this.renderer();if(this.destroyed()||!D)return;D.notify(B,E)},notifications:function(B){var E=this._private;if(B===void 0)return E.notificationsEnabled;else E.notificationsEnabled=B?!0:!1;return this},noNotifications:function(B){this.notifications(!1),B(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var B=this._private;if(B.batchCount==null)B.batchCount=0;if(B.batchCount===0)B.batchStyleEles=this.collection(),B.batchNotifications={};return B.batchCount++,this},endBatch:function(){var B=this._private;if(B.batchCount===0)return this;if(B.batchCount--,B.batchCount===0){B.batchStyleEles.updateStyle();var E=this.renderer();Object.keys(B.batchNotifications).forEach(function(A){var C=B.batchNotifications[A];if(C.empty())E.notify(A);else E.notify(A,C)})}return this},batch:function(B){return this.startBatch(),B(),this.endBatch(),this},batchData:function(B){var E=this;return this.batch(function(){var A=Object.keys(B);for(var C=0;C<A.length;C++){var D=A[C],F=B[D],U=E.getElementById(D);U.data(F)}})}},dw4=C7({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]}),g20={renderTo:function(B,E,A,C){var D=this._private.renderer;return D.renderTo(B,E,A,C),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(B){var E=this,A=E.extension("renderer",B.name);if(A==null){F9("Can not initialise: No such renderer `".concat(B.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));return}if(B.wheelSensitivity!==void 0)A6("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 C=dw4(B);C.cy=E,E._private.renderer=new A(C),this.notify("init")},destroyRenderer:function(){var B=this;B.notify("destroy");var E=B.container();if(E){E._cyreg=null;while(E.childNodes.length>0)E.removeChild(E.childNodes[0])}B._private.renderer=null,B.mutableElements().forEach(function(A){var C=A._private;C.rscratch={},C.rstyle={},C.animation.current=[],C.animation.queue=[]})},onRender:function(B){return this.on("render",B)},offRender:function(B){return this.off("render",B)}};g20.invalidateDimensions=g20.resize;Ch={collection:function(B,E){if(p4(B))return this.$(B);else if(lE(B))return B.collection();else if(q6(B)){if(!E)E={};return new A7(this,B,E.unique,E.removed)}return new A7(this)},nodes:function(B){var E=this.$(function(A){return A.isNode()});if(B)return E.filter(B);return E},edges:function(B){var E=this.$(function(A){return A.isEdge()});if(B)return E.filter(B);return E},$:function(B){var E=this._private.elements;if(B)return E.filter(B);else return E.spawnSelf()},mutableElements:function(){return this._private.elements}};Ch.elements=Ch.filter=Ch.$;T5={};T5.apply=function(u){var B=this,E=B._private,A=E.cy,C=A.collection();for(var D=0;D<u.length;D++){var F=u[D],U=B.getContextMeta(F);if(U.empty)continue;var z=B.getContextStyle(U),k=B.applyContextStyle(U,z,F);if(F._private.appliedInitStyle)B.updateTransitions(F,k.diffProps);else F._private.appliedInitStyle=!0;var f=B.updateStyleHints(F);if(f)C.push(F)}return C};T5.getPropertiesDiff=function(u,B){var E=this,A=E._private.propDiffs=E._private.propDiffs||{},C=u+"-"+B,D=A[C];if(D)return D;var F=[],U={};for(var z=0;z<E.length;z++){var k=E[z],f=u[z]===lW,l=B[z]===lW,b=f!==l,M=k.mappedProperties.length>0;if(b||l&&M){var Z=void 0;if(b&&M)Z=k.properties;else if(b)Z=k.properties;else if(M)Z=k.mappedProperties;for(var J=0;J<Z.length;J++){var w=Z[J],K=w.name,Q=!1;for(var G=z+1;G<E.length;G++){var L=E[G],H=B[G]===lW;if(!H)continue;if(Q=L.properties[w.name]!=null,Q)break}if(!U[K]&&!Q)U[K]=!0,F.push(K)}}}return A[C]=F,F};T5.getContextMeta=function(u){var B=this,E="",A,C=u._private.styleCxtKey||"";for(var D=0;D<B.length;D++){var F=B[D],U=F.selector&&F.selector.matches(u);if(U)E+=lW;else E+=sw4}return A=B.getPropertiesDiff(C,E),u._private.styleCxtKey=E,{key:E,diffPropNames:A,empty:A.length===0}};T5.getContextStyle=function(u){var B=u.key,E=this,A=this._private.contextStyles=this._private.contextStyles||{};if(A[B])return A[B];var C={_private:{key:B}};for(var D=0;D<E.length;D++){var F=E[D],U=B[D]===lW;if(!U)continue;for(var z=0;z<F.properties.length;z++){var k=F.properties[z];C[k.name]=k}}return A[B]=C,C};T5.applyContextStyle=function(u,B,E){var A=this,C=u.diffPropNames,D={},F=A.types;for(var U=0;U<C.length;U++){var z=C[U],k=B[z],f=E.pstyle(z);if(!k)if(!f)continue;else if(f.bypass)k={name:z,deleteBypassed:!0};else k={name:z,delete:!0};if(f===k)continue;if(k.mapped===F.fn&&f!=null&&f.mapping!=null&&f.mapping.value===k.value){var l=f.mapping,b=l.fnValue=k.value(E);if(b===l.prevFnValue)continue}var M=D[z]={prev:f};if(A.applyParsedProperty(E,k),M.next=E.pstyle(z),M.next&&M.next.bypass)M.next=M.next.bypassed}return{diffProps:D}};T5.updateStyleHints=function(u){var B=u._private,E=this,A=E.propertyGroupNames,C=E.propertyGroupKeys,D=function(D0,P0,q0){return E.getPropertiesHash(D0,P0,q0)},F=B.styleKey;if(u.removed())return!1;var U=B.group==="nodes",z=u._private.style;A=Object.keys(z);for(var k=0;k<C.length;k++){var f=C[k];B.styleKeys[f]=[QJ,QH]}var l=function(D0,P0){return B.styleKeys[P0][0]=ZW(D0,B.styleKeys[P0][0])},b=function(D0,P0){return B.styleKeys[P0][1]=JW(D0,B.styleKeys[P0][1])},M=function(D0,P0){l(D0,P0),b(D0,P0)},Z=function(D0,P0){for(var q0=0;q0<D0.length;q0++){var m0=D0.charCodeAt(q0);l(m0,P0),b(m0,P0)}},J=2000000000,w=function(D0){return-128<D0&&D0<128&&Math.floor(D0)!==D0?J-(D0*1024|0):D0};for(var K=0;K<A.length;K++){var Q=A[K],G=z[Q];if(G==null)continue;var L=this.properties[Q],H=L.type,q=L.groupKey,x=void 0;if(L.hashOverride!=null)x=L.hashOverride(u,G);else if(G.pfValue!=null)x=G.pfValue;var v=L.enums==null?G.value:null,W=x!=null,S=v!=null,T=W||S,R=G.units;if(H.number&&T&&!H.multiple){var Y=W?x:v;if(M(w(Y),q),!W&&R!=null)Z(R,q)}else Z(G.strValue,q)}var a=[QJ,QH];for(var I=0;I<C.length;I++){var O=C[I],i=B.styleKeys[O];a[0]=ZW(i[0],a[0]),a[1]=JW(i[1],a[1])}B.styleKey=fM4(a[0],a[1]);var N=B.styleKeys;B.labelDimsKey=vl(N.labelDimensions);var V=D(u,["label"],N.labelDimensions);if(B.labelKey=vl(V),B.labelStyleKey=vl(hV(N.commonLabel,V)),!U){var h=D(u,["source-label"],N.labelDimensions);B.sourceLabelKey=vl(h),B.sourceLabelStyleKey=vl(hV(N.commonLabel,h));var r=D(u,["target-label"],N.labelDimensions);B.targetLabelKey=vl(r),B.targetLabelStyleKey=vl(hV(N.commonLabel,r))}if(U){var m=B.styleKeys,$=m.nodeBody,y=m.nodeBorder,p=m.nodeOutline,e=m.backgroundImage,_=m.compound,b0=m.pie,B0=m.stripe,k0=[$,y,p,e,_,b0,B0].filter(function(f0){return f0!=null}).reduce(hV,[QJ,QH]);B.nodeKey=vl(k0),B.hasPie=b0!=null&&b0[0]!==QJ&&b0[1]!==QH,B.hasStripe=B0!=null&&B0[0]!==QJ&&B0[1]!==QH}return F!==B.styleKey};T5.clearStyleHints=function(u){var B=u._private;B.styleCxtKey="",B.styleKeys={},B.styleKey=null,B.labelKey=null,B.labelStyleKey=null,B.sourceLabelKey=null,B.sourceLabelStyleKey=null,B.targetLabelKey=null,B.targetLabelStyleKey=null,B.nodeKey=null,B.hasPie=null,B.hasStripe=null};T5.applyParsedProperty=function(u,B){var E=this,A=B,C=u._private.style,D,F=E.types,U=E.properties[A.name].type,z=A.bypass,k=C[A.name],f=k&&k.bypass,l=u._private,b="mapping",M=function($){if($==null)return null;else if($.pfValue!=null)return $.pfValue;else return $.value},Z=function(){var $=M(k),y=M(A);E.checkTriggers(u,A.name,$,y)};if(B.name==="curve-style"&&u.isEdge()&&(B.value!=="bezier"&&u.isLoop()||B.value==="haystack"&&(u.source().isParent()||u.target().isParent())))A=B=this.parse(B.name,"bezier",z);if(A.delete)return C[A.name]=void 0,Z(),!0;if(A.deleteBypassed)if(!k)return Z(),!0;else if(k.bypass)return k.bypassed=void 0,Z(),!0;else return!1;if(A.deleteBypass)if(!k)return Z(),!0;else if(k.bypass)return C[A.name]=k.bypassed,Z(),!0;else return!1;var J=function(){A6("Do not assign mappings to elements without corresponding data (i.e. ele `"+u.id()+"` has no mapping for property `"+A.name+"` with data field `"+A.field+"`); try a `["+A.field+"]` selector to limit scope to elements with `"+A.field+"` defined")};switch(A.mapped){case F.mapData:{var w=A.field.split("."),K=l.data;for(var Q=0;Q<w.length&&K;Q++){var G=w[Q];K=K[G]}if(K==null)return J(),!1;var L;if(!J4(K))return A6("Do not use continuous mappers without specifying numeric data (i.e. `"+A.field+": "+K+"` for `"+u.id()+"` is non-numeric)"),!1;else{var H=A.fieldMax-A.fieldMin;if(H===0)L=0;else L=(K-A.fieldMin)/H}if(L<0)L=0;else if(L>1)L=1;if(U.color){var q=A.valueMin[0],x=A.valueMax[0],v=A.valueMin[1],W=A.valueMax[1],S=A.valueMin[2],T=A.valueMax[2],R=A.valueMin[3]==null?1:A.valueMin[3],Y=A.valueMax[3]==null?1:A.valueMax[3],a=[Math.round(q+(x-q)*L),Math.round(v+(W-v)*L),Math.round(S+(T-S)*L),Math.round(R+(Y-R)*L)];D={bypass:A.bypass,name:A.name,value:a,strValue:"rgb("+a[0]+", "+a[1]+", "+a[2]+")"}}else if(U.number){var I=A.valueMin+(A.valueMax-A.valueMin)*L;D=this.parse(A.name,I,A.bypass,b)}else return!1;if(!D)return J(),!1;D.mapping=A,A=D;break}case F.data:{var O=A.field.split("."),i=l.data;for(var N=0;N<O.length&&i;N++){var V=O[N];i=i[V]}if(i!=null)D=this.parse(A.name,i,A.bypass,b);if(!D)return J(),!1;D.mapping=A,A=D;break}case F.fn:{var h=A.value,r=A.fnValue!=null?A.fnValue:h(u);if(A.prevFnValue=r,r==null)return A6("Custom function mappers may not return null (i.e. `"+A.name+"` for ele `"+u.id()+"` is null)"),!1;if(D=this.parse(A.name,r,A.bypass,b),!D)return A6("Custom function mappers may not return invalid values for the property type (i.e. `"+A.name+"` for ele `"+u.id()+"` is invalid)"),!1;D.mapping=VF(A),A=D;break}case void 0:break;default:return!1}if(z){if(f)A.bypassed=k.bypassed;else A.bypassed=k;C[A.name]=A}else if(f)k.bypassed=A;else C[A.name]=A;return Z(),!0};T5.cleanElements=function(u,B){for(var E=0;E<u.length;E++){var A=u[E];if(this.clearStyleHints(A),A.dirtyCompoundBoundsCache(),A.dirtyBoundingBoxCache(),!B)A._private.style={};else{var C=A._private.style,D=Object.keys(C);for(var F=0;F<D.length;F++){var U=D[F],z=C[U];if(z!=null)if(z.bypass)z.bypassed=null;else C[U]=null}}}};T5.update=function(){var u=this._private.cy,B=u.mutableElements();B.updateStyle()};T5.updateTransitions=function(u,B){var E=this,A=u._private,C=u.pstyle("transition-property").value,D=u.pstyle("transition-duration").pfValue,F=u.pstyle("transition-delay").pfValue;if(C.length>0&&D>0){var U={},z=!1;for(var k=0;k<C.length;k++){var f=C[k],l=u.pstyle(f),b=B[f];if(!b)continue;var M=b.prev,Z=M,J=b.next!=null?b.next:l,w=!1,K=void 0,Q=0.000001;if(!Z)continue;if(J4(Z.pfValue)&&J4(J.pfValue))w=J.pfValue-Z.pfValue,K=Z.pfValue+Q*w;else if(J4(Z.value)&&J4(J.value))w=J.value-Z.value,K=Z.value+Q*w;else if(q6(Z.value)&&q6(J.value))w=Z.value[0]!==J.value[0]||Z.value[1]!==J.value[1]||Z.value[2]!==J.value[2],K=Z.strValue;if(w)U[f]=J.strValue,this.applyBypass(u,f,K),z=!0}if(!z)return;A.transitioning=!0,new IH(function(G){if(F>0)u.delayAnimation(F).play().promise().then(G);else G()}).then(function(){return u.animation({style:U,duration:D,easing:u.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){E.removeBypasses(u,C),u.emitAndNotify("style"),A.transitioning=!1})}else if(A.transitioning)this.removeBypasses(u,C),u.emitAndNotify("style"),A.transitioning=!1};T5.checkTrigger=function(u,B,E,A,C,D){var F=this.properties[B],U=C(F);if(u.removed())return;if(U!=null&&U(E,A,u))D(F)};T5.checkZOrderTrigger=function(u,B,E,A){var C=this;this.checkTrigger(u,B,E,A,function(D){return D.triggersZOrder},function(){C._private.cy.notify("zorder",u)})};T5.checkBoundsTrigger=function(u,B,E,A){this.checkTrigger(u,B,E,A,function(C){return C.triggersBounds},function(C){u.dirtyCompoundBoundsCache(),u.dirtyBoundingBoxCache()})};T5.checkConnectedEdgesBoundsTrigger=function(u,B,E,A){this.checkTrigger(u,B,E,A,function(C){return C.triggersBoundsOfConnectedEdges},function(C){u.connectedEdges().forEach(function(D){D.dirtyBoundingBoxCache()})})};T5.checkParallelEdgesBoundsTrigger=function(u,B,E,A){this.checkTrigger(u,B,E,A,function(C){return C.triggersBoundsOfParallelEdges},function(C){u.parallelEdges().forEach(function(D){D.dirtyBoundingBoxCache()})})};T5.checkTriggers=function(u,B,E,A){u.dirtyStyleCache(),this.checkZOrderTrigger(u,B,E,A),this.checkBoundsTrigger(u,B,E,A),this.checkConnectedEdgesBoundsTrigger(u,B,E,A),this.checkParallelEdgesBoundsTrigger(u,B,E,A)};IW={};IW.applyBypass=function(u,B,E,A){var C=this,D=[],F=!0;if(B==="*"||B==="**"){if(E!==void 0)for(var U=0;U<C.properties.length;U++){var z=C.properties[U],k=z.name,f=this.parse(k,E,!0);if(f)D.push(f)}}else if(p4(B)){var l=this.parse(B,E,!0);if(l)D.push(l)}else if(S1(B)){var b=B;A=E;var M=Object.keys(b);for(var Z=0;Z<M.length;Z++){var J=M[Z],w=b[J];if(w===void 0)w=b[qh(J)];if(w!==void 0){var K=this.parse(J,w,!0);if(K)D.push(K)}}}else return!1;if(D.length===0)return!1;var Q=!1;for(var G=0;G<u.length;G++){var L=u[G],H={},q=void 0;for(var x=0;x<D.length;x++){var v=D[x];if(A){var W=L.pstyle(v.name);q=H[v.name]={prev:W}}if(Q=this.applyParsedProperty(L,VF(v))||Q,A)q.next=L.pstyle(v.name)}if(Q)this.updateStyleHints(L);if(A)this.updateTransitions(L,H,F)}return Q};IW.overrideBypass=function(u,B,E){B=A50(B);for(var A=0;A<u.length;A++){var C=u[A],D=C._private.style[B],F=this.properties[B].type,U=F.color,z=F.mutiple,k=!D?null:D.pfValue!=null?D.pfValue:D.value;if(!D||!D.bypass)this.applyBypass(C,B,E);else{if(D.value=E,D.pfValue!=null)D.pfValue=E;if(U)D.strValue="rgb("+E.join(",")+")";else if(z)D.strValue=E.join(" ");else D.strValue=""+E;this.updateStyleHints(C)}this.checkTriggers(C,B,k,E)}};IW.removeAllBypasses=function(u,B){return this.removeBypasses(u,this.propertyNames,B)};IW.removeBypasses=function(u,B,E){var A=!0;for(var C=0;C<u.length;C++){var D=u[C],F={};for(var U=0;U<B.length;U++){var z=B[U],k=this.properties[z],f=D.pstyle(k.name);if(!f||!f.bypass)continue;var l="",b=this.parse(z,l,!0),M=F[k.name]={prev:f};this.applyParsedProperty(D,b),M.next=D.pstyle(k.name)}if(this.updateStyleHints(D),E)this.updateTransitions(D,F,A)}};Q50={};Q50.getEmSizeInPixels=function(){var u=this.containerCss("font-size");if(u!=null)return parseFloat(u);else return 1};Q50.containerCss=function(u){var B=this._private.cy,E=B.container(),A=B.window();if(A&&E&&A.getComputedStyle)return A.getComputedStyle(E).getPropertyValue(u)};hF={};hF.getRenderedStyle=function(u,B){if(B)return this.getStylePropertyValue(u,B,!0);else return this.getRawStyle(u,!0)};hF.getRawStyle=function(u,B){var E=this;if(u=u[0],u){var A={};for(var C=0;C<E.properties.length;C++){var D=E.properties[C],F=E.getStylePropertyValue(u,D.name,B);if(F!=null)A[D.name]=F,A[qh(D.name)]=F}return A}};hF.getIndexedStyle=function(u,B,E,A){var C=u.pstyle(B)[E][A];return C!=null?C:u.cy().style().getDefaultProperty(B)[E][0]};hF.getStylePropertyValue=function(u,B,E){var A=this;if(u=u[0],u){var C=A.properties[B];if(C.alias)C=C.pointsTo;var D=C.type,F=u.pstyle(C.name);if(F){var{value:U,units:z,strValue:k}=F;if(E&&D.number&&U!=null&&J4(U)){var f=u.cy().zoom(),l=function(w){return w*f},b=function(w,K){return l(w)+K},M=q6(U),Z=M?z.every(function(J){return J!=null}):z!=null;if(Z)if(M)return U.map(function(J,w){return b(J,z[w])}).join(" ");else return b(U,z);else if(M)return U.map(function(J){return p4(J)?J:""+l(J)}).join(" ");else return""+l(U)}else if(k!=null)return k}return null}};hF.getAnimationStartStyle=function(u,B){var E={};for(var A=0;A<B.length;A++){var C=B[A],D=C.name,F=u.pstyle(D);if(F!==void 0)if(S1(F))F=this.parse(D,F.strValue);else F=this.parse(D,F);if(F)E[D]=F}return E};hF.getPropsList=function(u){var B=this,E=[],A=u,C=B.properties;if(A){var D=Object.keys(A);for(var F=0;F<D.length;F++){var U=D[F],z=A[U],k=C[U]||C[A50(U)],f=this.parse(k.name,z);if(f)E.push(f)}}return E};hF.getNonDefaultPropertiesHash=function(u,B,E){var A=E.slice(),C,D,F,U,z,k;for(z=0;z<B.length;z++)if(C=B[z],D=u.pstyle(C,!1),D==null)continue;else if(D.pfValue!=null)A[0]=ZW(U,A[0]),A[1]=JW(U,A[1]);else{F=D.strValue;for(k=0;k<F.length;k++)U=F.charCodeAt(k),A[0]=ZW(U,A[0]),A[1]=JW(U,A[1])}return A};hF.getPropertiesHash=hF.getNonDefaultPropertiesHash;Nh={};Nh.appendFromJson=function(u){var B=this;for(var E=0;E<u.length;E++){var A=u[E],C=A.selector,D=A.style||A.css,F=Object.keys(D);B.selector(C);for(var U=0;U<F.length;U++){var z=F[U],k=D[z];B.css(z,k)}}return B};Nh.fromJson=function(u){var B=this;return B.resetToDefault(),B.appendFromJson(u),B};Nh.json=function(){var u=[];for(var B=this.defaultLength;B<this.length;B++){var E=this[B],A=E.selector,C=E.properties,D={};for(var F=0;F<C.length;F++){var U=C[F];D[U.name]=U.strValue}u.push({selector:!A?"core":A.toString(),style:D})}return u};G50={};G50.appendFromString=function(u){var B=this,E=this,A=""+u,C,D,F;A=A.replace(/[/][*](\s|.)+?[*][/]/g,"");function U(){if(A.length>C.length)A=A.substr(C.length);else A=""}function z(){if(D.length>F.length)D=D.substr(F.length);else D=""}for(;;){var k=A.match(/^\s*$/);if(k)break;var f=A.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){A6("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+A);break}C=f[0];var l=f[1];if(l!=="core"){var b=new al(l);if(b.invalid){A6("Skipping parsing of block: Invalid selector found in string stylesheet: "+l),U();continue}}var M=f[2],Z=!1;D=M;var J=[];for(;;){var w=D.match(/^\s*$/);if(w)break;var K=D.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!K){A6("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+M),Z=!0;break}F=K[0];var Q=K[1],G=K[2],L=B.properties[Q];if(!L){A6("Skipping property: Invalid property name in: "+F),z();continue}var H=E.parse(Q,G);if(!H){A6("Skipping property: Invalid property definition in: "+F),z();continue}J.push({name:Q,val:G}),z()}if(Z){U();break}E.selector(l);for(var q=0;q<J.length;q++){var x=J[q];E.css(x.name,x.val)}U()}return E};G50.fromString=function(u){var B=this;return B.resetToDefault(),B.appendFromString(u),B};S2={};(function(){var u=o2,B=$b4,E=cb4,A=gb4,C=_b4,D=function(f0){return"^"+f0+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},F=function(f0){var D0=u+"|\\w+|"+B+"|"+E+"|"+A+"|"+C;return"^"+f0+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+u+")\\s*\\,\\s*("+u+")\\s*,\\s*("+D0+")\\s*\\,\\s*("+D0+")\\)$"},U=[`^url\\s*\\(\\s*['"]?(.+?)['"]?\\s*\\)$`,"^(none)$","^(.+)$"];S2.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:D("data")},layoutData:{mapping:!0,regex:D("layoutData")},scratch:{mapping:!0,regex:D("scratch")},mapData:{mapping:!0,regex:F("mapData")},mapLayoutData:{mapping:!0,regex:F("mapLayoutData")},mapScratch:{mapping:!0,regex:F("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:U,singleRegexMatchValue:!0},urls:{regexes:U,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(f0,D0){switch(f0.length){case 2:return D0[0]!=="deg"&&D0[0]!=="rad"&&D0[1]!=="deg"&&D0[1]!=="rad";case 1:return p4(f0[0])||D0[0]==="deg"||D0[0]==="rad";default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+u+")\\s*,\\s*("+u+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+u+")\\s*,\\s*("+u+")\\s*,\\s*("+u+")\\s*,\\s*("+u+")\\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(f0){var D0=f0.length;return D0===1||D0===2||D0===4}}};var z={zeroNonZero:function(f0,D0){if((f0==null||D0==null)&&f0!==D0)return!0;if(f0==0&&D0!=0)return!0;else if(f0!=0&&D0==0)return!0;else return!1},any:function(f0,D0){return f0!=D0},emptyNonEmpty:function(f0,D0){var P0=jl(f0),q0=jl(D0);return P0&&!q0||!P0&&q0}},k=S2.types,f=[{name:"label",type:k.text,triggersBounds:z.any,triggersZOrder:z.emptyNonEmpty},{name:"text-rotation",type:k.textRotation,triggersBounds:z.any},{name:"text-margin-x",type:k.bidirectionalSize,triggersBounds:z.any},{name:"text-margin-y",type:k.bidirectionalSize,triggersBounds:z.any}],l=[{name:"source-label",type:k.text,triggersBounds:z.any},{name:"source-text-rotation",type:k.textRotation,triggersBounds:z.any},{name:"source-text-margin-x",type:k.bidirectionalSize,triggersBounds:z.any},{name:"source-text-margin-y",type:k.bidirectionalSize,triggersBounds:z.any},{name:"source-text-offset",type:k.size,triggersBounds:z.any}],b=[{name:"target-label",type:k.text,triggersBounds:z.any},{name:"target-text-rotation",type:k.textRotation,triggersBounds:z.any},{name:"target-text-margin-x",type:k.bidirectionalSize,triggersBounds:z.any},{name:"target-text-margin-y",type:k.bidirectionalSize,triggersBounds:z.any},{name:"target-text-offset",type:k.size,triggersBounds:z.any}],M=[{name:"font-family",type:k.fontFamily,triggersBounds:z.any},{name:"font-style",type:k.fontStyle,triggersBounds:z.any},{name:"font-weight",type:k.fontWeight,triggersBounds:z.any},{name:"font-size",type:k.size,triggersBounds:z.any},{name:"text-transform",type:k.textTransform,triggersBounds:z.any},{name:"text-wrap",type:k.textWrap,triggersBounds:z.any},{name:"text-overflow-wrap",type:k.textOverflowWrap,triggersBounds:z.any},{name:"text-max-width",type:k.size,triggersBounds:z.any},{name:"text-outline-width",type:k.size,triggersBounds:z.any},{name:"line-height",type:k.positiveNumber,triggersBounds:z.any}],Z=[{name:"text-valign",type:k.valign,triggersBounds:z.any},{name:"text-halign",type:k.halign,triggersBounds:z.any},{name:"color",type:k.color},{name:"text-outline-color",type:k.color},{name:"text-outline-opacity",type:k.zeroOneNumber},{name:"text-background-color",type:k.color},{name:"text-background-opacity",type:k.zeroOneNumber},{name:"text-background-padding",type:k.size,triggersBounds:z.any},{name:"text-border-opacity",type:k.zeroOneNumber},{name:"text-border-color",type:k.color},{name:"text-border-width",type:k.size,triggersBounds:z.any},{name:"text-border-style",type:k.borderStyle,triggersBounds:z.any},{name:"text-background-shape",type:k.textBackgroundShape,triggersBounds:z.any},{name:"text-justification",type:k.justification},{name:"text-metrics",type:k.textMetrics},{name:"box-select-labels",type:k.bool,triggersBounds:z.any}],J=[{name:"events",type:k.bool,triggersZOrder:z.any},{name:"text-events",type:k.bool,triggersZOrder:z.any},{name:"box-selection",type:k.boxSelection,triggersZOrder:z.any}],w=[{name:"display",type:k.display,triggersZOrder:z.any,triggersBounds:z.any,triggersBoundsOfConnectedEdges:z.any,triggersBoundsOfParallelEdges:function(f0,D0,P0){if(f0===D0)return!1;return P0.pstyle("curve-style").value==="bezier"}},{name:"visibility",type:k.visibility,triggersZOrder:z.any},{name:"opacity",type:k.zeroOneNumber,triggersZOrder:z.zeroNonZero},{name:"text-opacity",type:k.zeroOneNumber},{name:"min-zoomed-font-size",type:k.size},{name:"z-compound-depth",type:k.zCompoundDepth,triggersZOrder:z.any},{name:"z-index-compare",type:k.zIndexCompare,triggersZOrder:z.any},{name:"z-index",type:k.number,triggersZOrder:z.any}],K=[{name:"overlay-padding",type:k.size,triggersBounds:z.any},{name:"overlay-color",type:k.color},{name:"overlay-opacity",type:k.zeroOneNumber,triggersBounds:z.zeroNonZero},{name:"overlay-shape",type:k.overlayShape,triggersBounds:z.any},{name:"overlay-corner-radius",type:k.cornerRadius}],Q=[{name:"underlay-padding",type:k.size,triggersBounds:z.any},{name:"underlay-color",type:k.color},{name:"underlay-opacity",type:k.zeroOneNumber,triggersBounds:z.zeroNonZero},{name:"underlay-shape",type:k.overlayShape,triggersBounds:z.any},{name:"underlay-corner-radius",type:k.cornerRadius}],G=[{name:"transition-property",type:k.propList},{name:"transition-duration",type:k.time},{name:"transition-delay",type:k.time},{name:"transition-timing-function",type:k.easing}],L=function(f0,D0){if(D0.value==="label")return-f0.poolIndex();else return D0.pfValue},H=[{name:"height",type:k.nodeSize,triggersBounds:z.any,hashOverride:L},{name:"width",type:k.nodeSize,triggersBounds:z.any,hashOverride:L},{name:"shape",type:k.nodeShape,triggersBounds:z.any},{name:"shape-polygon-points",type:k.polygonPointList,triggersBounds:z.any},{name:"corner-radius",type:k.cornerRadius},{name:"background-color",type:k.color},{name:"background-fill",type:k.fill},{name:"background-opacity",type:k.zeroOneNumber},{name:"background-blacken",type:k.nOneOneNumber},{name:"background-gradient-stop-colors",type:k.colors},{name:"background-gradient-stop-positions",type:k.percentages},{name:"background-gradient-direction",type:k.gradientDirection},{name:"padding",type:k.sizeMaybePercent,triggersBounds:z.any},{name:"padding-relative-to",type:k.paddingRelativeTo,triggersBounds:z.any},{name:"bounds-expansion",type:k.boundsExpansion,triggersBounds:z.any}],q=[{name:"border-color",type:k.color},{name:"border-opacity",type:k.zeroOneNumber},{name:"border-width",type:k.size,triggersBounds:z.any},{name:"border-style",type:k.borderStyle},{name:"border-cap",type:k.lineCap},{name:"border-join",type:k.lineJoin},{name:"border-dash-pattern",type:k.numbers},{name:"border-dash-offset",type:k.number},{name:"border-position",type:k.linePosition}],x=[{name:"outline-color",type:k.color},{name:"outline-opacity",type:k.zeroOneNumber},{name:"outline-width",type:k.size,triggersBounds:z.any},{name:"outline-style",type:k.borderStyle},{name:"outline-offset",type:k.size,triggersBounds:z.any}],v=[{name:"background-image",type:k.urls},{name:"background-image-crossorigin",type:k.bgCrossOrigin},{name:"background-image-opacity",type:k.zeroOneNumbers},{name:"background-image-containment",type:k.bgContainment},{name:"background-image-smoothing",type:k.bools},{name:"background-position-x",type:k.bgPos},{name:"background-position-y",type:k.bgPos},{name:"background-width-relative-to",type:k.bgRelativeTo},{name:"background-height-relative-to",type:k.bgRelativeTo},{name:"background-repeat",type:k.bgRepeat},{name:"background-fit",type:k.bgFit},{name:"background-clip",type:k.bgClip},{name:"background-width",type:k.bgWH},{name:"background-height",type:k.bgWH},{name:"background-offset-x",type:k.bgPos},{name:"background-offset-y",type:k.bgPos}],W=[{name:"position",type:k.position,triggersBounds:z.any},{name:"compound-sizing-wrt-labels",type:k.compoundIncludeLabels,triggersBounds:z.any},{name:"min-width",type:k.size,triggersBounds:z.any},{name:"min-width-bias-left",type:k.sizeMaybePercent,triggersBounds:z.any},{name:"min-width-bias-right",type:k.sizeMaybePercent,triggersBounds:z.any},{name:"min-height",type:k.size,triggersBounds:z.any},{name:"min-height-bias-top",type:k.sizeMaybePercent,triggersBounds:z.any},{name:"min-height-bias-bottom",type:k.sizeMaybePercent,triggersBounds:z.any}],S=[{name:"line-style",type:k.lineStyle},{name:"line-color",type:k.color},{name:"line-fill",type:k.fill},{name:"line-cap",type:k.lineCap},{name:"line-opacity",type:k.zeroOneNumber},{name:"line-dash-pattern",type:k.numbers},{name:"line-dash-offset",type:k.number},{name:"line-outline-width",type:k.size},{name:"line-outline-color",type:k.color},{name:"line-gradient-stop-colors",type:k.colors},{name:"line-gradient-stop-positions",type:k.percentages},{name:"curve-style",type:k.curveStyle,triggersBounds:z.any,triggersBoundsOfParallelEdges:function(f0,D0){if(f0===D0)return!1;return f0==="bezier"||D0==="bezier"}},{name:"haystack-radius",type:k.zeroOneNumber,triggersBounds:z.any},{name:"source-endpoint",type:k.edgeEndpoint,triggersBounds:z.any},{name:"target-endpoint",type:k.edgeEndpoint,triggersBounds:z.any},{name:"control-point-step-size",type:k.size,triggersBounds:z.any},{name:"control-point-distances",type:k.bidirectionalSizes,triggersBounds:z.any},{name:"control-point-weights",type:k.numbers,triggersBounds:z.any},{name:"segment-distances",type:k.bidirectionalSizes,triggersBounds:z.any},{name:"segment-weights",type:k.numbers,triggersBounds:z.any},{name:"segment-radii",type:k.numbers,triggersBounds:z.any},{name:"radius-type",type:k.radiusType,triggersBounds:z.any},{name:"taxi-turn",type:k.bidirectionalSizeMaybePercent,triggersBounds:z.any},{name:"taxi-turn-min-distance",type:k.size,triggersBounds:z.any},{name:"taxi-direction",type:k.axisDirection,triggersBounds:z.any},{name:"taxi-radius",type:k.number,triggersBounds:z.any},{name:"edge-distances",type:k.edgeDistances,triggersBounds:z.any},{name:"arrow-scale",type:k.positiveNumber,triggersBounds:z.any},{name:"loop-direction",type:k.angle,triggersBounds:z.any},{name:"loop-sweep",type:k.angle,triggersBounds:z.any},{name:"source-distance-from-node",type:k.size,triggersBounds:z.any},{name:"target-distance-from-node",type:k.size,triggersBounds:z.any}],T=[{name:"ghost",type:k.bool,triggersBounds:z.any},{name:"ghost-offset-x",type:k.bidirectionalSize,triggersBounds:z.any},{name:"ghost-offset-y",type:k.bidirectionalSize,triggersBounds:z.any},{name:"ghost-opacity",type:k.zeroOneNumber}],R=[{name:"selection-box-color",type:k.color},{name:"selection-box-opacity",type:k.zeroOneNumber},{name:"selection-box-border-color",type:k.color},{name:"selection-box-border-width",type:k.size},{name:"active-bg-color",type:k.color},{name:"active-bg-opacity",type:k.zeroOneNumber},{name:"active-bg-size",type:k.size},{name:"outside-texture-bg-color",type:k.color},{name:"outside-texture-bg-opacity",type:k.zeroOneNumber}],Y=[];S2.pieBackgroundN=16,Y.push({name:"pie-size",type:k.sizeMaybePercent}),Y.push({name:"pie-hole",type:k.sizeMaybePercent}),Y.push({name:"pie-start-angle",type:k.angle});for(var a=1;a<=S2.pieBackgroundN;a++)Y.push({name:"pie-"+a+"-background-color",type:k.color}),Y.push({name:"pie-"+a+"-background-size",type:k.percent}),Y.push({name:"pie-"+a+"-background-opacity",type:k.zeroOneNumber});var I=[];S2.stripeBackgroundN=16,I.push({name:"stripe-size",type:k.sizeMaybePercent}),I.push({name:"stripe-direction",type:k.axisDirectionPrimary});for(var O=1;O<=S2.stripeBackgroundN;O++)I.push({name:"stripe-"+O+"-background-color",type:k.color}),I.push({name:"stripe-"+O+"-background-size",type:k.percent}),I.push({name:"stripe-"+O+"-background-opacity",type:k.zeroOneNumber});var i=[],N=S2.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:k.arrowShape,triggersBounds:z.any},{name:"arrow-color",type:k.color},{name:"arrow-fill",type:k.arrowFill},{name:"arrow-width",type:k.arrowWidth}].forEach(function(k0){N.forEach(function(f0){var D0=f0+"-"+k0.name,P0=k0.type,q0=k0.triggersBounds;i.push({name:D0,type:P0,triggersBounds:q0})})},{});var V=S2.properties=[].concat(J,G,w,K,Q,T,Z,M,f,l,b,H,q,x,v,Y,I,W,S,i,R),h=S2.propertyGroups={behavior:J,transition:G,visibility:w,overlay:K,underlay:Q,ghost:T,commonLabel:Z,labelDimensions:M,mainLabel:f,sourceLabel:l,targetLabel:b,nodeBody:H,nodeBorder:q,nodeOutline:x,backgroundImage:v,pie:Y,stripe:I,compound:W,edgeLine:S,edgeArrow:i,core:R},r=S2.propertyGroupNames={},m=S2.propertyGroupKeys=Object.keys(h);m.forEach(function(k0){r[k0]=h[k0].map(function(f0){return f0.name}),h[k0].forEach(function(f0){return f0.groupKey=k0})});var $=S2.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"}];S2.propertyNames=V.map(function(k0){return k0.name});for(var y=0;y<V.length;y++){var p=V[y];V[p.name]=p}for(var e=0;e<$.length;e++){var _=$[e],b0=V[_.pointsTo],B0={name:_.name,alias:!0,pointsTo:b0};V.push(B0),V[_.name]=B0}})();S2.getDefaultProperty=function(u){return this.getDefaultProperties()[u]};S2.getDefaultProperties=function(){var u=this._private;if(u.defaultProperties!=null)return u.defaultProperties;var B=k3({"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(z,k){for(var f=1;f<=S2.pieBackgroundN;f++){var l=k.name.replace("{{i}}",f),b=k.value;z[l]=b}return z},{}),{"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(z,k){for(var f=1;f<=S2.stripeBackgroundN;f++){var l=k.name.replace("{{i}}",f),b=k.value;z[l]=b}return z},{}),{"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(z,k){return S2.arrowPrefixes.forEach(function(f){var l=f+"-"+k.name,b=k.value;z[l]=b}),z},{})),E={};for(var A=0;A<this.properties.length;A++){var C=this.properties[A];if(C.pointsTo)continue;var D=C.name,F=B[D],U=this.parse(D,F);E[D]=U}return u.defaultProperties=E,u.defaultProperties};S2.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};ih={};ih.parse=function(u,B,E,A){var C=this;if(H9(B))return C.parseImplWarn(u,B,E,A);var D=A==="mapping"||A===!0||A===!1||A==null?"dontcare":A,F=E?"t":"f",U=""+B,z=V$0(u,U,F,D),k=C.propCache=C.propCache||[],f;if(!(f=k[z]))f=k[z]=C.parseImplWarn(u,B,E,A);if(E||A==="mapping"){if(f=VF(f),f)f.value=VF(f.value)}return f};ih.parseImplWarn=function(u,B,E,A){var C=this.parseImpl(u,B,E,A);if(!C&&B!=null)A6("The style property `".concat(u,": ").concat(B,"` is invalid"));if(C&&(C.name==="width"||C.name==="height")&&B==="label")A6("The style value of `label` is deprecated for `"+C.name+"`");return C};ih.parseImpl=function(u,B,E,A){var C=this;u=A50(u);var D=C.properties[u],F=B,U=C.types;if(!D)return null;if(B===void 0)return null;if(D.alias)D=D.pointsTo,u=D.name;var z=p4(B);if(z)B=B.trim();var k=D.type;if(!k)return null;if(E&&(B===""||B===null))return{name:u,value:B,bypass:!0,deleteBypass:!0};if(H9(B))return{name:u,value:B,strValue:"fn",mapped:U.fn,bypass:E};var f,l;if(!z||A||B.length<7||B[1]!=="a");else if(B.length>=7&&B[0]==="d"&&(f=new RegExp(U.data.regex).exec(B))){if(E)return!1;var b=U.data;return{name:u,value:f,strValue:""+B,mapped:b,field:f[1],bypass:E}}else if(B.length>=10&&B[0]==="m"&&(l=new RegExp(U.mapData.regex).exec(B))){if(E)return!1;if(k.multiple)return!1;var M=U.mapData;if(!(k.color||k.number))return!1;var Z=this.parse(u,l[4]);if(!Z||Z.mapped)return!1;var J=this.parse(u,l[5]);if(!J||J.mapped)return!1;if(Z.pfValue===J.pfValue||Z.strValue===J.strValue)return A6("`"+u+": "+B+"` is not a valid mapper because the output range is zero; converting to `"+u+": "+Z.strValue+"`"),this.parse(u,Z.strValue);else if(k.color){var w=Z.value,K=J.value,Q=w[0]===K[0]&&w[1]===K[1]&&w[2]===K[2]&&(w[3]===K[3]||(w[3]==null||w[3]===1)&&(K[3]==null||K[3]===1));if(Q)return!1}return{name:u,value:l,strValue:""+B,mapped:M,field:l[1],fieldMin:parseFloat(l[2]),fieldMax:parseFloat(l[3]),valueMin:Z.value,valueMax:J.value,bypass:E}}if(k.multiple&&A!=="multiple"){var G;if(z)G=B.split(/\s+/);else if(q6(B))G=B;else G=[B];if(k.evenMultiple&&G.length%2!==0)return null;var L=[],H=[],q=[],x="",v=!1;for(var W=0;W<G.length;W++){var S=C.parse(u,G[W],E,"multiple");v=v||p4(S.value),L.push(S.value),q.push(S.pfValue!=null?S.pfValue:S.value),H.push(S.units),x+=(W>0?" ":"")+S.strValue}if(k.validate&&!k.validate(L,H))return null;if(k.singleEnum&&v)if(L.length===1&&p4(L[0]))return{name:u,value:L[0],strValue:L[0],bypass:E};else return null;return{name:u,value:L,pfValue:q,strValue:x,bypass:E,units:H}}var T=function(){for(var B0=0;B0<k.enums.length;B0++){var k0=k.enums[B0];if(k0===B)return{name:u,value:B,strValue:""+B,bypass:E}}return null};if(k.number){var R,Y="px";if(k.units)R=k.units;if(k.implicitUnits)Y=k.implicitUnits;if(!k.unitless){if(z){var a="px|em"+(k.allowPercent?"|\\%":"");if(R)a=R;var I=B.match("^("+o2+")("+a+")?$");if(I)B=I[1],R=I[2]||Y}else if(!R||k.implicitUnits)R=Y}if(B=parseFloat(B),isNaN(B)&&k.enums===void 0)return null;if(isNaN(B)&&k.enums!==void 0)return B=F,T();if(k.integer&&!S$0(B))return null;if(k.min!==void 0&&(B<k.min||k.strictMin&&B===k.min)||k.max!==void 0&&(B>k.max||k.strictMax&&B===k.max))return null;var O={name:u,value:B,strValue:""+B+(R?R:""),units:R,bypass:E};if(k.unitless||R!=="px"&&R!=="em")O.pfValue=B;else O.pfValue=R==="px"||!R?B:this.getEmSizeInPixels()*B;if(R==="ms"||R==="s")O.pfValue=R==="ms"?B:1000*B;if(R==="deg"||R==="rad")O.pfValue=R==="rad"?B:_M4(B);if(R==="%")O.pfValue=B/100;return O}else if(k.propList){var i=[],N=""+B;if(N==="none");else{var V=N.split(/\s*,\s*|\s+/);for(var h=0;h<V.length;h++){var r=V[h].trim();if(C.properties[r])i.push(r);else A6("`"+r+"` is not a valid property name")}if(i.length===0)return null}return{name:u,value:i,strValue:i.length===0?"none":i.join(" "),bypass:E}}else if(k.color){var m=O$0(B);if(!m)return null;return{name:u,value:m,pfValue:m,strValue:"rgb("+m[0]+","+m[1]+","+m[2]+")",bypass:E}}else if(k.regex||k.regexes){if(k.enums){var $=T();if($)return $}var y=k.regexes?k.regexes:[k.regex];for(var p=0;p<y.length;p++){var e=new RegExp(y[p]),_=e.exec(B);if(_)return{name:u,value:k.singleRegexMatchValue?_[1]:_,strValue:""+B,bypass:E}}return null}else if(k.string)return{name:u,value:""+B,strValue:""+B,bypass:E};else if(k.enums)return T();else return null};P7=R5.prototype;P7.instanceString=function(){return"style"};P7.clear=function(){var u=this._private,B=u.cy,E=B.elements();for(var A=0;A<this.length;A++)this[A]=void 0;return this.length=0,u.contextStyles={},u.propDiffs={},this.cleanElements(E,!0),E.forEach(function(C){var D=C[0]._private;D.styleDirty=!0,D.appliedInitStyle=!1}),this};P7.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this};P7.core=function(u){return this._private.coreStyle[u]||this.getDefaultProperty(u)};P7.selector=function(u){var B=u==="core"?null:new al(u),E=this.length++;return this[E]={selector:B,properties:[],mappedProperties:[],index:E},this};P7.css=function(){var u=this,B=arguments;if(B.length===1){var E=B[0];for(var A=0;A<u.properties.length;A++){var C=u.properties[A],D=E[C.name];if(D===void 0)D=E[qh(C.name)];if(D!==void 0)this.cssRule(C.name,D)}}else if(B.length===2)this.cssRule(B[0],B[1]);return this};P7.style=P7.css;P7.cssRule=function(u,B){var E=this.parse(u,B);if(E){var A=this.length-1;if(this[A].properties.push(E),this[A].properties[E.name]=E,E.name.match(/pie-(\d+)-background-size/)&&E.value)this._private.hasPie=!0;if(E.name.match(/stripe-(\d+)-background-size/)&&E.value)this._private.hasStripe=!0;if(E.mapped)this[A].mappedProperties.push(E);var C=!this[A].selector;if(C)this._private.coreStyle[E.name]=E}return this};P7.append=function(u){if(Y$0(u))u.appendToStyle(this);else if(q6(u))this.appendFromJson(u);else if(p4(u))this.appendFromString(u);return this};R5.fromJson=function(u,B){var E=new R5(u);return E.fromJson(B),E};R5.fromString=function(u,B){return new R5(u).fromString(B)};[T5,IW,Q50,hF,Nh,G50,S2,ih].forEach(function(u){k3(P7,u)});R5.types=P7.types;R5.properties=P7.properties;R5.propertyGroups=P7.propertyGroups;R5.propertyGroupNames=P7.propertyGroupNames;R5.propertyGroupKeys=P7.propertyGroupKeys;ow4={style:function(B){if(B){var E=this.setStyle(B);E.update()}return this._private.style},setStyle:function(B){var E=this._private;if(Y$0(B))E.style=B.generateStyle(this);else if(q6(B))E.style=R5.fromJson(this,B);else if(p4(B))E.style=R5.fromString(this,B);else E.style=R5(this);return E.style},updateStyle:function(){this.mutableElements().updateStyle()}},xJ={autolock:function(B){if(B!==void 0)this._private.autolock=B?!0:!1;else return this._private.autolock;return this},autoungrabify:function(B){if(B!==void 0)this._private.autoungrabify=B?!0:!1;else return this._private.autoungrabify;return this},autounselectify:function(B){if(B!==void 0)this._private.autounselectify=B?!0:!1;else return this._private.autounselectify;return this},selectionType:function(B){var E=this._private;if(E.selectionType==null)E.selectionType=tw4;if(B!==void 0){if(B==="additive"||B==="single")E.selectionType=B}else return E.selectionType;return this},panningEnabled:function(B){if(B!==void 0)this._private.panningEnabled=B?!0:!1;else return this._private.panningEnabled;return this},userPanningEnabled:function(B){if(B!==void 0)this._private.userPanningEnabled=B?!0:!1;else return this._private.userPanningEnabled;return this},zoomingEnabled:function(B){if(B!==void 0)this._private.zoomingEnabled=B?!0:!1;else return this._private.zoomingEnabled;return this},userZoomingEnabled:function(B){if(B!==void 0)this._private.userZoomingEnabled=B?!0:!1;else return this._private.userZoomingEnabled;return this},boxSelectionEnabled:function(B){if(B!==void 0)this._private.boxSelectionEnabled=B?!0:!1;else return this._private.boxSelectionEnabled;return this},pan:function(){var B=arguments,E=this._private.pan,A,C,D,F,U;switch(B.length){case 0:return E;case 1:if(p4(B[0]))return A=B[0],E[A];else if(S1(B[0])){if(!this._private.panningEnabled)return this;if(D=B[0],F=D.x,U=D.y,J4(F))E.x=F;if(J4(U))E.y=U;this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;if(A=B[0],C=B[1],(A==="x"||A==="y")&&J4(C))E[A]=C;this.emit("pan viewport");break}return this.notify("viewport"),this},panBy:function(B,E){var A=arguments,C=this._private.pan,D,F,U,z,k;if(!this._private.panningEnabled)return this;switch(A.length){case 1:if(S1(B)){if(U=A[0],z=U.x,k=U.y,J4(z))C.x+=z;if(J4(k))C.y+=k;this.emit("pan viewport")}break;case 2:if(D=B,F=E,(D==="x"||D==="y")&&J4(F))C[D]+=F;this.emit("pan viewport");break}return this.notify("viewport"),this},gc:function(){this.notify("gc")},fit:function(B,E){var A=this.getFitViewport(B,E);if(A){var C=this._private;C.zoom=A.zoom,C.pan=A.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(B,E){if(J4(B)&&E===void 0)E=B,B=void 0;if(!this._private.panningEnabled||!this._private.zoomingEnabled)return;var A;if(p4(B)){var C=B;B=this.$(C)}else if(Vb4(B)){var D=B;A={x1:D.x1,y1:D.y1,x2:D.x2,y2:D.y2},A.w=A.x2-A.x1,A.h=A.y2-A.y1}else if(!lE(B))B=this.mutableElements();if(lE(B)&&B.empty())return;A=A||B.boundingBox();var F=this.width(),U=this.height(),z;if(E=J4(E)?E:0,!isNaN(F)&&!isNaN(U)&&F>0&&U>0&&!isNaN(A.w)&&!isNaN(A.h)&&A.w>0&&A.h>0){z=Math.min((F-2*E)/A.w,(U-2*E)/A.h),z=z>this._private.maxZoom?this._private.maxZoom:z,z=z<this._private.minZoom?this._private.minZoom:z;var k={x:(F-z*(A.x1+A.x2))/2,y:(U-z*(A.y1+A.y2))/2};return{zoom:z,pan:k}}return},zoomRange:function(B,E){var A=this._private;if(E==null){var C=B;B=C.min,E=C.max}if(J4(B)&&J4(E)&&B<=E)A.minZoom=B,A.maxZoom=E;else if(J4(B)&&E===void 0&&B<=A.maxZoom)A.minZoom=B;else if(J4(E)&&B===void 0&&E>=A.minZoom)A.maxZoom=E;return this},minZoom:function(B){if(B===void 0)return this._private.minZoom;else return this.zoomRange({min:B})},maxZoom:function(B){if(B===void 0)return this._private.maxZoom;else return this.zoomRange({max:B})},getZoomedViewport:function(B){var E=this._private,A=E.pan,C=E.zoom,D,F,U=!1;if(!E.zoomingEnabled)U=!0;if(J4(B))F=B;else if(S1(B)){if(F=B.level,B.position!=null)D=vh(B.position,C,A);else if(B.renderedPosition!=null)D=B.renderedPosition;if(D!=null&&!E.panningEnabled)U=!0}if(F=F>E.maxZoom?E.maxZoom:F,F=F<E.minZoom?E.minZoom:F,U||!J4(F)||F===C||D!=null&&(!J4(D.x)||!J4(D.y)))return null;if(D!=null){var z=A,k=C,f=F,l={x:-f/k*(D.x-z.x)+D.x,y:-f/k*(D.y-z.y)+D.y};return{zoomed:!0,panned:!0,zoom:f,pan:l}}else return{zoomed:!0,panned:!1,zoom:F,pan:A}},zoom:function(B){if(B===void 0)return this._private.zoom;else{var E=this.getZoomedViewport(B),A=this._private;if(E==null||!E.zoomed)return this;if(A.zoom=E.zoom,E.panned)A.pan.x=E.pan.x,A.pan.y=E.pan.y;return this.emit("zoom"+(E.panned?" pan":"")+" viewport"),this.notify("viewport"),this}},viewport:function(B){var E=this._private,A=!0,C=!0,D=[],F=!1,U=!1;if(!B)return this;if(!J4(B.zoom))A=!1;if(!S1(B.pan))C=!1;if(!A&&!C)return this;if(A){var z=B.zoom;if(z<E.minZoom||z>E.maxZoom||!E.zoomingEnabled)F=!0;else E.zoom=z,D.push("zoom")}if(C&&(!F||!B.cancelOnFailedZoom)&&E.panningEnabled){var k=B.pan;if(J4(k.x))E.pan.x=k.x,U=!1;if(J4(k.y))E.pan.y=k.y,U=!1;if(!U)D.push("pan")}if(D.length>0)D.push("viewport"),this.emit(D.join(" ")),this.notify("viewport");return this},center:function(B){var E=this.getCenterPan(B);if(E)this._private.pan=E,this.emit("pan viewport"),this.notify("viewport");return this},getCenterPan:function(B,E){if(!this._private.panningEnabled)return;if(p4(B)){var A=B;B=this.mutableElements().filter(A)}else if(!lE(B))B=this.mutableElements();if(B.length===0)return;var C=B.boundingBox(),D=this.width(),F=this.height();E=E===void 0?this._private.zoom:E;var U={x:(D-E*(C.x1+C.x2))/2,y:(F-E*(C.y1+C.y2))/2};return U},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 B=this._private,E=B.container,A=this;return B.sizeCache=B.sizeCache||(E?function(){var C=A.window().getComputedStyle(E),D=function(U){return parseFloat(C.getPropertyValue(U))};return{width:E.clientWidth-D("padding-left")-D("padding-right"),height:E.clientHeight-D("padding-top")-D("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var B=this._private.pan,E=this._private.zoom,A=this.renderedExtent(),C={x1:(A.x1-B.x)/E,x2:(A.x2-B.x)/E,y1:(A.y1-B.y)/E,y2:(A.y2-B.y)/E};return C.w=C.x2-C.x1,C.h=C.y2-C.y1,C},renderedExtent:function(){var B=this.width(),E=this.height();return{x1:0,y1:0,x2:B,y2:E,w:B,h:E}},multiClickDebounceTime:function(B){if(B)this._private.multiClickDebounceTime=B;else return this._private.multiClickDebounceTime;return this}};xJ.centre=xJ.center;xJ.autolockNodes=xJ.autolock;xJ.autoungrabifyNodes=xJ.autoungrabify;LW={data:E6.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:E6.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:E6.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:E6.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};LW.attr=LW.data;LW.removeAttr=LW.removeData;wh=qW.prototype;k3(wh,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(B){if(this.isReady())this.emitter().emit("ready",[],B);else this.on("ready",B);return this},destroy:function(){var B=this;if(B.destroyed())return;return B.stopAnimationLoop(),B.destroyRenderer(),this.emit("destroy"),B._private.destroyed=!0,B},hasElementWithId:function(B){return this._private.elements.hasElementWithId(B)},getElementById:function(B){return this._private.elements.getElementById(B)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(B){return this._private.elements.merge(B),this},removeFromPool:function(B){return this._private.elements.unmerge(B),this},container:function(){return this._private.container||null},window:function(){var B=this._private.container;if(B==null)return s2;var E=this._private.container.ownerDocument;if(E===void 0||E==null)return s2;return E.defaultView||s2},mount:function(B){if(B==null)return;var E=this,A=E._private,C=A.options;if(!kh(B)&&kh(B[0]))B=B[0];return E.stopAnimationLoop(),E.destroyRenderer(),A.container=B,A.styleEnabled=!0,E.invalidateSize(),E.initRenderer(k3({},C,C.renderer,{name:C.renderer.name==="null"?"canvas":C.renderer.name})),E.startAnimationLoop(),E.style(C.style),E.emit("mount"),E},unmount:function(){var B=this;return B.stopAnimationLoop(),B.destroyRenderer(),B.initRenderer({name:"null"}),B.emit("unmount"),B},options:function(){return VF(this._private.options)},json:function(B){var E=this,A=E._private,C=E.mutableElements(),D=function(L){return E.getElementById(L.id())};if(S1(B)){if(E.startBatch(),B.elements){var F={},U=function(L,H){var q=[],x=[];for(var v=0;v<L.length;v++){var W=L[v];if(!W.data.id){A6("cy.json() cannot handle elements without an ID attribute");continue}var S=""+W.data.id,T=E.getElementById(S);if(F[S]=!0,T.length!==0)x.push({ele:T,json:W});else if(H)W.group=H,q.push(W);else q.push(W)}E.add(q);for(var R=0;R<x.length;R++){var Y=x[R],a=Y.ele,I=Y.json;a.json(I)}};if(q6(B.elements))U(B.elements);else{var z=["nodes","edges"];for(var k=0;k<z.length;k++){var f=z[k],l=B.elements[f];if(q6(l))U(l,f)}}var b=E.collection();C.filter(function(G){return!F[G.id()]}).forEach(function(G){if(G.isParent())b.merge(G);else G.remove()}),b.forEach(function(G){return G.children().move({parent:null})}),b.forEach(function(G){return D(G).remove()})}if(B.style)E.style(B.style);if(B.zoom!=null&&B.zoom!==A.zoom)E.zoom(B.zoom);if(B.pan){if(B.pan.x!==A.pan.x||B.pan.y!==A.pan.y)E.pan(B.pan)}if(B.data)E.data(B.data);var M=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"];for(var Z=0;Z<M.length;Z++){var J=M[Z];if(B[J]!=null)E[J](B[J])}return E.endBatch(),this}else{var w=!!B,K={};if(w)K.elements=this.elements().map(function(G){return G.json()});else K.elements={},C.forEach(function(G){var L=G.group();if(!K.elements[L])K.elements[L]=[];K.elements[L].push(G.json())});if(this._private.styleEnabled)K.style=E.style().json();K.data=VF(E.data());var Q=A.options;return K.zoomingEnabled=A.zoomingEnabled,K.userZoomingEnabled=A.userZoomingEnabled,K.zoom=A.zoom,K.minZoom=A.minZoom,K.maxZoom=A.maxZoom,K.panningEnabled=A.panningEnabled,K.userPanningEnabled=A.userPanningEnabled,K.pan=VF(A.pan),K.boxSelectionEnabled=A.boxSelectionEnabled,K.renderer=VF(Q.renderer),K.hideEdgesOnViewport=Q.hideEdgesOnViewport,K.textureOnViewport=Q.textureOnViewport,K.wheelSensitivity=Q.wheelSensitivity,K.motionBlur=Q.motionBlur,K.multiClickDebounceTime=Q.multiClickDebounceTime,K}}});wh.$id=wh.getElementById;[rw4,_w4,Ry0,c20,Ah,pw4,g20,Ch,ow4,xJ,LW].forEach(function(u){k3(wh,u)});ew4={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(B,E){return!0},ready:void 0,stop:void 0,transform:function(B,E){return E}},uK4={maximal:!1,acyclic:!1};Ty0.prototype.run=function(){var u=this.options,B=u.cy,E=u.eles,A=E.nodes().filter(function(v0){return v0.isChildless()}),C=E,D=u.directed,F=u.acyclic||u.maximal||u.maximalAdjustments>0,U=!!u.boundingBox,z=QB(U?u.boundingBox:structuredClone(B.extent())),k;if(lE(u.roots))k=u.roots;else if(q6(u.roots)){var f=[];for(var l=0;l<u.roots.length;l++){var b=u.roots[l],M=B.getElementById(b);f.push(M)}k=B.collection(f)}else if(p4(u.roots))k=B.$(u.roots);else if(D)k=A.roots();else{var Z=E.components();k=B.collection();var J=function(){var T0=Z[w],Z0=T0.maxDegree(!1),F0=T0.filter(function(u0){return u0.degree(!1)===Z0});k=k.add(F0)};for(var w=0;w<Z.length;w++)J()}var K=[],Q={},G=function(T0,Z0){if(K[Z0]==null)K[Z0]=[];var F0=K[Z0].length;K[Z0].push(T0),dr0(T0,{index:F0,depth:Z0})},L=function(T0,Z0){var F0=ZH(T0),u0=F0.depth,M0=F0.index;if(K[u0][M0]=null,T0.isChildless())G(T0,Z0)};C.bfs({roots:k,directed:u.directed,visit:function(T0,Z0,F0,u0,M0){var X0=T0[0],S0=X0.id();if(X0.isChildless())G(X0,M0);Q[S0]=!0}});var H=[];for(var q=0;q<A.length;q++){var x=A[q];if(Q[x.id()])continue;else H.push(x)}var v=function(T0){var Z0=K[T0];for(var F0=0;F0<Z0.length;F0++){var u0=Z0[F0];if(u0==null){Z0.splice(F0,1),F0--;continue}dr0(u0,{depth:T0,index:F0})}},W=function(T0,Z0){var F0=ZH(T0),u0=T0.incomers().filter(function(n){return n.isNode()&&E.has(n)}),M0=-1,X0=T0.id();for(var S0=0;S0<u0.length;S0++){var Y0=u0[S0],h0=ZH(Y0);M0=Math.max(M0,h0.depth)}if(F0.depth<=M0){if(!u.acyclic&&Z0[X0])return null;var J0=M0+1;return L(T0,J0),Z0[X0]=J0,!0}return!1};if(D&&F){var S=[],T={},R=function(T0){return S.push(T0)},Y=function(){return S.shift()};A.forEach(function(v0){return S.push(v0)});while(S.length>0){var a=Y(),I=W(a,T);if(I)a.outgoers().filter(function(v0){return v0.isNode()&&E.has(v0)}).forEach(R);else if(I===null){A6("Detected double maximal shift for node `"+a.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var O=0;if(u.avoidOverlap)for(var i=0;i<A.length;i++){var N=A[i],V=N.layoutDimensions(u),h=V.w,r=V.h;O=Math.max(O,h,r)}var m={},$=function(T0){if(m[T0.id()])return m[T0.id()];var Z0=ZH(T0).depth,F0=T0.neighborhood(),u0=0,M0=0;for(var X0=0;X0<F0.length;X0++){var S0=F0[X0];if(S0.isEdge()||S0.isParent()||!A.has(S0))continue;var Y0=ZH(S0);if(Y0==null)continue;var{index:h0,depth:J0}=Y0;if(h0==null||J0==null)continue;var n=K[J0].length;if(J0<Z0)u0+=h0/n,M0++}if(M0=Math.max(1,M0),u0=u0/M0,M0===0)u0=0;return m[T0.id()]=u0,u0},y=function(T0,Z0){var F0=$(T0),u0=$(Z0),M0=F0-u0;if(M0===0)return T$0(T0.id(),Z0.id());else return M0};if(u.depthSort!==void 0)y=u.depthSort;var p=K.length;for(var e=0;e<p;e++)K[e].sort(y),v(e);var _=[];for(var b0=0;b0<H.length;b0++)_.push(H[b0]);var B0=function(){for(var T0=0;T0<p;T0++)v(T0)};if(_.length)K.unshift(_),p=K.length,B0();var k0=0;for(var f0=0;f0<p;f0++)k0=Math.max(K[f0].length,k0);var D0={x:z.x1+z.w/2,y:z.y1+z.h/2},P0=A.reduce(function(v0,T0){return function(Z0){return{w:v0.w===-1?Z0.w:(v0.w+Z0.w)/2,h:v0.h===-1?Z0.h:(v0.h+Z0.h)/2}}(T0.boundingBox({includeLabels:u.nodeDimensionsIncludeLabels}))},{w:-1,h:-1}),q0=Math.max(p===1?0:U?(z.h-u.padding*2-P0.h)/(p-1):(z.h-u.padding*2-P0.h)/(p+1),O),m0=K.reduce(function(v0,T0){return Math.max(v0,T0.length)},0),a0=function(T0){var Z0=ZH(T0),F0=Z0.depth,u0=Z0.index;if(u.circle){var M0=Math.min(z.w/2/p,z.h/2/p);M0=Math.max(M0,O);var X0=M0*F0+M0-(p>0&&K[0].length<=3?M0/2:0),S0=2*Math.PI/K[F0].length*u0;if(F0===0&&K[0].length===1)X0=1;return{x:D0.x+X0*Math.cos(S0),y:D0.y+X0*Math.sin(S0)}}else{var Y0=K[F0].length,h0=Math.max(Y0===1?0:U?(z.w-u.padding*2-P0.w)/((u.grid?m0:Y0)-1):(z.w-u.padding*2-P0.w)/((u.grid?m0:Y0)+1),O),J0={x:D0.x+(u0+1-(Y0+1)/2)*h0,y:D0.y+(F0+1-(p+1)/2)*q0};return J0}},_0={downward:0,leftward:90,upward:180,rightward:-90};if(Object.keys(_0).indexOf(u.direction)===-1)F9("Invalid direction '".concat(u.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(_0).join(", ")));var w0=function(T0){return ZM4(a0(T0),z,_0[u.direction])};return E.nodes().layoutPositions(this,u,w0),this};BK4={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(B,E){return!0},ready:void 0,stop:void 0,transform:function(B,E){return E}};Oy0.prototype.run=function(){var u=this.options,B=u,E=u.cy,A=B.eles,C=B.counterclockwise!==void 0?!B.counterclockwise:B.clockwise,D=A.nodes().not(":parent");if(B.sort)D=D.sort(B.sort);var F=QB(B.boundingBox?B.boundingBox:{x1:0,y1:0,w:E.width(),h:E.height()}),U={x:F.x1+F.w/2,y:F.y1+F.h/2},z=B.sweep===void 0?2*Math.PI-2*Math.PI/D.length:B.sweep,k=z/Math.max(1,D.length-1),f,l=0;for(var b=0;b<D.length;b++){var M=D[b],Z=M.layoutDimensions(B),J=Z.w,w=Z.h;l=Math.max(l,J,w)}if(J4(B.radius))f=B.radius;else if(D.length<=1)f=0;else f=Math.min(F.h,F.w)/2-l;if(D.length>1&&B.avoidOverlap){l*=1.75;var K=Math.cos(k)-Math.cos(0),Q=Math.sin(k)-Math.sin(0),G=Math.sqrt(l*l/(K*K+Q*Q));f=Math.max(G,f)}var L=function(q,x){var v=B.startAngle+x*k*(C?1:-1),W=f*Math.cos(v),S=f*Math.sin(v),T={x:U.x+W,y:U.y+S};return T};return A.nodes().layoutPositions(this,B,L),this};EK4={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(B){return B.degree()},levelWidth:function(B){return B.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(B,E){return!0},ready:void 0,stop:void 0,transform:function(B,E){return E}};Iy0.prototype.run=function(){var u=this.options,B=u,E=B.counterclockwise!==void 0?!B.counterclockwise:B.clockwise,A=u.cy,C=B.eles,D=C.nodes().not(":parent"),F=QB(B.boundingBox?B.boundingBox:{x1:0,y1:0,w:A.width(),h:A.height()}),U={x:F.x1+F.w/2,y:F.y1+F.h/2},z=[],k=0;for(var f=0;f<D.length;f++){var l=D[f],b=void 0;b=B.concentric(l),z.push({value:b,node:l}),l._private.scratch.concentric=b}D.updateStyle();for(var M=0;M<D.length;M++){var Z=D[M],J=Z.layoutDimensions(B);k=Math.max(k,J.w,J.h)}z.sort(function(q0,m0){return m0.value-q0.value});var w=B.levelWidth(D),K=[[]],Q=K[0];for(var G=0;G<z.length;G++){var L=z[G];if(Q.length>0){var H=Math.abs(Q[0].value-L.value);if(H>=w)Q=[],K.push(Q)}Q.push(L)}var q=k+B.minNodeSpacing;if(!B.avoidOverlap){var x=K.length>0&&K[0].length>1,v=Math.min(F.w,F.h)/2-q,W=v/(K.length+x?1:0);q=Math.min(q,W)}var S=0;for(var T=0;T<K.length;T++){var R=K[T],Y=B.sweep===void 0?2*Math.PI-2*Math.PI/R.length:B.sweep,a=R.dTheta=Y/Math.max(1,R.length-1);if(R.length>1&&B.avoidOverlap){var I=Math.cos(a)-Math.cos(0),O=Math.sin(a)-Math.sin(0),i=Math.sqrt(q*q/(I*I+O*O));S=Math.max(i,S)}R.r=S,S+=q}if(B.equidistant){var N=0,V=0;for(var h=0;h<K.length;h++){var r=K[h],m=r.r-V;N=Math.max(N,m)}V=0;for(var $=0;$<K.length;$++){var y=K[$];if($===0)V=y.r;y.r=V,V+=N}}var p={};for(var e=0;e<K.length;e++){var _=K[e],b0=_.dTheta,B0=_.r;for(var k0=0;k0<_.length;k0++){var f0=_[k0],D0=B.startAngle+(E?1:-1)*b0*k0,P0={x:U.x+B0*Math.cos(D0),y:U.y+B0*Math.sin(D0)};p[f0.node.id()]=P0}}return C.nodes().layoutPositions(this,B,function(q0){var m0=q0.id();return p[m0]}),this};AK4={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(B,E){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(B){return 2048},nodeOverlap:4,idealEdgeLength:function(B){return 32},edgeElasticity:function(B){return 32},nestingFactor:1.2,gravity:1,numIter:1000,initialTemp:1000,coolingFactor:0.99,minTemp:1};ah.prototype.run=function(){var u=this.options,B=u.cy,E=this;if(E.stopped=!1,u.animate===!0||u.animate===!1)E.emit({type:"layoutstart",layout:E});if(u.debug===!0)S20=!0;else S20=!1;var A=CK4(B,E,u);if(S20)FK4(A);if(u.randomize)UK4(A);var C=cz(),D=function(){if(zK4(A,B,u),u.fit===!0)B.fit(u.padding)},F=function(b){if(E.stopped||b>=u.numIter)return!1;if(kK4(A,u),A.temperature=A.temperature*u.coolingFactor,A.temperature<u.minTemp)return!1;return!0},U=function(){if(u.animate===!0||u.animate===!1)D(),E.one("layoutstop",u.stop),E.emit({type:"layoutstop",layout:E});else{var b=u.eles.nodes(),M=jy0(A,u,b);b.layoutPositions(E,u,M)}},z=0,k=!0;if(u.animate===!0){var f=function(){var b=0;while(k&&b<u.refresh)k=F(z),z++,b++;if(!k)or0(A,u),U();else{var M=cz();if(M-C>=u.animationThreshold)D();fh(f)}};f()}else{while(k)k=F(z),z++;or0(A,u),U()}return this};ah.prototype.stop=function(){if(this.stopped=!0,this.thread)this.thread.stop();return this.emit("layoutstop"),this};ah.prototype.destroy=function(){if(this.thread)this.thread.stop();return this};QK4={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(B){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(B,E){return!0},ready:void 0,stop:void 0,transform:function(B,E){return E}};iy0.prototype.run=function(){var u=this.options,B=u,E=u.cy,A=B.eles,C=A.nodes().not(":parent");if(B.sort)C=C.sort(B.sort);var D=QB(B.boundingBox?B.boundingBox:{x1:0,y1:0,w:E.width(),h:E.height()});if(D.h===0||D.w===0)A.nodes().layoutPositions(this,B,function($){return{x:D.x1,y:D.y1}});else{var F=C.size(),U=Math.sqrt(F*D.h/D.w),z=Math.round(U),k=Math.round(D.w/D.h*U),f=function(y){if(y==null)return Math.min(z,k);else{var p=Math.min(z,k);if(p==z)z=y;else k=y}},l=function(y){if(y==null)return Math.max(z,k);else{var p=Math.max(z,k);if(p==z)z=y;else k=y}},b=B.rows,M=B.cols!=null?B.cols:B.columns;if(b!=null&&M!=null)z=b,k=M;else if(b!=null&&M==null)z=b,k=Math.ceil(F/z);else if(b==null&&M!=null)k=M,z=Math.ceil(F/k);else if(k*z>F){var Z=f(),J=l();if((Z-1)*J>=F)f(Z-1);else if((J-1)*Z>=F)l(J-1)}else while(k*z<F){var w=f(),K=l();if((K+1)*w>=F)l(K+1);else f(w+1)}var Q=D.w/k,G=D.h/z;if(B.condense)Q=0,G=0;if(B.avoidOverlap)for(var L=0;L<C.length;L++){var H=C[L],q=H._private.position;if(q.x==null||q.y==null)q.x=0,q.y=0;var x=H.layoutDimensions(B),v=B.avoidOverlapPadding,W=x.w+v,S=x.h+v;Q=Math.max(Q,W),G=Math.max(G,S)}var T={},R=function(y,p){return T["c-"+y+"-"+p]?!0:!1},Y=function(y,p){T["c-"+y+"-"+p]=!0},a=0,I=0,O=function(){if(I++,I>=k)I=0,a++},i={};for(var N=0;N<C.length;N++){var V=C[N],h=B.position(V);if(h&&(h.row!==void 0||h.col!==void 0)){var r={row:h.row,col:h.col};if(r.col===void 0){r.col=0;while(R(r.row,r.col))r.col++}else if(r.row===void 0){r.row=0;while(R(r.row,r.col))r.row++}i[V.id()]=r,Y(r.row,r.col)}}var m=function(y,p){var e,_;if(y.locked()||y.isParent())return!1;var b0=i[y.id()];if(b0)e=b0.col*Q+Q/2+D.x1,_=b0.row*G+G/2+D.y1;else{while(R(a,I))O();e=I*Q+Q/2+D.x1,_=a*G+G/2+D.y1,Y(a,I),O()}return{x:e,y:_}};C.layoutPositions(this,B,m)}return this};GK4={ready:function(){},stop:function(){}};H50.prototype.run=function(){var u=this.options,B=u.eles,E=this;return u.cy,E.emit("layoutstart"),B.nodes().positions(function(){return{x:0,y:0}}),E.one("layoutready",u.ready),E.emit("layoutready"),E.one("layoutstop",u.stop),E.emit("layoutstop"),this};H50.prototype.stop=function(){return this};HK4={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(B,E){return!0},ready:void 0,stop:void 0,transform:function(B,E){return E}};ay0.prototype.run=function(){var u=this.options,B=u.eles,E=B.nodes(),A=H9(u.positions);function C(D){if(u.positions==null)return mM4(D.position());if(A)return u.positions(D);var F=u.positions[D._private.data.id];if(F==null)return null;return F}return E.layoutPositions(this,u,function(D,F){var U=C(D);if(D.locked()||U==null)return!1;return U}),this};LK4={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(B,E){return!0},ready:void 0,stop:void 0,transform:function(B,E){return E}};Vy0.prototype.run=function(){var u=this.options,B=u.cy,E=u.eles,A=QB(u.boundingBox?u.boundingBox:{x1:0,y1:0,w:B.width(),h:B.height()}),C=function(F,U){return{x:A.x1+Math.round(Math.random()*A.w),y:A.y1+Math.round(Math.random()*A.h)}};return E.nodes().layoutPositions(this,u,C),this};qK4=[{name:"breadthfirst",impl:Ty0},{name:"circle",impl:Oy0},{name:"concentric",impl:Iy0},{name:"cose",impl:ah},{name:"grid",impl:iy0},{name:"null",impl:H50},{name:"preset",impl:ay0},{name:"random",impl:Vy0}];hy0.prototype={recalculateRenderedStyle:tr0,notify:function(){this.notifications++},init:tr0,isHeadless:function(){return!0},png:er0,jpg:er0};L50={};L50.arrowShapeWidth=0.3;L50.registerArrowShapes=function(){var u=this.arrowShapes={},B=this,E=function(k,f,l,b,M,Z,J){var w=M.x-l/2-J,K=M.x+l/2+J,Q=M.y-l/2-J,G=M.y+l/2+J,L=w<=k&&k<=K&&Q<=f&&f<=G;return L},A=function(k,f,l,b,M){var Z=k*Math.cos(b)-f*Math.sin(b),J=k*Math.sin(b)+f*Math.cos(b),w=Z*l,K=J*l,Q=w+M.x,G=K+M.y;return{x:Q,y:G}},C=function(k,f,l,b){var M=[];for(var Z=0;Z<k.length;Z+=2){var J=k[Z],w=k[Z+1];M.push(A(J,w,f,l,b))}return M},D=function(k){var f=[];for(var l=0;l<k.length;l++){var b=k[l];f.push(b.x,b.y)}return f},F=function(k){return k.pstyle("width").pfValue*k.pstyle("arrow-scale").pfValue*2},U=function(k,f){if(p4(f))f=u[f];u[k]=k3({name:k,points:[-0.15,-0.3,0.15,-0.3,0.15,0.3,-0.15,0.3],collide:function(b,M,Z,J,w,K){var Q=D(C(this.points,Z+2*K,J,w)),G=M8(b,M,Q);return G},roughCollide:E,draw:function(b,M,Z,J){var w=C(this.points,M,Z,J);B.arrowShapeImpl("polygon")(b,w)},spacing:function(b){return 0},gap:F},f)};U("none",{collide:lh,roughCollide:lh,draw:F50,spacing:Mm0,gap:Mm0}),U("triangle",{points:[-0.15,-0.3,0,0,0.15,-0.3]}),U("arrow","triangle"),U("triangle-backcurve",{points:u.triangle.points,controlPoint:[0,-0.15],roughCollide:E,draw:function(k,f,l,b,M){var Z=C(this.points,f,l,b),J=this.controlPoint,w=A(J[0],J[1],f,l,b);B.arrowShapeImpl(this.name)(k,Z,w)},gap:function(k){return F(k)*0.8}}),U("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(k,f,l,b,M,Z,J){var w=D(C(this.points,l+2*J,b,M)),K=D(C(this.pointsTee,l+2*J,b,M)),Q=M8(k,f,w)||M8(k,f,K);return Q},draw:function(k,f,l,b,M){var Z=C(this.points,f,l,b),J=C(this.pointsTee,f,l,b);B.arrowShapeImpl(this.name)(k,Z,J)}}),U("circle-triangle",{radius:0.15,pointsTr:[0,-0.15,0.15,-0.45,-0.15,-0.45,0,-0.15],collide:function(k,f,l,b,M,Z,J){var w=M,K=Math.pow(w.x-k,2)+Math.pow(w.y-f,2)<=Math.pow((l+2*J)*this.radius,2),Q=D(C(this.points,l+2*J,b,M));return M8(k,f,Q)||K},draw:function(k,f,l,b,M){var Z=C(this.pointsTr,f,l,b);B.arrowShapeImpl(this.name)(k,Z,b.x,b.y,this.radius*f)},spacing:function(k){return B.getArrowWidth(k.pstyle("width").pfValue,k.pstyle("arrow-scale").value)*this.radius}}),U("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(k,f){var l=this.baseCrossLinePts.slice(),b=f/k,M=3,Z=5;return l[M]=l[M]-b,l[Z]=l[Z]-b,l},collide:function(k,f,l,b,M,Z,J){var w=D(C(this.points,l+2*J,b,M)),K=D(C(this.crossLinePts(l,Z),l+2*J,b,M)),Q=M8(k,f,w)||M8(k,f,K);return Q},draw:function(k,f,l,b,M){var Z=C(this.points,f,l,b),J=C(this.crossLinePts(f,M),f,l,b);B.arrowShapeImpl(this.name)(k,Z,J)}}),U("vee",{points:[-0.15,-0.3,0,0,0.15,-0.3,0,-0.15],gap:function(k){return F(k)*0.525}}),U("circle",{radius:0.15,collide:function(k,f,l,b,M,Z,J){var w=M,K=Math.pow(w.x-k,2)+Math.pow(w.y-f,2)<=Math.pow((l+2*J)*this.radius,2);return K},draw:function(k,f,l,b,M){B.arrowShapeImpl(this.name)(k,b.x,b.y,this.radius*f)},spacing:function(k){return B.getArrowWidth(k.pstyle("width").pfValue,k.pstyle("arrow-scale").value)*this.radius}}),U("tee",{points:[-0.15,0,-0.15,-0.1,0.15,-0.1,0.15,0],spacing:function(k){return 1},gap:function(k){return 1}}),U("square",{points:[-0.15,0,0.15,0,0.15,-0.3,-0.15,-0.3]}),U("diamond",{points:[-0.15,-0.15,0,-0.3,0.15,-0.15,0,0],gap:function(k){return k.pstyle("width").pfValue*k.pstyle("arrow-scale").value}}),U("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(k){return 0.95*k.pstyle("width").pfValue*k.pstyle("arrow-scale").value}})};SJ={};SJ.projectIntoViewport=function(u,B){var E=this.cy,A=this.findContainerClientCoords(),C=A[0],D=A[1],F=A[4],U=E.pan(),z=E.zoom(),k=((u-C)/F-U.x)/z,f=((B-D)/F-U.y)/z;return[k,f]};SJ.findContainerClientCoords=function(){if(this.containerBB)return this.containerBB;var u=this.container,B=u.getBoundingClientRect(),E=this.cy.window().getComputedStyle(u),A=function(K){return parseFloat(E.getPropertyValue(K))},C={left:A("padding-left"),right:A("padding-right"),top:A("padding-top"),bottom:A("padding-bottom")},D={left:A("border-left-width"),right:A("border-right-width"),top:A("border-top-width"),bottom:A("border-bottom-width")},F=u.clientWidth,U=u.clientHeight,z=C.left+C.right,k=C.top+C.bottom,f=D.left+D.right,l=B.width/(F+f),b=F-z,M=U-k,Z=B.left+C.left+D.left,J=B.top+C.top+D.top;return this.containerBB=[Z,J,b,M,l]};SJ.invalidateContainerClientCoordsCache=function(){this.containerBB=null};SJ.findNearestElement=function(u,B,E,A){return this.findNearestElements(u,B,E,A)[0]};SJ.findNearestElements=function(u,B,E,A){var C=this,D=this,F=D.getCachedZSortedEles(),U=[],z=D.cy.zoom(),k=D.cy.hasCompoundNodes(),f=(A?24:8)/z,l=(A?8:2)/z,b=(A?8:2)/z,M=1/0,Z,J;if(E)F=F.interactive;function w(x,v){if(x.isNode())if(J)return;else J=x,U.push(x);if(x.isEdge()&&(v==null||v<M))if(Z){if(Z.pstyle("z-compound-depth").value===x.pstyle("z-compound-depth").value&&Z.pstyle("z-compound-depth").value===x.pstyle("z-compound-depth").value){for(var W=0;W<U.length;W++)if(U[W].isEdge()){U[W]=x,Z=x,M=v!=null?v:M;break}}}else U.push(x),Z=x,M=v!=null?v:M}function K(x){var v=x.outerWidth()+2*l,W=x.outerHeight()+2*l,S=v/2,T=W/2,R=x.position(),Y=x.pstyle("corner-radius").value==="auto"?"auto":x.pstyle("corner-radius").pfValue,a=x._private.rscratch;if(R.x-S<=u&&u<=R.x+S&&R.y-T<=B&&B<=R.y+T){var I=D.nodeShapes[C.getNodeShape(x)];if(I.checkPoint(u,B,0,v,W,R.x,R.y,Y,a))return w(x,0),!0}}function Q(x){var v=x._private,W=v.rscratch,S=x.pstyle("width").pfValue,T=x.pstyle("arrow-scale").value,R=S/2+f,Y=R*R,a=R*2,N=v.source,V=v.target,I;if(W.edgeType==="segments"||W.edgeType==="straight"||W.edgeType==="haystack"){var O=W.allpts;for(var i=0;i+3<O.length;i+=2)if(BZ4(u,B,O[i],O[i+1],O[i+2],O[i+3],a)&&Y>(I=FZ4(u,B,O[i],O[i+1],O[i+2],O[i+3])))return w(x,I),!0}else if(W.edgeType==="bezier"||W.edgeType==="multibezier"||W.edgeType==="self"||W.edgeType==="compound"){var O=W.allpts;for(var i=0;i+5<W.allpts.length;i+=4)if(EZ4(u,B,O[i],O[i+1],O[i+2],O[i+3],O[i+4],O[i+5],a)&&Y>(I=DZ4(u,B,O[i],O[i+1],O[i+2],O[i+3],O[i+4],O[i+5])))return w(x,I),!0}var N=N||v.source,V=V||v.target,h=C.getArrowWidth(S,T),r=[{name:"source",x:W.arrowStartX,y:W.arrowStartY,angle:W.srcArrowAngle},{name:"target",x:W.arrowEndX,y:W.arrowEndY,angle:W.tgtArrowAngle},{name:"mid-source",x:W.midX,y:W.midY,angle:W.midsrcArrowAngle},{name:"mid-target",x:W.midX,y:W.midY,angle:W.midtgtArrowAngle}];for(var i=0;i<r.length;i++){var m=r[i],$=D.arrowShapes[x.pstyle(m.name+"-arrow-shape").value],y=x.pstyle("width").pfValue;if($.roughCollide(u,B,h,m.angle,{x:m.x,y:m.y},y,f)&&$.collide(u,B,h,m.angle,{x:m.x,y:m.y},y,f))return w(x),!0}if(k&&U.length>0)K(N),K(V)}function G(x,v,W){return KB(x,v,W)}function L(x,v){var W=x._private,S=b,T;if(v)T=v+"-";else T="";x.boundingBox();var R=W.labelBounds[v||"main"],Y=x.pstyle(T+"label").value,a=x.pstyle("text-events").strValue==="yes";if(!a||!Y)return;var I=G(W.rscratch,"labelX",v),O=G(W.rscratch,"labelY",v),i=G(W.rscratch,"labelAngle",v),N=x.pstyle(T+"text-margin-x").pfValue,V=x.pstyle(T+"text-margin-y").pfValue,h=R.x1-S-N,r=R.x2+S-N,m=R.y1-S-V,$=R.y2+S-V;if(i){var y=Math.cos(i),p=Math.sin(i),e=function(P0,q0){return P0=P0-I,q0=q0-O,{x:P0*y-q0*p+I,y:P0*p+q0*y+O}},_=e(h,m),b0=e(h,$),B0=e(r,m),k0=e(r,$),f0=[_.x+N,_.y+V,B0.x+N,B0.y+V,k0.x+N,k0.y+V,b0.x+N,b0.y+V];if(M8(u,B,f0))return w(x),!0}else if(Tl(R,u,B))return w(x),!0}for(var H=F.length-1;H>=0;H--){var q=F[H];if(q.isNode())K(q)||L(q);else Q(q)||L(q)||L(q,"source")||L(q,"target")}return U};SJ.getAllInBox=function(u,B,E,A){var C=this.getCachedZSortedEles().interactive,D=this.cy.zoom(),F=2/D,U=[],z=Math.min(u,E),k=Math.max(u,E),f=Math.min(B,A),l=Math.max(B,A);u=z,E=k,B=f,A=l;var b=QB({x1:u,y1:B,x2:E,y2:A}),M=[{x:b.x1,y:b.y1},{x:b.x2,y:b.y1},{x:b.x2,y:b.y2},{x:b.x1,y:b.y2}],Z=[[M[0],M[1]],[M[1],M[2]],[M[2],M[3]],[M[3],M[0]]];function J(P0,q0,m0){return KB(P0,q0,m0)}function w(P0,q0){var m0=P0._private,a0=F,_0="";P0.boundingBox();var w0=m0.labelBounds.main;if(!w0)return null;var v0=J(m0.rscratch,"labelX",q0),T0=J(m0.rscratch,"labelY",q0),Z0=J(m0.rscratch,"labelAngle",q0),F0=P0.pstyle(_0+"text-margin-x").pfValue,u0=P0.pstyle(_0+"text-margin-y").pfValue,M0=w0.x1-a0-F0,X0=w0.x2+a0-F0,S0=w0.y1-a0-u0,Y0=w0.y2+a0-u0;if(Z0){var h0=Math.cos(Z0),J0=Math.sin(Z0),n=function(H0,o){return H0=H0-v0,o=o-T0,{x:H0*h0-o*J0+v0,y:H0*J0+o*h0+T0}};return[n(M0,S0),n(X0,S0),n(X0,Y0),n(M0,Y0)]}else return[{x:M0,y:S0},{x:X0,y:S0},{x:X0,y:Y0},{x:M0,y:Y0}]}function K(P0,q0,m0,a0){function _0(w0,v0,T0){return(T0.y-w0.y)*(v0.x-w0.x)>(v0.y-w0.y)*(T0.x-w0.x)}return _0(P0,m0,a0)!==_0(q0,m0,a0)&&_0(P0,q0,m0)!==_0(P0,q0,a0)}for(var Q=0;Q<C.length;Q++){var G=C[Q];if(G.isNode()){var L=G,H=L.pstyle("text-events").strValue==="yes",q=L.pstyle("box-selection").strValue,x=L.pstyle("box-select-labels").strValue==="yes";if(q==="none")continue;var v=(q==="overlap"||x)&&H,W=L.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:v});if(q==="contain"){var S=!1;if(x&&H){var T=w(L);if(T&&x90(T,M))U.push(L),S=!0}if(!S&&_$0(b,W))U.push(L)}else if(q==="overlap"){if(f50(b,W)){var R=L.boundingBox({includeNodes:!0,includeEdges:!0,includeLabels:!1,includeMainLabels:!1,includeSourceLabels:!1,includeTargetLabels:!1}),Y=[{x:R.x1,y:R.y1},{x:R.x2,y:R.y1},{x:R.x2,y:R.y2},{x:R.x1,y:R.y2}];if(x90(Y,M))U.push(L);else{var a=w(L);if(a&&x90(a,M))U.push(L)}}}}else{var I=G,O=I._private,i=O.rscratch,N=I.pstyle("box-selection").strValue;if(N==="none")continue;if(N==="contain"){if(i.startX!=null&&i.startY!=null&&!Tl(b,i.startX,i.startY))continue;if(i.endX!=null&&i.endY!=null&&!Tl(b,i.endX,i.endY))continue;if(i.edgeType==="bezier"||i.edgeType==="multibezier"||i.edgeType==="self"||i.edgeType==="compound"||i.edgeType==="segments"||i.edgeType==="haystack"){var V=O.rstyle.bezierPts||O.rstyle.linePts||O.rstyle.haystackPts,h=!0;for(var r=0;r<V.length;r++)if(!Qm0(b,V[r])){h=!1;break}if(h)U.push(I)}else if(i.edgeType==="straight")U.push(I)}else if(N==="overlap"){var m=!1;if(i.startX!=null&&i.startY!=null&&i.endX!=null&&i.endY!=null&&(Tl(b,i.startX,i.startY)||Tl(b,i.endX,i.endY)))U.push(I),m=!0;else if(!m&&i.edgeType==="haystack"){var $=O.rstyle.haystackPts;for(var y=0;y<$.length;y++)if(Qm0(b,$[y])){U.push(I),m=!0;break}}if(!m){var p=O.rstyle.bezierPts||O.rstyle.linePts||O.rstyle.haystackPts;if((!p||p.length<2)&&i.edgeType==="straight"){if(i.startX!=null&&i.startY!=null&&i.endX!=null&&i.endY!=null)p=[{x:i.startX,y:i.startY},{x:i.endX,y:i.endY}]}if(!p||p.length<2)continue;for(var e=0;e<p.length-1;e++){var _=p[e],b0=p[e+1];for(var B0=0;B0<Z.length;B0++){var k0=W2(Z[B0],2),f0=k0[0],D0=k0[1];if(K(_,b0,f0,D0)){U.push(I),m=!0;break}}if(m)break}}}}}return U};Qh={};Qh.calculateArrowAngles=function(u){var B=u._private.rscratch,E=B.edgeType==="haystack",A=B.edgeType==="bezier",C=B.edgeType==="multibezier",D=B.edgeType==="segments",F=B.edgeType==="compound",U=B.edgeType==="self",z,k,f,l,b,M,K,Q;if(E)f=B.haystackPts[0],l=B.haystackPts[1],b=B.haystackPts[2],M=B.haystackPts[3];else f=B.arrowStartX,l=B.arrowStartY,b=B.arrowEndX,M=B.arrowEndY;if(K=B.midX,Q=B.midY,D)z=f-B.segpts[0],k=l-B.segpts[1];else if(C||F||U||A){var Z=B.allpts,J=Y5(Z[0],Z[2],Z[4],0.1),w=Y5(Z[1],Z[3],Z[5],0.1);z=f-J,k=l-w}else z=f-K,k=l-Q;B.srcArrowAngle=mV(z,k);var{midX:K,midY:Q}=B;if(E)K=(f+b)/2,Q=(l+M)/2;if(z=b-f,k=M-l,D){var Z=B.allpts;if(Z.length/2%2===0){var G=Z.length/2,L=G-2;z=Z[G]-Z[L],k=Z[G+1]-Z[L+1]}else if(B.isRound)z=B.midVector[1],k=-B.midVector[0];else{var G=Z.length/2-1,L=G-2;z=Z[G]-Z[L],k=Z[G+1]-Z[L+1]}}else if(C||F||U){var{allpts:Z,ctrlpts:H}=B,q,x,v,W;if(H.length/2%2===0){var S=Z.length/2-1,T=S+2,R=T+2;q=Y5(Z[S],Z[T],Z[R],0),x=Y5(Z[S+1],Z[T+1],Z[R+1],0),v=Y5(Z[S],Z[T],Z[R],0.0001),W=Y5(Z[S+1],Z[T+1],Z[R+1],0.0001)}else{var T=Z.length/2-1,S=T-2,R=T+2;q=Y5(Z[S],Z[T],Z[R],0.4999),x=Y5(Z[S+1],Z[T+1],Z[R+1],0.4999),v=Y5(Z[S],Z[T],Z[R],0.5),W=Y5(Z[S+1],Z[T+1],Z[R+1],0.5)}z=v-q,k=W-x}if(B.midtgtArrowAngle=mV(z,k),B.midDispX=z,B.midDispY=k,z*=-1,k*=-1,D){var Z=B.allpts;if(Z.length/2%2===0);else if(!B.isRound){var G=Z.length/2-1,Y=G+2;z=-(Z[Y]-Z[G]),k=-(Z[Y+1]-Z[G+1])}}if(B.midsrcArrowAngle=mV(z,k),D)z=b-B.segpts[B.segpts.length-2],k=M-B.segpts[B.segpts.length-1];else if(C||F||U||A){var Z=B.allpts,a=Z.length,J=Y5(Z[a-6],Z[a-4],Z[a-2],0.9),w=Y5(Z[a-5],Z[a-3],Z[a-1],0.9);z=b-J,k=M-w}else z=b-K,k=M-Q;B.tgtArrowAngle=mV(z,k)};Qh.getArrowWidth=Qh.getArrowHeight=function(u,B){var E=this.arrowWidthCache=this.arrowWidthCache||{},A=E[u+", "+B];if(A)return A;return A=Math.max(Math.pow(u*13.37,0.9),29)*B,E[u+", "+B]=A,A};iF={},DA={};vK4=Math.sqrt(2*XW),j7={};j7.findMidptPtsEtc=function(u,B){var{posPts:E,intersectionPts:A,vectorNormInverse:C}=B,D,F=u.pstyle("source-endpoint"),U=u.pstyle("target-endpoint"),z=F.units!=null&&U.units!=null,k=function(H,q,x,v){var W=v-q,S=x-H,T=Math.sqrt(S*S+W*W);return{x:-W/T,y:S/T}},f=u.pstyle("edge-distances").value;switch(f){case"node-position":D=E;break;case"intersection":D=A;break;case"endpoints":{if(z){var l=this.manualEndptToPx(u.source()[0],F),b=W2(l,2),M=b[0],Z=b[1],J=this.manualEndptToPx(u.target()[0],U),w=W2(J,2),K=w[0],Q=w[1],G={x1:M,y1:Z,x2:K,y2:Q};C=k(M,Z,K,Q),D=G}else A6("Edge ".concat(u.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),D=A;break}}return{midptPts:D,vectorNormInverse:C}};j7.findHaystackPoints=function(u){for(var B=0;B<u.length;B++){var E=u[B],A=E._private,C=A.rscratch;if(!C.haystack){var D=Math.random()*2*Math.PI;C.source={x:Math.cos(D),y:Math.sin(D)},D=Math.random()*2*Math.PI,C.target={x:Math.cos(D),y:Math.sin(D)}}var{source:F,target:U}=A,z=F.position(),k=U.position(),f=F.width(),l=U.width(),b=F.height(),M=U.height(),Z=E.pstyle("haystack-radius").value,J=Z/2;C.haystackPts=C.allpts=[C.source.x*f*J+z.x,C.source.y*b*J+z.y,C.target.x*l*J+k.x,C.target.y*M*J+k.y],C.midX=(C.allpts[0]+C.allpts[2])/2,C.midY=(C.allpts[1]+C.allpts[3])/2,C.edgeType="haystack",C.haystack=!0,this.storeEdgeProjections(E),this.calculateArrowAngles(E),this.recalculateEdgeLabelProjections(E),this.calculateLabelAngles(E)}};j7.findSegmentsPoints=function(u,B){var E=u._private.rscratch,A=u.pstyle("segment-weights"),C=u.pstyle("segment-distances"),D=u.pstyle("segment-radii"),F=u.pstyle("radius-type"),U=Math.min(A.pfValue.length,C.pfValue.length),z=D.pfValue[D.pfValue.length-1],k=F.pfValue[F.pfValue.length-1];E.edgeType="segments",E.segpts=[],E.radii=[],E.isArcRadius=[];for(var f=0;f<U;f++){var l=A.pfValue[f],b=C.pfValue[f],M=1-l,Z=l,J=this.findMidptPtsEtc(u,B),w=J.midptPts,K=J.vectorNormInverse,Q={x:w.x1*M+w.x2*Z,y:w.y1*M+w.y2*Z};E.segpts.push(Q.x+K.x*b,Q.y+K.y*b),E.radii.push(D.pfValue[f]!==void 0?D.pfValue[f]:z),E.isArcRadius.push((F.pfValue[f]!==void 0?F.pfValue[f]:k)==="arc-radius")}};j7.findLoopPoints=function(u,B,E,A){var C=u._private.rscratch,D=B.dirCounts,F=B.srcPos,U=u.pstyle("control-point-distances"),z=U?U.pfValue[0]:void 0,k=u.pstyle("loop-direction").pfValue,f=u.pstyle("loop-sweep").pfValue,l=u.pstyle("control-point-step-size").pfValue;C.edgeType="self";var b=E,M=l;if(A)b=0,M=z;var Z=k-Math.PI/2,J=Z-f/2,w=Z+f/2,K=String(k+"_"+f);b=D[K]===void 0?D[K]=0:++D[K],C.ctrlpts=[F.x+Math.cos(J)*1.4*M*(b/3+1),F.y+Math.sin(J)*1.4*M*(b/3+1),F.x+Math.cos(w)*1.4*M*(b/3+1),F.y+Math.sin(w)*1.4*M*(b/3+1)]};j7.findCompoundLoopPoints=function(u,B,E,A){var C=u._private.rscratch;C.edgeType="compound";var{srcPos:D,tgtPos:F,srcW:U,srcH:z,tgtW:k,tgtH:f}=B,l=u.pstyle("control-point-step-size").pfValue,b=u.pstyle("control-point-distances"),M=b?b.pfValue[0]:void 0,Z=E,J=l;if(A)Z=0,J=M;var w=50,K={x:D.x-U/2,y:D.y-z/2},Q={x:F.x-k/2,y:F.y-f/2},G={x:Math.min(K.x,Q.x),y:Math.min(K.y,Q.y)},L=0.5,H=Math.max(L,Math.log(U*XW)),q=Math.max(L,Math.log(k*XW));C.ctrlpts=[G.x,G.y-(1+Math.pow(w,1.12)/100)*J*(Z/3+1)*H,G.x-(1+Math.pow(w,1.12)/100)*J*(Z/3+1)*q,G.y]};j7.findStraightEdgePoints=function(u){u._private.rscratch.edgeType="straight"};j7.findBezierPoints=function(u,B,E,A,C){var D=u._private.rscratch,F=u.pstyle("control-point-step-size").pfValue,U=u.pstyle("control-point-distances"),z=u.pstyle("control-point-weights"),k=U&&z?Math.min(U.value.length,z.value.length):1,f=U?U.pfValue[0]:void 0,l=z.value[0],b=A;D.edgeType=b?"multibezier":"bezier",D.ctrlpts=[];for(var M=0;M<k;M++){var Z=(0.5-B.eles.length/2+E)*F*(C?-1:1),J=void 0,w=k50(Z);if(b)f=U?U.pfValue[M]:F,l=z.value[M];if(A)J=f;else J=f!==void 0?w*f:void 0;var K=J!==void 0?J:Z,Q=1-l,G=l,L=this.findMidptPtsEtc(u,B),H=L.midptPts,q=L.vectorNormInverse,x={x:H.x1*Q+H.x2*G,y:H.y1*Q+H.y2*G};D.ctrlpts.push(x.x+q.x*K,x.y+q.y*K)}};j7.findTaxiPoints=function(u,B){var E=u._private.rscratch;E.edgeType="segments";var A="vertical",C="horizontal",D="leftward",F="rightward",U="downward",z="upward",k="auto",f=B.posPts,l=B.srcW,b=B.srcH,M=B.tgtW,Z=B.tgtH,J=u.pstyle("edge-distances").value,w=J!=="node-position",K=u.pstyle("taxi-direction").value,Q=K,G=u.pstyle("taxi-turn"),L=G.units==="%",H=G.pfValue,q=H<0,x=u.pstyle("taxi-turn-min-distance").pfValue,v=w?(l+M)/2:0,W=w?(b+Z)/2:0,S=f.x2-f.x1,T=f.y2-f.y1,R=function(o,L0){if(o>0)return Math.max(o-L0,0);else return Math.min(o+L0,0)},Y=R(S,v),a=R(T,W),I=!1;if(Q===k)K=Math.abs(Y)>Math.abs(a)?C:A;else if(Q===z||Q===U)K=A,I=!0;else if(Q===D||Q===F)K=C,I=!0;var O=K===A,i=O?a:Y,N=O?T:S,V=k50(N),h=!1;if(!(I&&(L||q))&&(Q===U&&N<0||Q===z&&N>0||Q===D&&N>0||Q===F&&N<0))V*=-1,i=V*Math.abs(i),h=!0;var r;if(L){var m=H<0?1+H:H;r=m*i}else{var $=H<0?i:0;r=$+H*V}var y=function(o){return Math.abs(o)<x||Math.abs(o)>=Math.abs(i)},p=y(r),e=y(Math.abs(i)-Math.abs(r)),_=p||e;if(_&&!h)if(O){var b0=Math.abs(N)<=b/2,B0=Math.abs(S)<=M/2;if(b0){var k0=(f.x1+f.x2)/2,f0=f.y1,D0=f.y2;E.segpts=[k0,f0,k0,D0]}else if(B0){var P0=(f.y1+f.y2)/2,q0=f.x1,m0=f.x2;E.segpts=[q0,P0,m0,P0]}else E.segpts=[f.x1,f.y2]}else{var a0=Math.abs(N)<=l/2,_0=Math.abs(T)<=Z/2;if(a0){var w0=(f.y1+f.y2)/2,v0=f.x1,T0=f.x2;E.segpts=[v0,w0,T0,w0]}else if(_0){var Z0=(f.x1+f.x2)/2,F0=f.y1,u0=f.y2;E.segpts=[Z0,F0,Z0,u0]}else E.segpts=[f.x2,f.y1]}else if(O){var M0=f.y1+r+(w?b/2*V:0),X0=f.x1,S0=f.x2;E.segpts=[X0,M0,S0,M0]}else{var Y0=f.x1+r+(w?l/2*V:0),h0=f.y1,J0=f.y2;E.segpts=[Y0,h0,Y0,J0]}if(E.isRound){var n=u.pstyle("taxi-radius").value,d=u.pstyle("radius-type").value[0]==="arc-radius";E.radii=Array(E.segpts.length/2).fill(n),E.isArcRadius=Array(E.segpts.length/2).fill(d)}};j7.tryToCorrectInvalidPoints=function(u,B){var E=u._private.rscratch;if(E.edgeType==="bezier"){var{srcPos:A,tgtPos:C,srcW:D,srcH:F,tgtW:U,tgtH:z,srcShape:k,tgtShape:f,srcCornerRadius:l,tgtCornerRadius:b,srcRs:M,tgtRs:Z}=B,J=!J4(E.startX)||!J4(E.startY),w=!J4(E.arrowStartX)||!J4(E.arrowStartY),K=!J4(E.endX)||!J4(E.endY),Q=!J4(E.arrowEndX)||!J4(E.arrowEndY),G=3,L=this.getArrowWidth(u.pstyle("width").pfValue,u.pstyle("arrow-scale").value)*this.arrowShapeWidth,H=G*L,q=qJ({x:E.ctrlpts[0],y:E.ctrlpts[1]},{x:E.startX,y:E.startY}),x=q<H,v=qJ({x:E.ctrlpts[0],y:E.ctrlpts[1]},{x:E.endX,y:E.endY}),W=v<H,S=!1;if(J||w||x){S=!0;var T={x:E.ctrlpts[0]-A.x,y:E.ctrlpts[1]-A.y},R=Math.sqrt(T.x*T.x+T.y*T.y),Y={x:T.x/R,y:T.y/R},a=Math.max(D,F),I={x:E.ctrlpts[0]+Y.x*2*a,y:E.ctrlpts[1]+Y.y*2*a},O=k.intersectLine(A.x,A.y,D,F,I.x,I.y,0,l,M);if(x)E.ctrlpts[0]=E.ctrlpts[0]+Y.x*(H-q),E.ctrlpts[1]=E.ctrlpts[1]+Y.y*(H-q);else E.ctrlpts[0]=O[0]+Y.x*H,E.ctrlpts[1]=O[1]+Y.y*H}if(K||Q||W){S=!0;var i={x:E.ctrlpts[0]-C.x,y:E.ctrlpts[1]-C.y},N=Math.sqrt(i.x*i.x+i.y*i.y),V={x:i.x/N,y:i.y/N},h=Math.max(D,F),r={x:E.ctrlpts[0]+V.x*2*h,y:E.ctrlpts[1]+V.y*2*h},m=f.intersectLine(C.x,C.y,U,z,r.x,r.y,0,b,Z);if(W)E.ctrlpts[0]=E.ctrlpts[0]+V.x*(H-v),E.ctrlpts[1]=E.ctrlpts[1]+V.y*(H-v);else E.ctrlpts[0]=m[0]+V.x*H,E.ctrlpts[1]=m[1]+V.y*H}if(S)this.findEndpoints(u)}};j7.storeAllpts=function(u){var B=u._private.rscratch;if(B.edgeType==="multibezier"||B.edgeType==="bezier"||B.edgeType==="self"||B.edgeType==="compound"){B.allpts=[],B.allpts.push(B.startX,B.startY);for(var E=0;E+1<B.ctrlpts.length;E+=2)if(B.allpts.push(B.ctrlpts[E],B.ctrlpts[E+1]),E+3<B.ctrlpts.length)B.allpts.push((B.ctrlpts[E]+B.ctrlpts[E+2])/2,(B.ctrlpts[E+1]+B.ctrlpts[E+3])/2);B.allpts.push(B.endX,B.endY);var A,C;if(B.ctrlpts.length/2%2===0)A=B.allpts.length/2-1,B.midX=B.allpts[A],B.midY=B.allpts[A+1];else A=B.allpts.length/2-3,C=0.5,B.midX=Y5(B.allpts[A],B.allpts[A+2],B.allpts[A+4],C),B.midY=Y5(B.allpts[A+1],B.allpts[A+3],B.allpts[A+5],C)}else if(B.edgeType==="straight")B.allpts=[B.startX,B.startY,B.endX,B.endY],B.midX=(B.startX+B.endX+B.arrowStartX+B.arrowEndX)/4,B.midY=(B.startY+B.endY+B.arrowStartY+B.arrowEndY)/4;else if(B.edgeType==="segments"){if(B.allpts=[],B.allpts.push(B.startX,B.startY),B.allpts.push.apply(B.allpts,B.segpts),B.allpts.push(B.endX,B.endY),B.isRound){B.roundCorners=[];for(var D=2;D+3<B.allpts.length;D+=2){var F=B.radii[D/2-1],U=B.isArcRadius[D/2-1];B.roundCorners.push(q50({x:B.allpts[D-2],y:B.allpts[D-1]},{x:B.allpts[D],y:B.allpts[D+1],radius:F},{x:B.allpts[D+2],y:B.allpts[D+3]},F,U))}}if(B.segpts.length%4===0){var z=B.segpts.length/2,k=z-2;B.midX=(B.segpts[k]+B.segpts[z])/2,B.midY=(B.segpts[k+1]+B.segpts[z+1])/2}else{var f=B.segpts.length/2-1;if(!B.isRound)B.midX=B.segpts[f],B.midY=B.segpts[f+1];else{var l={x:B.segpts[f],y:B.segpts[f+1]},b=B.roundCorners[f/2];if(b.radius===0){var M={x:B.segpts[f+2],y:B.segpts[f+3]};B.midX=l.x,B.midY=l.y,B.midVector=[l.y-M.y,M.x-l.x]}else{var Z=[l.x-b.cx,l.y-b.cy],J=b.radius/Math.sqrt(Math.pow(Z[0],2)+Math.pow(Z[1],2));Z=Z.map(function(w){return w*J}),B.midX=b.cx+Z[0],B.midY=b.cy+Z[1],B.midVector=Z}}}}};j7.checkForInvalidEdgeWarning=function(u){var B=u[0]._private.rscratch;if(B.nodesOverlap||J4(B.startX)&&J4(B.startY)&&J4(B.endX)&&J4(B.endY))B.loggedErr=!1;else if(!B.loggedErr)B.loggedErr=!0,A6("Edge `"+u.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.")};j7.findEdgeControlPoints=function(u){var B=this;if(!u||u.length===0)return;var E=this,A=E.cy,C=A.hasCompoundNodes(),D=new yz,F=function(W,S){return[].concat(zh(W),[S?1:0]).join("-")},U=[],z=[];for(var k=0;k<u.length;k++){var f=u[k],l=f._private,b=f.pstyle("curve-style").value;if(f.removed()||!f.takesUpSpace())continue;if(b==="haystack"){z.push(f);continue}var M=b==="unbundled-bezier"||Rl(b,"segments")||b==="straight"||b==="straight-triangle"||Rl(b,"taxi"),Z=b==="unbundled-bezier"||b==="bezier",J=l.source,w=l.target,K=J.poolIndex(),Q=w.poolIndex(),G=[K,Q].sort(),L=F(G,M),H=D.get(L);if(H==null)H={eles:[]},U.push({pairId:G,edgeIsUnbundled:M}),D.set(L,H);if(H.eles.push(f),M)H.hasUnbundled=!0;if(Z)H.hasBezier=!0}var q=function(){var W=U[x],S=W.pairId,T=W.edgeIsUnbundled,R=F(S,T),Y=D.get(R),a;if(!Y.hasUnbundled){var I=Y.eles[0].parallelEdges().filter(function(d){return d.isBundledBezier()});U50(Y.eles),I.forEach(function(d){return Y.eles.push(d)}),Y.eles.sort(function(d,H0){return d.poolIndex()-H0.poolIndex()})}var O=Y.eles[0],i=O.source(),N=O.target();if(i.poolIndex()>N.poolIndex()){var V=i;i=N,N=V}var h=Y.srcPos=i.position(),r=Y.tgtPos=N.position(),m=Y.srcW=i.outerWidth(),$=Y.srcH=i.outerHeight(),y=Y.tgtW=N.outerWidth(),p=Y.tgtH=N.outerHeight(),e=Y.srcShape=E.nodeShapes[B.getNodeShape(i)],_=Y.tgtShape=E.nodeShapes[B.getNodeShape(N)],b0=Y.srcCornerRadius=i.pstyle("corner-radius").value==="auto"?"auto":i.pstyle("corner-radius").pfValue,B0=Y.tgtCornerRadius=N.pstyle("corner-radius").value==="auto"?"auto":N.pstyle("corner-radius").pfValue,k0=Y.tgtRs=N._private.rscratch,f0=Y.srcRs=i._private.rscratch;Y.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var D0=0;D0<Y.eles.length;D0++){var P0=Y.eles[D0],q0=P0[0]._private.rscratch,m0=P0.pstyle("curve-style").value,a0=m0==="unbundled-bezier"||Rl(m0,"segments")||Rl(m0,"taxi"),_0=!i.same(P0.source());if(!Y.calculatedIntersection&&i!==N&&(Y.hasBezier||Y.hasUnbundled)){Y.calculatedIntersection=!0;var w0=e.intersectLine(h.x,h.y,m,$,r.x,r.y,0,b0,f0),v0=Y.srcIntn=w0,T0=_.intersectLine(r.x,r.y,y,p,h.x,h.y,0,B0,k0),Z0=Y.tgtIntn=T0,F0=Y.intersectionPts={x1:w0[0],x2:T0[0],y1:w0[1],y2:T0[1]},u0=Y.posPts={x1:h.x,x2:r.x,y1:h.y,y2:r.y},M0=T0[1]-w0[1],X0=T0[0]-w0[0],S0=Math.sqrt(X0*X0+M0*M0);if(J4(S0)&&S0>=vK4);else S0=Math.sqrt(Math.max(X0*X0,XW)+Math.max(M0*M0,XW));var Y0=Y.vector={x:X0,y:M0},h0=Y.vectorNorm={x:Y0.x/S0,y:Y0.y/S0},J0={x:-h0.y,y:h0.x};Y.nodesOverlap=!J4(S0)||_.checkPoint(w0[0],w0[1],0,y,p,r.x,r.y,B0,k0)||e.checkPoint(T0[0],T0[1],0,m,$,h.x,h.y,b0,f0),Y.vectorNormInverse=J0,a={nodesOverlap:Y.nodesOverlap,dirCounts:Y.dirCounts,calculatedIntersection:!0,hasBezier:Y.hasBezier,hasUnbundled:Y.hasUnbundled,eles:Y.eles,srcPos:r,srcRs:k0,tgtPos:h,tgtRs:f0,srcW:y,srcH:p,tgtW:m,tgtH:$,srcIntn:Z0,tgtIntn:v0,srcShape:_,tgtShape:e,posPts:{x1:u0.x2,y1:u0.y2,x2:u0.x1,y2:u0.y1},intersectionPts:{x1:F0.x2,y1:F0.y2,x2:F0.x1,y2:F0.y1},vector:{x:-Y0.x,y:-Y0.y},vectorNorm:{x:-h0.x,y:-h0.y},vectorNormInverse:{x:-J0.x,y:-J0.y}}}var n=_0?a:Y;if(q0.nodesOverlap=n.nodesOverlap,q0.srcIntn=n.srcIntn,q0.tgtIntn=n.tgtIntn,q0.isRound=m0.startsWith("round"),C&&(i.isParent()||i.isChild()||N.isParent()||N.isChild())&&(i.parents().anySame(N)||N.parents().anySame(i)||i.same(N)&&i.isParent()))B.findCompoundLoopPoints(P0,n,D0,a0);else if(i===N)B.findLoopPoints(P0,n,D0,a0);else if(m0.endsWith("segments"))B.findSegmentsPoints(P0,n);else if(m0.endsWith("taxi"))B.findTaxiPoints(P0,n);else if(m0==="straight"||!a0&&Y.eles.length%2===1&&D0===Math.floor(Y.eles.length/2))B.findStraightEdgePoints(P0);else B.findBezierPoints(P0,n,D0,a0,_0);B.findEndpoints(P0),B.tryToCorrectInvalidPoints(P0,n),B.checkForInvalidEdgeWarning(P0),B.storeAllpts(P0),B.storeEdgeProjections(P0),B.calculateArrowAngles(P0),B.recalculateEdgeLabelProjections(P0),B.calculateLabelAngles(P0)}};for(var x=0;x<U.length;x++)q();this.findHaystackPoints(z)};j7.getSegmentPoints=function(u){var B=u[0]._private.rscratch;this.recalculateRenderedStyle(u);var E=B.edgeType;if(E==="segments")return yy0(B.segpts)};j7.getControlPoints=function(u){var B=u[0]._private.rscratch;this.recalculateRenderedStyle(u);var E=B.edgeType;if(E==="bezier"||E==="multibezier"||E==="self"||E==="compound")return yy0(B.ctrlpts)};j7.getEdgeMidpoint=function(u){var B=u[0]._private.rscratch;return this.recalculateRenderedStyle(u),{x:B.midX,y:B.midY}};PW={};PW.manualEndptToPx=function(u,B){var E=this,A=u.position(),C=u.outerWidth(),D=u.outerHeight(),F=u._private.rscratch;if(B.value.length===2){var U=[B.pfValue[0],B.pfValue[1]];if(B.units[0]==="%")U[0]=U[0]*C;if(B.units[1]==="%")U[1]=U[1]*D;return U[0]+=A.x,U[1]+=A.y,U}else{var z=B.pfValue[0];z=-Math.PI/2+z;var k=2*Math.max(C,D),f=[A.x+Math.cos(z)*k,A.y+Math.sin(z)*k];return E.nodeShapes[this.getNodeShape(u)].intersectLine(A.x,A.y,C,D,f[0],f[1],0,u.pstyle("corner-radius").value==="auto"?"auto":u.pstyle("corner-radius").pfValue,F)}};PW.findEndpoints=function(u){var B,E,A,C,D=this,F,U=u.source()[0],z=u.target()[0],k=U.position(),f=z.position(),l=u.pstyle("target-arrow-shape").value,b=u.pstyle("source-arrow-shape").value,M=u.pstyle("target-distance-from-node").pfValue,Z=u.pstyle("source-distance-from-node").pfValue,J=U._private.rscratch,w=z._private.rscratch,K=u.pstyle("curve-style").value,Q=u._private.rscratch,G=Q.edgeType,L=Rl(K,"taxi"),H=G==="self"||G==="compound",q=G==="bezier"||G==="multibezier"||H,x=G!=="bezier",v=G==="straight"||G==="segments",W=G==="segments",S=q||x||v,T=H||L,R=u.pstyle("source-endpoint"),Y=T?"outside-to-node":R.value,a=U.pstyle("corner-radius").value==="auto"?"auto":U.pstyle("corner-radius").pfValue,I=u.pstyle("target-endpoint"),O=T?"outside-to-node":I.value,i=z.pstyle("corner-radius").value==="auto"?"auto":z.pstyle("corner-radius").pfValue;Q.srcManEndpt=R,Q.tgtManEndpt=I;var N,V,h,r,m=(B=(I===null||I===void 0||(E=I.pfValue)===null||E===void 0?void 0:E.length)===2?I.pfValue:null)!==null&&B!==void 0?B:[0,0],$=(A=(R===null||R===void 0||(C=R.pfValue)===null||C===void 0?void 0:C.length)===2?R.pfValue:null)!==null&&A!==void 0?A:[0,0];if(q){var y=[Q.ctrlpts[0],Q.ctrlpts[1]],p=x?[Q.ctrlpts[Q.ctrlpts.length-2],Q.ctrlpts[Q.ctrlpts.length-1]]:y;N=p,V=y}else if(v){var e=!W?[f.x+m[0],f.y+m[1]]:Q.segpts.slice(0,2),_=!W?[k.x+$[0],k.y+$[1]]:Q.segpts.slice(Q.segpts.length-2);N=_,V=e}if(O==="inside-to-node")F=[f.x,f.y];else if(I.units)F=this.manualEndptToPx(z,I);else if(O==="outside-to-line")F=Q.tgtIntn;else{if(O==="outside-to-node"||O==="outside-to-node-or-label")h=N;else if(O==="outside-to-line"||O==="outside-to-line-or-label")h=[k.x,k.y];if(F=D.nodeShapes[this.getNodeShape(z)].intersectLine(f.x,f.y,z.outerWidth(),z.outerHeight(),h[0],h[1],0,i,w),O==="outside-to-node-or-label"||O==="outside-to-line-or-label"){var b0=z._private.rscratch,B0=b0.labelWidth,k0=b0.labelHeight,f0=b0.labelX,D0=b0.labelY,P0=B0/2,q0=k0/2,m0=z.pstyle("text-valign").value;if(m0=TH(m0),m0==="top")D0-=q0;else if(m0==="bottom")D0+=q0;var a0=z.pstyle("text-halign").value;if(a0=RH(a0),a0==="left")f0-=P0;else if(a0==="right")f0+=P0;var _0=QW(h[0],h[1],[f0-P0,D0-q0,f0+P0,D0-q0,f0+P0,D0+q0,f0-P0,D0+q0],f.x,f.y);if(_0.length>0){var w0=k,v0=wJ(w0,GH(F)),T0=wJ(w0,GH(_0)),Z0=v0;if(T0<v0)F=_0,Z0=T0;if(_0.length>2){var F0=wJ(w0,{x:_0[2],y:_0[3]});if(F0<Z0)F=[_0[2],_0[3]]}}}}var u0=rV(F,N,D.arrowShapes[l].spacing(u)+M),M0=rV(F,N,D.arrowShapes[l].gap(u)+M);if(Q.endX=M0[0],Q.endY=M0[1],Q.arrowEndX=u0[0],Q.arrowEndY=u0[1],Y==="inside-to-node")F=[k.x,k.y];else if(R.units)F=this.manualEndptToPx(U,R);else if(Y==="outside-to-line")F=Q.srcIntn;else{if(Y==="outside-to-node"||Y==="outside-to-node-or-label")r=V;else if(Y==="outside-to-line"||Y==="outside-to-line-or-label")r=[f.x,f.y];if(F=D.nodeShapes[this.getNodeShape(U)].intersectLine(k.x,k.y,U.outerWidth(),U.outerHeight(),r[0],r[1],0,a,J),Y==="outside-to-node-or-label"||Y==="outside-to-line-or-label"){var X0=U._private.rscratch,S0=X0.labelWidth,Y0=X0.labelHeight,h0=X0.labelX,J0=X0.labelY,n=S0/2,d=Y0/2,H0=U.pstyle("text-valign").value;if(H0=TH(H0),H0==="top")J0-=d;else if(H0==="bottom")J0+=d;var o=U.pstyle("text-halign").value;if(o=RH(o),o==="left")h0-=n;else if(o==="right")h0+=n;var L0=QW(r[0],r[1],[h0-n,J0-d,h0+n,J0-d,h0+n,J0+d,h0-n,J0+d],k.x,k.y);if(L0.length>0){var E0=f,r0=wJ(E0,GH(F)),c0=wJ(E0,GH(L0)),p0=r0;if(c0<r0)F=[L0[0],L0[1]],p0=c0;if(L0.length>2){var g0=wJ(E0,{x:L0[2],y:L0[3]});if(g0<p0)F=[L0[2],L0[3]]}}}}var Bu=rV(F,V,D.arrowShapes[b].spacing(u)+Z),n0=rV(F,V,D.arrowShapes[b].gap(u)+Z);if(Q.startX=n0[0],Q.startY=n0[1],Q.arrowStartX=Bu[0],Q.arrowStartY=Bu[1],S)if(!J4(Q.startX)||!J4(Q.startY)||!J4(Q.endX)||!J4(Q.endY))Q.badLine=!0;else Q.badLine=!1};PW.getSourceEndpoint=function(u){var B=u[0]._private.rscratch;switch(this.recalculateRenderedStyle(u),B.edgeType){case"haystack":return{x:B.haystackPts[0],y:B.haystackPts[1]};default:return{x:B.arrowStartX,y:B.arrowStartY}}};PW.getTargetEndpoint=function(u){var B=u[0]._private.rscratch;switch(this.recalculateRenderedStyle(u),B.edgeType){case"haystack":return{x:B.haystackPts[2],y:B.haystackPts[3]};default:return{x:B.arrowEndX,y:B.arrowEndY}}};X50={};X50.storeEdgeProjections=function(u){var B=u._private,E=B.rscratch,A=E.edgeType;if(B.rstyle.bezierPts=null,B.rstyle.linePts=null,B.rstyle.haystackPts=null,A==="multibezier"||A==="bezier"||A==="self"||A==="compound"){B.rstyle.bezierPts=[];for(var C=0;C+5<E.allpts.length;C+=4)SK4(this,u,E.allpts.slice(C,C+6))}else if(A==="segments"){var D=B.rstyle.linePts=[];for(var C=0;C+1<E.allpts.length;C+=2)D.push({x:E.allpts[C],y:E.allpts[C+1]})}else if(A==="haystack"){var F=E.haystackPts;B.rstyle.haystackPts=[{x:F[0],y:F[1]},{x:F[2],y:F[3]}]}B.rstyle.arrowWidth=this.getArrowWidth(u.pstyle("width").pfValue,u.pstyle("arrow-scale").value)*this.arrowShapeWidth};X50.recalculateEdgeProjections=function(u){this.findEdgeControlPoints(u)};mF={};mF.recalculateNodeLabelProjection=function(u){var B=u.pstyle("label").strValue;if(jl(B))return;var E,A,C=u._private,D=u.width(),F=u.height(),U=u.padding(),z=u.position(),k=u.pstyle("text-halign").strValue,f=u.pstyle("text-valign").strValue,l=C.rscratch,b=C.rstyle;switch(k){case"left":E=z.x-D/2-U;break;case"left-inside":E=z.x-D/2+U;break;case"right":E=z.x+D/2+U;break;case"right-inside":E=z.x+D/2-U;break;default:E=z.x}switch(f){case"top":A=z.y-F/2-U;break;case"top-inside":A=z.y-F/2+U;break;case"bottom":A=z.y+F/2+U;break;case"bottom-inside":A=z.y+F/2-U;break;default:A=z.y}l.labelX=E,l.labelY=A,b.labelX=E,b.labelY=A,this.calculateLabelAngles(u),this.applyLabelDimensions(u)};mF.recalculateEdgeLabelProjections=function(u){var B,E=u._private,A=E.rscratch,C=this,D={mid:u.pstyle("label").strValue,source:u.pstyle("source-label").strValue,target:u.pstyle("target-label").strValue};if(D.mid||D.source||D.target);else return;B={x:A.midX,y:A.midY};var F=function(l,b,M){aF(E.rscratch,l,b,M),aF(E.rstyle,l,b,M)};F("labelX",null,B.x),F("labelY",null,B.y);var U=cy0(A.midDispX,A.midDispY);F("labelAutoAngle",null,U);var z=function(){if(z.cache)return z.cache;var l=[];for(var b=0;b+5<A.allpts.length;b+=4){var M={x:A.allpts[b],y:A.allpts[b+1]},Z={x:A.allpts[b+2],y:A.allpts[b+3]},J={x:A.allpts[b+4],y:A.allpts[b+5]};l.push({p0:M,p1:Z,p2:J,startDist:0,length:0,segments:[]})}var w=E.rstyle.bezierPts,K=C.bezierProjPcts.length;function Q(x,v,W,S,T){var R=qJ(v,W),Y=x.segments[x.segments.length-1],a={p0:v,p1:W,t0:S,t1:T,startDist:Y?Y.startDist+Y.length:0,length:R};x.segments.push(a),x.length+=R}for(var G=0;G<l.length;G++){var L=l[G],H=l[G-1];if(H)L.startDist=H.startDist+H.length;Q(L,L.p0,w[G*K],0,C.bezierProjPcts[0]);for(var q=0;q<K-1;q++)Q(L,w[G*K+q],w[G*K+q+1],C.bezierProjPcts[q],C.bezierProjPcts[q+1]);Q(L,w[G*K+K-1],L.p2,C.bezierProjPcts[K-1],1)}return z.cache=l},k=function(l){var b,M=l==="source";if(!D[l])return;var Z=u.pstyle(l+"-text-offset").pfValue;switch(A.edgeType){case"self":case"compound":case"bezier":case"multibezier":{var J=z(),w,K=0,Q=0;for(var G=0;G<J.length;G++){var L=J[M?G:J.length-1-G];for(var H=0;H<L.segments.length;H++){var q=L.segments[M?H:L.segments.length-1-H],x=G===J.length-1&&H===L.segments.length-1;if(K=Q,Q+=q.length,Q>=Z||x){w={cp:L,segment:q};break}}if(w)break}var{cp:v,segment:W}=w,S=(Z-K)/W.length,T=W.t1-W.t0,R=M?W.t0+T*S:W.t1-T*S;R=KW(0,R,1),B=qH(v.p0,v.p1,v.p2,R),b=WK4(v.p0,v.p1,v.p2,R);break}case"straight":case"segments":case"haystack":{var Y=0,a,I,O,i,N=A.allpts.length;for(var V=0;V+3<N;V+=2){if(M)O={x:A.allpts[V],y:A.allpts[V+1]},i={x:A.allpts[V+2],y:A.allpts[V+3]};else O={x:A.allpts[N-2-V],y:A.allpts[N-1-V]},i={x:A.allpts[N-4-V],y:A.allpts[N-3-V]};if(a=qJ(O,i),I=Y,Y+=a,Y>=Z)break}var h=Z-I,r=h/a;r=KW(0,r,1),B=pM4(O,i,r),b=gy0(O,i);break}}F("labelX",l,B.x),F("labelY",l,B.y),F("labelAutoAngle",l,b)};k("source"),k("target"),this.applyLabelDimensions(u)};mF.applyLabelDimensions=function(u){if(this.applyPrefixedLabelDimensions(u),u.isEdge())this.applyPrefixedLabelDimensions(u,"source"),this.applyPrefixedLabelDimensions(u,"target")};mF.applyPrefixedLabelDimensions=function(u,B){var E=u._private,A=this.getLabelText(u,B),C=LJ(A,u._private.labelDimsKey);if(KB(E.rscratch,"prefixedLabelDimsKey",B)===C)return;aF(E.rscratch,"prefixedLabelDimsKey",B,C);var D=this.calculateLabelDimensions(u,A),F=u.pstyle("line-height").pfValue,U=u.pstyle("font-size").pfValue,z=u.pstyle("text-wrap").strValue,k=KB(E.rscratch,"labelWrapCachedLines",B)||[],f=z!=="wrap"?1:Math.max(k.length,1),l=U*F,b=D.width,M=D.height+(f-1)*(F-1)*U;aF(E.rstyle,"labelWidth",B,b),aF(E.rscratch,"labelWidth",B,b),aF(E.rstyle,"labelHeight",B,M),aF(E.rscratch,"labelHeight",B,M),aF(E.rscratch,"labelLineHeight",B,l),aF(E.rscratch,"labelActualDescent",B,D.labelActualDescent)};mF.getLabelText=function(u,B){var E=u._private,A=B?B+"-":"",C=u.pstyle(A+"label").strValue,D=u.pstyle("text-transform").value,F=function($,y){if(y)return aF(E.rscratch,$,B,y),y;else return KB(E.rscratch,$,B)};if(!C)return"";if(D=="none");else if(D=="uppercase")C=C.toUpperCase();else if(D=="lowercase")C=C.toLowerCase();var U=u.pstyle("text-wrap").value;if(U==="wrap"){var z=F("labelKey");if(z!=null&&F("labelWrapKey")===z)return F("labelWrapCachedText");var k="",f=C.split(`
`),l=u.pstyle("text-max-width").pfValue,b=u.pstyle("text-overflow-wrap").value,M=b==="anywhere",Z=[],J=/[\s\u200b]+|$/g;for(var w=0;w<f.length;w++){var K=f[w],Q=this.calculateLabelDimensions(u,K),G=Q.width;if(M){var L=K.split("").join(k);K=L}if(G>l){var H=K.matchAll(J),q="",x=0,v=Z8(H),W;try{for(v.s();!(W=v.n()).done;){var S=W.value,T=S[0],R=K.substring(x,S.index);x=S.index+T.length;var Y=q.length===0?R:q+R+T,a=this.calculateLabelDimensions(u,Y),I=a.width;if(I<=l)q+=R+T;else{if(q)Z.push(q);q=R+T}}}catch(m){v.e(m)}finally{v.f()}if(!q.match(/^[\s\u200b]+$/))Z.push(q)}else Z.push(K)}F("labelWrapCachedLines",Z),C=F("labelWrapCachedText",Z.join(`
`)),F("labelWrapKey",z)}else if(U==="ellipsis"){var O=u.pstyle("text-max-width").pfValue,i="",N="…",V=!1;if(this.calculateLabelDimensions(u,C).width<O)return C;for(var h=0;h<C.length;h++){var r=this.calculateLabelDimensions(u,i+C[h]+N).width;if(r>O)break;if(i+=C[h],h===C.length-1)V=!0}if(!V)i+=N;return i}return C};mF.getLabelJustification=function(u){var B=u.pstyle("text-justification").strValue,E=u.pstyle("text-halign").strValue;if(B==="auto")if(u.isNode())return Zw4(E);else return"center";else return B};mF.calculateLabelDimensions=function(u,B){var E=this,A=E.cy.window(),C=A.document,D=0,F=u.pstyle("font-style").strValue,U=u.pstyle("font-size").pfValue,z=u.pstyle("font-family").strValue,k=u.pstyle("font-weight").strValue,f=u.pstyle("text-metrics").strValue||"font",l=this.labelCalcCanvas,b=this.labelCalcCanvasContext;if(!l){l=this.labelCalcCanvas=C.createElement("canvas"),b=this.labelCalcCanvasContext=l.getContext("2d");var M=l.style;M.position="absolute",M.left="-9999px",M.top="-9999px",M.zIndex="-1",M.visibility="hidden",M.pointerEvents="none"}b.font="".concat(F," ").concat(k," ").concat(U,"px ").concat(z);var Z=0,J=0,w=B.split(`
`),K=w.length,Q=0,G=0;for(var L=0;L<K;L++){var H=w[L],q=b.measureText(H),x=Math.ceil(q.width),v=U;if(f==="glyph"){if(L===0)G=q.actualBoundingBoxAscent;if(L===K-1)Q=q.actualBoundingBoxDescent}Z=Math.max(x,Z),J+=v}if(f==="glyph")J-=U-G-Q;return Z+=D,J+=D,{width:Z,height:J,labelActualAscent:G,labelActualDescent:Q}};mF.calculateLabelAngle=function(u,B){var E=u._private,A=E.rscratch,C=u.isEdge(),D=B?B+"-":"",F=u.pstyle(D+"text-rotation"),U=F.strValue;if(U==="none")return 0;else if(C&&U==="autorotate")return A.labelAutoAngle;else if(U==="autorotate")return 0;else return F.pfValue};mF.calculateLabelAngles=function(u){var B=this,E=u.isEdge(),A=u._private,C=A.rscratch;if(C.labelAngle=B.calculateLabelAngle(u),E)C.sourceLabelAngle=B.calculateLabelAngle(u,"source"),C.targetLabelAngle=B.calculateLabelAngle(u,"target")};_y0={};_y0.getNodeShape=function(u){var B=this,E=u.pstyle("shape").value;if(E==="cutrectangle"&&(u.width()<C$0||u.height()<C$0)){if(!D$0)A6("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),D$0=!0;return"rectangle"}if(u.isParent())if(E==="rectangle"||E==="roundrectangle"||E==="round-rectangle"||E==="cutrectangle"||E==="cut-rectangle"||E==="barrel")return E;else return"rectangle";if(E==="polygon"){var A=u.pstyle("shape-polygon-points").value;return B.nodeShapes.makePolygon(A).name}return E};Vh={};Vh.registerCalculationListeners=function(){var u=this.cy,B=u.collection(),E=this,A=function(F){var U=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(B.merge(F),U)for(var z=0;z<F.length;z++){var k=F[z],f=k._private,l=f.rstyle;l.clean=!1,l.cleanConnected=!1}};E.binder(u).on("bounds.* dirty.*",function(F){var U=F.target;A(U)}).on("style.* background.*",function(F){var U=F.target;A(U,!1)});var C=function(F){if(F){var U=E.onUpdateEleCalcsFns;B.cleanStyle();for(var z=0;z<B.length;z++){var k=B[z],f=k._private.rstyle;if(k.isNode()&&!f.cleanConnected)A(k.connectedEdges()),f.cleanConnected=!0}if(U)for(var l=0;l<U.length;l++){var b=U[l];b(F,B)}E.recalculateRenderedStyle(B),B=u.collection()}};E.flushRenderedStyleQueue=function(){C(!0)},E.beforeRender(C,E.beforeRenderPriorities.eleCalcs)};Vh.onUpdateEleCalcs=function(u){var B=this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[];B.push(u)};Vh.recalculateRenderedStyle=function(u,B){var E=function(L){return L._private.rstyle.cleanConnected};if(u.length===0)return;var A=[],C=[];if(this.destroyed)return;if(B===void 0)B=!0;for(var D=0;D<u.length;D++){var F=u[D],U=F._private,z=U.rstyle;if(F.isEdge()&&(!E(F.source())||!E(F.target())))z.clean=!1;if(F.isEdge()&&F.isBundledBezier()){if(F.parallelEdges().some(function(G){return!G._private.rstyle.clean&&G.isBundledBezier()}))z.clean=!1}if(B&&z.clean||F.removed())continue;if(F.pstyle("display").value==="none")continue;if(U.group==="nodes")C.push(F);else A.push(F);z.clean=!0}for(var k=0;k<C.length;k++){var f=C[k],l=f._private,b=l.rstyle,M=f.position();this.recalculateNodeLabelProjection(f),b.nodeX=M.x,b.nodeY=M.y,b.nodeW=f.pstyle("width").pfValue,b.nodeH=f.pstyle("height").pfValue}this.recalculateEdgeProjections(A);for(var Z=0;Z<A.length;Z++){var J=A[Z],w=J._private,K=w.rstyle,Q=w.rscratch;K.srcX=Q.arrowStartX,K.srcY=Q.arrowStartY,K.tgtX=Q.arrowEndX,K.tgtY=Q.arrowEndY,K.midX=Q.midX,K.midY=Q.midY,K.labelAngle=Q.labelAngle,K.sourceLabelAngle=Q.sourceLabelAngle,K.targetLabelAngle=Q.targetLabelAngle}};hh={};hh.updateCachedGrabbedEles=function(){var u=this.cachedZSortedEles;if(!u)return;u.drag=[],u.nondrag=[];var B=[];for(var E=0;E<u.length;E++){var A=u[E],C=A._private.rscratch;if(A.grabbed()&&!A.isParent())B.push(A);else if(C.inDragLayer)u.drag.push(A);else u.nondrag.push(A)}for(var E=0;E<B.length;E++){var A=B[E];u.drag.push(A)}};hh.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null};hh.getCachedZSortedEles=function(u){if(u||!this.cachedZSortedEles){var B=this.cy.mutableElements().toArray();B.sort(Wy0),B.interactive=B.filter(function(E){return E.interactive()}),this.cachedZSortedEles=B,this.updateCachedGrabbedEles()}else B=this.cachedZSortedEles;return B};ny0={};[SJ,Qh,j7,PW,X50,mF,_y0,Vh,hh].forEach(function(u){k3(ny0,u)});py0={};py0.getCachedImage=function(u,B,E){var A=this,C=A.imageCache=A.imageCache||{},D=C[u];if(D){if(!D.image.complete)D.image.addEventListener("load",E);return D.image}else{D=C[u]=C[u]||{};var F=D.image=new Image;F.addEventListener("load",E),F.addEventListener("error",function(){F.error=!0});var U="data:",z=u.substring(0,U.length).toLowerCase()===U;if(!z)B=B==="null"?null:B,F.crossOrigin=B;return F.src=u,F}};NH={};NH.registerBinding=function(u,B,E,A){var C=Array.prototype.slice.apply(arguments,[1]);if(Array.isArray(u)){var D=[];for(var F=0;F<u.length;F++){var U=u[F];if(U!==void 0){var z=this.binder(U);D.push(z.on.apply(z,C))}}return D}var z=this.binder(u);return z.on.apply(z,C)};NH.binder=function(u){var B=this,E=B.cy.window(),A=u===E||u===E.document||u===E.document.body||ab4(u);if(B.supportsPassiveEvents==null){var C=!1;try{var D=Object.defineProperty({},"passive",{get:function(){return C=!0,!0}});E.addEventListener("test",null,D)}catch(U){}B.supportsPassiveEvents=C}var F=function(z,k,f){var l=Array.prototype.slice.call(arguments);if(A&&B.supportsPassiveEvents)l[2]={capture:f!=null?f:!1,passive:!1,once:!1};return B.bindings.push({target:u,args:l}),(u.addEventListener||u.on).apply(u,l),this};return{on:F,addEventListener:F,addListener:F,bind:F}};NH.nodeIsDraggable=function(u){return u&&u.isNode()&&!u.locked()&&u.grabbable()};NH.nodeIsGrabbable=function(u){return this.nodeIsDraggable(u)&&u.interactive()};NH.load=function(){var u=this,B=u.cy.window(),E=function(n){return n.selected()},A=function(n){var d=n.getRootNode();if(d&&d.nodeType===11&&d.host!==void 0)return d},C=function(n,d,H0,o){if(n==null)n=u.cy;for(var L0=0;L0<d.length;L0++){var E0=d[L0];n.emit({originalEvent:H0,type:E0,position:o})}},D=function(n){return n.shiftKey||n.metaKey||n.ctrlKey},F=function(n,d){var H0=!0;if(u.cy.hasCompoundNodes()&&n&&n.pannable())for(var o=0;d&&o<d.length;o++){var n=d[o];if(n.isNode()&&n.isParent()&&!n.pannable()){H0=!1;break}}else H0=!0;return H0},U=function(n){n[0]._private.rscratch.inDragLayer=!0},z=function(n){n[0]._private.rscratch.inDragLayer=!1},k=function(n){n[0]._private.rscratch.isGrabTarget=!0},f=function(n){n[0]._private.rscratch.isGrabTarget=!1},l=function(n,d){var H0=d.addToList,o=H0.has(n);if(!o&&n.grabbable()&&!n.locked())H0.merge(n),YK4(n)},b=function(n,d){if(!n.cy().hasCompoundNodes())return;if(d.inDragLayer==null&&d.addToList==null)return;var H0=n.descendants();if(d.inDragLayer)H0.forEach(U),H0.connectedEdges().forEach(U);if(d.addToList)l(H0,d)},M=function(n,d){d=d||{};var H0=n.cy().hasCompoundNodes();if(d.inDragLayer)n.forEach(U),n.neighborhood().stdFilter(function(o){return!H0||o.isEdge()}).forEach(U);if(d.addToList)n.forEach(function(o){l(o,d)});b(n,d),w(n,{inDragLayer:d.inDragLayer}),u.updateCachedGrabbedEles()},Z=M,J=function(n){if(!n)return;u.getCachedZSortedEles().forEach(function(d){RK4(d),z(d),f(d)}),u.updateCachedGrabbedEles()},w=function(n,d){if(d.inDragLayer==null&&d.addToList==null)return;if(!n.cy().hasCompoundNodes())return;var H0=n.ancestors().orphans();if(H0.same(n))return;var o=H0.descendants().spawnSelf().merge(H0).unmerge(n).unmerge(n.descendants()),L0=o.connectedEdges();if(d.inDragLayer)L0.forEach(U),o.forEach(U);if(d.addToList)o.forEach(function(E0){l(E0,d)})},K=function(){if(document.activeElement!=null&&document.activeElement.blur!=null)document.activeElement.blur()},Q=typeof MutationObserver<"u",G=typeof ResizeObserver<"u";if(Q){if(u.removeObserver=new MutationObserver(function(J0){for(var n=0;n<J0.length;n++){var d=J0[n],H0=d.removedNodes;if(H0)for(var o=0;o<H0.length;o++){var L0=H0[o];if(L0===u.container){u.destroy();break}}}}),u.container.parentNode)u.removeObserver.observe(u.container.parentNode,{childList:!0})}else u.registerBinding(u.container,"DOMNodeRemoved",function(J0){u.destroy()});var L=RW(function(){u.cy.resize()},100);if(Q)u.styleObserver=new MutationObserver(L),u.styleObserver.observe(u.container,{attributes:!0});if(u.registerBinding(B,"resize",L),G)u.resizeObserver=new ResizeObserver(L),u.resizeObserver.observe(u.container);var H=function(n,d){while(n!=null)d(n),n=n.parentNode},q=function(){u.invalidateContainerClientCoordsCache()};H(u.container,function(J0){u.registerBinding(J0,"transitionend",q),u.registerBinding(J0,"animationend",q),u.registerBinding(J0,"scroll",q)}),u.registerBinding(u.container,"contextmenu",function(J0){J0.preventDefault()});var x=function(){return u.selection[4]!==0},v=function(n){var d=u.findContainerClientCoords(),H0=d[0],o=d[1],L0=d[2],E0=d[3],r0=n.touches?n.touches:[n],c0=!1;for(var p0=0;p0<r0.length;p0++){var g0=r0[p0];if(H0<=g0.clientX&&g0.clientX<=H0+L0&&o<=g0.clientY&&g0.clientY<=o+E0){c0=!0;break}}if(!c0)return!1;var Bu=u.container,n0=n.target,e0=n0.parentNode,t0=!1;while(e0){if(e0===Bu){t0=!0;break}e0=e0.parentNode}if(!t0)return!1;return!0};u.registerBinding(u.container,"mousedown",function(n){if(!v(n))return;if(u.hoverData.which===1&&n.which!==1)return;n.preventDefault(),K(),u.hoverData.capture=!0,u.hoverData.which=n.which;var d=u.cy,H0=[n.clientX,n.clientY],o=u.projectIntoViewport(H0[0],H0[1]),L0=u.selection,E0=u.findNearestElements(o[0],o[1],!0,!1),r0=E0[0],c0=u.dragData.possibleDragElements;u.hoverData.mdownPos=o,u.hoverData.mdownGPos=H0;var p0=function(zu){return{originalEvent:n,type:zu,position:{x:o[0],y:o[1]}}},g0=function(){u.hoverData.tapholdCancelled=!1,clearTimeout(u.hoverData.tapholdTimeout),u.hoverData.tapholdTimeout=setTimeout(function(){if(u.hoverData.tapholdCancelled)return;else{var zu=u.hoverData.down;if(zu)zu.emit(p0("taphold"));else d.emit(p0("taphold"))}},u.tapholdDuration)};if(n.which==3){u.hoverData.cxtStarted=!0;var Bu={originalEvent:n,type:"cxttapstart",position:{x:o[0],y:o[1]}};if(r0)r0.activate(),r0.emit(Bu),u.hoverData.down=r0;else d.emit(Bu);u.hoverData.downTime=new Date().getTime(),u.hoverData.cxtDragged=!1}else if(n.which==1){if(r0)r0.activate();{if(r0!=null){if(u.nodeIsGrabbable(r0)){var n0=function(zu){zu.emit(p0("grab"))};if(k(r0),!r0.selected())c0=u.dragData.possibleDragElements=d.collection(),Z(r0,{addToList:c0}),r0.emit(p0("grabon")).emit(p0("grab"));else{c0=u.dragData.possibleDragElements=d.collection();var e0=d.$(function(t0){return t0.isNode()&&t0.selected()&&u.nodeIsGrabbable(t0)});M(e0,{addToList:c0}),r0.emit(p0("grabon")),e0.forEach(n0)}u.redrawHint("eles",!0),u.redrawHint("drag",!0)}}u.hoverData.down=r0,u.hoverData.downs=E0,u.hoverData.downTime=new Date().getTime()}if(C(r0,["mousedown","tapstart","vmousedown"],n,{x:o[0],y:o[1]}),r0==null)L0[4]=1,u.data.bgActivePosistion={x:o[0],y:o[1]},u.redrawHint("select",!0),u.redraw();else if(r0.pannable())L0[4]=1;g0()}L0[0]=L0[2]=o[0],L0[1]=L0[3]=o[1]},!1);var W=A(u.container);u.registerBinding([B,W],"mousemove",function(n){var d=u.hoverData.capture;if(!d&&!v(n))return;var H0=!1,o=u.cy,L0=o.zoom(),E0=[n.clientX,n.clientY],r0=u.projectIntoViewport(E0[0],E0[1]),c0=u.hoverData.mdownPos,p0=u.hoverData.mdownGPos,g0=u.selection,Bu=null;if(!u.hoverData.draggingEles&&!u.hoverData.dragging&&!u.hoverData.selecting)Bu=u.findNearestElement(r0[0],r0[1],!0,!1);var n0=u.hoverData.last,e0=u.hoverData.down,t0=[r0[0]-g0[2],r0[1]-g0[3]],zu=u.dragData.possibleDragElements,W0;if(p0){var $u=E0[0]-p0[0],i0=$u*$u,vu=E0[1]-p0[1],cu=vu*vu,Du=i0+cu;u.hoverData.isOverThresholdDrag=W0=Du>=u.desktopTapThreshold2}var Nu=D(n);if(W0)u.hoverData.tapholdCancelled=!0;var du=function(){var ru=u.hoverData.dragDelta=u.hoverData.dragDelta||[];if(ru.length===0)ru.push(t0[0]),ru.push(t0[1]);else ru[0]+=t0[0],ru[1]+=t0[1]};H0=!0,C(Bu,["mousemove","vmousemove","tapdrag"],n,{x:r0[0],y:r0[1]});var Iu=function(ru){return{originalEvent:n,type:ru,position:{x:r0[0],y:r0[1]}}},x0=function(){if(u.data.bgActivePosistion=void 0,!u.hoverData.selecting)o.emit(Iu("boxstart"));g0[4]=1,u.hoverData.selecting=!0,u.redrawHint("select",!0),u.redraw()};if(u.hoverData.which===3){if(W0){var Tu=Iu("cxtdrag");if(e0)e0.emit(Tu);else o.emit(Tu);if(u.hoverData.cxtDragged=!0,!u.hoverData.cxtOver||Bu!==u.hoverData.cxtOver){if(u.hoverData.cxtOver)u.hoverData.cxtOver.emit(Iu("cxtdragout"));if(u.hoverData.cxtOver=Bu,Bu)Bu.emit(Iu("cxtdragover"))}}}else if(u.hoverData.dragging){if(H0=!0,o.panningEnabled()&&o.userPanningEnabled()){var Vu;if(u.hoverData.justStartedPan){var Zu=u.hoverData.mdownPos;Vu={x:(r0[0]-Zu[0])*L0,y:(r0[1]-Zu[1])*L0},u.hoverData.justStartedPan=!1}else Vu={x:t0[0]*L0,y:t0[1]*L0};o.panBy(Vu),o.emit(Iu("dragpan")),u.hoverData.dragged=!0}r0=u.projectIntoViewport(n.clientX,n.clientY)}else if(g0[4]==1&&(e0==null||e0.pannable())){if(W0){if(!u.hoverData.dragging&&o.boxSelectionEnabled()&&(Nu||!o.panningEnabled()||!o.userPanningEnabled()))x0();else if(!u.hoverData.selecting&&o.panningEnabled()&&o.userPanningEnabled()){var I0=F(e0,u.hoverData.downs);if(I0)u.hoverData.dragging=!0,u.hoverData.justStartedPan=!0,g0[4]=0,u.data.bgActivePosistion=GH(c0),u.redrawHint("select",!0),u.redraw()}if(e0&&e0.pannable()&&e0.active())e0.unactivate()}}else{if(e0&&e0.pannable()&&e0.active())e0.unactivate();if((!e0||!e0.grabbed())&&Bu!=n0){if(n0)C(n0,["mouseout","tapdragout"],n,{x:r0[0],y:r0[1]});if(Bu)C(Bu,["mouseover","tapdragover"],n,{x:r0[0],y:r0[1]});u.hoverData.last=Bu}if(e0)if(W0){if(o.boxSelectionEnabled()&&Nu){if(e0&&e0.grabbed()){if(J(zu),e0.emit(Iu("freeon")),zu.emit(Iu("free")),u.dragData.didDrag)e0.emit(Iu("dragfreeon")),zu.emit(Iu("dragfree"))}x0()}else if(e0&&e0.grabbed()&&u.nodeIsDraggable(e0)){var lu=!u.dragData.didDrag;if(lu)u.redrawHint("eles",!0);if(u.dragData.didDrag=!0,!u.hoverData.draggingEles)M(zu,{inDragLayer:!0});var Hu={x:0,y:0};if(J4(t0[0])&&J4(t0[1])){if(Hu.x+=t0[0],Hu.y+=t0[1],lu){var Ru=u.hoverData.dragDelta;if(Ru&&J4(Ru[0])&&J4(Ru[1]))Hu.x+=Ru[0],Hu.y+=Ru[1]}}u.hoverData.draggingEles=!0,zu.silentShift(Hu).emit(Iu("position")).emit(Iu("drag")),u.redrawHint("drag",!0),u.redraw()}}else du();H0=!0}if(g0[2]=r0[0],g0[3]=r0[1],H0){if(n.stopPropagation)n.stopPropagation();if(n.preventDefault)n.preventDefault();return!1}},!1);var S,T,R;u.registerBinding(B,"mouseup",function(n){if(u.hoverData.which===1&&n.which!==1&&u.hoverData.capture)return;var d=u.hoverData.capture;if(!d)return;u.hoverData.capture=!1;var H0=u.cy,o=u.projectIntoViewport(n.clientX,n.clientY),L0=u.selection,E0=u.findNearestElement(o[0],o[1],!0,!1),r0=u.dragData.possibleDragElements,c0=u.hoverData.down,p0=D(n);if(u.data.bgActivePosistion)u.redrawHint("select",!0),u.redraw();if(u.hoverData.tapholdCancelled=!0,u.data.bgActivePosistion=void 0,c0)c0.unactivate();var g0=function($u){return{originalEvent:n,type:$u,position:{x:o[0],y:o[1]}}};if(u.hoverData.which===3){var Bu=g0("cxttapend");if(c0)c0.emit(Bu);else H0.emit(Bu);if(!u.hoverData.cxtDragged){var n0=g0("cxttap");if(c0)c0.emit(n0);else H0.emit(n0)}u.hoverData.cxtDragged=!1,u.hoverData.which=null}else if(u.hoverData.which===1){if(C(E0,["mouseup","tapend","vmouseup"],n,{x:o[0],y:o[1]}),!u.dragData.didDrag&&!u.hoverData.dragged&&!u.hoverData.selecting&&!u.hoverData.isOverThresholdDrag)if(C(c0,["click","tap","vclick"],n,{x:o[0],y:o[1]}),T=!1,n.timeStamp-R<=H0.multiClickDebounceTime())S&&clearTimeout(S),T=!0,R=null,C(c0,["dblclick","dbltap","vdblclick"],n,{x:o[0],y:o[1]});else S=setTimeout(function(){if(T)return;C(c0,["oneclick","onetap","voneclick"],n,{x:o[0],y:o[1]})},H0.multiClickDebounceTime()),R=n.timeStamp;if(c0==null&&!u.dragData.didDrag&&!u.hoverData.selecting&&!u.hoverData.dragged&&!D(n)){if(H0.$(E).unselect(["tapunselect"]),r0.length>0)u.redrawHint("eles",!0);u.dragData.possibleDragElements=r0=H0.collection()}if(E0==c0&&!u.dragData.didDrag&&!u.hoverData.selecting){if(E0!=null&&E0._private.selectable){if(u.hoverData.dragging);else if(H0.selectionType()==="additive"||p0)if(E0.selected())E0.unselect(["tapunselect"]);else E0.select(["tapselect"]);else if(!p0)H0.$(E).unmerge(E0).unselect(["tapunselect"]),E0.select(["tapselect"]);u.redrawHint("eles",!0)}}if(u.hoverData.selecting){var e0=H0.collection(u.getAllInBox(L0[0],L0[1],L0[2],L0[3]));if(u.redrawHint("select",!0),e0.length>0)u.redrawHint("eles",!0);H0.emit(g0("boxend"));var t0=function($u){return $u.selectable()&&!$u.selected()};if(H0.selectionType()==="additive")e0.emit(g0("box")).stdFilter(t0).select().emit(g0("boxselect"));else{if(!p0)H0.$(E).unmerge(e0).unselect();e0.emit(g0("box")).stdFilter(t0).select().emit(g0("boxselect"))}u.redraw()}if(u.hoverData.dragging)u.hoverData.dragging=!1,u.redrawHint("select",!0),u.redrawHint("eles",!0),u.redraw();if(!L0[4]){u.redrawHint("drag",!0),u.redrawHint("eles",!0);var zu=c0&&c0.grabbed();if(J(r0),zu){if(c0.emit(g0("freeon")),r0.emit(g0("free")),u.dragData.didDrag)c0.emit(g0("dragfreeon")),r0.emit(g0("dragfree"))}}}L0[4]=0,u.hoverData.down=null,u.hoverData.cxtStarted=!1,u.hoverData.draggingEles=!1,u.hoverData.selecting=!1,u.hoverData.isOverThresholdDrag=!1,u.dragData.didDrag=!1,u.hoverData.dragged=!1,u.hoverData.dragDelta=[],u.hoverData.mdownPos=null,u.hoverData.mdownGPos=null,u.hoverData.which=null},!1);var Y=[],a=4,I,O=1e5,i=function(n){var d=Math.abs(n[0]);for(var H0=1;H0<n.length;H0++)if(Math.abs(n[H0])!==d)return!1;return!0},N=function(n){var d=!1,H0=n.deltaY;if(H0==null){if(n.wheelDeltaY!=null)H0=n.wheelDeltaY/4;else if(n.wheelDelta!=null)H0=n.wheelDelta/4}if(H0===0)return;if(I==null)if(Y.length>=a){I=!1;var o=Y;if(o[0]>=5){var L0;if(i(o))L0=o[0];else L0=gM4(o);if(L0>1)I=!0,O=L0}}else Y.push(Math.abs(H0)),d=!0;else if(I)O=Math.min(Math.abs(H0),O);if(u.scrollingPage)return;var E0=u.cy,r0=E0.zoom(),c0=E0.pan(),p0=u.projectIntoViewport(n.clientX,n.clientY),g0=[p0[0]*r0+c0.x,p0[1]*r0+c0.y];if(u.hoverData.draggingEles||u.hoverData.dragging||u.hoverData.cxtStarted||x()){n.preventDefault();return}if(E0.panningEnabled()&&E0.userPanningEnabled()&&E0.zoomingEnabled()&&E0.userZoomingEnabled()){n.preventDefault(),u.data.wheelZooming=!0,clearTimeout(u.data.wheelTimeout),u.data.wheelTimeout=setTimeout(function(){u.data.wheelZooming=!1,u.redrawHint("eles",!0),u.redraw()},150);var Bu;if(d&&Math.abs(H0)>5)H0=k50(H0)*5;if(Bu=H0/-250,I)Bu/=O,Bu*=3;Bu=Bu*u.wheelSensitivity;var n0=n.deltaMode===1;if(n0)Bu*=33;var e0=E0.zoom()*Math.pow(10,Bu);if(n.type==="gesturechange")e0=u.gestureStartZoom*n.scale;E0.zoom({level:e0,renderedPosition:{x:g0[0],y:g0[1]}}),E0.emit({type:n.type==="gesturechange"?"pinchzoom":"scrollzoom",originalEvent:n,position:{x:p0[0],y:p0[1]}})}};u.registerBinding(u.container,"wheel",N,!0),u.registerBinding(B,"scroll",function(n){u.scrollingPage=!0,clearTimeout(u.scrollingPageTimeout),u.scrollingPageTimeout=setTimeout(function(){u.scrollingPage=!1},250)},!0),u.registerBinding(u.container,"gesturestart",function(n){if(u.gestureStartZoom=u.cy.zoom(),!u.hasTouchStarted)n.preventDefault()},!0),u.registerBinding(u.container,"gesturechange",function(J0){if(!u.hasTouchStarted)N(J0)},!0),u.registerBinding(u.container,"mouseout",function(n){var d=u.projectIntoViewport(n.clientX,n.clientY);u.cy.emit({originalEvent:n,type:"mouseout",position:{x:d[0],y:d[1]}})},!1),u.registerBinding(u.container,"mouseover",function(n){var d=u.projectIntoViewport(n.clientX,n.clientY);u.cy.emit({originalEvent:n,type:"mouseover",position:{x:d[0],y:d[1]}})},!1);var V,h,r,m,$,y,p,e,_,b0,B0,k0,f0,D0=function(n,d,H0,o){return Math.sqrt((H0-n)*(H0-n)+(o-d)*(o-d))},P0=function(n,d,H0,o){return(H0-n)*(H0-n)+(o-d)*(o-d)},q0;u.registerBinding(u.container,"touchstart",q0=function(n){if(u.hasTouchStarted=!0,!v(n))return;K(),u.touchData.capture=!0,u.data.bgActivePosistion=void 0;var d=u.cy,H0=u.touchData.now,o=u.touchData.earlier;if(n.touches[0]){var L0=u.projectIntoViewport(n.touches[0].clientX,n.touches[0].clientY);H0[0]=L0[0],H0[1]=L0[1]}if(n.touches[1]){var L0=u.projectIntoViewport(n.touches[1].clientX,n.touches[1].clientY);H0[2]=L0[0],H0[3]=L0[1]}if(n.touches[2]){var L0=u.projectIntoViewport(n.touches[2].clientX,n.touches[2].clientY);H0[4]=L0[0],H0[5]=L0[1]}var E0=function(Nu){return{originalEvent:n,type:Nu,position:{x:H0[0],y:H0[1]}}};if(n.touches[1]){u.touchData.singleTouchMoved=!0,J(u.dragData.touchDragEles);var r0=u.findContainerClientCoords();_=r0[0],b0=r0[1],B0=r0[2],k0=r0[3],V=n.touches[0].clientX-_,h=n.touches[0].clientY-b0,r=n.touches[1].clientX-_,m=n.touches[1].clientY-b0,f0=0<=V&&V<=B0&&0<=r&&r<=B0&&0<=h&&h<=k0&&0<=m&&m<=k0;var c0=d.pan(),p0=d.zoom();$=D0(V,h,r,m),y=P0(V,h,r,m),p=[(V+r)/2,(h+m)/2],e=[(p[0]-c0.x)/p0,(p[1]-c0.y)/p0];var g0=200,Bu=g0*g0;if(y<Bu&&!n.touches[2]){var n0=u.findNearestElement(H0[0],H0[1],!0,!0),e0=u.findNearestElement(H0[2],H0[3],!0,!0);if(n0&&n0.isNode())n0.activate().emit(E0("cxttapstart")),u.touchData.start=n0;else if(e0&&e0.isNode())e0.activate().emit(E0("cxttapstart")),u.touchData.start=e0;else d.emit(E0("cxttapstart"));if(u.touchData.start)u.touchData.start._private.grabbed=!1;u.touchData.cxt=!0,u.touchData.cxtDragged=!1,u.data.bgActivePosistion=void 0,u.redraw();return}}if(n.touches[2]){if(d.boxSelectionEnabled())n.preventDefault()}else if(n.touches[1]);else if(n.touches[0]){var t0=u.findNearestElements(H0[0],H0[1],!0,!0),zu=t0[0];if(zu!=null){if(zu.activate(),u.touchData.start=zu,u.touchData.starts=t0,u.nodeIsGrabbable(zu)){var W0=u.dragData.touchDragEles=d.collection(),$u=null;if(u.redrawHint("eles",!0),u.redrawHint("drag",!0),zu.selected())$u=d.$(function(Du){return Du.selected()&&u.nodeIsGrabbable(Du)}),M($u,{addToList:W0});else Z(zu,{addToList:W0});if(k(zu),zu.emit(E0("grabon")),$u)$u.forEach(function(Du){Du.emit(E0("grab"))});else zu.emit(E0("grab"))}}if(C(zu,["touchstart","tapstart","vmousedown"],n,{x:H0[0],y:H0[1]}),zu==null)u.data.bgActivePosistion={x:L0[0],y:L0[1]},u.redrawHint("select",!0),u.redraw();u.touchData.singleTouchMoved=!1,u.touchData.singleTouchStartTime=+new Date,clearTimeout(u.touchData.tapholdTimeout),u.touchData.tapholdTimeout=setTimeout(function(){if(u.touchData.singleTouchMoved===!1&&!u.pinching&&!u.touchData.selecting)C(u.touchData.start,["taphold"],n,{x:H0[0],y:H0[1]})},u.tapholdDuration)}if(n.touches.length>=1){var i0=u.touchData.startPosition=[null,null,null,null,null,null];for(var vu=0;vu<H0.length;vu++)i0[vu]=o[vu]=H0[vu];var cu=n.touches[0];u.touchData.startGPosition=[cu.clientX,cu.clientY]}},!1);var m0;u.registerBinding(B,"touchmove",m0=function(n){var d=u.touchData.capture;if(!d&&!v(n))return;var{selection:H0,cy:o}=u,L0=u.touchData.now,E0=u.touchData.earlier,r0=o.zoom();if(n.touches[0]){var c0=u.projectIntoViewport(n.touches[0].clientX,n.touches[0].clientY);L0[0]=c0[0],L0[1]=c0[1]}if(n.touches[1]){var c0=u.projectIntoViewport(n.touches[1].clientX,n.touches[1].clientY);L0[2]=c0[0],L0[3]=c0[1]}if(n.touches[2]){var c0=u.projectIntoViewport(n.touches[2].clientX,n.touches[2].clientY);L0[4]=c0[0],L0[5]=c0[1]}var p0=function(V0){return{originalEvent:n,type:V0,position:{x:L0[0],y:L0[1]}}},g0=u.touchData.startGPosition,Bu;if(d&&n.touches[0]&&g0){var n0=[];for(var e0=0;e0<L0.length;e0++)n0[e0]=L0[e0]-E0[e0];var t0=n.touches[0].clientX-g0[0],zu=t0*t0,W0=n.touches[0].clientY-g0[1],$u=W0*W0,i0=zu+$u;Bu=i0>=u.touchTapThreshold2}if(d&&u.touchData.cxt){n.preventDefault();var vu=n.touches[0].clientX-_,cu=n.touches[0].clientY-b0,Du=n.touches[1].clientX-_,Nu=n.touches[1].clientY-b0,du=P0(vu,cu,Du,Nu),Iu=du/y,x0=150,Tu=x0*x0,Vu=1.5,Zu=Vu*Vu;if(Iu>=Zu||du>=Tu){u.touchData.cxt=!1,u.data.bgActivePosistion=void 0,u.redrawHint("select",!0);var I0=p0("cxttapend");if(u.touchData.start)u.touchData.start.unactivate().emit(I0),u.touchData.start=null;else o.emit(I0)}}if(d&&u.touchData.cxt){var I0=p0("cxtdrag");if(u.data.bgActivePosistion=void 0,u.redrawHint("select",!0),u.touchData.start)u.touchData.start.emit(I0);else o.emit(I0);if(u.touchData.start)u.touchData.start._private.grabbed=!1;u.touchData.cxtDragged=!0;var lu=u.findNearestElement(L0[0],L0[1],!0,!0);if(!u.touchData.cxtOver||lu!==u.touchData.cxtOver){if(u.touchData.cxtOver)u.touchData.cxtOver.emit(p0("cxtdragout"));if(u.touchData.cxtOver=lu,lu)lu.emit(p0("cxtdragover"))}}else if(d&&n.touches[2]&&o.boxSelectionEnabled()){if(n.preventDefault(),u.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,!u.touchData.selecting)o.emit(p0("boxstart"));if(u.touchData.selecting=!0,u.touchData.didSelect=!0,H0[4]=1,!H0||H0.length===0||H0[0]===void 0)H0[0]=(L0[0]+L0[2]+L0[4])/3,H0[1]=(L0[1]+L0[3]+L0[5])/3,H0[2]=(L0[0]+L0[2]+L0[4])/3+1,H0[3]=(L0[1]+L0[3]+L0[5])/3+1;else H0[2]=(L0[0]+L0[2]+L0[4])/3,H0[3]=(L0[1]+L0[3]+L0[5])/3;u.redrawHint("select",!0),u.redraw()}else if(d&&n.touches[1]&&!u.touchData.didSelect&&o.zoomingEnabled()&&o.panningEnabled()&&o.userZoomingEnabled()&&o.userPanningEnabled()){n.preventDefault(),u.data.bgActivePosistion=void 0,u.redrawHint("select",!0);var Hu=u.dragData.touchDragEles;if(Hu){u.redrawHint("drag",!0);for(var Ru=0;Ru<Hu.length;Ru++){var W4=Hu[Ru]._private;W4.grabbed=!1,W4.rscratch.inDragLayer=!1}}var ru=u.touchData.start,vu=n.touches[0].clientX-_,cu=n.touches[0].clientY-b0,Du=n.touches[1].clientX-_,Nu=n.touches[1].clientY-b0,q4=D0(vu,cu,Du,Nu),F3=q4/$;if(f0){var i4=vu-V,b4=cu-h,P4=Du-r,bu=Nu-m,qu=(i4+P4)/2,nu=(b4+bu)/2,c4=o.zoom(),$4=c4*F3,B3=o.pan(),z1=e[0]*c4+B3.x,E3=e[1]*c4+B3.y,eu={x:-$4/c4*(z1-B3.x-qu)+z1,y:-$4/c4*(E3-B3.y-nu)+E3};if(ru&&ru.active()){var Hu=u.dragData.touchDragEles;if(J(Hu),u.redrawHint("drag",!0),u.redrawHint("eles",!0),ru.unactivate().emit(p0("freeon")),Hu)Hu.emit(p0("free"));if(u.dragData.didDrag){if(ru.emit(p0("dragfreeon")),Hu)Hu.emit(p0("dragfree"))}}o.viewport({zoom:$4,pan:eu,cancelOnFailedZoom:!0}),o.emit(p0("pinchzoom")),$=q4,V=vu,h=cu,r=Du,m=Nu,u.pinching=!0}if(n.touches[0]){var c0=u.projectIntoViewport(n.touches[0].clientX,n.touches[0].clientY);L0[0]=c0[0],L0[1]=c0[1]}if(n.touches[1]){var c0=u.projectIntoViewport(n.touches[1].clientX,n.touches[1].clientY);L0[2]=c0[0],L0[3]=c0[1]}if(n.touches[2]){var c0=u.projectIntoViewport(n.touches[2].clientX,n.touches[2].clientY);L0[4]=c0[0],L0[5]=c0[1]}}else if(n.touches[0]&&!u.touchData.didSelect){var au=u.touchData.start,f4=u.touchData.last,lu;if(!u.hoverData.draggingEles&&!u.swipePanning)lu=u.findNearestElement(L0[0],L0[1],!0,!0);if(d&&au!=null)n.preventDefault();if(d&&au!=null&&u.nodeIsDraggable(au))if(Bu){var Hu=u.dragData.touchDragEles,U4=!u.dragData.didDrag;if(U4)M(Hu,{inDragLayer:!0});u.dragData.didDrag=!0;var iu={x:0,y:0};if(J4(n0[0])&&J4(n0[1])){if(iu.x+=n0[0],iu.y+=n0[1],U4){u.redrawHint("eles",!0);var X4=u.touchData.dragDelta;if(X4&&J4(X4[0])&&J4(X4[1]))iu.x+=X4[0],iu.y+=X4[1]}}if(u.hoverData.draggingEles=!0,Hu.silentShift(iu).emit(p0("position")).emit(p0("drag")),u.redrawHint("drag",!0),u.touchData.startPosition[0]==E0[0]&&u.touchData.startPosition[1]==E0[1])u.redrawHint("eles",!0);u.redraw()}else{var X4=u.touchData.dragDelta=u.touchData.dragDelta||[];if(X4.length===0)X4.push(n0[0]),X4.push(n0[1]);else X4[0]+=n0[0],X4[1]+=n0[1]}{if(C(au||lu,["touchmove","tapdrag","vmousemove"],n,{x:L0[0],y:L0[1]}),(!au||!au.grabbed())&&lu!=f4){if(f4)f4.emit(p0("tapdragout"));if(lu)lu.emit(p0("tapdragover"))}u.touchData.last=lu}if(d){for(var Ru=0;Ru<L0.length;Ru++)if(L0[Ru]&&u.touchData.startPosition[Ru]&&Bu)u.touchData.singleTouchMoved=!0}if(d&&(au==null||au.pannable())&&o.panningEnabled()&&o.userPanningEnabled()){var O0=F(au,u.touchData.starts);if(O0){if(n.preventDefault(),!u.data.bgActivePosistion)u.data.bgActivePosistion=GH(u.touchData.startPosition);if(u.swipePanning)o.panBy({x:n0[0]*r0,y:n0[1]*r0}),o.emit(p0("dragpan"));else if(Bu){if(u.swipePanning=!0,o.panBy({x:t0*r0,y:W0*r0}),o.emit(p0("dragpan")),au)au.unactivate(),u.redrawHint("select",!0),u.touchData.start=null}}var c0=u.projectIntoViewport(n.touches[0].clientX,n.touches[0].clientY);L0[0]=c0[0],L0[1]=c0[1]}}for(var e0=0;e0<L0.length;e0++)E0[e0]=L0[e0];if(d&&n.touches.length>0&&!u.hoverData.draggingEles&&!u.swipePanning&&u.data.bgActivePosistion!=null)u.data.bgActivePosistion=void 0,u.redrawHint("select",!0),u.redraw()},!1);var a0;u.registerBinding(B,"touchcancel",a0=function(n){var d=u.touchData.start;if(u.touchData.capture=!1,d)d.unactivate()});var _0,w0,v0,T0;if(u.registerBinding(B,"touchend",_0=function(n){var d=u.touchData.start,H0=u.touchData.capture;if(H0){if(n.touches.length===0)u.touchData.capture=!1;n.preventDefault()}else return;var o=u.selection;u.swipePanning=!1,u.hoverData.draggingEles=!1;var L0=u.cy,E0=L0.zoom(),r0=u.touchData.now,c0=u.touchData.earlier;if(n.touches[0]){var p0=u.projectIntoViewport(n.touches[0].clientX,n.touches[0].clientY);r0[0]=p0[0],r0[1]=p0[1]}if(n.touches[1]){var p0=u.projectIntoViewport(n.touches[1].clientX,n.touches[1].clientY);r0[2]=p0[0],r0[3]=p0[1]}if(n.touches[2]){var p0=u.projectIntoViewport(n.touches[2].clientX,n.touches[2].clientY);r0[4]=p0[0],r0[5]=p0[1]}var g0=function(Tu){return{originalEvent:n,type:Tu,position:{x:r0[0],y:r0[1]}}};if(d)d.unactivate();var Bu;if(u.touchData.cxt){if(Bu=g0("cxttapend"),d)d.emit(Bu);else L0.emit(Bu);if(!u.touchData.cxtDragged){var n0=g0("cxttap");if(d)d.emit(n0);else L0.emit(n0)}if(u.touchData.start)u.touchData.start._private.grabbed=!1;u.touchData.cxt=!1,u.touchData.start=null,u.redraw();return}if(!n.touches[2]&&L0.boxSelectionEnabled()&&u.touchData.selecting){u.touchData.selecting=!1;var e0=L0.collection(u.getAllInBox(o[0],o[1],o[2],o[3]));o[0]=void 0,o[1]=void 0,o[2]=void 0,o[3]=void 0,o[4]=0,u.redrawHint("select",!0),L0.emit(g0("boxend"));var t0=function(Tu){return Tu.selectable()&&!Tu.selected()};if(e0.emit(g0("box")).stdFilter(t0).select().emit(g0("boxselect")),e0.nonempty())u.redrawHint("eles",!0);u.redraw()}if(d!=null)d.unactivate();if(n.touches[2])u.data.bgActivePosistion=void 0,u.redrawHint("select",!0);else if(n.touches[1]);else if(n.touches[0]);else if(!n.touches[0]){u.data.bgActivePosistion=void 0,u.redrawHint("select",!0);var zu=u.dragData.touchDragEles;if(d!=null){var W0=d._private.grabbed;if(J(zu),u.redrawHint("drag",!0),u.redrawHint("eles",!0),W0){if(d.emit(g0("freeon")),zu.emit(g0("free")),u.dragData.didDrag)d.emit(g0("dragfreeon")),zu.emit(g0("dragfree"))}C(d,["touchend","tapend","vmouseup","tapdragout"],n,{x:r0[0],y:r0[1]}),d.unactivate(),u.touchData.start=null}else{var $u=u.findNearestElement(r0[0],r0[1],!0,!0);C($u,["touchend","tapend","vmouseup","tapdragout"],n,{x:r0[0],y:r0[1]})}var i0=u.touchData.startPosition[0]-r0[0],vu=i0*i0,cu=u.touchData.startPosition[1]-r0[1],Du=cu*cu,Nu=vu+Du,du=Nu*E0*E0;if(!u.touchData.singleTouchMoved){if(!d)L0.$(":selected").unselect(["tapunselect"]);if(C(d,["tap","vclick"],n,{x:r0[0],y:r0[1]}),w0=!1,n.timeStamp-T0<=L0.multiClickDebounceTime())v0&&clearTimeout(v0),w0=!0,T0=null,C(d,["dbltap","vdblclick"],n,{x:r0[0],y:r0[1]});else v0=setTimeout(function(){if(w0)return;C(d,["onetap","voneclick"],n,{x:r0[0],y:r0[1]})},L0.multiClickDebounceTime()),T0=n.timeStamp}if(d!=null&&!u.dragData.didDrag&&d._private.selectable&&du<u.touchTapThreshold2&&!u.pinching){if(L0.selectionType()==="single")L0.$(E).unmerge(d).unselect(["tapunselect"]),d.select(["tapselect"]);else if(d.selected())d.unselect(["tapunselect"]);else d.select(["tapselect"]);u.redrawHint("eles",!0)}u.touchData.singleTouchMoved=!0}for(var Iu=0;Iu<r0.length;Iu++)c0[Iu]=r0[Iu];if(u.dragData.didDrag=!1,n.touches.length===0)u.touchData.dragDelta=[],u.touchData.startPosition=[null,null,null,null,null,null],u.touchData.startGPosition=null,u.touchData.didSelect=!1;if(n.touches.length<2){if(n.touches.length===1)u.touchData.startGPosition=[n.touches[0].clientX,n.touches[0].clientY];u.pinching=!1,u.redrawHint("eles",!0),u.redraw()}},!1),typeof TouchEvent>"u"){var Z0=[],F0=function(n){return{clientX:n.clientX,clientY:n.clientY,force:1,identifier:n.pointerId,pageX:n.pageX,pageY:n.pageY,radiusX:n.width/2,radiusY:n.height/2,screenX:n.screenX,screenY:n.screenY,target:n.target}},u0=function(n){return{event:n,touch:F0(n)}},M0=function(n){Z0.push(u0(n))},X0=function(n){for(var d=0;d<Z0.length;d++){var H0=Z0[d];if(H0.event.pointerId===n.pointerId){Z0.splice(d,1);return}}},S0=function(n){var d=Z0.filter(function(H0){return H0.event.pointerId===n.pointerId})[0];d.event=n,d.touch=F0(n)},Y0=function(n){n.touches=Z0.map(function(d){return d.touch})},h0=function(n){return n.pointerType==="mouse"||n.pointerType===4};u.registerBinding(u.container,"pointerdown",function(J0){if(h0(J0))return;J0.preventDefault(),M0(J0),Y0(J0),q0(J0)}),u.registerBinding(u.container,"pointerup",function(J0){if(h0(J0))return;X0(J0),Y0(J0),_0(J0)}),u.registerBinding(u.container,"pointercancel",function(J0){if(h0(J0))return;X0(J0),Y0(J0),a0(J0)}),u.registerBinding(u.container,"pointermove",function(J0){if(h0(J0))return;J0.preventDefault(),S0(J0),Y0(J0),m0(J0)})}};_z={};_z.generatePolygon=function(u,B){return this.nodeShapes[u]={renderer:this,name:u,points:B,draw:function(A,C,D,F,U,z){this.renderer.nodeShapeImpl("polygon",A,C,D,F,U,this.points)},intersectLine:function(A,C,D,F,U,z,k,f){return QW(U,z,this.points,A,C,D/2,F/2,k)},checkPoint:function(A,C,D,F,U,z,k,f){return gz(A,C,this.points,z,k,F,U,[0,-1],D)},hasMiterBounds:u!=="rectangle",miterBounds:function(A,C,D,F,U,z){return uZ4(this.points,A,C,D,F,U)}}};_z.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:function(B,E,A,C,D,F){this.renderer.nodeShapeImpl(this.name,B,E,A,C,D)},intersectLine:function(B,E,A,C,D,F,U,z){return zZ4(D,F,B,E,A/2+U,C/2+U)},checkPoint:function(B,E,A,C,D,F,U,z){return HJ(B,E,C,D,F,U,A)}}};_z.generateRoundPolygon=function(u,B){return this.nodeShapes[u]={renderer:this,name:u,points:B,getOrCreateCorners:function(A,C,D,F,U,z,k){if(z[k]!==void 0&&z[k+"-cx"]===A&&z[k+"-cy"]===C&&z[k+"-w"]===D&&z[k+"-h"]===F&&z[k+"-corner-radius"]===U)return z[k];z[k]=Array(B.length/2),z[k+"-cx"]=A,z[k+"-cy"]=C,z[k+"-w"]=D,z[k+"-h"]=F,z[k+"-corner-radius"]=U;var f=D/2,l=F/2;U=U==="auto"?d$0(D,F):U;var b=Array(B.length/2);for(var M=0;M<B.length/2;M++)b[M]={x:A+f*B[M*2],y:C+l*B[M*2+1]};var Z,J,w,K,Q=b.length;J=b[Q-1];for(Z=0;Z<Q;Z++)w=b[Z%Q],K=b[(Z+1)%Q],z[k][Z]=q50(J,w,K,U),J=w,w=K;return z[k]},draw:function(A,C,D,F,U,z,k){this.renderer.nodeShapeImpl("round-polygon",A,C,D,F,U,this.points,this.getOrCreateCorners(C,D,F,U,z,k,"drawCorners"))},intersectLine:function(A,C,D,F,U,z,k,f,l){return fZ4(U,z,this.points,A,C,D,F,k,this.getOrCreateCorners(A,C,D,F,f,l,"corners"))},checkPoint:function(A,C,D,F,U,z,k,f,l){return UZ4(A,C,this.points,z,k,F,U,this.getOrCreateCorners(z,k,F,U,f,l,"corners"))}}};_z.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:wB(4,0),draw:function(B,E,A,C,D,F){this.renderer.nodeShapeImpl(this.name,B,E,A,C,D,this.points,F)},intersectLine:function(B,E,A,C,D,F,U,z){return n$0(D,F,B,E,A,C,U,z)},checkPoint:function(B,E,A,C,D,F,U,z){var k=C/2,f=D/2;z=z==="auto"?il(C,D):z,z=Math.min(k,f,z);var l=z*2;if(gz(B,E,this.points,F,U,C,D-l,[0,-1],A))return!0;if(gz(B,E,this.points,F,U,C-l,D,[0,-1],A))return!0;if(HJ(B,E,l,l,F-k+z,U-f+z,A))return!0;if(HJ(B,E,l,l,F+k-z,U-f+z,A))return!0;if(HJ(B,E,l,l,F+k-z,U+f-z,A))return!0;if(HJ(B,E,l,l,F-k+z,U+f-z,A))return!0;return!1}}};_z.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:l50(),points:wB(4,0),draw:function(B,E,A,C,D,F){this.renderer.nodeShapeImpl(this.name,B,E,A,C,D,null,F)},generateCutTrianglePts:function(B,E,A,C,D){var F=D==="auto"?this.cornerLength:D,U=E/2,z=B/2,k=A-z,f=A+z,l=C-U,b=C+U;return{topLeft:[k,l+F,k+F,l,k+F,l+F],topRight:[f-F,l,f,l+F,f-F,l+F],bottomRight:[f,b-F,f-F,b,f-F,b-F],bottomLeft:[k+F,b,k,b-F,k+F,b-F]}},intersectLine:function(B,E,A,C,D,F,U,z){var k=this.generateCutTrianglePts(A+2*U,C+2*U,B,E,z),f=[].concat.apply([],[k.topLeft.splice(0,4),k.topRight.splice(0,4),k.bottomRight.splice(0,4),k.bottomLeft.splice(0,4)]);return QW(D,F,f,B,E)},checkPoint:function(B,E,A,C,D,F,U,z){var k=z==="auto"?this.cornerLength:z;if(gz(B,E,this.points,F,U,C,D-2*k,[0,-1],A))return!0;if(gz(B,E,this.points,F,U,C-2*k,D,[0,-1],A))return!0;var f=this.generateCutTrianglePts(C,D,F,U);return M8(B,E,f.topLeft)||M8(B,E,f.topRight)||M8(B,E,f.bottomRight)||M8(B,E,f.bottomLeft)}}};_z.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:wB(4,0),draw:function(B,E,A,C,D,F){this.renderer.nodeShapeImpl(this.name,B,E,A,C,D)},intersectLine:function(B,E,A,C,D,F,U,z){var k=0.15,f=0.5,l=0.85,b=this.generateBarrelBezierPts(A+2*U,C+2*U,B,E),M=function(w){var K=qH({x:w[0],y:w[1]},{x:w[2],y:w[3]},{x:w[4],y:w[5]},k),Q=qH({x:w[0],y:w[1]},{x:w[2],y:w[3]},{x:w[4],y:w[5]},f),G=qH({x:w[0],y:w[1]},{x:w[2],y:w[3]},{x:w[4],y:w[5]},l);return[w[0],w[1],K.x,K.y,Q.x,Q.y,G.x,G.y,w[4],w[5]]},Z=[].concat(M(b.topLeft),M(b.topRight),M(b.bottomRight),M(b.bottomLeft));return QW(D,F,Z,B,E)},generateBarrelBezierPts:function(B,E,A,C){var D=E/2,F=B/2,U=A-F,z=A+F,k=C-D,f=C+D,l=a20(B,E),b=l.heightOffset,M=l.widthOffset,Z=l.ctrlPtOffsetPct*B,J={topLeft:[U,k+b,U+Z,k,U+M,k],topRight:[z-M,k,z-Z,k,z,k+b],bottomRight:[z,f-b,z-Z,f,z-M,f],bottomLeft:[U+M,f,U+Z,f,U,f-b]};return J.topLeft.isTop=!0,J.topRight.isTop=!0,J.bottomLeft.isBottom=!0,J.bottomRight.isBottom=!0,J},checkPoint:function(B,E,A,C,D,F,U,z){var k=a20(C,D),f=k.heightOffset,l=k.widthOffset;if(gz(B,E,this.points,F,U,C,D-2*f,[0,-1],A))return!0;if(gz(B,E,this.points,F,U,C-2*l,D,[0,-1],A))return!0;var b=this.generateBarrelBezierPts(C,D,F,U),M=function(v,W,S){var T=S[4],R=S[2],Y=S[0],a=S[5],I=S[1],O=Math.min(T,Y),i=Math.max(T,Y),N=Math.min(a,I),V=Math.max(a,I);if(O<=v&&v<=i&&N<=W&&W<=V){var h=lZ4(T,R,Y),r=AZ4(h[0],h[1],h[2],v),m=r.filter(function($){return 0<=$&&$<=1});if(m.length>0)return m[0]}return null},Z=Object.keys(b);for(var J=0;J<Z.length;J++){var w=Z[J],K=b[w],Q=M(B,E,K);if(Q==null)continue;var G=K[5],L=K[3],H=K[1],q=Y5(G,L,H,Q);if(K.isTop&&q<=E)return!0;if(K.isBottom&&E<=q)return!0}return!1}}};_z.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:wB(4,0),draw:function(B,E,A,C,D,F){this.renderer.nodeShapeImpl(this.name,B,E,A,C,D,this.points,F)},intersectLine:function(B,E,A,C,D,F,U,z){var k=B-(A/2+U),f=E-(C/2+U),l=f,b=B+(A/2+U),M=Ol(D,F,B,E,k,f,b,l,!1);if(M.length>0)return M;return n$0(D,F,B,E,A,C,U,z)},checkPoint:function(B,E,A,C,D,F,U,z){z=z==="auto"?il(C,D):z;var k=2*z;if(gz(B,E,this.points,F,U,C,D-k,[0,-1],A))return!0;if(gz(B,E,this.points,F,U,C-k,D,[0,-1],A))return!0;var f=C/2+2*A,l=D/2+2*A,b=[F-f,U-l,F-f,U,F+f,U,F+f,U-l];if(M8(B,E,b))return!0;if(HJ(B,E,k,k,F+C/2-z,U+D/2-z,A))return!0;if(HJ(B,E,k,k,F-C/2+z,U+D/2-z,A))return!0;return!1}}};_z.registerNodeShapes=function(){var u=this.nodeShapes={},B=this;this.generateEllipse(),this.generatePolygon("triangle",wB(3,0)),this.generateRoundPolygon("round-triangle",wB(3,0)),this.generatePolygon("rectangle",wB(4,0)),u.square=u.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var E=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",E),this.generateRoundPolygon("round-diamond",E)}this.generatePolygon("pentagon",wB(5,0)),this.generateRoundPolygon("round-pentagon",wB(5,0)),this.generatePolygon("hexagon",wB(6,0)),this.generateRoundPolygon("round-hexagon",wB(6,0)),this.generatePolygon("heptagon",wB(7,0)),this.generateRoundPolygon("round-heptagon",wB(7,0)),this.generatePolygon("octagon",wB(8,0)),this.generateRoundPolygon("round-octagon",wB(8,0));var A=Array(20);{var C=i20(5,0),D=i20(5,Math.PI/5),F=0.5*(3-Math.sqrt(5));F*=1.57;for(var U=0;U<D.length/2;U++)D[U*2]*=F,D[U*2+1]*=F;for(var U=0;U<5;U++)A[U*4]=C[U*2],A[U*4+1]=C[U*2+1],A[U*4+2]=D[U*2],A[U*4+3]=D[U*2+1]}A=p$0(A),this.generatePolygon("star",A),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 z=[-1,-1,0.25,-1,1,0,0.25,1,-1,1];this.generatePolygon("tag",z),this.generateRoundPolygon("round-tag",z)}u.makePolygon=function(k){var f=k.join("$"),l="polygon-"+f,b;if(b=this[l])return b;return B.generatePolygon(l,k)}};jW={};jW.timeToRender=function(){return this.redrawTotalTime/this.redrawCount};jW.redraw=function(u){u=u||$$0();var B=this;if(B.averageRedrawTime===void 0)B.averageRedrawTime=0;if(B.lastRedrawTime===void 0)B.lastRedrawTime=0;if(B.lastDrawTime===void 0)B.lastDrawTime=0;B.requestedFrame=!0,B.renderOptions=u};jW.beforeRender=function(u,B){if(this.destroyed)return;if(B==null)F9("Priority is not optional for beforeRender");var E=this.beforeRenderCallbacks;E.push({fn:u,priority:B}),E.sort(function(A,C){return C.priority-A.priority})};jW.startRenderLoop=function(){var u=this,B=u.cy;if(u.renderLoopStarted)return;else u.renderLoopStarted=!0;var E=function(C){if(u.destroyed)return;if(B.batching());else if(u.requestedFrame&&!u.skipFrame){F$0(u,!0,C);var D=cz();u.render(u.renderOptions);var F=u.lastDrawTime=cz();if(u.averageRedrawTime===void 0)u.averageRedrawTime=F-D;if(u.redrawCount===void 0)u.redrawCount=0;if(u.redrawCount++,u.redrawTotalTime===void 0)u.redrawTotalTime=0;var U=F-D;u.redrawTotalTime+=U,u.lastRedrawTime=U,u.averageRedrawTime=u.averageRedrawTime/2+U/2,u.requestedFrame=!1}else F$0(u,!1,C);u.skipFrame=!1,fh(E)};fh(E)};sy0=TK4,iH=sy0.prototype;iH.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"];iH.init=function(u){var B=this;B.options=u,B.cy=u.cy;var E=B.container=u.cy.container(),A=B.cy.window();if(A){var C=A.document,D=C.head,F="__________cytoscape_stylesheet",U="__________cytoscape_container",z=C.getElementById(F)!=null;if(E.className.indexOf(U)<0)E.className=(E.className||"")+" "+U;if(!z){var k=C.createElement("style");k.id=F,k.textContent="."+U+" { position: relative; }",D.insertBefore(k,D.children[0])}var f=A.getComputedStyle(E),l=f.getPropertyValue("position");if(l==="static")A6("A Cytoscape container has style position:static and so can not use UI extensions properly")}B.selection=[void 0,void 0,void 0,void 0,0],B.bezierProjPcts=[0.05,0.225,0.4,0.5,0.6,0.775,0.95],B.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},B.dragData={possibleDragElements:[]},B.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]},B.redraws=0,B.showFps=u.showFps,B.debug=u.debug,B.webgl=u.webgl,B.hideEdgesOnViewport=u.hideEdgesOnViewport,B.textureOnViewport=u.textureOnViewport,B.wheelSensitivity=u.wheelSensitivity,B.motionBlurEnabled=u.motionBlur,B.forcedPixelRatio=J4(u.pixelRatio)?u.pixelRatio:null,B.motionBlur=u.motionBlur,B.motionBlurOpacity=u.motionBlurOpacity,B.motionBlurTransparency=1-B.motionBlurOpacity,B.motionBlurPxRatio=1,B.mbPxRBlurry=1,B.minMbLowQualFrames=4,B.fullQualityMb=!1,B.clearedForMotionBlur=[],B.desktopTapThreshold=u.desktopTapThreshold,B.desktopTapThreshold2=u.desktopTapThreshold*u.desktopTapThreshold,B.touchTapThreshold=u.touchTapThreshold,B.touchTapThreshold2=u.touchTapThreshold*u.touchTapThreshold,B.tapholdDuration=500,B.bindings=[],B.beforeRenderCallbacks=[],B.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},B.registerNodeShapes(),B.registerArrowShapes(),B.registerCalculationListeners()};iH.notify=function(u,B){var E=this,A=E.cy;if(this.destroyed)return;if(u==="init"){E.load();return}if(u==="destroy"){E.destroy();return}if(u==="add"||u==="remove"||u==="move"&&A.hasCompoundNodes()||u==="load"||u==="zorder"||u==="mount")E.invalidateCachedZSortedEles();if(u==="viewport")E.redrawHint("select",!0);if(u==="gc")E.redrawHint("gc",!0);if(u==="load"||u==="resize"||u==="mount")E.invalidateContainerClientCoordsCache(),E.matchCanvasSize(E.container);E.redrawHint("eles",!0),E.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()};iH.destroy=function(){var u=this;u.destroyed=!0,u.cy.stopAnimationLoop();for(var B=0;B<u.bindings.length;B++){var E=u.bindings[B],A=E,C=A.target;(C.off||C.removeEventListener).apply(C,A.args)}if(u.bindings=[],u.beforeRenderCallbacks=[],u.onUpdateEleCalcsFns=[],u.removeObserver)u.removeObserver.disconnect();if(u.styleObserver)u.styleObserver.disconnect();if(u.resizeObserver)u.resizeObserver.disconnect();if(u.labelCalcDiv)try{document.body.removeChild(u.labelCalcDiv)}catch(D){}};iH.isHeadless=function(){return!1};[L50,ny0,py0,NH,_z,jW].forEach(function(u){k3(iH,u)});oy0={setupDequeueing:function(B){return function(){var A=this,C=this.renderer;if(A.dequeueingSetup)return;else A.dequeueingSetup=!0;var D=RW(function(){C.redrawHint("eles",!0),C.redrawHint("drag",!0),C.redraw()},B.deqRedrawThreshold),F=function(k,f){var l=cz(),b=C.averageRedrawTime,M=C.lastRedrawTime,Z=[],J=C.cy.extent(),w=C.getPixelRatio();if(!k)C.flushRenderedStyleQueue();while(!0){var K=cz(),Q=K-l,G=K-f;if(M<W20){var L=W20-(k?b:0);if(G>=B.deqFastCost*L)break}else if(k){if(Q>=B.deqCost*M||Q>=B.deqAvgCost*b)break}else if(G>=B.deqNoDrawCost*W20)break;var H=B.deq(A,w,J);if(H.length>0)for(var q=0;q<H.length;q++)Z.push(H[q]);else break}if(Z.length>0){if(B.onDeqd(A,Z),!k&&B.shouldRedraw(A,Z,w,J))D()}},U=B.priority||F50;C.beforeRender(F,U(A))}}},OK4=function(){function u(B){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:lh;ml(this,u),this.idsByKey=new yz,this.keyForId=new yz,this.cachesByLvl=new yz,this.lvls=[],this.getKey=B,this.doesEleInvalidateKey=E}return rl(u,[{key:"getIdsFor",value:function(E){if(E==null)F9("Can not get id list for null key");var A=this.idsByKey,C=this.idsByKey.get(E);if(!C)C=new OH,A.set(E,C);return C}},{key:"addIdForKey",value:function(E,A){if(E!=null)this.getIdsFor(E).add(A)}},{key:"deleteIdForKey",value:function(E,A){if(E!=null)this.getIdsFor(E).delete(A)}},{key:"getNumberOfIdsForKey",value:function(E){if(E==null)return 0;else return this.getIdsFor(E).size}},{key:"updateKeyMappingFor",value:function(E){var A=E.id(),C=this.keyForId.get(A),D=this.getKey(E);this.deleteIdForKey(C,A),this.addIdForKey(D,A),this.keyForId.set(A,D)}},{key:"deleteKeyMappingFor",value:function(E){var A=E.id(),C=this.keyForId.get(A);this.deleteIdForKey(C,A),this.keyForId.delete(A)}},{key:"keyHasChangedFor",value:function(E){var A=E.id(),C=this.keyForId.get(A),D=this.getKey(E);return C!==D}},{key:"isInvalid",value:function(E){return this.keyHasChangedFor(E)||this.doesEleInvalidateKey(E)}},{key:"getCachesAt",value:function(E){var A=this.cachesByLvl,C=this.lvls,D=A.get(E);if(!D)D=new yz,A.set(E,D),C.push(E);return D}},{key:"getCache",value:function(E,A){return this.getCachesAt(A).get(E)}},{key:"get",value:function(E,A){var C=this.getKey(E),D=this.getCache(C,A);if(D!=null)this.updateKeyMappingFor(E);return D}},{key:"getForCachedKey",value:function(E,A){var C=this.keyForId.get(E.id()),D=this.getCache(C,A);return D}},{key:"hasCache",value:function(E,A){return this.getCachesAt(A).has(E)}},{key:"has",value:function(E,A){var C=this.getKey(E);return this.hasCache(C,A)}},{key:"setCache",value:function(E,A,C){C.key=E,this.getCachesAt(A).set(E,C)}},{key:"set",value:function(E,A,C){var D=this.getKey(E);this.setCache(D,A,C),this.updateKeyMappingFor(E)}},{key:"deleteCache",value:function(E,A){this.getCachesAt(A).delete(E)}},{key:"delete",value:function(E,A){var C=this.getKey(E);this.deleteCache(C,A)}},{key:"invalidateKey",value:function(E){var A=this;this.lvls.forEach(function(C){return A.deleteCache(E,C)})}},{key:"invalidate",value:function(E){var A=E.id(),C=this.keyForId.get(A);this.deleteKeyMappingFor(E);var D=this.doesEleInvalidateKey(E);if(D)this.invalidateKey(C);return D||this.getNumberOfIdsForKey(C)===0}}])}(),LH={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},gK4=C7({getKey:null,doesEleInvalidateKey:lh,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:h$0,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),e2=fW.prototype;e2.reasons=LH;e2.getTextureQueue=function(u){var B=this;return B.eleImgCaches=B.eleImgCaches||{},B.eleImgCaches[u]=B.eleImgCaches[u]||[]};e2.getRetiredTextureQueue=function(u){var B=this,E=B.eleImgCaches.retired=B.eleImgCaches.retired||{},A=E[u]=E[u]||[];return A};e2.getElementQueue=function(){var u=this,B=u.eleCacheQueue=u.eleCacheQueue||new TW(function(E,A){return A.reqs-E.reqs});return B};e2.getElementKeyToQueue=function(){var u=this,B=u.eleKeyToCacheQueue=u.eleKeyToCacheQueue||{};return B};e2.getElement=function(u,B,E,A,C){var D=this,F=this.renderer,U=F.cy.zoom(),z=this.lookup;if(!B||B.w===0||B.h===0||isNaN(B.w)||isNaN(B.h)||!u.visible()||u.removed())return null;if(!D.allowEdgeTxrCaching&&u.isEdge()||!D.allowParentTxrCaching&&u.isParent())return null;if(A==null)A=Math.ceil(z50(U*E));if(A<Fh)A=Fh;else if(U>=ty0||A>s20)return null;var k=Math.pow(2,A),f=B.h*k,l=B.w*k,b=F.eleTextBiggerThanMin(u,k);if(!this.isVisible(u,b))return null;var M=z.get(u,A);if(M&&M.invalidated)M.invalidated=!1,M.texture.invalidatedWidth-=M.width;if(M)return M;var Z;if(f<=U$0)Z=U$0;else if(f<=dV)Z=dV;else Z=Math.ceil(f/dV)*dV;if(f>NK4||l>jK4)return null;var J=D.getTextureQueue(Z),w=J[J.length-2],K=function(){return D.recycleTexture(Z,l)||D.addTexture(Z,l)};if(!w)w=J[J.length-1];if(!w)w=K();if(w.width-w.usedWidth<l)w=K();var Q=function(O){return O&&O.scaledLabelShown===b},G=C&&C===LH.dequeue,L=C&&C===LH.highQuality,H=C&&C===LH.downscale,q;for(var x=A+1;x<=s20;x++){var v=z.get(u,x);if(v){q=v;break}}var W=q&&q.level===A+1?q:null,S=function(){w.context.drawImage(W.texture.canvas,W.x,0,W.width,W.height,w.usedWidth,0,l,f)};if(w.context.setTransform(1,0,0,1,0,0),w.context.clearRect(w.usedWidth,0,l,Z),Q(W))S();else if(Q(q))if(L){for(var T=q.level;T>A;T--)W=D.getElement(u,B,E,T,LH.downscale);S()}else return D.queueElement(u,q.level-1),q;else{var R;if(!G&&!L&&!H)for(var Y=A-1;Y>=Fh;Y--){var a=z.get(u,Y);if(a){R=a;break}}if(Q(R))return D.queueElement(u,A),R;w.context.translate(w.usedWidth,0),w.context.scale(k,k),this.drawElement(w.context,u,B,b,!1),w.context.scale(1/k,1/k),w.context.translate(-w.usedWidth,0)}return M={x:w.usedWidth,texture:w,level:A,scale:k,width:l,height:f,scaledLabelShown:b},w.usedWidth+=Math.ceil(l+IK4),w.eleCaches.push(M),z.set(u,A,M),D.checkTextureFullness(w),M};e2.invalidateElements=function(u){for(var B=0;B<u.length;B++)this.invalidateElement(u[B])};e2.invalidateElement=function(u){var B=this,E=B.lookup,A=[],C=E.isInvalid(u);if(!C)return;for(var D=Fh;D<=s20;D++){var F=E.getForCachedKey(u,D);if(F)A.push(F)}var U=E.invalidate(u);if(U)for(var z=0;z<A.length;z++){var k=A[z],f=k.texture;f.invalidatedWidth+=k.width,k.invalidated=!0,B.checkTextureUtility(f)}B.removeFromQueue(u)};e2.checkTextureUtility=function(u){if(u.invalidatedWidth>=iK4*u.width)this.retireTexture(u)};e2.checkTextureFullness=function(u){var B=this,E=B.getTextureQueue(u.height);if(u.usedWidth/u.width>aK4&&u.fullnessChecks>=VK4)Nl(E,u);else u.fullnessChecks++};e2.retireTexture=function(u){var B=this,E=u.height,A=B.getTextureQueue(E),C=this.lookup;Nl(A,u),u.retired=!0;var D=u.eleCaches;for(var F=0;F<D.length;F++){var U=D[F];C.deleteCache(U.key,U.level)}U50(D);var z=B.getRetiredTextureQueue(E);z.push(u)};e2.addTexture=function(u,B){var E=this,A=E.getTextureQueue(u),C={};return A.push(C),C.eleCaches=[],C.height=u,C.width=Math.max(PK4,B),C.usedWidth=0,C.invalidatedWidth=0,C.fullnessChecks=0,C.canvas=E.renderer.makeOffscreenCanvas(C.width,C.height),C.context=C.canvas.getContext("2d"),C};e2.recycleTexture=function(u,B){var E=this,A=E.getTextureQueue(u),C=E.getRetiredTextureQueue(u);for(var D=0;D<C.length;D++){var F=C[D];if(F.width>=B)return F.retired=!1,F.usedWidth=0,F.invalidatedWidth=0,F.fullnessChecks=0,U50(F.eleCaches),F.context.setTransform(1,0,0,1,0,0),F.context.clearRect(0,0,F.width,F.height),Nl(C,F),A.push(F),F}};e2.queueElement=function(u,B){var E=this,A=E.getElementQueue(),C=E.getElementKeyToQueue(),D=this.getKey(u),F=C[D];if(F)F.level=Math.max(F.level,B),F.eles.merge(u),F.reqs++,A.updateItem(F);else{var U={eles:u.spawn().merge(u),level:B,reqs:1,key:D};A.push(U),C[D]=U}};e2.dequeue=function(u){var B=this,E=B.getElementQueue(),A=B.getElementKeyToQueue(),C=[],D=B.lookup;for(var F=0;F<cK4;F++)if(E.size()>0){var U=E.pop(),z=U.key,k=U.eles[0],f=D.hasCache(k,U.level);if(A[z]=null,f)continue;C.push(U);var l=B.getBoundingBox(k);B.getElement(k,l,u,U.level,LH.dequeue)}else break;return C};e2.removeFromQueue=function(u){var B=this,E=B.getElementQueue(),A=B.getElementKeyToQueue(),C=this.getKey(u),D=A[C];if(D!=null)if(D.eles.length===1)D.reqs=D50,E.updateItem(D),E.pop(),A[C]=null;else D.eles.unmerge(u)};e2.onDequeue=function(u){this.onDequeues.push(u)};e2.offDequeue=function(u){Nl(this.onDequeues,u)};e2.setupDequeueing=oy0.setupDequeueing({deqRedrawThreshold:yK4,deqCost:hK4,deqAvgCost:mK4,deqNoDrawCost:rK4,deqFastCost:$K4,deq:function(B,E,A){return B.dequeue(E,A)},onDeqd:function(B,E){for(var A=0;A<B.onDequeues.length;A++){var C=B.onDequeues[A];C(E)}},shouldRedraw:function(B,E,A,C){for(var D=0;D<E.length;D++){var F=E[D].eles;for(var U=0;U<F.length;U++){var z=F[U].boundingBox();if(f50(z,C))return!0}}return!1},priority:function(B){return B.renderer.beforeRenderPriorities.eleTxrDeq}});D7=ey0.prototype,AQ4=Math.pow(2,53)-1;D7.makeLayer=function(u,B){var E=Math.pow(2,B),A=Math.ceil(u.w*E),C=Math.ceil(u.h*E),D=this.renderer.makeOffscreenCanvas(A,C),F={id:f$0=++f$0%AQ4,bb:u,level:B,width:A,height:C,canvas:D,context:D.getContext("2d"),eles:[],elesQueue:[],reqs:0},U=F.context,z=-F.bb.x1,k=-F.bb.y1;return U.scale(E,E),U.translate(z,k),F};D7.getLayers=function(u,B,E){var A=this,C=A.renderer,D=C.cy,F=D.zoom(),U=A.firstGet;if(A.firstGet=!1,E==null){if(E=Math.ceil(z50(F*B)),E<bW)E=bW;else if(F>=nK4||E>Gh)return null}A.validateLayersElesOrdering(E,u);var z=A.layersByLevel,k=Math.pow(2,E),f=z[E]=z[E]||[],l,b=A.levelIsComplete(E,u),M,Z=function(){var S=function(I){if(A.validateLayersElesOrdering(I,u),A.levelIsComplete(I,u))return M=z[I],!0},T=function(I){if(M)return;for(var O=E+I;bW<=O&&O<=Gh;O+=I)if(S(O))break};T(1),T(-1);for(var R=f.length-1;R>=0;R--){var Y=f[R];if(Y.invalid)Nl(f,Y)}};if(!b)Z();else return f;var J=function(){if(!l){l=QB();for(var S=0;S<u.length;S++)oM4(l,u[S].boundingBox())}return l},w=function(S){S=S||{};var T=S.after;J();var R=Math.ceil(l.w*k),Y=Math.ceil(l.h*k);if(R>k$0||Y>k$0)return null;var a=R*Y;if(a>BQ4)return null;var I=A.makeLayer(l,E);if(T!=null){var O=f.indexOf(T)+1;f.splice(O,0,I)}else if(S.insert===void 0||S.insert)f.unshift(I);return I};if(A.skipping&&!U)return null;var K=null,Q=u.length/_K4,G=!U;for(var L=0;L<u.length;L++){var H=u[L],q=H._private.rscratch,x=q.imgLayerCaches=q.imgLayerCaches||{},v=x[E];if(v){K=v;continue}if(!K||K.eles.length>=Q||!_$0(K.bb,H.boundingBox())){if(K=w({insert:!0,after:K}),!K)return null}if(M||G)A.queueLayer(K,H);else A.drawEleInLayer(K,H,E,B);K.eles.push(H),x[E]=K}if(M)return M;if(G)return null;return f};D7.getEleLevelForLayerLevel=function(u,B){return u};D7.drawEleInLayer=function(u,B,E,A){var C=this,D=this.renderer,F=u.context,U=B.boundingBox();if(U.w===0||U.h===0||!B.visible())return;E=C.getEleLevelForLayerLevel(E,A),D.setImgSmoothing(F,!1),D.drawCachedElement(F,B,null,null,E,EQ4),D.setImgSmoothing(F,!0)};D7.levelIsComplete=function(u,B){var E=this,A=E.layersByLevel[u];if(!A||A.length===0)return!1;var C=0;for(var D=0;D<A.length;D++){var F=A[D];if(F.reqs>0)return!1;if(F.invalid)return!1;C+=F.eles.length}if(C!==B.length)return!1;return!0};D7.validateLayersElesOrdering=function(u,B){var E=this.layersByLevel[u];if(!E)return;for(var A=0;A<E.length;A++){var C=E[A],D=-1;for(var F=0;F<B.length;F++)if(C.eles[0]===B[F]){D=F;break}if(D<0){this.invalidateLayer(C);continue}var U=D;for(var F=0;F<C.eles.length;F++)if(C.eles[F]!==B[U+F]){this.invalidateLayer(C);break}}};D7.updateElementsInLayers=function(u,B){var E=this,A=vW(u[0]);for(var C=0;C<u.length;C++){var D=A?null:u[C],F=A?u[C]:u[C].ele,U=F._private.rscratch,z=U.imgLayerCaches=U.imgLayerCaches||{};for(var k=bW;k<=Gh;k++){var f=z[k];if(!f)continue;if(D&&E.getEleLevelForLayerLevel(f.level)!==D.level)continue;B(f,F,D)}}};D7.haveLayers=function(){var u=this,B=!1;for(var E=bW;E<=Gh;E++){var A=u.layersByLevel[E];if(A&&A.length>0){B=!0;break}}return B};D7.invalidateElements=function(u){var B=this;if(u.length===0)return;if(B.lastInvalidationTime=cz(),u.length===0||!B.haveLayers())return;B.updateElementsInLayers(u,function(A,C,D){B.invalidateLayer(A)})};D7.invalidateLayer=function(u){if(this.lastInvalidationTime=cz(),u.invalid)return;var{level:B,eles:E}=u,A=this.layersByLevel[B];if(Nl(A,u),u.elesQueue=[],u.invalid=!0,u.replacement)u.replacement.invalid=!0;for(var C=0;C<E.length;C++){var D=E[C]._private.rscratch.imgLayerCaches;if(D)D[B]=null}};D7.refineElementTextures=function(u){var B=this;B.updateElementsInLayers(u,function(A,C,D){var F=A.replacement;if(!F)F=A.replacement=B.makeLayer(A.bb,A.level),F.replaces=A,F.eles=A.eles;if(!F.reqs)for(var U=0;U<F.eles.length;U++)B.queueLayer(F,F.eles[U])})};D7.enqueueElementRefinement=function(u){this.eleTxrDeqs.merge(u),this.scheduleElementRefinement()};D7.queueLayer=function(u,B){var E=this,A=E.layersQueue,C=u.elesQueue,D=C.hasId=C.hasId||{};if(u.replacement)return;if(B){if(D[B.id()])return;C.push(B),D[B.id()]=!0}if(u.reqs)u.reqs++,A.updateItem(u);else u.reqs=1,A.push(u)};D7.dequeue=function(u){var B=this,E=B.layersQueue,A=[],C=0;while(C<uQ4){if(E.size()===0)break;var D=E.peek();if(D.replacement){E.pop();continue}if(D.replaces&&D!==D.replaces.replacement){E.pop();continue}if(D.invalid){E.pop();continue}var F=D.elesQueue.shift();if(F)B.drawEleInLayer(D,F,D.level,u),C++;if(A.length===0)A.push(!0);if(D.elesQueue.length===0){if(E.pop(),D.reqs=0,D.replaces)B.applyLayerReplacement(D);B.requestRedraw()}}return A};D7.applyLayerReplacement=function(u){var B=this,E=B.layersByLevel[u.level],A=u.replaces,C=E.indexOf(A);if(C<0||A.invalid)return;E[C]=u;for(var D=0;D<u.eles.length;D++){var F=u.eles[D]._private,U=F.imgLayerCaches=F.imgLayerCaches||{};if(U)U[u.level]=u}B.requestRedraw()};D7.requestRedraw=RW(function(){var u=this.renderer;u.redrawHint("eles",!0),u.redrawHint("drag",!0),u.redraw()},100);D7.setupDequeueing=oy0.setupDequeueing({deqRedrawThreshold:pK4,deqCost:sK4,deqAvgCost:oK4,deqNoDrawCost:tK4,deqFastCost:eK4,deq:function(B,E){return B.dequeue(E)},onDeqd:F50,shouldRedraw:h$0,priority:function(B){return B.renderer.beforeRenderPriorities.lyrTxrDeq}});uc0={};uc0.arrowShapeImpl=function(u){return(l$0||(l$0={polygon:CQ4,"triangle-backcurve":DQ4,"triangle-tee":b$0,"circle-triangle":FQ4,"triangle-cross":b$0,circle:UQ4}))[u]};rF={};rF.drawElement=function(u,B,E,A,C,D){var F=this;if(B.isNode())F.drawNode(u,B,E,A,C,D);else F.drawEdge(u,B,E,A,C,D)};rF.drawElementOverlay=function(u,B){var E=this;if(B.isNode())E.drawNodeOverlay(u,B);else E.drawEdgeOverlay(u,B)};rF.drawElementUnderlay=function(u,B){var E=this;if(B.isNode())E.drawNodeUnderlay(u,B);else E.drawEdgeUnderlay(u,B)};rF.drawCachedElementPortion=function(u,B,E,A,C,D,F,U){var z=this,k=E.getBoundingBox(B);if(k.w===0||k.h===0)return;var f=E.getElement(B,k,A,C,D);if(f!=null){var l=U(z,B);if(l===0)return;var b=F(z,B),M=k.x1,Z=k.y1,J=k.w,w=k.h,K,Q,G,L,H;if(b!==0){var q=E.getRotationPoint(B);if(G=q.x,L=q.y,u.translate(G,L),u.rotate(b),H=z.getImgSmoothing(u),!H)z.setImgSmoothing(u,!0);var x=E.getRotationOffset(B);K=x.x,Q=x.y}else K=M,Q=Z;var v;if(l!==1)v=u.globalAlpha,u.globalAlpha=v*l;if(u.drawImage(f.texture.canvas,f.x,0,f.width,f.height,K,Q,J,w),l!==1)u.globalAlpha=v;if(b!==0){if(u.rotate(-b),u.translate(-G,-L),!H)z.setImgSmoothing(u,!1)}}else E.drawElement(u,B)};rF.drawCachedElement=function(u,B,E,A,C,D){var F=this,U=F.data,z=U.eleTxrCache,k=U.lblTxrCache,f=U.slbTxrCache,l=U.tlbTxrCache,b=B.boundingBox(),M=D===!0?z.reasons.highQuality:null;if(b.w===0||b.h===0||!B.visible())return;if(!A||f50(b,A)){var Z=B.isEdge(),J=B.element()._private.rscratch.badLine;if(F.drawElementUnderlay(u,B),F.drawCachedElementPortion(u,B,z,E,C,M,zQ4,bQ4),!Z||!J)F.drawCachedElementPortion(u,B,k,E,C,M,kQ4,Y20);if(Z&&!J)F.drawCachedElementPortion(u,B,f,E,C,M,fQ4,Y20),F.drawCachedElementPortion(u,B,l,E,C,M,lQ4,Y20);F.drawElementOverlay(u,B)}};rF.drawElements=function(u,B){var E=this;for(var A=0;A<B.length;A++){var C=B[A];E.drawElement(u,C)}};rF.drawCachedElements=function(u,B,E,A){var C=this;for(var D=0;D<B.length;D++){var F=B[D];C.drawCachedElement(u,F,E,A)}};rF.drawCachedNodes=function(u,B,E,A){var C=this;for(var D=0;D<B.length;D++){var F=B[D];if(!F.isNode())continue;C.drawCachedElement(u,F,E,A)}};rF.drawLayeredElements=function(u,B,E,A){var C=this,D=C.data.lyrTxrCache.getLayers(B,E);if(D)for(var F=0;F<D.length;F++){var U=D[F],z=U.bb;if(z.w===0||z.h===0)continue;u.drawImage(U.canvas,z.x1,z.y1,z.w,z.h)}else C.drawCachedElements(u,B,E,A)};nz={};nz.drawEdge=function(u,B,E){var A=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,C=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,D=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,F=this,U=B._private.rscratch;if(D&&!B.visible())return;if(U.badLine||U.allpts==null||isNaN(U.allpts[0]))return;var z;if(E)z=E,u.translate(-z.x1,-z.y1);var k=D?B.pstyle("opacity").value:1,f=D?B.pstyle("line-opacity").value:1,l=B.pstyle("curve-style").value,b=B.pstyle("line-style").value,M=B.pstyle("width").pfValue,Z=B.pstyle("line-cap").value,J=B.pstyle("line-outline-width").value,w=B.pstyle("line-outline-color").value,K=k*f,Q=k*f,G=function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:K;if(l==="straight-triangle")F.eleStrokeStyle(u,B,I),F.drawEdgeTrianglePath(B,u,U.allpts);else u.lineWidth=M,u.lineCap=Z,F.eleStrokeStyle(u,B,I),F.drawEdgePath(B,u,U.allpts,b),u.lineCap="butt"},L=function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:K;if(u.lineWidth=M+J,u.lineCap=Z,J>0)F.colorStrokeStyle(u,w[0],w[1],w[2],I);else{u.lineCap="butt";return}if(l==="straight-triangle")F.drawEdgeTrianglePath(B,u,U.allpts);else F.drawEdgePath(B,u,U.allpts,b),u.lineCap="butt"},H=function(){if(!C)return;F.drawEdgeOverlay(u,B)},q=function(){if(!C)return;F.drawEdgeUnderlay(u,B)},x=function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Q;F.drawArrowheads(u,B,I)},v=function(){F.drawElementText(u,B,null,A)};u.lineJoin="round";var W=B.pstyle("ghost").value==="yes";if(W){var S=B.pstyle("ghost-offset-x").pfValue,T=B.pstyle("ghost-offset-y").pfValue,R=B.pstyle("ghost-opacity").value,Y=K*R;u.translate(S,T),G(Y),x(Y),u.translate(-S,-T)}else L();if(q(),G(),x(),H(),v(),E)u.translate(z.x1,z.y1)};nz.drawEdgeOverlay=Bc0("overlay");nz.drawEdgeUnderlay=Bc0("underlay");nz.drawEdgePath=function(u,B,E,A){var C=u._private.rscratch,D=B,F,U=!1,z=this.usePaths(),k=u.pstyle("line-dash-pattern").pfValue,f=u.pstyle("line-dash-offset").pfValue;if(z){var l=E.join("$"),b=C.pathCacheKey&&C.pathCacheKey===l;if(b)F=B=C.pathCache,U=!0;else F=B=new Path2D,C.pathCacheKey=l,C.pathCache=F}if(D.setLineDash)switch(A){case"dotted":D.setLineDash([1,1]);break;case"dashed":D.setLineDash(k),D.lineDashOffset=f;break;case"solid":D.setLineDash([]);break}if(!U&&!C.badLine){if(B.beginPath)B.beginPath();switch(B.moveTo(E[0],E[1]),C.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var M=2;M+3<E.length;M+=4)B.quadraticCurveTo(E[M],E[M+1],E[M+2],E[M+3]);break;case"straight":case"haystack":for(var Z=2;Z+1<E.length;Z+=2)B.lineTo(E[Z],E[Z+1]);break;case"segments":if(C.isRound){var J=Z8(C.roundCorners),w;try{for(J.s();!(w=J.n()).done;){var K=w.value;$y0(B,K)}}catch(G){J.e(G)}finally{J.f()}B.lineTo(E[E.length-2],E[E.length-1])}else for(var Q=2;Q+1<E.length;Q+=2)B.lineTo(E[Q],E[Q+1]);break}}if(B=D,z)B.stroke(F);else B.stroke();if(B.setLineDash)B.setLineDash([])};nz.drawEdgeTrianglePath=function(u,B,E){B.fillStyle=B.strokeStyle;var A=u.pstyle("width").pfValue;for(var C=0;C+1<E.length;C+=2){var D=[E[C+2]-E[C],E[C+3]-E[C+1]],F=Math.sqrt(D[0]*D[0]+D[1]*D[1]),U=[D[1]/F,-D[0]/F],z=[U[0]*A/2,U[1]*A/2];B.beginPath(),B.moveTo(E[C]-z[0],E[C+1]-z[1]),B.lineTo(E[C]+z[0],E[C+1]+z[1]),B.lineTo(E[C+2],E[C+3]),B.closePath(),B.fill()}};nz.drawArrowheads=function(u,B,E){var A=B._private.rscratch,C=A.edgeType==="haystack";if(!C)this.drawArrowhead(u,B,"source",A.arrowStartX,A.arrowStartY,A.srcArrowAngle,E);if(this.drawArrowhead(u,B,"mid-target",A.midX,A.midY,A.midtgtArrowAngle,E),this.drawArrowhead(u,B,"mid-source",A.midX,A.midY,A.midsrcArrowAngle,E),!C)this.drawArrowhead(u,B,"target",A.arrowEndX,A.arrowEndY,A.tgtArrowAngle,E)};nz.drawArrowhead=function(u,B,E,A,C,D,F){if(isNaN(A)||A==null||isNaN(C)||C==null||isNaN(D)||D==null)return;var U=this,z=B.pstyle(E+"-arrow-shape").value;if(z==="none")return;var k=B.pstyle(E+"-arrow-fill").value==="hollow"?"both":"filled",f=B.pstyle(E+"-arrow-fill").value,l=B.pstyle("width").pfValue,b=B.pstyle(E+"-arrow-width"),M=b.value==="match-line"?l:b.pfValue;if(b.units==="%")M*=l;var Z=B.pstyle("opacity").value;if(F===void 0)F=Z;var J=u.globalCompositeOperation;if(F!==1||f==="hollow")u.globalCompositeOperation="destination-out",U.colorFillStyle(u,255,255,255,1),U.colorStrokeStyle(u,255,255,255,1),U.drawArrowShape(B,u,k,l,z,M,A,C,D),u.globalCompositeOperation=J;var w=B.pstyle(E+"-arrow-color").value;U.colorFillStyle(u,w[0],w[1],w[2],F),U.colorStrokeStyle(u,w[0],w[1],w[2],F),U.drawArrowShape(B,u,f,l,z,M,A,C,D)};nz.drawArrowShape=function(u,B,E,A,C,D,F,U,z){var k=this,f=this.usePaths()&&C!=="triangle-cross",l=!1,b,M=B,Z={x:F,y:U},J=u.pstyle("arrow-scale").value,w=this.getArrowWidth(A,J),K=k.arrowShapes[C];if(f){var Q=k.arrowPathCache=k.arrowPathCache||[],G=LJ(C),L=Q[G];if(L!=null)b=B=L,l=!0;else b=B=new Path2D,Q[G]=b}if(!l){if(B.beginPath)B.beginPath();if(f)K.draw(B,1,0,{x:0,y:0},1);else K.draw(B,w,z,Z,A);if(B.closePath)B.closePath()}if(B=M,f)B.translate(F,U),B.rotate(z),B.scale(w,w);if(E==="filled"||E==="both")if(f)B.fill(b);else B.fill();if(E==="hollow"||E==="both")if(B.lineWidth=D/(f?w:1),B.lineJoin="miter",f)B.stroke(b);else B.stroke();if(f)B.scale(1/w,1/w),B.rotate(-z),B.translate(-F,-U)};x50={};x50.safeDrawImage=function(u,B,E,A,C,D,F,U,z,k){if(C<=0||D<=0||z<=0||k<=0)return;try{u.drawImage(B,E,A,C,D,F,U,z,k)}catch(f){A6(f)}};x50.drawInscribedImage=function(u,B,E,A,C){var D=this,F=E.position(),U=F.x,z=F.y,k=E.cy().style(),f=k.getIndexedStyle.bind(k),l=f(E,"background-fit","value",A),b=f(E,"background-repeat","value",A),M=E.width(),Z=E.height(),J=E.padding()*2,w=M+(f(E,"background-width-relative-to","value",A)==="inner"?0:J),K=Z+(f(E,"background-height-relative-to","value",A)==="inner"?0:J),Q=E._private.rscratch,G=f(E,"background-clip","value",A),L=G==="node",H=f(E,"background-image-opacity","value",A)*C,q=f(E,"background-image-smoothing","value",A),x=E.pstyle("corner-radius").value;if(x!=="auto")x=E.pstyle("corner-radius").pfValue;var v=B.width||B.cachedW,W=B.height||B.cachedH;if(v==null||W==null)document.body.appendChild(B),v=B.cachedW=B.width||B.offsetWidth,W=B.cachedH=B.height||B.offsetHeight,document.body.removeChild(B);var S=v,T=W;if(f(E,"background-width","value",A)!=="auto")if(f(E,"background-width","units",A)==="%")S=f(E,"background-width","pfValue",A)*w;else S=f(E,"background-width","pfValue",A);if(f(E,"background-height","value",A)!=="auto")if(f(E,"background-height","units",A)==="%")T=f(E,"background-height","pfValue",A)*K;else T=f(E,"background-height","pfValue",A);if(S===0||T===0)return;if(l==="contain"){var R=Math.min(w/S,K/T);S*=R,T*=R}else if(l==="cover"){var R=Math.max(w/S,K/T);S*=R,T*=R}var Y=U-w/2,a=f(E,"background-position-x","units",A),I=f(E,"background-position-x","pfValue",A);if(a==="%")Y+=(w-S)*I;else Y+=I;var O=f(E,"background-offset-x","units",A),i=f(E,"background-offset-x","pfValue",A);if(O==="%")Y+=(w-S)*i;else Y+=i;var N=z-K/2,V=f(E,"background-position-y","units",A),h=f(E,"background-position-y","pfValue",A);if(V==="%")N+=(K-T)*h;else N+=h;var r=f(E,"background-offset-y","units",A),m=f(E,"background-offset-y","pfValue",A);if(r==="%")N+=(K-T)*m;else N+=m;if(Q.pathCache)Y-=U,N-=z,U=0,z=0;var $=u.globalAlpha;u.globalAlpha=H;var y=D.getImgSmoothing(u),p=!1;if(q==="no"&&y)D.setImgSmoothing(u,!1),p=!0;else if(q==="yes"&&!y)D.setImgSmoothing(u,!0),p=!0;if(b==="no-repeat"){if(L)if(u.save(),Q.pathCache)u.clip(Q.pathCache);else D.nodeShapes[D.getNodeShape(E)].draw(u,U,z,w,K,x,Q),u.clip();if(D.safeDrawImage(u,B,0,0,v,W,Y,N,S,T),L)u.restore()}else{var e=u.createPattern(B,b);u.fillStyle=e,D.nodeShapes[D.getNodeShape(E)].draw(u,U,z,w,K,x,Q),u.translate(Y,N),u.fill(),u.translate(-Y,-N)}if(u.globalAlpha=$,p)D.setImgSmoothing(u,y)};WJ={};WJ.eleTextBiggerThanMin=function(u,B){if(!B){var E=u.cy().zoom(),A=this.getPixelRatio(),C=Math.ceil(z50(E*A));B=Math.pow(2,C)}var D=u.pstyle("font-size").pfValue*B,F=u.pstyle("min-zoomed-font-size").pfValue;if(D<F)return!1;return!0};WJ.drawElementText=function(u,B,E,A,C){var D=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,F=this;if(A==null){if(D&&!F.eleTextBiggerThanMin(B))return}else if(A===!1)return;if(B.isNode()){var U=B.pstyle("label");if(!U||!U.value)return;var z=F.getLabelJustification(B),k=B.pstyle("text-metrics").strValue==="glyph";u.textAlign=z,u.textBaseline=k?"alphabetic":"bottom"}else{var f=B.element()._private.rscratch.badLine,l=B.pstyle("label"),b=B.pstyle("source-label"),M=B.pstyle("target-label");if(f||(!l||!l.value)&&(!b||!b.value)&&(!M||!M.value))return;u.textAlign="center",u.textBaseline="bottom"}var Z=!E,J;if(E)J=E,u.translate(-J.x1,-J.y1);if(C==null){if(F.drawText(u,B,null,Z,D),B.isEdge())F.drawText(u,B,"source",Z,D),F.drawText(u,B,"target",Z,D)}else F.drawText(u,B,C,Z,D);if(E)u.translate(J.x1,J.y1)};WJ.getFontCache=function(u){var B;this.fontCaches=this.fontCaches||[];for(var E=0;E<this.fontCaches.length;E++)if(B=this.fontCaches[E],B.context===u)return B;return B={context:u},this.fontCaches.push(B),B};WJ.setupTextStyle=function(u,B){var E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,A=B.pstyle("font-style").strValue,C=B.pstyle("font-size").pfValue+"px",D=B.pstyle("font-family").strValue,F=B.pstyle("font-weight").strValue,U=E?B.effectiveOpacity()*B.pstyle("text-opacity").value:1,z=B.pstyle("text-outline-opacity").value*U,k=B.pstyle("color").value,f=B.pstyle("text-outline-color").value;u.font=A+" "+F+" "+C+" "+D,u.lineJoin="round",this.colorFillStyle(u,k[0],k[1],k[2],U),this.colorStrokeStyle(u,f[0],f[1],f[2],z)};WJ.getTextAngle=function(u,B){var E,A=u._private,C=A.rscratch,D=B?B+"-":"",F=u.pstyle(D+"text-rotation");if(F.strValue==="autorotate"){var U=KB(C,"labelAngle",B);E=u.isEdge()?U:0}else if(F.strValue==="none")E=0;else E=F.pfValue;return E};WJ.drawText=function(u,B,E){var A=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,C=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,D=B._private,F=D.rscratch,U=C?B.effectiveOpacity():1;if(C&&(U===0||B.pstyle("text-opacity").value===0))return;if(E==="main")E=null;var z=KB(F,"labelX",E),k=KB(F,"labelY",E),f,l,b=this.getLabelText(B,E);if(b!=null&&b!==""&&!isNaN(z)&&!isNaN(k)){this.setupTextStyle(u,B,C);var M=E?E+"-":"",Z=KB(F,"labelWidth",E),J=KB(F,"labelHeight",E),w=KB(F,"labelActualDescent",E),K=B.pstyle(M+"text-margin-x").pfValue,Q=B.pstyle(M+"text-margin-y").pfValue,G=B.isEdge(),L=B.pstyle("text-halign").value,H=B.pstyle("text-valign").value;if(G)L="center",H="center";z+=K,k+=Q;var q;if(!A)q=0;else q=this.getTextAngle(B,E);if(q!==0)f=z,l=k,u.translate(f,l),u.rotate(q),z=0,k=0;var x=RH(L),v=TH(H);switch(v){case"top":break;case"center":k+=J/2;break;case"bottom":k+=J;break}var W=B.pstyle("text-background-opacity").value,S=B.pstyle("text-border-opacity").value,T=B.pstyle("text-border-width").pfValue,R=B.pstyle("text-background-padding").pfValue,Y=B.pstyle("text-background-shape").strValue,a=Y==="round-rectangle"||Y==="roundrectangle",I=Y==="circle",O=2;if(W>0||T>0&&S>0){var{fillStyle:i,strokeStyle:N,lineWidth:V}=u,h=B.pstyle("text-background-color").value,r=B.pstyle("text-border-color").value,m=B.pstyle("text-border-style").value,$=W>0,y=T>0&&S>0,p=z-R;switch(x){case"left":p-=Z;break;case"center":p-=Z/2;break}var e=k-J-R,_=Z+2*R,b0=J+2*R;if($)u.fillStyle="rgba(".concat(h[0],",").concat(h[1],",").concat(h[2],",").concat(W*U,")");if(y){if(u.strokeStyle="rgba(".concat(r[0],",").concat(r[1],",").concat(r[2],",").concat(S*U,")"),u.lineWidth=T,u.setLineDash)switch(m){case"dotted":u.setLineDash([1,1]);break;case"dashed":u.setLineDash([4,2]);break;case"double":u.lineWidth=T/4,u.setLineDash([]);break;case"solid":default:u.setLineDash([]);break}}if(a)u.beginPath(),M$0(u,p,e,_,b0,O);else if(I)u.beginPath(),MQ4(u,p,e,_,b0);else u.beginPath(),u.rect(p,e,_,b0);if($)u.fill();if(y)u.stroke();if(y&&m==="double"){var B0=T/2;if(u.beginPath(),a)M$0(u,p+B0,e+B0,_-2*B0,b0-2*B0,O);else u.rect(p+B0,e+B0,_-2*B0,b0-2*B0);u.stroke()}if(u.fillStyle=i,u.strokeStyle=N,u.lineWidth=V,u.setLineDash)u.setLineDash([])}var k0=2*B.pstyle("text-outline-width").pfValue;if(k0>0)u.lineWidth=k0;if(k-=w,B.pstyle("text-wrap").value==="wrap"){var f0=KB(F,"labelWrapCachedLines",E),D0=KB(F,"labelLineHeight",E),P0=Z/2,q0=this.getLabelJustification(B);if(q0==="auto");else if(x==="left"){if(q0==="left")z+=-Z;else if(q0==="center")z+=-P0}else if(x==="center"){if(q0==="left")z+=-P0;else if(q0==="right")z+=P0}else if(x==="right"){if(q0==="center")z+=P0;else if(q0==="right")z+=Z}switch(v){case"top":k-=(f0.length-1)*D0;break;case"center":case"bottom":k-=(f0.length-1)*D0;break}for(var m0=0;m0<f0.length;m0++){if(k0>0)u.strokeText(f0[m0],z,k);u.fillText(f0[m0],z,k),k+=D0}}else{if(k0>0)u.strokeText(b,z,k);u.fillText(b,z,k)}if(q!==0)u.rotate(-q),u.translate(-f,-l)}};yl={};yl.drawNode=function(u,B,E){var A=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,C=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,D=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,F=this,U,z,k=B._private,f=k.rscratch,l=B.position();if(!J4(l.x)||!J4(l.y))return;if(D&&!B.visible())return;var b=D?B.effectiveOpacity():1,M=F.usePaths(),Z,J=!1,w=B.padding();U=B.width()+2*w,z=B.height()+2*w;var K;if(E)K=E,u.translate(-K.x1,-K.y1);var Q=B.pstyle("background-image"),G=Q.value,L=Array(G.length),H=Array(G.length),q=0;for(var x=0;x<G.length;x++){var v=G[x],W=L[x]=v!=null&&v!=="none";if(W){var S=B.cy().style().getIndexedStyle(B,"background-image-crossorigin","value",x);q++,H[x]=F.getCachedImage(v,S,function(){k.backgroundTimestamp=Date.now(),B.emitAndNotify("background")})}}var T=B.pstyle("background-blacken").value,R=B.pstyle("border-width").pfValue,Y=B.pstyle("background-opacity").value*b,a=B.pstyle("border-color").value,I=B.pstyle("border-style").value,O=B.pstyle("border-join").value,i=B.pstyle("border-cap").value,N=B.pstyle("border-position").value,V=B.pstyle("border-dash-pattern").pfValue,h=B.pstyle("border-dash-offset").pfValue,r=B.pstyle("border-opacity").value*b,m=B.pstyle("outline-width").pfValue,$=B.pstyle("outline-color").value,y=B.pstyle("outline-style").value,p=B.pstyle("outline-opacity").value*b,e=B.pstyle("outline-offset").value,_=B.pstyle("corner-radius").value;if(_!=="auto")_=B.pstyle("corner-radius").pfValue;var b0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Y;F.eleFillStyle(u,B,d)},B0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:r;F.colorStrokeStyle(u,a[0],a[1],a[2],d)},k0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p;F.colorStrokeStyle(u,$[0],$[1],$[2],d)},f0=function(d,H0,o,L0){var E0=F.nodePathCache=F.nodePathCache||[],r0=V$0(o==="polygon"?o+","+L0.join(","):o,""+H0,""+d,""+_),c0=E0[r0],p0,g0=!1;if(c0!=null)p0=c0,g0=!0,f.pathCache=p0;else p0=new Path2D,E0[r0]=f.pathCache=p0;return{path:p0,cacheHit:g0}},D0=B.pstyle("shape").strValue,P0=B.pstyle("shape-polygon-points").pfValue;if(M){u.translate(l.x,l.y);var q0=f0(U,z,D0,P0);Z=q0.path,J=q0.cacheHit}var m0=function(){if(!J){var d=l;if(M)d={x:0,y:0};F.nodeShapes[F.getNodeShape(B)].draw(Z||u,d.x,d.y,U,z,_,f)}if(M)u.fill(Z);else u.fill()},a0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b,H0=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,o=k.backgrounding,L0=0;for(var E0=0;E0<H.length;E0++){var r0=B.cy().style().getIndexedStyle(B,"background-image-containment","value",E0);if(H0&&r0==="over"||!H0&&r0==="inside"){L0++;continue}if(L[E0]&&H[E0].complete&&!H[E0].error)L0++,F.drawInscribedImage(u,H[E0],B,E0,d)}if(k.backgrounding=L0!==q,o!==k.backgrounding)B.updateStyle(!1)},_0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,H0=arguments.length>1&&arguments[1]!==void 0?arguments[1]:b;if(F.hasPie(B)){if(F.drawPie(u,B,H0),d){if(!M)F.nodeShapes[F.getNodeShape(B)].draw(u,l.x,l.y,U,z,_,f)}}},w0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,H0=arguments.length>1&&arguments[1]!==void 0?arguments[1]:b;if(F.hasStripe(B)){if(u.save(),M)u.clip(f.pathCache);else F.nodeShapes[F.getNodeShape(B)].draw(u,l.x,l.y,U,z,_,f),u.clip();if(F.drawStripe(u,B,H0),u.restore(),d){if(!M)F.nodeShapes[F.getNodeShape(B)].draw(u,l.x,l.y,U,z,_,f)}}},v0=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b,H0=(T>0?T:-T)*d,o=T>0?0:255;if(T!==0)if(F.colorFillStyle(u,o,o,o,H0),M)u.fill(Z);else u.fill()},T0=function(){if(R>0){if(u.lineWidth=R,u.lineCap=i,u.lineJoin=O,u.setLineDash)switch(I){case"dotted":u.setLineDash([1,1]);break;case"dashed":u.setLineDash(V),u.lineDashOffset=h;break;case"solid":case"double":u.setLineDash([]);break}if(N!=="center"){if(u.save(),u.lineWidth*=2,N==="inside")M?u.clip(Z):u.clip();else{var d=new Path2D;d.rect(-U/2-R,-z/2-R,U+2*R,z+2*R),d.addPath(Z),u.clip(d,"evenodd")}M?u.stroke(Z):u.stroke(),u.restore()}else M?u.stroke(Z):u.stroke();if(I==="double"){u.lineWidth=R/3;var H0=u.globalCompositeOperation;if(u.globalCompositeOperation="destination-out",M)u.stroke(Z);else u.stroke();u.globalCompositeOperation=H0}if(u.setLineDash)u.setLineDash([])}},Z0=function(){if(m>0){if(u.lineWidth=m,u.lineCap="butt",u.setLineDash)switch(y){case"dotted":u.setLineDash([1,1]);break;case"dashed":u.setLineDash([4,2]);break;case"solid":case"double":u.setLineDash([]);break}var d=l;if(M)d={x:0,y:0};var H0=F.getNodeShape(B),o=R;if(N==="inside")o=0;if(N==="outside")o*=2;var L0=(U+o+(m+e))/U,E0=(z+o+(m+e))/z,r0=U*L0,c0=z*E0,p0=F.nodeShapes[H0].points,g0;if(M){var Bu=f0(r0,c0,H0,p0);g0=Bu.path}if(H0==="ellipse")F.drawEllipsePath(g0||u,d.x,d.y,r0,c0);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(H0)){var n0=0,e0=0,t0=0;if(H0==="round-diamond")n0=(o+e+m)*1.4;else if(H0==="round-heptagon")n0=(o+e+m)*1.075,t0=-(o/2+e+m)/35;else if(H0==="round-hexagon")n0=(o+e+m)*1.12;else if(H0==="round-pentagon")n0=(o+e+m)*1.13,t0=-(o/2+e+m)/15;else if(H0==="round-tag")n0=(o+e+m)*1.12,e0=(o/2+m+e)*0.07;else if(H0==="round-triangle")n0=(o+e+m)*(Math.PI/2),t0=-(o+e/2+m)/Math.PI;if(n0!==0){if(L0=(U+n0)/U,r0=U*L0,!["round-hexagon","round-tag"].includes(H0))E0=(z+n0)/z,c0=z*E0}_=_==="auto"?d$0(r0,c0):_;var zu=r0/2,W0=c0/2,$u=_+(o+m+e)/2,i0=Array(p0.length/2),vu=Array(p0.length/2);for(var cu=0;cu<p0.length/2;cu++)i0[cu]={x:d.x+e0+zu*p0[cu*2],y:d.y+t0+W0*p0[cu*2+1]};var Du,Nu,du,Iu,x0=i0.length;Nu=i0[x0-1];for(Du=0;Du<x0;Du++)du=i0[Du%x0],Iu=i0[(Du+1)%x0],vu[Du]=q50(Nu,du,Iu,$u),Nu=du,du=Iu;F.drawRoundPolygonPath(g0||u,d.x+e0,d.y+t0,U*L0,z*E0,p0,vu)}else if(["roundrectangle","round-rectangle"].includes(H0))_=_==="auto"?il(r0,c0):_,F.drawRoundRectanglePath(g0||u,d.x,d.y,r0,c0,_+(o+m+e)/2);else if(["cutrectangle","cut-rectangle"].includes(H0))_=_==="auto"?l50():_,F.drawCutRectanglePath(g0||u,d.x,d.y,r0,c0,null,_+(o+m+e)/4);else if(["bottomroundrectangle","bottom-round-rectangle"].includes(H0))_=_==="auto"?il(r0,c0):_,F.drawBottomRoundRectanglePath(g0||u,d.x,d.y,r0,c0,_+(o+m+e)/2);else if(H0==="barrel")F.drawBarrelPath(g0||u,d.x,d.y,r0,c0);else if(H0.startsWith("polygon")||["rhomboid","right-rhomboid","round-tag","tag","vee"].includes(H0)){var Tu=(o+m+e)/U;p0=bh(Mh(p0,Tu)),F.drawPolygonPath(g0||u,d.x,d.y,U,z,p0)}else{var Vu=(o+m+e)/U;p0=bh(Mh(p0,-Vu)),F.drawPolygonPath(g0||u,d.x,d.y,U,z,p0)}if(M)u.stroke(g0);else u.stroke();if(y==="double"){u.lineWidth=o/3;var Zu=u.globalCompositeOperation;if(u.globalCompositeOperation="destination-out",M)u.stroke(g0);else u.stroke();u.globalCompositeOperation=Zu}if(u.setLineDash)u.setLineDash([])}},F0=function(){if(C)F.drawNodeOverlay(u,B,l,U,z)},u0=function(){if(C)F.drawNodeUnderlay(u,B,l,U,z)},M0=function(){F.drawElementText(u,B,null,A)},X0=B.pstyle("ghost").value==="yes";if(X0){var S0=B.pstyle("ghost-offset-x").pfValue,Y0=B.pstyle("ghost-offset-y").pfValue,h0=B.pstyle("ghost-opacity").value,J0=h0*b;u.translate(S0,Y0),k0(),Z0(),b0(h0*Y),m0(),a0(J0,!0),B0(h0*r),T0(),_0(T!==0||R!==0),w0(T!==0||R!==0),a0(J0,!1),v0(J0),u.translate(-S0,-Y0)}if(M)u.translate(-l.x,-l.y);if(u0(),M)u.translate(l.x,l.y);if(k0(),Z0(),b0(),m0(),a0(b,!0),B0(),T0(),_0(T!==0||R!==0),w0(T!==0||R!==0),a0(b,!1),v0(),M)u.translate(-l.x,-l.y);if(M0(),F0(),E)u.translate(K.x1,K.y1)};yl.drawNodeOverlay=Ec0("overlay");yl.drawNodeUnderlay=Ec0("underlay");yl.hasPie=function(u){return u=u[0],u._private.hasPie};yl.hasStripe=function(u){return u=u[0],u._private.hasStripe};yl.drawPie=function(u,B,E,A){B=B[0],A=A||B.position();var C=B.cy().style(),D=B.pstyle("pie-size"),F=B.pstyle("pie-hole"),U=B.pstyle("pie-start-angle").pfValue,z=A.x,k=A.y,f=B.width(),l=B.height(),b=Math.min(f,l)/2,M,Z=0,J=this.usePaths();if(J)z=0,k=0;if(D.units==="%")b=b*D.pfValue;else if(D.pfValue!==void 0)b=D.pfValue/2;if(F.units==="%")M=b*F.pfValue;else if(F.pfValue!==void 0)M=F.pfValue/2;if(M>=b)return;for(var w=1;w<=C.pieBackgroundN;w++){var K=B.pstyle("pie-"+w+"-background-size").value,Q=B.pstyle("pie-"+w+"-background-color").value,G=B.pstyle("pie-"+w+"-background-opacity").value*E,L=K/100;if(L+Z>1)L=1-Z;var H=1.5*Math.PI+2*Math.PI*Z;H+=U;var q=2*Math.PI*L,x=H+q;if(K===0||Z>=1||Z+L>1)continue;if(M===0)u.beginPath(),u.moveTo(z,k),u.arc(z,k,b,H,x),u.closePath();else u.beginPath(),u.arc(z,k,b,H,x),u.arc(z,k,M,x,H,!0),u.closePath();this.colorFillStyle(u,Q[0],Q[1],Q[2],G),u.fill(),Z+=L}};yl.drawStripe=function(u,B,E,A){B=B[0],A=A||B.position();var C=B.cy().style(),D=A.x,F=A.y,U=B.width(),z=B.height(),k=0,f=this.usePaths();u.save();var l=B.pstyle("stripe-direction").value,b=B.pstyle("stripe-size");switch(l){case"vertical":break;case"righward":u.rotate(-Math.PI/2);break}var M=U,Z=z;if(b.units==="%")M=M*b.pfValue,Z=Z*b.pfValue;else if(b.pfValue!==void 0)M=b.pfValue,Z=b.pfValue;if(f)D=0,F=0;F-=M/2,D-=Z/2;for(var J=1;J<=C.stripeBackgroundN;J++){var w=B.pstyle("stripe-"+J+"-background-size").value,K=B.pstyle("stripe-"+J+"-background-color").value,Q=B.pstyle("stripe-"+J+"-background-opacity").value*E,G=w/100;if(G+k>1)G=1-k;if(w===0||k>=1||k+G>1)continue;u.beginPath(),u.rect(D,F+Z*k,M,Z*G),u.closePath(),this.colorFillStyle(u,K[0],K[1],K[2],Q),u.fill(),k+=G}u.restore()};GB={};GB.getPixelRatio=function(){var u=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var B=this.cy.window(),E=u.backingStorePixelRatio||u.webkitBackingStorePixelRatio||u.mozBackingStorePixelRatio||u.msBackingStorePixelRatio||u.oBackingStorePixelRatio||u.backingStorePixelRatio||1;return(B.devicePixelRatio||1)/E};GB.paintCache=function(u){var B=this.paintCaches=this.paintCaches||[],E=!0,A;for(var C=0;C<B.length;C++)if(A=B[C],A.context===u){E=!1;break}if(E)A={context:u},B.push(A);return A};GB.createGradientStyleFor=function(u,B,E,A,C){var D,F=this.usePaths(),U=E.pstyle(B+"-gradient-stop-colors").value,z=E.pstyle(B+"-gradient-stop-positions").pfValue;if(A==="radial-gradient")if(E.isEdge()){var k=E.sourceEndpoint(),f=E.targetEndpoint(),l=E.midpoint(),b=qJ(k,l),M=qJ(f,l);D=u.createRadialGradient(l.x,l.y,0,l.x,l.y,Math.max(b,M))}else{var Z=F?{x:0,y:0}:E.position(),J=E.paddedWidth(),w=E.paddedHeight();D=u.createRadialGradient(Z.x,Z.y,0,Z.x,Z.y,Math.max(J,w))}else if(E.isEdge()){var K=E.sourceEndpoint(),Q=E.targetEndpoint();D=u.createLinearGradient(K.x,K.y,Q.x,Q.y)}else{var G=F?{x:0,y:0}:E.position(),L=E.paddedWidth(),H=E.paddedHeight(),q=L/2,x=H/2,v=E.pstyle("background-gradient-direction").value;switch(v){case"to-bottom":D=u.createLinearGradient(G.x,G.y-x,G.x,G.y+x);break;case"to-top":D=u.createLinearGradient(G.x,G.y+x,G.x,G.y-x);break;case"to-left":D=u.createLinearGradient(G.x+q,G.y,G.x-q,G.y);break;case"to-right":D=u.createLinearGradient(G.x-q,G.y,G.x+q,G.y);break;case"to-bottom-right":case"to-right-bottom":D=u.createLinearGradient(G.x-q,G.y-x,G.x+q,G.y+x);break;case"to-top-right":case"to-right-top":D=u.createLinearGradient(G.x-q,G.y+x,G.x+q,G.y-x);break;case"to-bottom-left":case"to-left-bottom":D=u.createLinearGradient(G.x+q,G.y-x,G.x-q,G.y+x);break;case"to-top-left":case"to-left-top":D=u.createLinearGradient(G.x+q,G.y+x,G.x-q,G.y-x);break}}if(!D)return null;var W=z.length===U.length,S=U.length;for(var T=0;T<S;T++)D.addColorStop(W?z[T]:T/(S-1),"rgba("+U[T][0]+","+U[T][1]+","+U[T][2]+","+C+")");return D};GB.gradientFillStyle=function(u,B,E,A){var C=this.createGradientStyleFor(u,"background",B,E,A);if(!C)return null;u.fillStyle=C};GB.colorFillStyle=function(u,B,E,A,C){u.fillStyle="rgba("+B+","+E+","+A+","+C+")"};GB.eleFillStyle=function(u,B,E){var A=B.pstyle("background-fill").value;if(A==="linear-gradient"||A==="radial-gradient")this.gradientFillStyle(u,B,A,E);else{var C=B.pstyle("background-color").value;this.colorFillStyle(u,C[0],C[1],C[2],E)}};GB.gradientStrokeStyle=function(u,B,E,A){var C=this.createGradientStyleFor(u,"line",B,E,A);if(!C)return null;u.strokeStyle=C};GB.colorStrokeStyle=function(u,B,E,A,C){u.strokeStyle="rgba("+B+","+E+","+A+","+C+")"};GB.eleStrokeStyle=function(u,B,E){var A=B.pstyle("line-fill").value;if(A==="linear-gradient"||A==="radial-gradient")this.gradientStrokeStyle(u,B,A,E);else{var C=B.pstyle("line-color").value;this.colorStrokeStyle(u,C[0],C[1],C[2],E)}};GB.matchCanvasSize=function(u){var B=this,E=B.data,A=B.findContainerClientCoords(),C=A[2],D=A[3],F=B.getPixelRatio(),U=B.motionBlurPxRatio;if(u===B.data.bufferCanvases[B.MOTIONBLUR_BUFFER_NODE]||u===B.data.bufferCanvases[B.MOTIONBLUR_BUFFER_DRAG])F=U;var z=C*F,k=D*F,f;if(z===B.canvasWidth&&k===B.canvasHeight)return;B.fontCaches=null;var l=E.canvasContainer;l.style.width=C+"px",l.style.height=D+"px";for(var b=0;b<B.CANVAS_LAYERS;b++)f=E.canvases[b],f.width=z,f.height=k,f.style.width=C+"px",f.style.height=D+"px";for(var b=0;b<B.BUFFER_COUNT;b++)f=E.bufferCanvases[b],f.width=z,f.height=k,f.style.width=C+"px",f.style.height=D+"px";if(B.textureMult=1,F<=1)f=E.bufferCanvases[B.TEXTURE_BUFFER],B.textureMult=2,f.width=z*B.textureMult,f.height=k*B.textureMult;B.canvasWidth=z,B.canvasHeight=k,B.pixelRatio=F};GB.renderTo=function(u,B,E,A){this.render({forcedContext:u,forcedZoom:B,forcedPan:E,drawAllLayers:!0,forcedPxRatio:A})};GB.clearCanvas=function(){var u=this,B=u.data;function E(A){A.clearRect(0,0,u.canvasWidth,u.canvasHeight)}E(B.contexts[u.NODE]),E(B.contexts[u.DRAG])};GB.render=function(u){var B=this;u=u||$$0();var E=B.cy,A=u.forcedContext,C=u.drawAllLayers,D=u.drawOnlyNodeLayer,F=u.forcedZoom,U=u.forcedPan,z=u.forcedPxRatio===void 0?this.getPixelRatio():u.forcedPxRatio,k=B.data,f=k.canvasNeedsRedraw,l=B.textureOnViewport&&!A&&(B.pinching||B.hoverData.dragging||B.swipePanning||B.data.wheelZooming),b=u.motionBlur!==void 0?u.motionBlur:B.motionBlur,M=B.motionBlurPxRatio,Z=E.hasCompoundNodes(),J=B.hoverData.draggingEles,w=B.hoverData.selecting||B.touchData.selecting?!0:!1;b=b&&!A&&B.motionBlurEnabled&&!w;var K=b;if(!A){if(B.prevPxRatio!==z)B.invalidateContainerClientCoordsCache(),B.matchCanvasSize(B.container),B.redrawHint("eles",!0),B.redrawHint("drag",!0);B.prevPxRatio=z}if(!A&&B.motionBlurTimeout)clearTimeout(B.motionBlurTimeout);if(b){if(B.mbFrames==null)B.mbFrames=0;if(B.mbFrames++,B.mbFrames<3)K=!1;if(B.mbFrames>B.minMbLowQualFrames)B.motionBlurPxRatio=B.mbPxRBlurry}if(B.clearingMotionBlur)B.motionBlurPxRatio=1;if(B.textureDrawLastFrame&&!l)f[B.NODE]=!0,f[B.SELECT_BOX]=!0;var Q=E.style(),G=E.zoom(),L=F!==void 0?F:G,H=E.pan(),q={x:H.x,y:H.y},x={zoom:G,pan:{x:H.x,y:H.y}},v=B.prevViewport,W=v===void 0||x.zoom!==v.zoom||x.pan.x!==v.pan.x||x.pan.y!==v.pan.y;if(!W&&!(J&&!Z))B.motionBlurPxRatio=1;if(U)q=U;L*=z,q.x*=z,q.y*=z;var S=B.getCachedZSortedEles();function T(B0,k0,f0,D0,P0){var q0=B0.globalCompositeOperation;B0.globalCompositeOperation="destination-out",B.colorFillStyle(B0,255,255,255,B.motionBlurTransparency),B0.fillRect(k0,f0,D0,P0),B0.globalCompositeOperation=q0}function R(B0,k0){var f0,D0,P0,q0;if(!B.clearingMotionBlur&&(B0===k.bufferContexts[B.MOTIONBLUR_BUFFER_NODE]||B0===k.bufferContexts[B.MOTIONBLUR_BUFFER_DRAG]))f0={x:H.x*M,y:H.y*M},D0=G*M,P0=B.canvasWidth*M,q0=B.canvasHeight*M;else f0=q,D0=L,P0=B.canvasWidth,q0=B.canvasHeight;if(B0.setTransform(1,0,0,1,0,0),k0==="motionBlur")T(B0,0,0,P0,q0);else if(!A&&(k0===void 0||k0))B0.clearRect(0,0,P0,q0);if(!C)B0.translate(f0.x,f0.y),B0.scale(D0,D0);if(U)B0.translate(U.x,U.y);if(F)B0.scale(F,F)}if(!l)B.textureDrawLastFrame=!1;if(l){if(B.textureDrawLastFrame=!0,!B.textureCache){B.textureCache={},B.textureCache.bb=E.mutableElements().boundingBox(),B.textureCache.texture=B.data.bufferCanvases[B.TEXTURE_BUFFER];var Y=B.data.bufferContexts[B.TEXTURE_BUFFER];Y.setTransform(1,0,0,1,0,0),Y.clearRect(0,0,B.canvasWidth*B.textureMult,B.canvasHeight*B.textureMult),B.render({forcedContext:Y,drawOnlyNodeLayer:!0,forcedPxRatio:z*B.textureMult});var x=B.textureCache.viewport={zoom:E.zoom(),pan:E.pan(),width:B.canvasWidth,height:B.canvasHeight};x.mpan={x:(0-x.pan.x)/x.zoom,y:(0-x.pan.y)/x.zoom}}f[B.DRAG]=!1,f[B.NODE]=!1;var a=k.contexts[B.NODE],I=B.textureCache.texture,x=B.textureCache.viewport;if(a.setTransform(1,0,0,1,0,0),b)T(a,0,0,x.width,x.height);else a.clearRect(0,0,x.width,x.height);var O=Q.core("outside-texture-bg-color").value,i=Q.core("outside-texture-bg-opacity").value;B.colorFillStyle(a,O[0],O[1],O[2],i),a.fillRect(0,0,x.width,x.height);var G=E.zoom();R(a,!1),a.clearRect(x.mpan.x,x.mpan.y,x.width/x.zoom/z,x.height/x.zoom/z),a.drawImage(I,x.mpan.x,x.mpan.y,x.width/x.zoom/z,x.height/x.zoom/z)}else if(B.textureOnViewport&&!A)B.textureCache=null;var N=E.extent(),V=B.pinching||B.hoverData.dragging||B.swipePanning||B.data.wheelZooming||B.hoverData.draggingEles||B.cy.animated(),h=B.hideEdgesOnViewport&&V,r=[];if(r[B.NODE]=!f[B.NODE]&&b&&!B.clearedForMotionBlur[B.NODE]||B.clearingMotionBlur,r[B.NODE])B.clearedForMotionBlur[B.NODE]=!0;if(r[B.DRAG]=!f[B.DRAG]&&b&&!B.clearedForMotionBlur[B.DRAG]||B.clearingMotionBlur,r[B.DRAG])B.clearedForMotionBlur[B.DRAG]=!0;if(f[B.NODE]||C||D||r[B.NODE]){var m=b&&!r[B.NODE]&&M!==1,a=A||(m?B.data.bufferContexts[B.MOTIONBLUR_BUFFER_NODE]:k.contexts[B.NODE]),$=b&&!m?"motionBlur":void 0;if(R(a,$),h)B.drawCachedNodes(a,S.nondrag,z,N);else B.drawLayeredElements(a,S.nondrag,z,N);if(B.debug)B.drawDebugPoints(a,S.nondrag);if(!C&&!b)f[B.NODE]=!1}if(!D&&(f[B.DRAG]||C||r[B.DRAG])){var m=b&&!r[B.DRAG]&&M!==1,a=A||(m?B.data.bufferContexts[B.MOTIONBLUR_BUFFER_DRAG]:k.contexts[B.DRAG]);if(R(a,b&&!m?"motionBlur":void 0),h)B.drawCachedNodes(a,S.drag,z,N);else B.drawCachedElements(a,S.drag,z,N);if(B.debug)B.drawDebugPoints(a,S.drag);if(!C&&!b)f[B.DRAG]=!1}if(this.drawSelectionRectangle(u,R),b&&M!==1){var y=k.contexts[B.NODE],p=B.data.bufferCanvases[B.MOTIONBLUR_BUFFER_NODE],e=k.contexts[B.DRAG],_=B.data.bufferCanvases[B.MOTIONBLUR_BUFFER_DRAG],b0=function(k0,f0,D0){if(k0.setTransform(1,0,0,1,0,0),D0||!K)k0.clearRect(0,0,B.canvasWidth,B.canvasHeight);else T(k0,0,0,B.canvasWidth,B.canvasHeight);var P0=M;k0.drawImage(f0,0,0,B.canvasWidth*P0,B.canvasHeight*P0,0,0,B.canvasWidth,B.canvasHeight)};if(f[B.NODE]||r[B.NODE])b0(y,p,r[B.NODE]),f[B.NODE]=!1;if(f[B.DRAG]||r[B.DRAG])b0(e,_,r[B.DRAG]),f[B.DRAG]=!1}if(B.prevViewport=x,B.clearingMotionBlur)B.clearingMotionBlur=!1,B.motionBlurCleared=!0,B.motionBlur=!0;if(b)B.motionBlurTimeout=setTimeout(function(){B.motionBlurTimeout=null,B.clearedForMotionBlur[B.NODE]=!1,B.clearedForMotionBlur[B.DRAG]=!1,B.motionBlur=!1,B.clearingMotionBlur=!l,B.mbFrames=0,f[B.NODE]=!0,f[B.DRAG]=!0,B.redraw()},ZQ4);if(!A)E.emit("render")};GB.drawSelectionRectangle=function(u,B){var E=this,A=E.cy,C=E.data,D=A.style(),F=u.drawOnlyNodeLayer,U=u.drawAllLayers,z=C.canvasNeedsRedraw,k=u.forcedContext;if(E.showFps||!F&&z[E.SELECT_BOX]&&!U){var f=k||C.contexts[E.SELECT_BOX];if(B(f),E.selection[4]==1&&(E.hoverData.selecting||E.touchData.selecting)){var l=E.cy.zoom(),b=D.core("selection-box-border-width").value/l;if(f.lineWidth=b,f.fillStyle="rgba("+D.core("selection-box-color").value[0]+","+D.core("selection-box-color").value[1]+","+D.core("selection-box-color").value[2]+","+D.core("selection-box-opacity").value+")",f.fillRect(E.selection[0],E.selection[1],E.selection[2]-E.selection[0],E.selection[3]-E.selection[1]),b>0)f.strokeStyle="rgba("+D.core("selection-box-border-color").value[0]+","+D.core("selection-box-border-color").value[1]+","+D.core("selection-box-border-color").value[2]+","+D.core("selection-box-opacity").value+")",f.strokeRect(E.selection[0],E.selection[1],E.selection[2]-E.selection[0],E.selection[3]-E.selection[1])}if(C.bgActivePosistion&&!E.hoverData.selecting){var l=E.cy.zoom(),M=C.bgActivePosistion;f.fillStyle="rgba("+D.core("active-bg-color").value[0]+","+D.core("active-bg-color").value[1]+","+D.core("active-bg-color").value[2]+","+D.core("active-bg-opacity").value+")",f.beginPath(),f.arc(M.x,M.y,D.core("active-bg-size").pfValue/l,0,2*Math.PI),f.fill()}var Z=E.lastRedrawTime;if(E.showFps&&Z){Z=Math.round(Z);var J=Math.round(1000/Z),w="1 frame = "+Z+" ms = "+J+" fps";if(f.setTransform(1,0,0,1,0,0),f.fillStyle="rgba(255, 0, 0, 0.75)",f.strokeStyle="rgba(255, 0, 0, 0.75)",f.font="30px Arial",!DW){var K=f.measureText(w);DW=K.actualBoundingBoxAscent}f.fillText(w,0,DW);var Q=60;f.strokeRect(0,DW+10,250,20),f.fillRect(0,DW+10,250*Math.min(J/Q,1),20)}if(!U)z[E.SELECT_BOX]=!1}};J$0=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var u=0,B=arguments.length;while(B--)u+=arguments[B]*arguments[B];return Math.sqrt(u)};RQ4=function(){function u(B,E,A,C){ml(this,u),this.debugID=Math.floor(Math.random()*1e4),this.r=B,this.texSize=E,this.texRows=A,this.texHeight=Math.floor(E/A),this.enableWrapping=!0,this.locked=!1,this.texture=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=C(B,E,E),this.scratch=C(B,E,this.texHeight,"scratch")}return rl(u,[{key:"lock",value:function(){this.locked=!0}},{key:"getKeys",value:function(){return new Set(this.keyToLocation.keys())}},{key:"getScale",value:function(E){var{w:A,h:C}=E,D=this.texHeight,F=this.texSize,U=D/C,z=A*U,k=C*U;if(z>F)U=F/A,z=A*U,k=C*U;return{scale:U,texW:z,texH:k}}},{key:"draw",value:function(E,A,C){var D=this;if(this.locked)throw Error("can't draw, atlas is locked");var F=this.texSize,U=this.texRows,z=this.texHeight,k=this.getScale(A),f=k.scale,l=k.texW,b=k.texH,M=function(G,L){if(C&&L){var H=L.context,q=G.x,x=G.row,v=q,W=z*x;H.save(),H.translate(v,W),H.scale(f,f),C(H,A),H.restore()}},Z=[null,null],J=function(){if(M(D.freePointer,D.canvas),Z[0]={x:D.freePointer.x,y:D.freePointer.row*z,w:l,h:b},Z[1]={x:D.freePointer.x+l,y:D.freePointer.row*z,w:0,h:b},D.freePointer.x+=l,D.freePointer.x==F)D.freePointer.x=0,D.freePointer.row++},w=function(){var{scratch:G,canvas:L}=D;G.clear(),M({x:0,row:0},G);var H=F-D.freePointer.x,q=l-H,x=z;{var v=D.freePointer.x,W=D.freePointer.row*z,S=H;L.context.drawImage(G,0,0,S,x,v,W,S,x),Z[0]={x:v,y:W,w:S,h:b}}{var T=H,R=(D.freePointer.row+1)*z,Y=q;if(L)L.context.drawImage(G,T,0,Y,x,0,R,Y,x);Z[1]={x:0,y:R,w:Y,h:b}}D.freePointer.x=q,D.freePointer.row++},K=function(){D.freePointer.x=0,D.freePointer.row++};if(this.freePointer.x+l<=F)J();else if(this.freePointer.row>=U-1)return!1;else if(this.freePointer.x===F)K(),J();else if(this.enableWrapping)w();else K(),J();return this.keyToLocation.set(E,Z),this.needsBuffer=!0,Z}},{key:"getOffsets",value:function(E){return this.keyToLocation.get(E)}},{key:"isEmpty",value:function(){return this.freePointer.x===0&&this.freePointer.row===0}},{key:"canFit",value:function(E){if(this.locked)return!1;var A=this.texSize,C=this.texRows,D=this.getScale(E),F=D.texW;if(this.freePointer.x+F>A)return this.freePointer.row<C-1;return!0}},{key:"bufferIfNeeded",value:function(E){if(!this.texture)this.texture=qQ4(E,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}}])}(),TQ4=function(){function u(B,E,A,C){ml(this,u),this.r=B,this.texSize=E,this.texRows=A,this.createTextureCanvas=C,this.atlases=[],this.styleKeyToAtlas=new Map,this.markedKeys=new Set}return rl(u,[{key:"getKeys",value:function(){return new Set(this.styleKeyToAtlas.keys())}},{key:"_createAtlas",value:function(){var E=this.r,A=this.texSize,C=this.texRows,D=this.createTextureCanvas;return new RQ4(E,A,C,D)}},{key:"_getScratchCanvas",value:function(){if(!this.scratch){var E=this.r,A=this.texSize,C=this.texRows,D=this.createTextureCanvas,F=Math.floor(A/C);this.scratch=D(E,A,F,"scratch")}return this.scratch}},{key:"draw",value:function(E,A,C){var D=this.styleKeyToAtlas.get(E);if(!D){if(D=this.atlases[this.atlases.length-1],!D||!D.canFit(A)){if(D)D.lock();D=this._createAtlas(),this.atlases.push(D)}D.draw(E,A,C),this.styleKeyToAtlas.set(E,D)}return D}},{key:"getAtlas",value:function(E){return this.styleKeyToAtlas.get(E)}},{key:"hasAtlas",value:function(E){return this.styleKeyToAtlas.has(E)}},{key:"markKeyForGC",value:function(E){this.markedKeys.add(E)}},{key:"gc",value:function(){var E=this,A=this.markedKeys;if(A.size===0){console.log("nothing to garbage collect");return}var C=[],D=new Map,F=null,U=Z8(this.atlases),z;try{var k=function(){var l=z.value,b=l.getKeys(),M=OQ4(A,b);if(M.size===0)return C.push(l),b.forEach(function(H){return D.set(H,l)}),1;if(!F)F=E._createAtlas(),C.push(F);var Z=Z8(b),J;try{for(Z.s();!(J=Z.n()).done;){var w=J.value;if(!M.has(w)){var K=l.getOffsets(w),Q=W2(K,2),G=Q[0],L=Q[1];if(!F.canFit({w:G.w+L.w,h:G.h}))F.lock(),F=E._createAtlas(),C.push(F);if(l.canvas)E._copyTextureToNewAtlas(w,l,F),D.set(w,F)}}}catch(H){Z.e(H)}finally{Z.f()}l.dispose()};for(U.s();!(z=U.n()).done;)if(k())continue}catch(f){U.e(f)}finally{U.f()}this.atlases=C,this.styleKeyToAtlas=D,this.markedKeys=new Set}},{key:"_copyTextureToNewAtlas",value:function(E,A,C){var D=A.getOffsets(E),F=W2(D,2),U=F[0],z=F[1];if(z.w===0)C.draw(E,U,function(b){b.drawImage(A.canvas,U.x,U.y,U.w,U.h,0,0,U.w,U.h)});else{var k=this._getScratchCanvas();k.clear(),k.context.drawImage(A.canvas,U.x,U.y,U.w,U.h,0,0,U.w,U.h),k.context.drawImage(A.canvas,z.x,z.y,z.w,z.h,U.w,0,z.w,z.h);var f=U.w+z.w,l=U.h;C.draw(E,{w:f,h:l},function(b){b.drawImage(k,0,0,f,l,0,0,f,l)})}}},{key:"getCounts",value:function(){return{keyCount:this.styleKeyToAtlas.size,atlasCount:new Set(this.styleKeyToAtlas.values()).size}}}])}();IQ4=function(){function u(B,E){ml(this,u),this.r=B,this.globalOptions=E,this.atlasSize=E.webglTexSize,this.maxAtlasesPerBatch=E.webglTexPerBatch,this.renderTypes=new Map,this.collections=new Map,this.typeAndIdToKey=new Map}return rl(u,[{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"addAtlasCollection",value:function(E,A){var C=this.globalOptions,D=C.webglTexSize,F=C.createTextureCanvas,U=A.texRows,z=this._cacheScratchCanvas(F),k=new TQ4(this.r,D,U,z);this.collections.set(E,k)}},{key:"addRenderType",value:function(E,A){var C=A.collection;if(!this.collections.has(C))throw Error("invalid atlas collection name '".concat(C,"'"));var D=this.collections.get(C),F=k3({type:E,atlasCollection:D},A);this.renderTypes.set(E,F)}},{key:"getRenderTypeOpts",value:function(E){return this.renderTypes.get(E)}},{key:"getAtlasCollection",value:function(E){return this.collections.get(E)}},{key:"_cacheScratchCanvas",value:function(E){var A=-1,C=-1,D=null;return function(F,U,z,k){if(k){if(!D||U!=A||z!=C)A=U,C=z,D=E(F,U,z);return D}else return E(F,U,z)}}},{key:"_key",value:function(E,A){return"".concat(E,"-").concat(A)}},{key:"invalidate",value:function(E){var A=this,C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},D=C.forceRedraw,F=D===void 0?!1:D,U=C.filterEle,z=U===void 0?function(){return!0}:U,k=C.filterType,f=k===void 0?function(){return!0}:k,l=!1,b=!1,M=Z8(E),Z;try{for(M.s();!(Z=M.n()).done;){var J=Z.value;if(z(J)){var w=Z8(this.renderTypes.values()),K;try{var Q=function(){var L=K.value,H=L.type;if(f(H)){var q=A.collections.get(L.collection),x=L.getKey(J),v=Array.isArray(x)?x:[x];if(F)v.forEach(function(R){return q.markKeyForGC(R)}),b=!0;else{var W=L.getID?L.getID(J):J.id(),S=A._key(H,W),T=A.typeAndIdToKey.get(S);if(T!==void 0&&!HQ4(v,T))l=!0,A.typeAndIdToKey.delete(S),T.forEach(function(R){return q.markKeyForGC(R)})}}};for(w.s();!(K=w.n()).done;)Q()}catch(G){w.e(G)}finally{w.f()}}}}catch(G){M.e(G)}finally{M.f()}if(b)this.gc(),l=!1;return l}},{key:"gc",value:function(){var E=Z8(this.collections.values()),A;try{for(E.s();!(A=E.n()).done;){var C=A.value;C.gc()}}catch(D){E.e(D)}finally{E.f()}}},{key:"getOrCreateAtlas",value:function(E,A,C,D){var F=this.renderTypes.get(A),U=this.collections.get(F.collection),z=!1,k=U.draw(D,C,function(b){if(F.drawClipped)b.save(),b.beginPath(),b.rect(0,0,C.w,C.h),b.clip(),F.drawElement(b,E,C,!0,!0),b.restore();else F.drawElement(b,E,C,!0,!0);z=!0});if(z){var f=F.getID?F.getID(E):E.id(),l=this._key(A,f);if(this.typeAndIdToKey.has(l))this.typeAndIdToKey.get(l).push(D);else this.typeAndIdToKey.set(l,[D])}return k}},{key:"getAtlasInfo",value:function(E,A){var C=this,D=this.renderTypes.get(A),F=D.getKey(E),U=Array.isArray(F)?F:[F];return U.map(function(z){var k=D.getBoundingBox(E,z),f=C.getOrCreateAtlas(E,A,k,z),l=f.getOffsets(z),b=W2(l,2),M=b[0],Z=b[1];return{atlas:f,tex:M,tex1:M,tex2:Z,bb:k}})}},{key:"getDebugInfo",value:function(){var E=[],A=Z8(this.collections),C;try{for(A.s();!(C=A.n()).done;){var D=W2(C.value,2),F=D[0],U=D[1],z=U.getCounts(),k=z.keyCount,f=z.atlasCount;E.push({type:F,keyCount:k,atlasCount:f})}}catch(l){A.e(l)}finally{A.f()}return E}}])}(),PQ4=function(){function u(B){ml(this,u),this.globalOptions=B,this.atlasSize=B.webglTexSize,this.maxAtlasesPerBatch=B.webglTexPerBatch,this.batchAtlases=[]}return rl(u,[{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(E,A){return A})}},{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(E){if(this.batchAtlases.length===this.maxAtlasesPerBatch)return this.batchAtlases.includes(E);return!0}},{key:"getAtlasIndexForBatch",value:function(E){var A=this.batchAtlases.indexOf(E);if(A<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)throw Error("cannot add more atlases to batch");this.batchAtlases.push(E),A=this.batchAtlases.length-1}return A}}])}(),MW={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},Hh={IGNORE:1,USE_BB:2},VQ4=function(){function u(B,E,A){ml(this,u),this.r=B,this.gl=E,this.maxInstances=A.webglBatchSize,this.atlasSize=A.webglTexSize,this.bgColor=A.bgColor,this.debug=A.webglDebug,this.batchDebugInfo=[],A.enableWrapping=!0,A.createTextureCanvas=wQ4,this.atlasManager=new IQ4(B,A),this.batchManager=new PQ4(A),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(MW.SCREEN),this.pickingProgram=this._createShaderProgram(MW.PICKING),this.vao=this._createVAO()}return rl(u,[{key:"addAtlasCollection",value:function(E,A){this.atlasManager.addAtlasCollection(E,A)}},{key:"addTextureAtlasRenderType",value:function(E,A){this.atlasManager.addRenderType(E,A)}},{key:"addSimpleShapeRenderType",value:function(E,A){this.simpleShapeOptions.set(E,A)}},{key:"invalidate",value:function(E){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},C=A.type,D=this.atlasManager;if(C)return D.invalidate(E,{filterType:function(U){return U===C},forceRedraw:!0});else return D.invalidate(E)}},{key:"gc",value:function(){this.atlasManager.gc()}},{key:"_createShaderProgram",value:function(E){var A=this.gl,C=`#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(T20,`) {
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(KH," || aVertType == ").concat(UW,`
|| aVertType == `).concat(sV," || aVertType == ").concat(FW,`) { // 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(Q$0,`) {
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(G$0,`) {
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(O20,` && 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;
}
`),D=this.batchManager.getIndexArray(),F=`#version 300 es
precision highp float;
// declare texture unit for each texture atlas in the batch
`.concat(D.map(function(k){return"uniform sampler2D uTexture".concat(k,";")}).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(jQ4,`
`).concat(NQ4,`
`).concat(iQ4,`
`).concat(aQ4,`
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(T20,`) {
// look up the texel from the texture unit
`).concat(D.map(function(k){return"if(vAtlasId == ".concat(k,") outColor = texture(uTexture").concat(k,", vTexCoord);")}).join(`
else `),`
}
else if(vVertType == `).concat(O20,`) {
// 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(KH,` && 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(KH," || vVertType == ").concat(UW,`
|| vVertType == `).concat(sV," || vVertType == ").concat(FW,`) { // 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(KH,`) {
d = rectangleSD(p, b);
} else if(vVertType == `).concat(UW,` && w == h) {
d = circleSD(p, b.x); // faster than ellipse
} else if(vVertType == `).concat(UW,`) {
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(E.picking?`if(outColor.a == 0.0) discard;
else outColor = vIndex;`:"",`
}
`),U=JQ4(A,C,F);U.aPosition=A.getAttribLocation(U,"aPosition"),U.aIndex=A.getAttribLocation(U,"aIndex"),U.aVertType=A.getAttribLocation(U,"aVertType"),U.aTransform=A.getAttribLocation(U,"aTransform"),U.aAtlasId=A.getAttribLocation(U,"aAtlasId"),U.aTex=A.getAttribLocation(U,"aTex"),U.aPointAPointB=A.getAttribLocation(U,"aPointAPointB"),U.aPointCPointD=A.getAttribLocation(U,"aPointCPointD"),U.aLineWidth=A.getAttribLocation(U,"aLineWidth"),U.aColor=A.getAttribLocation(U,"aColor"),U.aCornerRadius=A.getAttribLocation(U,"aCornerRadius"),U.aBorderColor=A.getAttribLocation(U,"aBorderColor"),U.uPanZoomMatrix=A.getUniformLocation(U,"uPanZoomMatrix"),U.uAtlasSize=A.getUniformLocation(U,"uAtlasSize"),U.uBGColor=A.getUniformLocation(U,"uBGColor"),U.uZoom=A.getUniformLocation(U,"uZoom"),U.uTextures=[];for(var z=0;z<this.batchManager.getMaxAtlasesPerBatch();z++)U.uTextures.push(A.getUniformLocation(U,"uTexture".concat(z)));return U}},{key:"_createVAO",value:function(){var E=[0,0,1,0,1,1,0,0,1,1,0,1];this.vertexCount=E.length/2;var A=this.maxInstances,C=this.gl,D=this.program,F=C.createVertexArray();return C.bindVertexArray(F),xQ4(C,"vec2",D.aPosition,E),this.transformBuffer=vQ4(C,A,D.aTransform),this.indexBuffer=NF(C,A,"vec4",D.aIndex),this.vertTypeBuffer=NF(C,A,"int",D.aVertType),this.atlasIdBuffer=NF(C,A,"int",D.aAtlasId),this.texBuffer=NF(C,A,"vec4",D.aTex),this.pointAPointBBuffer=NF(C,A,"vec4",D.aPointAPointB),this.pointCPointDBuffer=NF(C,A,"vec4",D.aPointCPointD),this.lineWidthBuffer=NF(C,A,"vec2",D.aLineWidth),this.colorBuffer=NF(C,A,"vec4",D.aColor),this.cornerRadiusBuffer=NF(C,A,"vec4",D.aCornerRadius),this.borderColorBuffer=NF(C,A,"vec4",D.aBorderColor),C.bindVertexArray(null),F}},{key:"buffers",get:function(){var E=this;if(!this._buffers)this._buffers=Object.keys(this).filter(function(A){return Rl(A,"Buffer")}).map(function(A){return E[A]});return this._buffers}},{key:"startFrame",value:function(E){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:MW.SCREEN;this.panZoomMatrix=E,this.renderTarget=A,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(E,A){if(E.visible()){if(A&&A.isVisible)return A.isVisible(E);return!0}return!1}},{key:"drawTexture",value:function(E,A,C){var D=this.atlasManager,F=this.batchManager,U=D.getRenderTypeOpts(C);if(!this._isVisible(E,U))return;if(E.isEdge()&&!this._isValidEdge(E))return;if(this.renderTarget.picking&&U.getTexPickingMode){var z=U.getTexPickingMode(E);if(z===Hh.IGNORE)return;else if(z==Hh.USE_BB){this.drawPickingRectangle(E,A,C);return}}var k=D.getAtlasInfo(E,C),f=Z8(k),l;try{for(f.s();!(l=f.n()).done;){var b=l.value,M=b.atlas,Z=b.tex1,J=b.tex2;if(!F.canAddToCurrentBatch(M))this.endBatch();var w=F.getAtlasIndexForBatch(M);for(var K=0,Q=[[Z,!0],[J,!1]];K<Q.length;K++){var G=W2(Q[K],2),L=G[0],H=G[1];if(L.w!=0){var q=this.instanceCount;this.vertTypeBuffer.getView(q)[0]=T20;var x=this.indexBuffer.getView(q);wH(A,x);var v=this.atlasIdBuffer.getView(q);v[0]=w;var W=this.texBuffer.getView(q);W[0]=L.x,W[1]=L.y,W[2]=L.w,W[3]=L.h;var S=this.transformBuffer.getMatrixView(q);if(this.setTransformMatrix(E,S,U,b,H),this.instanceCount++,!H)this.wrappedCount++;if(this.instanceCount>=this.maxInstances)this.endBatch()}}}}catch(T){f.e(T)}finally{f.f()}}},{key:"setTransformMatrix",value:function(E,A,C,D){var F=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,U=0;if(C.shapeProps&&C.shapeProps.padding)U=E.pstyle(C.shapeProps.padding).pfValue;if(D){var{bb:z,tex1:k,tex2:f}=D,l=k.w/(k.w+f.w);if(!F)l=1-l;var b=this._getAdjustedBB(z,U,F,l);this._applyTransformMatrix(A,b,C,E)}else{var M=C.getBoundingBox(E),Z=this._getAdjustedBB(M,U,!0,1);this._applyTransformMatrix(A,Z,C,E)}}},{key:"_applyTransformMatrix",value:function(E,A,C,D){var F,U;w$0(E);var z=C.getRotation?C.getRotation(D):0;if(z!==0){var k=C.getRotationPoint(D),f=k.x,l=k.y;Uh(E,E,[f,l]),K$0(E,E,z);var b=C.getRotationOffset(D);F=b.x+(A.xOffset||0),U=b.y+(A.yOffset||0)}else F=A.x1,U=A.y1;Uh(E,E,[F,U]),o20(E,E,[A.w,A.h])}},{key:"_getAdjustedBB",value:function(E,A,C,D){var{x1:F,y1:U,w:z,h:k,yOffset:f}=E;if(A)F-=A,U-=A,z+=2*A,k+=2*A;var l=0,b=z*D;if(C&&D<1)z=b;else if(!C&&D<1)l=z-b,F+=l,z=b;return{x1:F,y1:U,w:z,h:k,xOffset:l,yOffset:f}}},{key:"drawPickingRectangle",value:function(E,A,C){var D=this.atlasManager.getRenderTypeOpts(C),F=this.instanceCount;this.vertTypeBuffer.getView(F)[0]=KH;var U=this.indexBuffer.getView(F);wH(A,U);var z=this.colorBuffer.getView(F);JJ([0,0,0],1,z);var k=this.transformBuffer.getMatrixView(F);if(this.setTransformMatrix(E,k,D),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"drawNode",value:function(E,A,C){var D=this.simpleShapeOptions.get(C);if(!this._isVisible(E,D))return;var F=D.shapeProps,U=this._getVertTypeForShape(E,F.shape);if(U===void 0||D.isSimple&&!D.isSimple(E,this.renderTarget)){this.drawTexture(E,A,C);return}var z=this.instanceCount;if(this.vertTypeBuffer.getView(z)[0]=U,U===sV||U===FW){var k=D.getBoundingBox(E),f=this._getCornerRadius(E,F.radius,k),l=this.cornerRadiusBuffer.getView(z);if(l[0]=f,l[1]=f,l[2]=f,l[3]=f,U===FW)l[0]=0,l[2]=0}var b=this.indexBuffer.getView(z);wH(A,b);var M=this.renderTarget.picking?1:C==="node-body"?E.effectiveOpacity():1,Z=this.renderTarget.picking?1:E.pstyle(F.opacity).value*M,J=E.pstyle(F.color).value,w=this.colorBuffer.getView(z);JJ(J,Z,w);var K=this.lineWidthBuffer.getView(z);if(K[0]=0,K[1]=0,F.border){var Q=E.pstyle("border-width").value;if(Q>0){var G=E.pstyle("border-color").value,L=M*E.pstyle("border-opacity").value,H=this.borderColorBuffer.getView(z);JJ(G,L,H);var q=E.pstyle("border-position").value;if(q==="inside")K[0]=0,K[1]=-Q;else if(q==="outside")K[0]=Q,K[1]=0;else{var x=Q/2;K[0]=x,K[1]=-x}}}var v=this.transformBuffer.getMatrixView(z);if(this.setTransformMatrix(E,v,D),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"_getVertTypeForShape",value:function(E,A){var C=E.pstyle(A).value;switch(C){case"rectangle":return KH;case"ellipse":return UW;case"roundrectangle":case"round-rectangle":return sV;case"bottom-round-rectangle":return FW;default:return}}},{key:"_getCornerRadius",value:function(E,A,C){var{w:D,h:F}=C;if(E.pstyle(A).value==="auto")return il(D,F);else{var U=E.pstyle(A).pfValue,z=D/2,k=F/2;return Math.min(U,k,z)}}},{key:"drawEdgeArrow",value:function(E,A,C){if(!E.visible())return;var D=E._private.rscratch,F,U,z;if(C==="source")F=D.arrowStartX,U=D.arrowStartY,z=D.srcArrowAngle;else F=D.arrowEndX,U=D.arrowEndY,z=D.tgtArrowAngle;if(isNaN(F)||F==null||isNaN(U)||U==null||isNaN(z)||z==null)return;var k=E.pstyle(C+"-arrow-shape").value;if(k==="none")return;var f=E.pstyle(C+"-arrow-color").value,l=E.pstyle("opacity").value,b=E.pstyle("line-opacity").value,M=l*b,Z=E.pstyle("width").pfValue,J=E.pstyle("arrow-scale").value,w=this.r.getArrowWidth(Z,J),K=this.instanceCount,Q=this.transformBuffer.getMatrixView(K);w$0(Q),Uh(Q,Q,[F,U]),o20(Q,Q,[w,w]),K$0(Q,Q,z),this.vertTypeBuffer.getView(K)[0]=O20;var G=this.indexBuffer.getView(K);wH(A,G);var L=this.colorBuffer.getView(K);if(JJ(f,M,L),this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"drawEdgeLine",value:function(E,A){if(!E.visible())return;var C=this._getEdgePoints(E);if(!C)return;var D=E.pstyle("opacity").value,F=E.pstyle("line-opacity").value,U=E.pstyle("width").pfValue,z=E.pstyle("line-color").value,k=D*F;if(C.length/2+this.instanceCount>this.maxInstances)this.endBatch();if(C.length==4){var f=this.instanceCount;this.vertTypeBuffer.getView(f)[0]=Q$0;var l=this.indexBuffer.getView(f);wH(A,l);var b=this.colorBuffer.getView(f);JJ(z,k,b);var M=this.lineWidthBuffer.getView(f);M[0]=U;var Z=this.pointAPointBBuffer.getView(f);if(Z[0]=C[0],Z[1]=C[1],Z[2]=C[2],Z[3]=C[3],this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}else for(var J=0;J<C.length-2;J+=2){var w=this.instanceCount;this.vertTypeBuffer.getView(w)[0]=G$0;var K=this.indexBuffer.getView(w);wH(A,K);var Q=this.colorBuffer.getView(w);JJ(z,k,Q);var G=this.lineWidthBuffer.getView(w);G[0]=U;var L=C[J-2],H=C[J-1],q=C[J],x=C[J+1],v=C[J+2],W=C[J+3],S=C[J+4],T=C[J+5];if(J==0)L=2*q-v+0.001,H=2*x-W+0.001;if(J==C.length-4)S=2*v-q+0.001,T=2*W-x+0.001;var R=this.pointAPointBBuffer.getView(w);R[0]=L,R[1]=H,R[2]=q,R[3]=x;var Y=this.pointCPointDBuffer.getView(w);if(Y[0]=v,Y[1]=W,Y[2]=S,Y[3]=T,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}}},{key:"_isValidEdge",value:function(E){var A=E._private.rscratch;if(A.badLine||A.allpts==null||isNaN(A.allpts[0]))return!1;return!0}},{key:"_getEdgePoints",value:function(E){var A=E._private.rscratch;if(!this._isValidEdge(E))return;var C=A.allpts;if(C.length==4)return C;var D=this._getNumSegments(E);return this._getCurveSegmentPoints(C,D)}},{key:"_getNumSegments",value:function(E){var A=15;return Math.min(Math.max(A,5),this.maxInstances)}},{key:"_getCurveSegmentPoints",value:function(E,A){if(E.length==4)return E;var C=Array((A+1)*2);for(var D=0;D<=A;D++)if(D==0)C[0]=E[0],C[1]=E[1];else if(D==A)C[D*2]=E[E.length-2],C[D*2+1]=E[E.length-1];else{var F=D/A;this._setCurvePoint(E,F,C,D*2)}return C}},{key:"_setCurvePoint",value:function(E,A,C,D){if(E.length<=2)C[D]=E[0],C[D+1]=E[1];else{var F=Array(E.length-2);for(var U=0;U<F.length;U+=2){var z=(1-A)*E[U]+A*E[U+2],k=(1-A)*E[U+1]+A*E[U+3];F[U]=z,F[U+1]=k}return this._setCurvePoint(F,A,C,D)}}},{key:"endBatch",value:function(){var E=this.gl,A=this.vao,C=this.vertexCount,D=this.instanceCount;if(D===0)return;var F=this.renderTarget.picking?this.pickingProgram:this.program;E.useProgram(F),E.bindVertexArray(A);var U=Z8(this.buffers),z;try{for(U.s();!(z=U.n()).done;){var k=z.value;k.bufferSubData(D)}}catch(Z){U.e(Z)}finally{U.f()}var f=this.batchManager.getAtlases();for(var l=0;l<f.length;l++)f[l].bufferIfNeeded(E);for(var b=0;b<f.length;b++)E.activeTexture(E.TEXTURE0+b),E.bindTexture(E.TEXTURE_2D,f[b].texture),E.uniform1i(F.uTextures[b],b);E.uniform1f(F.uZoom,KQ4(this.r)),E.uniformMatrix3fv(F.uPanZoomMatrix,!1,this.panZoomMatrix),E.uniform1i(F.uAtlasSize,this.batchManager.getAtlasSize());var M=JJ(this.bgColor,1);if(E.uniform4fv(F.uBGColor,M),E.drawArraysInstanced(E.TRIANGLES,0,C,D),E.bindVertexArray(null),E.bindTexture(E.TEXTURE_2D,null),this.debug)this.batchDebugInfo.push({count:D,atlasCount:f.length});this.startBatch()}},{key:"getDebugInfo",value:function(){var E=this.atlasManager.getDebugInfo(),A=E.reduce(function(F,U){return F+U.atlasCount},0),C=this.batchDebugInfo,D=C.reduce(function(F,U){return F+U.count},0);return{atlasInfo:E,totalAtlases:A,wrappedCount:this.wrappedCount,simpleCount:this.simpleCount,batchCount:C.length,batchInfo:C,totalInstances:D}}}])}(),Dc0={};Dc0.initWebgl=function(u,B){var E=this,A=E.data.contexts[E.WEBGL];u.bgColor=hQ4(E),u.webglTexSize=Math.min(u.webglTexSize,A.getParameter(A.MAX_TEXTURE_SIZE)),u.webglTexRows=Math.min(u.webglTexRows,54),u.webglTexRowsNodes=Math.min(u.webglTexRowsNodes,54),u.webglBatchSize=Math.min(u.webglBatchSize,16384),u.webglTexPerBatch=Math.min(u.webglTexPerBatch,A.getParameter(A.MAX_TEXTURE_IMAGE_UNITS)),E.webglDebug=u.webglDebug,E.webglDebugShowAtlases=u.webglDebugShowAtlases,E.pickingFrameBuffer=SQ4(A),E.pickingFrameBuffer.needsDraw=!0,E.drawing=new VQ4(E,A,u);var C=function(l){return function(b){return E.getTextAngle(b,l)}},D=function(l){return function(b){var M=b.pstyle(l);return M&&M.value}},F=function(l){return function(b){return b.pstyle("".concat(l,"-opacity")).value>0}},U=function(l){var b=l.pstyle("text-events").strValue==="yes";return b?Hh.USE_BB:Hh.IGNORE},z=function(l){var b=l.position(),M=b.x,Z=b.y,J=l.outerWidth(),w=l.outerHeight();return{w:J,h:w,x1:M-J/2,y1:Z-w/2}};E.drawing.addAtlasCollection("node",{texRows:u.webglTexRowsNodes}),E.drawing.addAtlasCollection("label",{texRows:u.webglTexRows}),E.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:B.getStyleKey,getBoundingBox:B.getElementBox,drawElement:B.drawElement}),E.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:z,isSimple:GQ4,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),E.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:z,isVisible:F("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),E.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:z,isVisible:F("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),E.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:U,getKey:I20(B.getLabelKey,null),getBoundingBox:P20(B.getLabelBox,null),drawClipped:!0,drawElement:B.drawLabel,getRotation:C(null),getRotationPoint:B.getLabelRotationPoint,getRotationOffset:B.getLabelRotationOffset,isVisible:D("label")}),E.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:U,getKey:I20(B.getSourceLabelKey,"source"),getBoundingBox:P20(B.getSourceLabelBox,"source"),drawClipped:!0,drawElement:B.drawSourceLabel,getRotation:C("source"),getRotationPoint:B.getSourceLabelRotationPoint,getRotationOffset:B.getSourceLabelRotationOffset,isVisible:D("source-label")}),E.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:U,getKey:I20(B.getTargetLabelKey,"target"),getBoundingBox:P20(B.getTargetLabelBox,"target"),drawClipped:!0,drawElement:B.drawTargetLabel,getRotation:C("target"),getRotationPoint:B.getTargetLabelRotationPoint,getRotationOffset:B.getTargetLabelRotationOffset,isVisible:D("target-label")});var k=RW(function(){console.log("garbage collect flag set"),E.data.gc=!0},1e4);E.onUpdateEleCalcs(function(f,l){var b=!1;if(l&&l.length>0)b|=E.drawing.invalidate(l);if(b)k()}),mQ4(E)};cl={};cl.drawPolygonPath=function(u,B,E,A,C,D){var F=A/2,U=C/2;if(u.beginPath)u.beginPath();u.moveTo(B+F*D[0],E+U*D[1]);for(var z=1;z<D.length/2;z++)u.lineTo(B+F*D[z*2],E+U*D[z*2+1]);u.closePath()};cl.drawRoundPolygonPath=function(u,B,E,A,C,D,F){F.forEach(function(U){return $y0(u,U)}),u.closePath()};cl.drawRoundRectanglePath=function(u,B,E,A,C,D){var F=A/2,U=C/2,z=D==="auto"?il(A,C):Math.min(D,U,F);if(u.beginPath)u.beginPath();u.moveTo(B,E-U),u.arcTo(B+F,E-U,B+F,E,z),u.arcTo(B+F,E+U,B,E+U,z),u.arcTo(B-F,E+U,B-F,E,z),u.arcTo(B-F,E-U,B,E-U,z),u.lineTo(B,E-U),u.closePath()};cl.drawBottomRoundRectanglePath=function(u,B,E,A,C,D){var F=A/2,U=C/2,z=D==="auto"?il(A,C):D;if(u.beginPath)u.beginPath();u.moveTo(B,E-U),u.lineTo(B+F,E-U),u.lineTo(B+F,E),u.arcTo(B+F,E+U,B,E+U,z),u.arcTo(B-F,E+U,B-F,E,z),u.lineTo(B-F,E-U),u.lineTo(B,E-U),u.closePath()};cl.drawCutRectanglePath=function(u,B,E,A,C,D,F){var U=A/2,z=C/2,k=F==="auto"?l50():F;if(u.beginPath)u.beginPath();u.moveTo(B-U+k,E-z),u.lineTo(B+U-k,E-z),u.lineTo(B+U,E-z+k),u.lineTo(B+U,E+z-k),u.lineTo(B+U-k,E+z),u.lineTo(B-U+k,E+z),u.lineTo(B-U,E+z-k),u.lineTo(B-U,E-z+k),u.closePath()};cl.drawBarrelPath=function(u,B,E,A,C){var D=A/2,F=C/2,U=B-D,z=B+D,k=E-F,f=E+F,l=a20(A,C),b=l.widthOffset,M=l.heightOffset,Z=l.ctrlPtOffsetPct*b;if(u.beginPath)u.beginPath();u.moveTo(U,k+M),u.lineTo(U,f-M),u.quadraticCurveTo(U+Z,f,U+b,f),u.lineTo(z-b,f),u.quadraticCurveTo(z-Z,f,z,f-M),u.lineTo(z,k+M),u.quadraticCurveTo(z-Z,k,z-b,k),u.lineTo(U+b,k),u.quadraticCurveTo(U+Z,k,U,k+M),u.closePath()};H$0=Math.sin(0),L$0=Math.cos(0),t20={},e20={},kc0=Math.PI/40;for(Wl=0*Math.PI;Wl<2*Math.PI;Wl+=kc0)t20[Wl]=Math.sin(Wl),e20[Wl]=Math.cos(Wl);cl.drawEllipsePath=function(u,B,E,A,C){if(u.beginPath)u.beginPath();if(u.ellipse)u.ellipse(B,E,A/2,C/2,0,0,2*Math.PI);else{var D,F,U=A/2,z=C/2;for(var k=0*Math.PI;k<2*Math.PI;k+=kc0)if(D=B-U*t20[k]*H$0+U*e20[k]*L$0,F=E+z*e20[k]*H$0+z*t20[k]*L$0,k===0)u.moveTo(D,F);else u.lineTo(D,F)}u.closePath()};NW={};NW.createBuffer=function(u,B){var E=document.createElement("canvas");return E.width=u,E.height=B,[E,E.getContext("2d")]};NW.bufferCanvasImage=function(u){var B=this.cy,E=B.mutableElements(),A=E.boundingBox(),C=this.findContainerClientCoords(),D=u.full?Math.ceil(A.w):C[2],F=u.full?Math.ceil(A.h):C[3],U=J4(u.maxWidth)||J4(u.maxHeight),z=this.getPixelRatio(),k=1;if(u.scale!==void 0)D*=u.scale,F*=u.scale,k=u.scale;else if(U){var f=1/0,l=1/0;if(J4(u.maxWidth))f=k*u.maxWidth/D;if(J4(u.maxHeight))l=k*u.maxHeight/F;k=Math.min(f,l),D*=k,F*=k}if(!U)D*=z,F*=z,k*=z;var b=document.createElement("canvas");b.width=D,b.height=F,b.style.width=D+"px",b.style.height=F+"px";var M=b.getContext("2d");if(D>0&&F>0){M.clearRect(0,0,D,F),M.globalCompositeOperation="source-over";var Z=this.getCachedZSortedEles();if(u.full)M.translate(-A.x1*k,-A.y1*k),M.scale(k,k),this.drawElements(M,Z),M.scale(1/k,1/k),M.translate(A.x1*k,A.y1*k);else{var J=B.pan(),w={x:J.x*k,y:J.y*k};k*=B.zoom(),M.translate(w.x,w.y),M.scale(k,k),this.drawElements(M,Z),M.scale(1/k,1/k),M.translate(-w.x,-w.y)}if(u.bg)M.globalCompositeOperation="destination-over",M.fillStyle=u.bg,M.rect(0,0,D,F),M.fill()}return b};NW.png=function(u){return fc0(u,this.bufferCanvasImage(u),"image/png")};NW.jpg=function(u){return fc0(u,this.bufferCanvasImage(u),"image/jpeg")};lc0={};lc0.nodeShapeImpl=function(u,B,E,A,C,D,F,U){switch(u){case"ellipse":return this.drawEllipsePath(B,E,A,C,D);case"polygon":return this.drawPolygonPath(B,E,A,C,D,F);case"round-polygon":return this.drawRoundPolygonPath(B,E,A,C,D,F,U);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(B,E,A,C,D,U);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(B,E,A,C,D,F,U);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(B,E,A,C,D,U);case"barrel":return this.drawBarrelPath(B,E,A,C,D)}};sQ4=bc0,u1=bc0.prototype;u1.CANVAS_LAYERS=3;u1.SELECT_BOX=0;u1.DRAG=1;u1.NODE=2;u1.WEBGL=3;u1.CANVAS_TYPES=["2d","2d","2d","webgl2"];u1.BUFFER_COUNT=3;u1.TEXTURE_BUFFER=0;u1.MOTIONBLUR_BUFFER_NODE=1;u1.MOTIONBLUR_BUFFER_DRAG=2;u1.redrawHint=function(u,B){var E=this;switch(u){case"eles":E.data.canvasNeedsRedraw[u1.NODE]=B;break;case"drag":E.data.canvasNeedsRedraw[u1.DRAG]=B;break;case"select":E.data.canvasNeedsRedraw[u1.SELECT_BOX]=B;break;case"gc":E.data.gc=!0;break}};oQ4=typeof Path2D<"u";u1.path2dEnabled=function(u){if(u===void 0)return this.pathsEnabled;this.pathsEnabled=u?!0:!1};u1.usePaths=function(){return oQ4&&this.pathsEnabled};u1.setImgSmoothing=function(u,B){if(u.imageSmoothingEnabled!=null)u.imageSmoothingEnabled=B;else u.webkitImageSmoothingEnabled=B,u.mozImageSmoothingEnabled=B,u.msImageSmoothingEnabled=B};u1.getImgSmoothing=function(u){if(u.imageSmoothingEnabled!=null)return u.imageSmoothingEnabled;else return u.webkitImageSmoothingEnabled||u.mozImageSmoothingEnabled||u.msImageSmoothingEnabled};u1.makeOffscreenCanvas=function(u,B){var E;if((typeof OffscreenCanvas>"u"?"undefined":t2(OffscreenCanvas))!=="undefined")E=new OffscreenCanvas(u,B);else{var A=this.cy.window(),C=A.document;E=C.createElement("canvas"),E.width=u,E.height=B}return E};[uc0,rF,nz,x50,WJ,yl,GB,Dc0,cl,NW,lc0].forEach(function(u){k3(u1,u)});tQ4=[{name:"null",impl:hy0},{name:"base",impl:sy0},{name:"canvas",impl:sQ4}],eQ4=[{type:"layout",extensions:qK4},{type:"renderer",extensions:tQ4}],Mc0={},Zc0={};qW.prototype.extension=u50;eQ4.forEach(function(u){u.extensions.forEach(function(B){Jc0(u.type,B.name,B.impl)})});vJ=Lh.prototype;vJ.instanceString=function(){return"stylesheet"};vJ.selector=function(u){var B=this.length++;return this[B]={selector:u,properties:[]},this};vJ.css=function(u,B){var E=this.length-1;if(p4(u))this[E].properties.push({name:u,value:B});else if(S1(u)){var A=u,C=Object.keys(A);for(var D=0;D<C.length;D++){var F=C[D],U=A[F];if(U==null)continue;var z=R5.properties[F]||R5.properties[qh(F)];if(z==null)continue;var k=z.name,f=U;this[E].properties.push({name:k,value:f})}}return this};vJ.style=vJ.css;vJ.generateStyle=function(u){var B=new R5(u);return this.appendToStyle(B)};vJ.appendToStyle=function(u){for(var B=0;B<this.length;B++){var E=this[B],A=E.selector,C=E.properties;u.selector(A);for(var D=0;D<C.length;D++){var F=C[D];u.css(F.name,F.value)}}return u};zA.use=function(u){var B=Array.prototype.slice.call(arguments,1);return B.unshift(zA),u.apply(null,B),this};zA.warnings=function(u){return m$0(u)};zA.version=EG4;zA.stylesheet=zA.Stylesheet=Lh});var Y50=P1((iW,W50)=>{(function(B,E){if(typeof iW==="object"&&typeof W50==="object")W50.exports=E();else if(typeof define==="function"&&define.amd)define([],E);else if(typeof iW==="object")iW.layoutBase=E();else B.layoutBase=E()})(iW,function(){return function(u){var B={};function E(A){if(B[A])return B[A].exports;var C=B[A]={i:A,l:!1,exports:{}};return u[A].call(C.exports,C,C.exports,E),C.l=!0,C.exports}return E.m=u,E.c=B,E.i=function(A){return A},E.d=function(A,C,D){if(!E.o(A,C))Object.defineProperty(A,C,{configurable:!1,enumerable:!0,get:D})},E.n=function(A){var C=A&&A.__esModule?function(){return A.default}:function(){return A};return E.d(C,"a",C),C},E.o=function(A,C){return Object.prototype.hasOwnProperty.call(A,C)},E.p="",E(E.s=26)}([function(u,B,E){function A(){}A.QUALITY=1,A.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,A.DEFAULT_INCREMENTAL=!1,A.DEFAULT_ANIMATION_ON_LAYOUT=!0,A.DEFAULT_ANIMATION_DURING_LAYOUT=!1,A.DEFAULT_ANIMATION_PERIOD=50,A.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,A.DEFAULT_GRAPH_MARGIN=15,A.NODE_DIMENSIONS_INCLUDE_LABELS=!1,A.SIMPLE_NODE_SIZE=40,A.SIMPLE_NODE_HALF_SIZE=A.SIMPLE_NODE_SIZE/2,A.EMPTY_COMPOUND_NODE_SIZE=40,A.MIN_EDGE_LENGTH=1,A.WORLD_BOUNDARY=1e6,A.INITIAL_WORLD_BOUNDARY=A.WORLD_BOUNDARY/1000,A.WORLD_CENTER_X=1200,A.WORLD_CENTER_Y=900,u.exports=A},function(u,B,E){var A=E(2),C=E(8),D=E(9);function F(z,k,f){A.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=z,this.target=k}F.prototype=Object.create(A.prototype);for(var U in A)F[U]=A[U];F.prototype.getSource=function(){return this.source},F.prototype.getTarget=function(){return this.target},F.prototype.isInterGraph=function(){return this.isInterGraph},F.prototype.getLength=function(){return this.length},F.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},F.prototype.getBendpoints=function(){return this.bendpoints},F.prototype.getLca=function(){return this.lca},F.prototype.getSourceInLca=function(){return this.sourceInLca},F.prototype.getTargetInLca=function(){return this.targetInLca},F.prototype.getOtherEnd=function(z){if(this.source===z)return this.target;else if(this.target===z)return this.source;else throw"Node is not incident with this edge"},F.prototype.getOtherEndInGraph=function(z,k){var f=this.getOtherEnd(z),l=k.getGraphManager().getRoot();while(!0){if(f.getOwner()==k)return f;if(f.getOwner()==l)break;f=f.getOwner().getParent()}return null},F.prototype.updateLength=function(){var z=[,,,,];if(this.isOverlapingSourceAndTarget=C.getIntersection(this.target.getRect(),this.source.getRect(),z),!this.isOverlapingSourceAndTarget){if(this.lengthX=z[0]-z[2],this.lengthY=z[1]-z[3],Math.abs(this.lengthX)<1)this.lengthX=D.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=D.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)}},F.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=D.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=D.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},u.exports=F},function(u,B,E){function A(C){this.vGraphObject=C}u.exports=A},function(u,B,E){var A=E(2),C=E(10),D=E(13),F=E(0),U=E(16),z=E(4);function k(l,b,M,Z){if(M==null&&Z==null)Z=b;if(A.call(this,Z),l.graphManager!=null)l=l.graphManager;if(this.estimatedSize=C.MIN_VALUE,this.inclusionTreeDepth=C.MAX_VALUE,this.vGraphObject=Z,this.edges=[],this.graphManager=l,M!=null&&b!=null)this.rect=new D(b.x,b.y,M.width,M.height);else this.rect=new D}k.prototype=Object.create(A.prototype);for(var f in A)k[f]=A[f];k.prototype.getEdges=function(){return this.edges},k.prototype.getChild=function(){return this.child},k.prototype.getOwner=function(){return this.owner},k.prototype.getWidth=function(){return this.rect.width},k.prototype.setWidth=function(l){this.rect.width=l},k.prototype.getHeight=function(){return this.rect.height},k.prototype.setHeight=function(l){this.rect.height=l},k.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},k.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},k.prototype.getCenter=function(){return new z(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},k.prototype.getLocation=function(){return new z(this.rect.x,this.rect.y)},k.prototype.getRect=function(){return this.rect},k.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},k.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},k.prototype.setRect=function(l,b){this.rect.x=l.x,this.rect.y=l.y,this.rect.width=b.width,this.rect.height=b.height},k.prototype.setCenter=function(l,b){this.rect.x=l-this.rect.width/2,this.rect.y=b-this.rect.height/2},k.prototype.setLocation=function(l,b){this.rect.x=l,this.rect.y=b},k.prototype.moveBy=function(l,b){this.rect.x+=l,this.rect.y+=b},k.prototype.getEdgeListToNode=function(l){var b=[],M,Z=this;return Z.edges.forEach(function(J){if(J.target==l){if(J.source!=Z)throw"Incorrect edge source!";b.push(J)}}),b},k.prototype.getEdgesBetween=function(l){var b=[],M,Z=this;return Z.edges.forEach(function(J){if(!(J.source==Z||J.target==Z))throw"Incorrect edge source and/or target";if(J.target==l||J.source==l)b.push(J)}),b},k.prototype.getNeighborsList=function(){var l=new Set,b=this;return b.edges.forEach(function(M){if(M.source==b)l.add(M.target);else{if(M.target!=b)throw"Incorrect incidency!";l.add(M.source)}}),l},k.prototype.withChildren=function(){var l=new Set,b,M;if(l.add(this),this.child!=null){var Z=this.child.getNodes();for(var J=0;J<Z.length;J++)b=Z[J],M=b.withChildren(),M.forEach(function(w){l.add(w)})}return l},k.prototype.getNoOfChildren=function(){var l=0,b;if(this.child==null)l=1;else{var M=this.child.getNodes();for(var Z=0;Z<M.length;Z++)b=M[Z],l+=b.getNoOfChildren()}if(l==0)l=1;return l},k.prototype.getEstimatedSize=function(){if(this.estimatedSize==C.MIN_VALUE)throw"assert failed";return this.estimatedSize},k.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},k.prototype.scatter=function(){var l,b,M=-F.INITIAL_WORLD_BOUNDARY,Z=F.INITIAL_WORLD_BOUNDARY;l=F.WORLD_CENTER_X+U.nextDouble()*(Z-M)+M;var J=-F.INITIAL_WORLD_BOUNDARY,w=F.INITIAL_WORLD_BOUNDARY;b=F.WORLD_CENTER_Y+U.nextDouble()*(w-J)+J,this.rect.x=l,this.rect.y=b},k.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var l=this.getChild();if(l.updateBounds(!0),this.rect.x=l.getLeft(),this.rect.y=l.getTop(),this.setWidth(l.getRight()-l.getLeft()),this.setHeight(l.getBottom()-l.getTop()),F.NODE_DIMENSIONS_INCLUDE_LABELS){var b=l.getRight()-l.getLeft(),M=l.getBottom()-l.getTop();if(this.labelWidth>b)this.rect.x-=(this.labelWidth-b)/2,this.setWidth(this.labelWidth);if(this.labelHeight>M){if(this.labelPos=="center")this.rect.y-=(this.labelHeight-M)/2;else if(this.labelPos=="top")this.rect.y-=this.labelHeight-M;this.setHeight(this.labelHeight)}}}},k.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==C.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},k.prototype.transform=function(l){var b=this.rect.x;if(b>F.WORLD_BOUNDARY)b=F.WORLD_BOUNDARY;else if(b<-F.WORLD_BOUNDARY)b=-F.WORLD_BOUNDARY;var M=this.rect.y;if(M>F.WORLD_BOUNDARY)M=F.WORLD_BOUNDARY;else if(M<-F.WORLD_BOUNDARY)M=-F.WORLD_BOUNDARY;var Z=new z(b,M),J=l.inverseTransformPoint(Z);this.setLocation(J.x,J.y)},k.prototype.getLeft=function(){return this.rect.x},k.prototype.getRight=function(){return this.rect.x+this.rect.width},k.prototype.getTop=function(){return this.rect.y},k.prototype.getBottom=function(){return this.rect.y+this.rect.height},k.prototype.getParent=function(){if(this.owner==null)return null;return this.owner.getParent()},u.exports=k},function(u,B,E){function A(C,D){if(C==null&&D==null)this.x=0,this.y=0;else this.x=C,this.y=D}A.prototype.getX=function(){return this.x},A.prototype.getY=function(){return this.y},A.prototype.setX=function(C){this.x=C},A.prototype.setY=function(C){this.y=C},A.prototype.getDifference=function(C){return new DimensionD(this.x-C.x,this.y-C.y)},A.prototype.getCopy=function(){return new A(this.x,this.y)},A.prototype.translate=function(C){return this.x+=C.width,this.y+=C.height,this},u.exports=A},function(u,B,E){var A=E(2),C=E(10),D=E(0),F=E(6),U=E(3),z=E(1),k=E(13),f=E(12),l=E(11);function b(Z,J,w){if(A.call(this,w),this.estimatedSize=C.MIN_VALUE,this.margin=D.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=Z,J!=null&&J instanceof F)this.graphManager=J;else if(J!=null&&J instanceof Layout)this.graphManager=J.graphManager}b.prototype=Object.create(A.prototype);for(var M in A)b[M]=A[M];b.prototype.getNodes=function(){return this.nodes},b.prototype.getEdges=function(){return this.edges},b.prototype.getGraphManager=function(){return this.graphManager},b.prototype.getParent=function(){return this.parent},b.prototype.getLeft=function(){return this.left},b.prototype.getRight=function(){return this.right},b.prototype.getTop=function(){return this.top},b.prototype.getBottom=function(){return this.bottom},b.prototype.isConnected=function(){return this.isConnected},b.prototype.add=function(Z,J,w){if(J==null&&w==null){var K=Z;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(K)>-1)throw"Node already in graph!";return K.owner=this,this.getNodes().push(K),K}else{var Q=Z;if(!(this.getNodes().indexOf(J)>-1&&this.getNodes().indexOf(w)>-1))throw"Source or target not in graph!";if(!(J.owner==w.owner&&J.owner==this))throw"Both owners must be this graph!";if(J.owner!=w.owner)return null;if(Q.source=J,Q.target=w,Q.isInterGraph=!1,this.getEdges().push(Q),J.edges.push(Q),w!=J)w.edges.push(Q);return Q}},b.prototype.remove=function(Z){var J=Z;if(Z instanceof U){if(J==null)throw"Node is null!";if(!(J.owner!=null&&J.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";var w=J.edges.slice(),K,Q=w.length;for(var G=0;G<Q;G++)if(K=w[G],K.isInterGraph)this.graphManager.remove(K);else K.source.owner.remove(K);var L=this.nodes.indexOf(J);if(L==-1)throw"Node not in owner node list!";this.nodes.splice(L,1)}else if(Z instanceof z){var K=Z;if(K==null)throw"Edge is null!";if(!(K.source!=null&&K.target!=null))throw"Source and/or target is null!";if(!(K.source.owner!=null&&K.target.owner!=null&&K.source.owner==this&&K.target.owner==this))throw"Source and/or target owner is invalid!";var H=K.source.edges.indexOf(K),q=K.target.edges.indexOf(K);if(!(H>-1&&q>-1))throw"Source and/or target doesn't know this edge!";if(K.source.edges.splice(H,1),K.target!=K.source)K.target.edges.splice(q,1);var L=K.source.owner.getEdges().indexOf(K);if(L==-1)throw"Not in owner's edge list!";K.source.owner.getEdges().splice(L,1)}},b.prototype.updateLeftTop=function(){var{MAX_VALUE:Z,MAX_VALUE:J}=C,w,K,Q,G=this.getNodes(),L=G.length;for(var H=0;H<L;H++){var q=G[H];if(w=q.getTop(),K=q.getLeft(),Z>w)Z=w;if(J>K)J=K}if(Z==C.MAX_VALUE)return null;if(G[0].getParent().paddingLeft!=null)Q=G[0].getParent().paddingLeft;else Q=this.margin;return this.left=J-Q,this.top=Z-Q,new f(this.left,this.top)},b.prototype.updateBounds=function(Z){var J=C.MAX_VALUE,w=-C.MAX_VALUE,K=C.MAX_VALUE,Q=-C.MAX_VALUE,G,L,H,q,x,v=this.nodes,W=v.length;for(var S=0;S<W;S++){var T=v[S];if(Z&&T.child!=null)T.updateBounds();if(G=T.getLeft(),L=T.getRight(),H=T.getTop(),q=T.getBottom(),J>G)J=G;if(w<L)w=L;if(K>H)K=H;if(Q<q)Q=q}var R=new k(J,K,w-J,Q-K);if(J==C.MAX_VALUE)this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom();if(v[0].getParent().paddingLeft!=null)x=v[0].getParent().paddingLeft;else x=this.margin;this.left=R.x-x,this.right=R.x+R.width+x,this.top=R.y-x,this.bottom=R.y+R.height+x},b.calculateBounds=function(Z){var J=C.MAX_VALUE,w=-C.MAX_VALUE,K=C.MAX_VALUE,Q=-C.MAX_VALUE,G,L,H,q,x=Z.length;for(var v=0;v<x;v++){var W=Z[v];if(G=W.getLeft(),L=W.getRight(),H=W.getTop(),q=W.getBottom(),J>G)J=G;if(w<L)w=L;if(K>H)K=H;if(Q<q)Q=q}var S=new k(J,K,w-J,Q-K);return S},b.prototype.getInclusionTreeDepth=function(){if(this==this.graphManager.getRoot())return 1;else return this.parent.getInclusionTreeDepth()},b.prototype.getEstimatedSize=function(){if(this.estimatedSize==C.MIN_VALUE)throw"assert failed";return this.estimatedSize},b.prototype.calcEstimatedSize=function(){var Z=0,J=this.nodes,w=J.length;for(var K=0;K<w;K++){var Q=J[K];Z+=Q.calcEstimatedSize()}if(Z==0)this.estimatedSize=D.EMPTY_COMPOUND_NODE_SIZE;else this.estimatedSize=Z/Math.sqrt(this.nodes.length);return this.estimatedSize},b.prototype.updateConnected=function(){var Z=this;if(this.nodes.length==0){this.isConnected=!0;return}var J=new l,w=new Set,K=this.nodes[0],Q,G,L=K.withChildren();L.forEach(function(S){J.push(S),w.add(S)});while(J.length!==0){K=J.shift(),Q=K.getEdges();var H=Q.length;for(var q=0;q<H;q++){var x=Q[q];if(G=x.getOtherEndInGraph(K,this),G!=null&&!w.has(G)){var v=G.withChildren();v.forEach(function(S){J.push(S),w.add(S)})}}}if(this.isConnected=!1,w.size>=this.nodes.length){var W=0;if(w.forEach(function(S){if(S.owner==Z)W++}),W==this.nodes.length)this.isConnected=!0}},u.exports=b},function(u,B,E){var A,C=E(1);function D(F){A=E(5),this.layout=F,this.graphs=[],this.edges=[]}D.prototype.addRoot=function(){var F=this.layout.newGraph(),U=this.layout.newNode(null),z=this.add(F,U);return this.setRootGraph(z),this.rootGraph},D.prototype.add=function(F,U,z,k,f){if(z==null&&k==null&&f==null){if(F==null)throw"Graph is null!";if(U==null)throw"Parent node is null!";if(this.graphs.indexOf(F)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(F),F.parent!=null)throw"Already has a parent!";if(U.child!=null)throw"Already has a child!";return F.parent=U,U.child=F,F}else{f=z,k=U,z=F;var l=k.getOwner(),b=f.getOwner();if(!(l!=null&&l.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(b!=null&&b.getGraphManager()==this))throw"Target not in this graph mgr!";if(l==b)return z.isInterGraph=!1,l.add(z,k,f);else{if(z.isInterGraph=!0,z.source=k,z.target=f,this.edges.indexOf(z)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(z),!(z.source!=null&&z.target!=null))throw"Edge source and/or target is null!";if(!(z.source.edges.indexOf(z)==-1&&z.target.edges.indexOf(z)==-1))throw"Edge already in source and/or target incidency list!";return z.source.edges.push(z),z.target.edges.push(z),z}}},D.prototype.remove=function(F){if(F instanceof A){var U=F;if(U.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(U==this.rootGraph||U.parent!=null&&U.parent.graphManager==this))throw"Invalid parent node!";var z=[];z=z.concat(U.getEdges());var k,f=z.length;for(var l=0;l<f;l++)k=z[l],U.remove(k);var b=[];b=b.concat(U.getNodes());var M;f=b.length;for(var l=0;l<f;l++)M=b[l],U.remove(M);if(U==this.rootGraph)this.setRootGraph(null);var Z=this.graphs.indexOf(U);this.graphs.splice(Z,1),U.parent=null}else if(F instanceof C){if(k=F,k==null)throw"Edge is null!";if(!k.isInterGraph)throw"Not an inter-graph edge!";if(!(k.source!=null&&k.target!=null))throw"Source and/or target is null!";if(!(k.source.edges.indexOf(k)!=-1&&k.target.edges.indexOf(k)!=-1))throw"Source and/or target doesn't know this edge!";var Z=k.source.edges.indexOf(k);if(k.source.edges.splice(Z,1),Z=k.target.edges.indexOf(k),k.target.edges.splice(Z,1),!(k.source.owner!=null&&k.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(k.source.owner.getGraphManager().edges.indexOf(k)==-1)throw"Not in owner graph manager's edge list!";var Z=k.source.owner.getGraphManager().edges.indexOf(k);k.source.owner.getGraphManager().edges.splice(Z,1)}},D.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},D.prototype.getGraphs=function(){return this.graphs},D.prototype.getAllNodes=function(){if(this.allNodes==null){var F=[],U=this.getGraphs(),z=U.length;for(var k=0;k<z;k++)F=F.concat(U[k].getNodes());this.allNodes=F}return this.allNodes},D.prototype.resetAllNodes=function(){this.allNodes=null},D.prototype.resetAllEdges=function(){this.allEdges=null},D.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},D.prototype.getAllEdges=function(){if(this.allEdges==null){var F=[],U=this.getGraphs(),z=U.length;for(var k=0;k<U.length;k++)F=F.concat(U[k].getEdges());F=F.concat(this.edges),this.allEdges=F}return this.allEdges},D.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},D.prototype.setAllNodesToApplyGravitation=function(F){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=F},D.prototype.getRoot=function(){return this.rootGraph},D.prototype.setRootGraph=function(F){if(F.getGraphManager()!=this)throw"Root not in this graph mgr!";if(this.rootGraph=F,F.parent==null)F.parent=this.layout.newNode("Root node")},D.prototype.getLayout=function(){return this.layout},D.prototype.isOneAncestorOfOther=function(F,U){if(!(F!=null&&U!=null))throw"assert failed";if(F==U)return!0;var z=F.getOwner(),k;do{if(k=z.getParent(),k==null)break;if(k==U)return!0;if(z=k.getOwner(),z==null)break}while(!0);z=U.getOwner();do{if(k=z.getParent(),k==null)break;if(k==F)return!0;if(z=k.getOwner(),z==null)break}while(!0);return!1},D.prototype.calcLowestCommonAncestors=function(){var F,U,z,k,f,l=this.getAllEdges(),b=l.length;for(var M=0;M<b;M++){if(F=l[M],U=F.source,z=F.target,F.lca=null,F.sourceInLca=U,F.targetInLca=z,U==z){F.lca=U.getOwner();continue}k=U.getOwner();while(F.lca==null){F.targetInLca=z,f=z.getOwner();while(F.lca==null){if(f==k){F.lca=f;break}if(f==this.rootGraph)break;if(F.lca!=null)throw"assert failed";F.targetInLca=f.getParent(),f=F.targetInLca.getOwner()}if(k==this.rootGraph)break;if(F.lca==null)F.sourceInLca=k.getParent(),k=F.sourceInLca.getOwner()}if(F.lca==null)throw"assert failed"}},D.prototype.calcLowestCommonAncestor=function(F,U){if(F==U)return F.getOwner();var z=F.getOwner();do{if(z==null)break;var k=U.getOwner();do{if(k==null)break;if(k==z)return k;k=k.getParent().getOwner()}while(!0);z=z.getParent().getOwner()}while(!0);return z},D.prototype.calcInclusionTreeDepths=function(F,U){if(F==null&&U==null)F=this.rootGraph,U=1;var z,k=F.getNodes(),f=k.length;for(var l=0;l<f;l++)if(z=k[l],z.inclusionTreeDepth=U,z.child!=null)this.calcInclusionTreeDepths(z.child,U+1)},D.prototype.includesInvalidEdge=function(){var F,U=this.edges.length;for(var z=0;z<U;z++)if(F=this.edges[z],this.isOneAncestorOfOther(F.source,F.target))return!0;return!1},u.exports=D},function(u,B,E){var A=E(0);function C(){}for(var D in A)C[D]=A[D];C.MAX_ITERATIONS=2500,C.DEFAULT_EDGE_LENGTH=50,C.DEFAULT_SPRING_STRENGTH=0.45,C.DEFAULT_REPULSION_STRENGTH=4500,C.DEFAULT_GRAVITY_STRENGTH=0.4,C.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,C.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,C.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,C.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,C.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,C.DEFAULT_COOLING_FACTOR_INCREMENTAL=0.3,C.COOLING_ADAPTATION_FACTOR=0.33,C.ADAPTATION_LOWER_NODE_LIMIT=1000,C.ADAPTATION_UPPER_NODE_LIMIT=5000,C.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,C.MAX_NODE_DISPLACEMENT=C.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,C.MIN_REPULSION_DIST=C.DEFAULT_EDGE_LENGTH/10,C.CONVERGENCE_CHECK_PERIOD=100,C.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=0.1,C.MIN_EDGE_LENGTH=1,C.GRID_CALCULATION_CHECK_PERIOD=10,u.exports=C},function(u,B,E){var A=E(12);function C(){}C.calcSeparationAmount=function(D,F,U,z){if(!D.intersects(F))throw"assert failed";var k=[,,];if(this.decideDirectionsForOverlappingNodes(D,F,k),U[0]=Math.min(D.getRight(),F.getRight())-Math.max(D.x,F.x),U[1]=Math.min(D.getBottom(),F.getBottom())-Math.max(D.y,F.y),D.getX()<=F.getX()&&D.getRight()>=F.getRight())U[0]+=Math.min(F.getX()-D.getX(),D.getRight()-F.getRight());else if(F.getX()<=D.getX()&&F.getRight()>=D.getRight())U[0]+=Math.min(D.getX()-F.getX(),F.getRight()-D.getRight());if(D.getY()<=F.getY()&&D.getBottom()>=F.getBottom())U[1]+=Math.min(F.getY()-D.getY(),D.getBottom()-F.getBottom());else if(F.getY()<=D.getY()&&F.getBottom()>=D.getBottom())U[1]+=Math.min(D.getY()-F.getY(),F.getBottom()-D.getBottom());var f=Math.abs((F.getCenterY()-D.getCenterY())/(F.getCenterX()-D.getCenterX()));if(F.getCenterY()===D.getCenterY()&&F.getCenterX()===D.getCenterX())f=1;var l=f*U[0],b=U[1]/f;if(U[0]<b)b=U[0];else l=U[1];U[0]=-1*k[0]*(b/2+z),U[1]=-1*k[1]*(l/2+z)},C.decideDirectionsForOverlappingNodes=function(D,F,U){if(D.getCenterX()<F.getCenterX())U[0]=-1;else U[0]=1;if(D.getCenterY()<F.getCenterY())U[1]=-1;else U[1]=1},C.getIntersection2=function(D,F,U){var z=D.getCenterX(),k=D.getCenterY(),f=F.getCenterX(),l=F.getCenterY();if(D.intersects(F))return U[0]=z,U[1]=k,U[2]=f,U[3]=l,!0;var b=D.getX(),M=D.getY(),Z=D.getRight(),J=D.getX(),w=D.getBottom(),K=D.getRight(),Q=D.getWidthHalf(),G=D.getHeightHalf(),L=F.getX(),H=F.getY(),q=F.getRight(),x=F.getX(),v=F.getBottom(),W=F.getRight(),S=F.getWidthHalf(),T=F.getHeightHalf(),R=!1,Y=!1;if(z===f){if(k>l)return U[0]=z,U[1]=M,U[2]=f,U[3]=v,!1;else if(k<l)return U[0]=z,U[1]=w,U[2]=f,U[3]=H,!1}else if(k===l){if(z>f)return U[0]=b,U[1]=k,U[2]=q,U[3]=l,!1;else if(z<f)return U[0]=Z,U[1]=k,U[2]=L,U[3]=l,!1}else{var a=D.height/D.width,I=F.height/F.width,O=(l-k)/(f-z),i=void 0,N=void 0,V=void 0,h=void 0,r=void 0,m=void 0;if(-a===O)if(z>f)U[0]=J,U[1]=w,R=!0;else U[0]=Z,U[1]=M,R=!0;else if(a===O)if(z>f)U[0]=b,U[1]=M,R=!0;else U[0]=K,U[1]=w,R=!0;if(-I===O)if(f>z)U[2]=x,U[3]=v,Y=!0;else U[2]=q,U[3]=H,Y=!0;else if(I===O)if(f>z)U[2]=L,U[3]=H,Y=!0;else U[2]=W,U[3]=v,Y=!0;if(R&&Y)return!1;if(z>f)if(k>l)i=this.getCardinalDirection(a,O,4),N=this.getCardinalDirection(I,O,2);else i=this.getCardinalDirection(-a,O,3),N=this.getCardinalDirection(-I,O,1);else if(k>l)i=this.getCardinalDirection(-a,O,1),N=this.getCardinalDirection(-I,O,3);else i=this.getCardinalDirection(a,O,2),N=this.getCardinalDirection(I,O,4);if(!R)switch(i){case 1:h=M,V=z+-G/O,U[0]=V,U[1]=h;break;case 2:V=K,h=k+Q*O,U[0]=V,U[1]=h;break;case 3:h=w,V=z+G/O,U[0]=V,U[1]=h;break;case 4:V=J,h=k+-Q*O,U[0]=V,U[1]=h;break}if(!Y)switch(N){case 1:m=H,r=f+-T/O,U[2]=r,U[3]=m;break;case 2:r=W,m=l+S*O,U[2]=r,U[3]=m;break;case 3:m=v,r=f+T/O,U[2]=r,U[3]=m;break;case 4:r=x,m=l+-S*O,U[2]=r,U[3]=m;break}}return!1},C.getCardinalDirection=function(D,F,U){if(D>F)return U;else return 1+U%4},C.getIntersection=function(D,F,U,z){if(z==null)return this.getIntersection2(D,F,U);var{x:k,y:f}=D,l=F.x,b=F.y,M=U.x,Z=U.y,J=z.x,w=z.y,K=void 0,Q=void 0,G=void 0,L=void 0,H=void 0,q=void 0,x=void 0,v=void 0,W=void 0;if(G=b-f,H=k-l,x=l*f-k*b,L=w-Z,q=M-J,v=J*Z-M*w,W=G*q-L*H,W===0)return null;return K=(H*v-q*x)/W,Q=(L*x-G*v)/W,new A(K,Q)},C.angleOfVector=function(D,F,U,z){var k=void 0;if(D!==U){if(k=Math.atan((z-F)/(U-D)),U<D)k+=Math.PI;else if(z<F)k+=this.TWO_PI}else if(z<F)k=this.ONE_AND_HALF_PI;else k=this.HALF_PI;return k},C.doIntersect=function(D,F,U,z){var{x:k,y:f}=D,l=F.x,b=F.y,M=U.x,Z=U.y,J=z.x,w=z.y,K=(l-k)*(w-Z)-(J-M)*(b-f);if(K===0)return!1;else{var Q=((w-Z)*(J-k)+(M-J)*(w-f))/K,G=((f-b)*(J-k)+(l-k)*(w-f))/K;return 0<Q&&Q<1&&0<G&&G<1}},C.HALF_PI=0.5*Math.PI,C.ONE_AND_HALF_PI=1.5*Math.PI,C.TWO_PI=2*Math.PI,C.THREE_PI=3*Math.PI,u.exports=C},function(u,B,E){function A(){}A.sign=function(C){if(C>0)return 1;else if(C<0)return-1;else return 0},A.floor=function(C){return C<0?Math.ceil(C):Math.floor(C)},A.ceil=function(C){return C<0?Math.floor(C):Math.ceil(C)},u.exports=A},function(u,B,E){function A(){}A.MAX_VALUE=2147483647,A.MIN_VALUE=-2147483648,u.exports=A},function(u,B,E){var A=function(){function k(f,l){for(var b=0;b<l.length;b++){var M=l[b];if(M.enumerable=M.enumerable||!1,M.configurable=!0,"value"in M)M.writable=!0;Object.defineProperty(f,M.key,M)}}return function(f,l,b){if(l)k(f.prototype,l);if(b)k(f,b);return f}}();function C(k,f){if(!(k instanceof f))throw TypeError("Cannot call a class as a function")}var D=function(f){return{value:f,next:null,prev:null}},F=function(f,l,b,M){if(f!==null)f.next=l;else M.head=l;if(b!==null)b.prev=l;else M.tail=l;return l.prev=f,l.next=b,M.length++,l},U=function(f,l){var{prev:b,next:M}=f;if(b!==null)b.next=M;else l.head=M;if(M!==null)M.prev=b;else l.tail=b;return f.prev=f.next=null,l.length--,f},z=function(){function k(f){var l=this;if(C(this,k),this.length=0,this.head=null,this.tail=null,f!=null)f.forEach(function(b){return l.push(b)})}return A(k,[{key:"size",value:function(){return this.length}},{key:"insertBefore",value:function(l,b){return F(b.prev,D(l),b,this)}},{key:"insertAfter",value:function(l,b){return F(b,D(l),b.next,this)}},{key:"insertNodeBefore",value:function(l,b){return F(b.prev,l,b,this)}},{key:"insertNodeAfter",value:function(l,b){return F(b,l,b.next,this)}},{key:"push",value:function(l){return F(this.tail,D(l),null,this)}},{key:"unshift",value:function(l){return F(null,D(l),this.head,this)}},{key:"remove",value:function(l){return U(l,this)}},{key:"pop",value:function(){return U(this.tail,this).value}},{key:"popNode",value:function(){return U(this.tail,this)}},{key:"shift",value:function(){return U(this.head,this).value}},{key:"shiftNode",value:function(){return U(this.head,this)}},{key:"get_object_at",value:function(l){if(l<=this.length()){var b=1,M=this.head;while(b<l)M=M.next,b++;return M.value}}},{key:"set_object_at",value:function(l,b){if(l<=this.length()){var M=1,Z=this.head;while(M<l)Z=Z.next,M++;Z.value=b}}}]),k}();u.exports=z},function(u,B,E){function A(C,D,F){if(this.x=null,this.y=null,C==null&&D==null&&F==null)this.x=0,this.y=0;else if(typeof C=="number"&&typeof D=="number"&&F==null)this.x=C,this.y=D;else if(C.constructor.name=="Point"&&D==null&&F==null)F=C,this.x=F.x,this.y=F.y}A.prototype.getX=function(){return this.x},A.prototype.getY=function(){return this.y},A.prototype.getLocation=function(){return new A(this.x,this.y)},A.prototype.setLocation=function(C,D,F){if(C.constructor.name=="Point"&&D==null&&F==null)F=C,this.setLocation(F.x,F.y);else if(typeof C=="number"&&typeof D=="number"&&F==null)if(parseInt(C)==C&&parseInt(D)==D)this.move(C,D);else this.x=Math.floor(C+0.5),this.y=Math.floor(D+0.5)},A.prototype.move=function(C,D){this.x=C,this.y=D},A.prototype.translate=function(C,D){this.x+=C,this.y+=D},A.prototype.equals=function(C){if(C.constructor.name=="Point"){var D=C;return this.x==D.x&&this.y==D.y}return this==C},A.prototype.toString=function(){return new A().constructor.name+"[x="+this.x+",y="+this.y+"]"},u.exports=A},function(u,B,E){function A(C,D,F,U){if(this.x=0,this.y=0,this.width=0,this.height=0,C!=null&&D!=null&&F!=null&&U!=null)this.x=C,this.y=D,this.width=F,this.height=U}A.prototype.getX=function(){return this.x},A.prototype.setX=function(C){this.x=C},A.prototype.getY=function(){return this.y},A.prototype.setY=function(C){this.y=C},A.prototype.getWidth=function(){return this.width},A.prototype.setWidth=function(C){this.width=C},A.prototype.getHeight=function(){return this.height},A.prototype.setHeight=function(C){this.height=C},A.prototype.getRight=function(){return this.x+this.width},A.prototype.getBottom=function(){return this.y+this.height},A.prototype.intersects=function(C){if(this.getRight()<C.x)return!1;if(this.getBottom()<C.y)return!1;if(C.getRight()<this.x)return!1;if(C.getBottom()<this.y)return!1;return!0},A.prototype.getCenterX=function(){return this.x+this.width/2},A.prototype.getMinX=function(){return this.getX()},A.prototype.getMaxX=function(){return this.getX()+this.width},A.prototype.getCenterY=function(){return this.y+this.height/2},A.prototype.getMinY=function(){return this.getY()},A.prototype.getMaxY=function(){return this.getY()+this.height},A.prototype.getWidthHalf=function(){return this.width/2},A.prototype.getHeightHalf=function(){return this.height/2},u.exports=A},function(u,B,E){var A=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(D){return typeof D}:function(D){return D&&typeof Symbol==="function"&&D.constructor===Symbol&&D!==Symbol.prototype?"symbol":typeof D};function C(){}C.lastID=0,C.createID=function(D){if(C.isPrimitive(D))return D;if(D.uniqueID!=null)return D.uniqueID;return D.uniqueID=C.getString(),C.lastID++,D.uniqueID},C.getString=function(D){if(D==null)D=C.lastID;return"Object#"+D},C.isPrimitive=function(D){var F=typeof D>"u"?"undefined":A(D);return D==null||F!="object"&&F!="function"},u.exports=C},function(u,B,E){function A(M){if(Array.isArray(M)){for(var Z=0,J=Array(M.length);Z<M.length;Z++)J[Z]=M[Z];return J}else return Array.from(M)}var C=E(0),D=E(6),F=E(3),U=E(1),z=E(5),k=E(4),f=E(17),l=E(27);function b(M){if(l.call(this),this.layoutQuality=C.QUALITY,this.createBendsAsNeeded=C.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=C.DEFAULT_INCREMENTAL,this.animationOnLayout=C.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=C.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=C.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=C.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new D(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,M!=null)this.isRemoteUse=M}b.RANDOM_SEED=1,b.prototype=Object.create(l.prototype),b.prototype.getGraphManager=function(){return this.graphManager},b.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},b.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},b.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},b.prototype.newGraphManager=function(){var M=new D(this);return this.graphManager=M,M},b.prototype.newGraph=function(M){return new z(null,this.graphManager,M)},b.prototype.newNode=function(M){return new F(this.graphManager,M)},b.prototype.newEdge=function(M){return new U(null,null,M)},b.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},b.prototype.runLayout=function(){if(this.isLayoutFinished=!1,this.tilingPreLayout)this.tilingPreLayout();this.initParameters();var M;if(this.checkLayoutSuccess())M=!1;else M=this.layout();if(C.ANIMATE==="during")return!1;if(M){if(!this.isSubLayout)this.doPostLayout()}if(this.tilingPostLayout)this.tilingPostLayout();return this.isLayoutFinished=!0,M},b.prototype.doPostLayout=function(){if(!this.incremental)this.transform();this.update()},b.prototype.update2=function(){if(this.createBendsAsNeeded)this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges();if(!this.isRemoteUse){var M,Z=this.graphManager.getAllEdges();for(var J=0;J<Z.length;J++)M=Z[J];var w,K=this.graphManager.getRoot().getNodes();for(var J=0;J<K.length;J++)w=K[J];this.update(this.graphManager.getRoot())}},b.prototype.update=function(M){if(M==null)this.update2();else if(M instanceof F){var Z=M;if(Z.getChild()!=null){var J=Z.getChild().getNodes();for(var w=0;w<J.length;w++)update(J[w])}if(Z.vGraphObject!=null){var K=Z.vGraphObject;K.update(Z)}}else if(M instanceof U){var Q=M;if(Q.vGraphObject!=null){var G=Q.vGraphObject;G.update(Q)}}else if(M instanceof z){var L=M;if(L.vGraphObject!=null){var H=L.vGraphObject;H.update(L)}}},b.prototype.initParameters=function(){if(!this.isSubLayout)this.layoutQuality=C.QUALITY,this.animationDuringLayout=C.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=C.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=C.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=C.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=C.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=C.DEFAULT_UNIFORM_LEAF_NODE_SIZES;if(this.animationDuringLayout)this.animationOnLayout=!1},b.prototype.transform=function(M){if(M==null)this.transform(new k(0,0));else{var Z=new f,J=this.graphManager.getRoot().updateLeftTop();if(J!=null){Z.setWorldOrgX(M.x),Z.setWorldOrgY(M.y),Z.setDeviceOrgX(J.x),Z.setDeviceOrgY(J.y);var w=this.getAllNodes(),K;for(var Q=0;Q<w.length;Q++)K=w[Q],K.transform(Z)}}},b.prototype.positionNodesRandomly=function(M){if(M==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else{var Z,J,w=M.getNodes();for(var K=0;K<w.length;K++)if(Z=w[K],J=Z.getChild(),J==null)Z.scatter();else if(J.getNodes().length==0)Z.scatter();else this.positionNodesRandomly(J),Z.updateBounds()}},b.prototype.getFlatForest=function(){var M=[],Z=!0,J=this.graphManager.getRoot().getNodes(),w=!0;for(var K=0;K<J.length;K++)if(J[K].getChild()!=null)w=!1;if(!w)return M;var Q=new Set,G=[],L=new Map,H=[];H=H.concat(J);while(H.length>0&&Z){G.push(H[0]);while(G.length>0&&Z){var q=G[0];G.splice(0,1),Q.add(q);var x=q.getEdges();for(var K=0;K<x.length;K++){var v=x[K].getOtherEnd(q);if(L.get(q)!=v)if(!Q.has(v))G.push(v),L.set(v,q);else{Z=!1;break}}}if(!Z)M=[];else{var W=[].concat(A(Q));M.push(W);for(var K=0;K<W.length;K++){var S=W[K],T=H.indexOf(S);if(T>-1)H.splice(T,1)}Q=new Set,L=new Map}}return M},b.prototype.createDummyNodesForBendpoints=function(M){var Z=[],J=M.source,w=this.graphManager.calcLowestCommonAncestor(M.source,M.target);for(var K=0;K<M.bendpoints.length;K++){var Q=this.newNode(null);Q.setRect(new Point(0,0),new Dimension(1,1)),w.add(Q);var G=this.newEdge(null);this.graphManager.add(G,J,Q),Z.add(Q),J=Q}var G=this.newEdge(null);if(this.graphManager.add(G,J,M.target),this.edgeToDummyNodes.set(M,Z),M.isInterGraph())this.graphManager.remove(M);else w.remove(M);return Z},b.prototype.createBendpointsFromDummyNodes=function(){var M=[];M=M.concat(this.graphManager.getAllEdges()),M=[].concat(A(this.edgeToDummyNodes.keys())).concat(M);for(var Z=0;Z<M.length;Z++){var J=M[Z];if(J.bendpoints.length>0){var w=this.edgeToDummyNodes.get(J);for(var K=0;K<w.length;K++){var Q=w[K],G=new k(Q.getCenterX(),Q.getCenterY()),L=J.bendpoints.get(K);L.x=G.x,L.y=G.y,Q.getOwner().remove(Q)}this.graphManager.add(J,J.source,J.target)}}},b.transform=function(M,Z,J,w){if(J!=null&&w!=null){var K=Z;if(M<=50){var Q=Z/J;K-=(Z-Q)/50*(50-M)}else{var G=Z*w;K+=(G-Z)/50*(M-50)}return K}else{var L,H;if(M<=50)L=9*Z/500,H=Z/10;else L=9*Z/50,H=-8*Z;return L*M+H}},b.findCenterOfTree=function(M){var Z=[];Z=Z.concat(M);var J=[],w=new Map,K=!1,Q=null;if(Z.length==1||Z.length==2)K=!0,Q=Z[0];for(var G=0;G<Z.length;G++){var L=Z[G],H=L.getNeighborsList().size;if(w.set(L,L.getNeighborsList().size),H==1)J.push(L)}var q=[];q=q.concat(J);while(!K){var x=[];x=x.concat(q),q=[];for(var G=0;G<Z.length;G++){var L=Z[G],v=Z.indexOf(L);if(v>=0)Z.splice(v,1);var W=L.getNeighborsList();W.forEach(function(R){if(J.indexOf(R)<0){var Y=w.get(R),a=Y-1;if(a==1)q.push(R);w.set(R,a)}})}if(J=J.concat(q),Z.length==1||Z.length==2)K=!0,Q=Z[0]}return Q},b.prototype.setGraphManager=function(M){this.graphManager=M},u.exports=b},function(u,B,E){function A(){}A.seed=1,A.x=0,A.nextDouble=function(){return A.x=Math.sin(A.seed++)*1e4,A.x-Math.floor(A.x)},u.exports=A},function(u,B,E){var A=E(4);function C(D,F){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}C.prototype.getWorldOrgX=function(){return this.lworldOrgX},C.prototype.setWorldOrgX=function(D){this.lworldOrgX=D},C.prototype.getWorldOrgY=function(){return this.lworldOrgY},C.prototype.setWorldOrgY=function(D){this.lworldOrgY=D},C.prototype.getWorldExtX=function(){return this.lworldExtX},C.prototype.setWorldExtX=function(D){this.lworldExtX=D},C.prototype.getWorldExtY=function(){return this.lworldExtY},C.prototype.setWorldExtY=function(D){this.lworldExtY=D},C.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},C.prototype.setDeviceOrgX=function(D){this.ldeviceOrgX=D},C.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},C.prototype.setDeviceOrgY=function(D){this.ldeviceOrgY=D},C.prototype.getDeviceExtX=function(){return this.ldeviceExtX},C.prototype.setDeviceExtX=function(D){this.ldeviceExtX=D},C.prototype.getDeviceExtY=function(){return this.ldeviceExtY},C.prototype.setDeviceExtY=function(D){this.ldeviceExtY=D},C.prototype.transformX=function(D){var F=0,U=this.lworldExtX;if(U!=0)F=this.ldeviceOrgX+(D-this.lworldOrgX)*this.ldeviceExtX/U;return F},C.prototype.transformY=function(D){var F=0,U=this.lworldExtY;if(U!=0)F=this.ldeviceOrgY+(D-this.lworldOrgY)*this.ldeviceExtY/U;return F},C.prototype.inverseTransformX=function(D){var F=0,U=this.ldeviceExtX;if(U!=0)F=this.lworldOrgX+(D-this.ldeviceOrgX)*this.lworldExtX/U;return F},C.prototype.inverseTransformY=function(D){var F=0,U=this.ldeviceExtY;if(U!=0)F=this.lworldOrgY+(D-this.ldeviceOrgY)*this.lworldExtY/U;return F},C.prototype.inverseTransformPoint=function(D){var F=new A(this.inverseTransformX(D.x),this.inverseTransformY(D.y));return F},u.exports=C},function(u,B,E){function A(l){if(Array.isArray(l)){for(var b=0,M=Array(l.length);b<l.length;b++)M[b]=l[b];return M}else return Array.from(l)}var C=E(15),D=E(7),F=E(0),U=E(8),z=E(9);function k(){C.call(this),this.useSmartIdealEdgeLengthCalculation=D.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=D.DEFAULT_EDGE_LENGTH,this.springConstant=D.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=D.DEFAULT_REPULSION_STRENGTH,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.displacementThresholdPerNode=3*D.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=D.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=D.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=D.MAX_ITERATIONS}k.prototype=Object.create(C.prototype);for(var f in C)k[f]=C[f];k.prototype.initParameters=function(){C.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=D.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},k.prototype.calcIdealEdgeLengths=function(){var l,b,M,Z,J,w,K=this.getGraphManager().getAllEdges();for(var Q=0;Q<K.length;Q++)if(l=K[Q],l.idealLength=this.idealEdgeLength,l.isInterGraph){if(M=l.getSource(),Z=l.getTarget(),J=l.getSourceInLca().getEstimatedSize(),w=l.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation)l.idealLength+=J+w-2*F.SIMPLE_NODE_SIZE;b=l.getLca().getInclusionTreeDepth(),l.idealLength+=D.DEFAULT_EDGE_LENGTH*D.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(M.getInclusionTreeDepth()+Z.getInclusionTreeDepth()-2*b)}},k.prototype.initSpringEmbedder=function(){var l=this.getAllNodes().length;if(this.incremental){if(l>D.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(this.coolingFactor*D.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(l-D.ADAPTATION_LOWER_NODE_LIMIT)/(D.ADAPTATION_UPPER_NODE_LIMIT-D.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-D.COOLING_ADAPTATION_FACTOR));this.maxNodeDisplacement=D.MAX_NODE_DISPLACEMENT_INCREMENTAL}else{if(l>D.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(D.COOLING_ADAPTATION_FACTOR,1-(l-D.ADAPTATION_LOWER_NODE_LIMIT)/(D.ADAPTATION_UPPER_NODE_LIMIT-D.ADAPTATION_LOWER_NODE_LIMIT)*(1-D.COOLING_ADAPTATION_FACTOR));else this.coolingFactor=1;this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=D.MAX_NODE_DISPLACEMENT}this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},k.prototype.calcSpringForces=function(){var l=this.getAllEdges(),b;for(var M=0;M<l.length;M++)b=l[M],this.calcSpringForce(b,b.idealLength)},k.prototype.calcRepulsionForces=function(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,M,Z,J,w,K=this.getAllNodes(),Q;if(this.useFRGridVariant){if(this.totalIterations%D.GRID_CALCULATION_CHECK_PERIOD==1&&l)this.updateGrid();Q=new Set;for(M=0;M<K.length;M++)J=K[M],this.calculateRepulsionForceOfANode(J,Q,l,b),Q.add(J)}else for(M=0;M<K.length;M++){J=K[M];for(Z=M+1;Z<K.length;Z++){if(w=K[Z],J.getOwner()!=w.getOwner())continue;this.calcRepulsionForce(J,w)}}},k.prototype.calcGravitationalForces=function(){var l,b=this.getAllNodesToApplyGravitation();for(var M=0;M<b.length;M++)l=b[M],this.calcGravitationalForce(l)},k.prototype.moveNodes=function(){var l=this.getAllNodes(),b;for(var M=0;M<l.length;M++)b=l[M],b.move()},k.prototype.calcSpringForce=function(l,b){var M=l.getSource(),Z=l.getTarget(),J,w,K,Q;if(this.uniformLeafNodeSizes&&M.getChild()==null&&Z.getChild()==null)l.updateLengthSimple();else if(l.updateLength(),l.isOverlapingSourceAndTarget)return;if(J=l.getLength(),J==0)return;w=this.springConstant*(J-b),K=w*(l.lengthX/J),Q=w*(l.lengthY/J),M.springForceX+=K,M.springForceY+=Q,Z.springForceX-=K,Z.springForceY-=Q},k.prototype.calcRepulsionForce=function(l,b){var M=l.getRect(),Z=b.getRect(),J=[,,],w=[,,,,],K,Q,G,L,H,q,x;if(M.intersects(Z)){U.calcSeparationAmount(M,Z,J,D.DEFAULT_EDGE_LENGTH/2),q=2*J[0],x=2*J[1];var v=l.noOfChildren*b.noOfChildren/(l.noOfChildren+b.noOfChildren);l.repulsionForceX-=v*q,l.repulsionForceY-=v*x,b.repulsionForceX+=v*q,b.repulsionForceY+=v*x}else{if(this.uniformLeafNodeSizes&&l.getChild()==null&&b.getChild()==null)K=Z.getCenterX()-M.getCenterX(),Q=Z.getCenterY()-M.getCenterY();else U.getIntersection(M,Z,w),K=w[2]-w[0],Q=w[3]-w[1];if(Math.abs(K)<D.MIN_REPULSION_DIST)K=z.sign(K)*D.MIN_REPULSION_DIST;if(Math.abs(Q)<D.MIN_REPULSION_DIST)Q=z.sign(Q)*D.MIN_REPULSION_DIST;G=K*K+Q*Q,L=Math.sqrt(G),H=this.repulsionConstant*l.noOfChildren*b.noOfChildren/G,q=H*K/L,x=H*Q/L,l.repulsionForceX-=q,l.repulsionForceY-=x,b.repulsionForceX+=q,b.repulsionForceY+=x}},k.prototype.calcGravitationalForce=function(l){var b,M,Z,J,w,K,Q,G;if(b=l.getOwner(),M=(b.getRight()+b.getLeft())/2,Z=(b.getTop()+b.getBottom())/2,J=l.getCenterX()-M,w=l.getCenterY()-Z,K=Math.abs(J)+l.getWidth()/2,Q=Math.abs(w)+l.getHeight()/2,l.getOwner()==this.graphManager.getRoot()){if(G=b.getEstimatedSize()*this.gravityRangeFactor,K>G||Q>G)l.gravitationForceX=-this.gravityConstant*J,l.gravitationForceY=-this.gravityConstant*w}else if(G=b.getEstimatedSize()*this.compoundGravityRangeFactor,K>G||Q>G)l.gravitationForceX=-this.gravityConstant*J*this.compoundGravityConstant,l.gravitationForceY=-this.gravityConstant*w*this.compoundGravityConstant},k.prototype.isConverged=function(){var l,b=!1;if(this.totalIterations>this.maxIterations/3)b=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2;return l=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,l||b},k.prototype.animate=function(){if(this.animationDuringLayout&&!this.isSubLayout)if(this.notAnimatedIterations==this.animationPeriod)this.update(),this.notAnimatedIterations=0;else this.notAnimatedIterations++},k.prototype.calcNoOfChildrenForAllNodes=function(){var l,b=this.graphManager.getAllNodes();for(var M=0;M<b.length;M++)l=b[M],l.noOfChildren=l.getNoOfChildren()},k.prototype.calcGrid=function(l){var b=0,M=0;b=parseInt(Math.ceil((l.getRight()-l.getLeft())/this.repulsionRange)),M=parseInt(Math.ceil((l.getBottom()-l.getTop())/this.repulsionRange));var Z=Array(b);for(var J=0;J<b;J++)Z[J]=Array(M);for(var J=0;J<b;J++)for(var w=0;w<M;w++)Z[J][w]=[];return Z},k.prototype.addNodeToGrid=function(l,b,M){var Z=0,J=0,w=0,K=0;Z=parseInt(Math.floor((l.getRect().x-b)/this.repulsionRange)),J=parseInt(Math.floor((l.getRect().width+l.getRect().x-b)/this.repulsionRange)),w=parseInt(Math.floor((l.getRect().y-M)/this.repulsionRange)),K=parseInt(Math.floor((l.getRect().height+l.getRect().y-M)/this.repulsionRange));for(var Q=Z;Q<=J;Q++)for(var G=w;G<=K;G++)this.grid[Q][G].push(l),l.setGridCoordinates(Z,J,w,K)},k.prototype.updateGrid=function(){var l,b,M=this.getAllNodes();this.grid=this.calcGrid(this.graphManager.getRoot());for(l=0;l<M.length;l++)b=M[l],this.addNodeToGrid(b,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},k.prototype.calculateRepulsionForceOfANode=function(l,b,M,Z){if(this.totalIterations%D.GRID_CALCULATION_CHECK_PERIOD==1&&M||Z){var J=new Set;l.surrounding=[];var w,K=this.grid;for(var Q=l.startX-1;Q<l.finishX+2;Q++)for(var G=l.startY-1;G<l.finishY+2;G++)if(!(Q<0||G<0||Q>=K.length||G>=K[0].length))for(var L=0;L<K[Q][G].length;L++){if(w=K[Q][G][L],l.getOwner()!=w.getOwner()||l==w)continue;if(!b.has(w)&&!J.has(w)){var H=Math.abs(l.getCenterX()-w.getCenterX())-(l.getWidth()/2+w.getWidth()/2),q=Math.abs(l.getCenterY()-w.getCenterY())-(l.getHeight()/2+w.getHeight()/2);if(H<=this.repulsionRange&&q<=this.repulsionRange)J.add(w)}}l.surrounding=[].concat(A(J))}for(Q=0;Q<l.surrounding.length;Q++)this.calcRepulsionForce(l,l.surrounding[Q])},k.prototype.calcRepulsionRange=function(){return 0},u.exports=k},function(u,B,E){var A=E(1),C=E(7);function D(U,z,k){A.call(this,U,z,k),this.idealLength=C.DEFAULT_EDGE_LENGTH}D.prototype=Object.create(A.prototype);for(var F in A)D[F]=A[F];u.exports=D},function(u,B,E){var A=E(3);function C(F,U,z,k){A.call(this,F,U,z,k),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=[]}C.prototype=Object.create(A.prototype);for(var D in A)C[D]=A[D];C.prototype.setGridCoordinates=function(F,U,z,k){this.startX=F,this.finishX=U,this.startY=z,this.finishY=k},u.exports=C},function(u,B,E){function A(C,D){if(this.width=0,this.height=0,C!==null&&D!==null)this.height=D,this.width=C}A.prototype.getWidth=function(){return this.width},A.prototype.setWidth=function(C){this.width=C},A.prototype.getHeight=function(){return this.height},A.prototype.setHeight=function(C){this.height=C},u.exports=A},function(u,B,E){var A=E(14);function C(){this.map={},this.keys=[]}C.prototype.put=function(D,F){var U=A.createID(D);if(!this.contains(U))this.map[U]=F,this.keys.push(D)},C.prototype.contains=function(D){var F=A.createID(D);return this.map[D]!=null},C.prototype.get=function(D){var F=A.createID(D);return this.map[F]},C.prototype.keySet=function(){return this.keys},u.exports=C},function(u,B,E){var A=E(14);function C(){this.set={}}C.prototype.add=function(D){var F=A.createID(D);if(!this.contains(F))this.set[F]=D},C.prototype.remove=function(D){delete this.set[A.createID(D)]},C.prototype.clear=function(){this.set={}},C.prototype.contains=function(D){return this.set[A.createID(D)]==D},C.prototype.isEmpty=function(){return this.size()===0},C.prototype.size=function(){return Object.keys(this.set).length},C.prototype.addAllTo=function(D){var F=Object.keys(this.set),U=F.length;for(var z=0;z<U;z++)D.push(this.set[F[z]])},C.prototype.size=function(){return Object.keys(this.set).length},C.prototype.addAll=function(D){var F=D.length;for(var U=0;U<F;U++){var z=D[U];this.add(z)}},u.exports=C},function(u,B,E){var A=function(){function U(z,k){for(var f=0;f<k.length;f++){var l=k[f];if(l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l)l.writable=!0;Object.defineProperty(z,l.key,l)}}return function(z,k,f){if(k)U(z.prototype,k);if(f)U(z,f);return z}}();function C(U,z){if(!(U instanceof z))throw TypeError("Cannot call a class as a function")}var D=E(11),F=function(){function U(z,k){if(C(this,U),k!==null||k!==void 0)this.compareFunction=this._defaultCompareFunction;var f=void 0;if(z instanceof D)f=z.size();else f=z.length;this._quicksort(z,0,f-1)}return A(U,[{key:"_quicksort",value:function(k,f,l){if(f<l){var b=this._partition(k,f,l);this._quicksort(k,f,b),this._quicksort(k,b+1,l)}}},{key:"_partition",value:function(k,f,l){var b=this._get(k,f),M=f,Z=l;while(!0){while(this.compareFunction(b,this._get(k,Z)))Z--;while(this.compareFunction(this._get(k,M),b))M++;if(M<Z)this._swap(k,M,Z),M++,Z--;else return Z}}},{key:"_get",value:function(k,f){if(k instanceof D)return k.get_object_at(f);else return k[f]}},{key:"_set",value:function(k,f,l){if(k instanceof D)k.set_object_at(f,l);else k[f]=l}},{key:"_swap",value:function(k,f,l){var b=this._get(k,f);this._set(k,f,this._get(k,l)),this._set(k,l,b)}},{key:"_defaultCompareFunction",value:function(k,f){return f>k}}]),U}();u.exports=F},function(u,B,E){var A=function(){function F(U,z){for(var k=0;k<z.length;k++){var f=z[k];if(f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f)f.writable=!0;Object.defineProperty(U,f.key,f)}}return function(U,z,k){if(z)F(U.prototype,z);if(k)F(U,k);return U}}();function C(F,U){if(!(F instanceof U))throw TypeError("Cannot call a class as a function")}var D=function(){function F(U,z){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,l=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;C(this,F),this.sequence1=U,this.sequence2=z,this.match_score=k,this.mismatch_penalty=f,this.gap_penalty=l,this.iMax=U.length+1,this.jMax=z.length+1,this.grid=Array(this.iMax);for(var b=0;b<this.iMax;b++){this.grid[b]=Array(this.jMax);for(var M=0;M<this.jMax;M++)this.grid[b][M]=0}this.tracebackGrid=Array(this.iMax);for(var Z=0;Z<this.iMax;Z++){this.tracebackGrid[Z]=Array(this.jMax);for(var J=0;J<this.jMax;J++)this.tracebackGrid[Z][J]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return A(F,[{key:"getScore",value:function(){return this.score}},{key:"getAlignments",value:function(){return this.alignments}},{key:"computeGrids",value:function(){for(var z=1;z<this.jMax;z++)this.grid[0][z]=this.grid[0][z-1]+this.gap_penalty,this.tracebackGrid[0][z]=[!1,!1,!0];for(var k=1;k<this.iMax;k++)this.grid[k][0]=this.grid[k-1][0]+this.gap_penalty,this.tracebackGrid[k][0]=[!1,!0,!1];for(var f=1;f<this.iMax;f++)for(var l=1;l<this.jMax;l++){var b=void 0;if(this.sequence1[f-1]===this.sequence2[l-1])b=this.grid[f-1][l-1]+this.match_score;else b=this.grid[f-1][l-1]+this.mismatch_penalty;var M=this.grid[f-1][l]+this.gap_penalty,Z=this.grid[f][l-1]+this.gap_penalty,J=[b,M,Z],w=this.arrayAllMaxIndexes(J);this.grid[f][l]=J[w[0]],this.tracebackGrid[f][l]=[w.includes(0),w.includes(1),w.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]}},{key:"alignmentTraceback",value:function(){var z=[];z.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});while(z[0]){var k=z[0],f=this.tracebackGrid[k.pos[0]][k.pos[1]];if(f[0])z.push({pos:[k.pos[0]-1,k.pos[1]-1],seq1:this.sequence1[k.pos[0]-1]+k.seq1,seq2:this.sequence2[k.pos[1]-1]+k.seq2});if(f[1])z.push({pos:[k.pos[0]-1,k.pos[1]],seq1:this.sequence1[k.pos[0]-1]+k.seq1,seq2:"-"+k.seq2});if(f[2])z.push({pos:[k.pos[0],k.pos[1]-1],seq1:"-"+k.seq1,seq2:this.sequence2[k.pos[1]-1]+k.seq2});if(k.pos[0]===0&&k.pos[1]===0)this.alignments.push({sequence1:k.seq1,sequence2:k.seq2});z.shift()}return this.alignments}},{key:"getAllIndexes",value:function(z,k){var f=[],l=-1;while((l=z.indexOf(k,l+1))!==-1)f.push(l);return f}},{key:"arrayAllMaxIndexes",value:function(z){return this.getAllIndexes(z,Math.max.apply(null,z))}}]),F}();u.exports=D},function(u,B,E){var A=function(){return};A.FDLayout=E(18),A.FDLayoutConstants=E(7),A.FDLayoutEdge=E(19),A.FDLayoutNode=E(20),A.DimensionD=E(21),A.HashMap=E(22),A.HashSet=E(23),A.IGeometry=E(8),A.IMath=E(9),A.Integer=E(10),A.Point=E(12),A.PointD=E(4),A.RandomSeed=E(16),A.RectangleD=E(13),A.Transform=E(17),A.UniqueIDGeneretor=E(14),A.Quicksort=E(24),A.LinkedList=E(11),A.LGraphObject=E(2),A.LGraph=E(5),A.LEdge=E(1),A.LGraphManager=E(6),A.LNode=E(3),A.Layout=E(15),A.LayoutConstants=E(0),A.NeedlemanWunsch=E(25),u.exports=A},function(u,B,E){function A(){this.listeners=[]}var C=A.prototype;C.addListener=function(D,F){this.listeners.push({event:D,callback:F})},C.removeListener=function(D,F){for(var U=this.listeners.length;U>=0;U--){var z=this.listeners[U];if(z.event===D&&z.callback===F)this.listeners.splice(U,1)}},C.emit=function(D,F){for(var U=0;U<this.listeners.length;U++){var z=this.listeners[U];if(D===z.event)z.callback(F)}},u.exports=A}])})});var T50=P1((aW,R50)=>{(function(B,E){if(typeof aW==="object"&&typeof R50==="object")R50.exports=E(Y50());else if(typeof define==="function"&&define.amd)define(["layout-base"],E);else if(typeof aW==="object")aW.coseBase=E(Y50());else B.coseBase=E(B.layoutBase)})(aW,function(u){return function(B){var E={};function A(C){if(E[C])return E[C].exports;var D=E[C]={i:C,l:!1,exports:{}};return B[C].call(D.exports,D,D.exports,A),D.l=!0,D.exports}return A.m=B,A.c=E,A.i=function(C){return C},A.d=function(C,D,F){if(!A.o(C,D))Object.defineProperty(C,D,{configurable:!1,enumerable:!0,get:F})},A.n=function(C){var D=C&&C.__esModule?function(){return C.default}:function(){return C};return A.d(D,"a",D),D},A.o=function(C,D){return Object.prototype.hasOwnProperty.call(C,D)},A.p="",A(A.s=7)}([function(B,E){B.exports=u},function(B,E,A){var C=A(0).FDLayoutConstants;function D(){}for(var F in C)D[F]=C[F];D.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,D.DEFAULT_RADIAL_SEPARATION=C.DEFAULT_EDGE_LENGTH,D.DEFAULT_COMPONENT_SEPERATION=60,D.TILE=!0,D.TILING_PADDING_VERTICAL=10,D.TILING_PADDING_HORIZONTAL=10,D.TREE_REDUCTION_ON_INCREMENTAL=!1,B.exports=D},function(B,E,A){var C=A(0).FDLayoutEdge;function D(U,z,k){C.call(this,U,z,k)}D.prototype=Object.create(C.prototype);for(var F in C)D[F]=C[F];B.exports=D},function(B,E,A){var C=A(0).LGraph;function D(U,z,k){C.call(this,U,z,k)}D.prototype=Object.create(C.prototype);for(var F in C)D[F]=C[F];B.exports=D},function(B,E,A){var C=A(0).LGraphManager;function D(U){C.call(this,U)}D.prototype=Object.create(C.prototype);for(var F in C)D[F]=C[F];B.exports=D},function(B,E,A){var C=A(0).FDLayoutNode,D=A(0).IMath;function F(z,k,f,l){C.call(this,z,k,f,l)}F.prototype=Object.create(C.prototype);for(var U in C)F[U]=C[U];F.prototype.move=function(){var z=this.graphManager.getLayout();if(this.displacementX=z.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=z.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>z.coolingFactor*z.maxNodeDisplacement)this.displacementX=z.coolingFactor*z.maxNodeDisplacement*D.sign(this.displacementX);if(Math.abs(this.displacementY)>z.coolingFactor*z.maxNodeDisplacement)this.displacementY=z.coolingFactor*z.maxNodeDisplacement*D.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);z.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},F.prototype.propogateDisplacementToChildren=function(z,k){var f=this.getChild().getNodes(),l;for(var b=0;b<f.length;b++)if(l=f[b],l.getChild()==null)l.moveBy(z,k),l.displacementX+=z,l.displacementY+=k;else l.propogateDisplacementToChildren(z,k)},F.prototype.setPred1=function(z){this.pred1=z},F.prototype.getPred1=function(){return pred1},F.prototype.getPred2=function(){return pred2},F.prototype.setNext=function(z){this.next=z},F.prototype.getNext=function(){return next},F.prototype.setProcessed=function(z){this.processed=z},F.prototype.isProcessed=function(){return processed},B.exports=F},function(B,E,A){var C=A(0).FDLayout,D=A(4),F=A(3),U=A(5),z=A(2),k=A(1),f=A(0).FDLayoutConstants,l=A(0).LayoutConstants,b=A(0).Point,M=A(0).PointD,Z=A(0).Layout,J=A(0).Integer,w=A(0).IGeometry,K=A(0).LGraph,Q=A(0).Transform;function G(){C.call(this),this.toBeTiled={}}G.prototype=Object.create(C.prototype);for(var L in C)G[L]=C[L];G.prototype.newGraphManager=function(){var H=new D(this);return this.graphManager=H,H},G.prototype.newGraph=function(H){return new F(null,this.graphManager,H)},G.prototype.newNode=function(H){return new U(this.graphManager,H)},G.prototype.newEdge=function(H){return new z(null,null,H)},G.prototype.initParameters=function(){if(C.prototype.initParameters.call(this,arguments),!this.isSubLayout){if(k.DEFAULT_EDGE_LENGTH<10)this.idealEdgeLength=10;else this.idealEdgeLength=k.DEFAULT_EDGE_LENGTH;this.useSmartIdealEdgeLengthCalculation=k.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.springConstant=f.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=f.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=f.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=f.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=f.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=f.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/f.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=f.CONVERGENCE_CHECK_PERIOD/this.maxIterations,this.coolingAdjuster=1}},G.prototype.layout=function(){var H=l.DEFAULT_CREATE_BENDS_AS_NEEDED;if(H)this.createBendpoints(),this.graphManager.resetAllEdges();return this.level=0,this.classicLayout()},G.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 H=this.getFlatForest();if(H.length>0)this.positionNodesRadially(H);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var q=new Set(this.getAllNodes()),x=this.nodesWithGravity.filter(function(v){return q.has(v)});this.graphManager.setAllNodesToApplyGravitation(x),this.positionNodesRandomly()}}else if(k.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var q=new Set(this.getAllNodes()),x=this.nodesWithGravity.filter(function(S){return q.has(S)});this.graphManager.setAllNodesToApplyGravitation(x)}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},G.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%f.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 H=new Set(this.getAllNodes()),q=this.nodesWithGravity.filter(function(W){return H.has(W)});this.graphManager.setAllNodesToApplyGravitation(q),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=f.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=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var x=!this.isTreeGrowing&&!this.isGrowthFinished,v=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(x,v),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},G.prototype.getPositionsData=function(){var H=this.graphManager.getAllNodes(),q={};for(var x=0;x<H.length;x++){var v=H[x].rect,W=H[x].id;q[W]={id:W,x:v.getCenterX(),y:v.getCenterY(),w:v.width,h:v.height}}return q},G.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var H=!1;if(f.ANIMATE==="during")this.emit("layoutstarted");else{while(!H)H=this.tick();this.graphManager.updateBounds()}},G.prototype.calculateNodesToApplyGravitationTo=function(){var H=[],q,x=this.graphManager.getGraphs(),v=x.length,W;for(W=0;W<v;W++)if(q=x[W],q.updateConnected(),!q.isConnected)H=H.concat(q.getNodes());return H},G.prototype.createBendpoints=function(){var H=[];H=H.concat(this.graphManager.getAllEdges());var q=new Set,x;for(x=0;x<H.length;x++){var v=H[x];if(!q.has(v)){var W=v.getSource(),S=v.getTarget();if(W==S)v.getBendpoints().push(new M),v.getBendpoints().push(new M),this.createDummyNodesForBendpoints(v),q.add(v);else{var T=[];if(T=T.concat(W.getEdgeListToNode(S)),T=T.concat(S.getEdgeListToNode(W)),!q.has(T[0])){if(T.length>1){var R;for(R=0;R<T.length;R++){var Y=T[R];Y.getBendpoints().push(new M),this.createDummyNodesForBendpoints(Y)}}T.forEach(function(a){q.add(a)})}}}if(q.size==H.length)break}},G.prototype.positionNodesRadially=function(H){var q=new b(0,0),x=Math.ceil(Math.sqrt(H.length)),v=0,W=0,S=0,T=new M(0,0);for(var R=0;R<H.length;R++){if(R%x==0){if(S=0,W=v,R!=0)W+=k.DEFAULT_COMPONENT_SEPERATION;v=0}var Y=H[R],a=Z.findCenterOfTree(Y);if(q.x=S,q.y=W,T=G.radialLayout(Y,a,q),T.y>v)v=Math.floor(T.y);S=Math.floor(T.x+k.DEFAULT_COMPONENT_SEPERATION)}this.transform(new M(l.WORLD_CENTER_X-T.x/2,l.WORLD_CENTER_Y-T.y/2))},G.radialLayout=function(H,q,x){var v=Math.max(this.maxDiagonalInTree(H),k.DEFAULT_RADIAL_SEPARATION);G.branchRadialLayout(q,null,0,359,0,v);var W=K.calculateBounds(H),S=new Q;S.setDeviceOrgX(W.getMinX()),S.setDeviceOrgY(W.getMinY()),S.setWorldOrgX(x.x),S.setWorldOrgY(x.y);for(var T=0;T<H.length;T++){var R=H[T];R.transform(S)}var Y=new M(W.getMaxX(),W.getMaxY());return S.inverseTransformPoint(Y)},G.branchRadialLayout=function(H,q,x,v,W,S){var T=(v-x+1)/2;if(T<0)T+=180;var R=(T+x)%360,Y=R*w.TWO_PI/360,a=Math.cos(Y),I=W*Math.cos(Y),O=W*Math.sin(Y);H.setCenter(I,O);var i=[];i=i.concat(H.getEdges());var N=i.length;if(q!=null)N--;var V=0,h=i.length,r,m=H.getEdgesBetween(q);while(m.length>1){var $=m[0];m.splice(0,1);var y=i.indexOf($);if(y>=0)i.splice(y,1);h--,N--}if(q!=null)r=(i.indexOf(m[0])+1)%h;else r=0;var p=Math.abs(v-x)/N;for(var e=r;V!=N;e=++e%h){var _=i[e].getOtherEnd(H);if(_==q)continue;var b0=(x+V*p)%360,B0=(b0+p)%360;G.branchRadialLayout(_,H,b0,B0,W+S,S),V++}},G.maxDiagonalInTree=function(H){var q=J.MIN_VALUE;for(var x=0;x<H.length;x++){var v=H[x],W=v.getDiagonal();if(W>q)q=W}return q},G.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},G.prototype.groupZeroDegreeMembers=function(){var H=this,q={};this.memberGroups={},this.idToDummyNode={};var x=[],v=this.graphManager.getAllNodes();for(var W=0;W<v.length;W++){var S=v[W],T=S.getParent();if(this.getNodeDegreeWithChildren(S)===0&&(T.id==null||!this.getToBeTiled(T)))x.push(S)}for(var W=0;W<x.length;W++){var S=x[W],R=S.getParent().id;if(typeof q[R]>"u")q[R]=[];q[R]=q[R].concat(S)}Object.keys(q).forEach(function(Y){if(q[Y].length>1){var a="DummyCompound_"+Y;H.memberGroups[a]=q[Y];var I=q[Y][0].getParent(),O=new U(H.graphManager);O.id=a,O.paddingLeft=I.paddingLeft||0,O.paddingRight=I.paddingRight||0,O.paddingBottom=I.paddingBottom||0,O.paddingTop=I.paddingTop||0,H.idToDummyNode[a]=O;var i=H.getGraphManager().add(H.newGraph(),O),N=I.getChild();N.add(O);for(var V=0;V<q[Y].length;V++){var h=q[Y][V];N.remove(h),i.add(h)}}})},G.prototype.clearCompounds=function(){var H={},q={};this.performDFSOnCompounds();for(var x=0;x<this.compoundOrder.length;x++)q[this.compoundOrder[x].id]=this.compoundOrder[x],H[this.compoundOrder[x].id]=[].concat(this.compoundOrder[x].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[x].getChild()),this.compoundOrder[x].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(H,q)},G.prototype.clearZeroDegreeMembers=function(){var H=this,q=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(x){var v=H.idToDummyNode[x];q[x]=H.tileNodes(H.memberGroups[x],v.paddingLeft+v.paddingRight),v.rect.width=q[x].width,v.rect.height=q[x].height})},G.prototype.repopulateCompounds=function(){for(var H=this.compoundOrder.length-1;H>=0;H--){var q=this.compoundOrder[H],x=q.id,v=q.paddingLeft,W=q.paddingTop;this.adjustLocations(this.tiledMemberPack[x],q.rect.x,q.rect.y,v,W)}},G.prototype.repopulateZeroDegreeMembers=function(){var H=this,q=this.tiledZeroDegreePack;Object.keys(q).forEach(function(x){var v=H.idToDummyNode[x],W=v.paddingLeft,S=v.paddingTop;H.adjustLocations(q[x],v.rect.x,v.rect.y,W,S)})},G.prototype.getToBeTiled=function(H){var q=H.id;if(this.toBeTiled[q]!=null)return this.toBeTiled[q];var x=H.getChild();if(x==null)return this.toBeTiled[q]=!1,!1;var v=x.getNodes();for(var W=0;W<v.length;W++){var S=v[W];if(this.getNodeDegree(S)>0)return this.toBeTiled[q]=!1,!1;if(S.getChild()==null){this.toBeTiled[S.id]=!1;continue}if(!this.getToBeTiled(S))return this.toBeTiled[q]=!1,!1}return this.toBeTiled[q]=!0,!0},G.prototype.getNodeDegree=function(H){var q=H.id,x=H.getEdges(),v=0;for(var W=0;W<x.length;W++){var S=x[W];if(S.getSource().id!==S.getTarget().id)v=v+1}return v},G.prototype.getNodeDegreeWithChildren=function(H){var q=this.getNodeDegree(H);if(H.getChild()==null)return q;var x=H.getChild().getNodes();for(var v=0;v<x.length;v++){var W=x[v];q+=this.getNodeDegreeWithChildren(W)}return q},G.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},G.prototype.fillCompexOrderByDFS=function(H){for(var q=0;q<H.length;q++){var x=H[q];if(x.getChild()!=null)this.fillCompexOrderByDFS(x.getChild().getNodes());if(this.getToBeTiled(x))this.compoundOrder.push(x)}},G.prototype.adjustLocations=function(H,q,x,v,W){q+=v,x+=W;var S=q;for(var T=0;T<H.rows.length;T++){var R=H.rows[T];q=S;var Y=0;for(var a=0;a<R.length;a++){var I=R[a];if(I.rect.x=q,I.rect.y=x,q+=I.rect.width+H.horizontalPadding,I.rect.height>Y)Y=I.rect.height}x+=Y+H.verticalPadding}},G.prototype.tileCompoundMembers=function(H,q){var x=this;this.tiledMemberPack=[],Object.keys(H).forEach(function(v){var W=q[v];x.tiledMemberPack[v]=x.tileNodes(H[v],W.paddingLeft+W.paddingRight),W.rect.width=x.tiledMemberPack[v].width,W.rect.height=x.tiledMemberPack[v].height})},G.prototype.tileNodes=function(H,q){var{TILING_PADDING_VERTICAL:x,TILING_PADDING_HORIZONTAL:v}=k,W={rows:[],rowWidth:[],rowHeight:[],width:0,height:q,verticalPadding:x,horizontalPadding:v};H.sort(function(R,Y){if(R.rect.width*R.rect.height>Y.rect.width*Y.rect.height)return-1;if(R.rect.width*R.rect.height<Y.rect.width*Y.rect.height)return 1;return 0});for(var S=0;S<H.length;S++){var T=H[S];if(W.rows.length==0)this.insertNodeToRow(W,T,0,q);else if(this.canAddHorizontal(W,T.rect.width,T.rect.height))this.insertNodeToRow(W,T,this.getShortestRowIndex(W),q);else this.insertNodeToRow(W,T,W.rows.length,q);this.shiftToLastRow(W)}return W},G.prototype.insertNodeToRow=function(H,q,x,v){var W=v;if(x==H.rows.length){var S=[];H.rows.push(S),H.rowWidth.push(W),H.rowHeight.push(0)}var T=H.rowWidth[x]+q.rect.width;if(H.rows[x].length>0)T+=H.horizontalPadding;if(H.rowWidth[x]=T,H.width<T)H.width=T;var R=q.rect.height;if(x>0)R+=H.verticalPadding;var Y=0;if(R>H.rowHeight[x])Y=H.rowHeight[x],H.rowHeight[x]=R,Y=H.rowHeight[x]-Y;H.height+=Y,H.rows[x].push(q)},G.prototype.getShortestRowIndex=function(H){var q=-1,x=Number.MAX_VALUE;for(var v=0;v<H.rows.length;v++)if(H.rowWidth[v]<x)q=v,x=H.rowWidth[v];return q},G.prototype.getLongestRowIndex=function(H){var q=-1,x=Number.MIN_VALUE;for(var v=0;v<H.rows.length;v++)if(H.rowWidth[v]>x)q=v,x=H.rowWidth[v];return q},G.prototype.canAddHorizontal=function(H,q,x){var v=this.getShortestRowIndex(H);if(v<0)return!0;var W=H.rowWidth[v];if(W+H.horizontalPadding+q<=H.width)return!0;var S=0;if(H.rowHeight[v]<x){if(v>0)S=x+H.verticalPadding-H.rowHeight[v]}var T;if(H.width-W>=q+H.horizontalPadding)T=(H.height+S)/(W+q+H.horizontalPadding);else T=(H.height+S)/H.width;S=x+H.verticalPadding;var R;if(H.width<q)R=(H.height+S)/q;else R=(H.height+S)/H.width;if(R<1)R=1/R;if(T<1)T=1/T;return T<R},G.prototype.shiftToLastRow=function(H){var q=this.getLongestRowIndex(H),x=H.rowWidth.length-1,v=H.rows[q],W=v[v.length-1],S=W.width+H.horizontalPadding;if(H.width-H.rowWidth[x]>S&&q!=x){v.splice(-1,1),H.rows[x].push(W),H.rowWidth[q]=H.rowWidth[q]-S,H.rowWidth[x]=H.rowWidth[x]+S,H.width=H.rowWidth[instance.getLongestRowIndex(H)];var T=Number.MIN_VALUE;for(var R=0;R<v.length;R++)if(v[R].height>T)T=v[R].height;if(q>0)T+=H.verticalPadding;var Y=H.rowHeight[q]+H.rowHeight[x];if(H.rowHeight[q]=T,H.rowHeight[x]<W.height+H.verticalPadding)H.rowHeight[x]=W.height+H.verticalPadding;var a=H.rowHeight[q]+H.rowHeight[x];H.height+=a-Y,this.shiftToLastRow(H)}},G.prototype.tilingPreLayout=function(){if(k.TILE)this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers()},G.prototype.tilingPostLayout=function(){if(k.TILE)this.repopulateZeroDegreeMembers(),this.repopulateCompounds()},G.prototype.reduceTrees=function(){var H=[],q=!0,x;while(q){var v=this.graphManager.getAllNodes(),W=[];q=!1;for(var S=0;S<v.length;S++)if(x=v[S],x.getEdges().length==1&&!x.getEdges()[0].isInterGraph&&x.getChild()==null)W.push([x,x.getEdges()[0],x.getOwner()]),q=!0;if(q==!0){var T=[];for(var R=0;R<W.length;R++)if(W[R][0].getEdges().length==1)T.push(W[R]),W[R][0].getOwner().remove(W[R][0]);H.push(T),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=H},G.prototype.growTree=function(H){var q=H.length,x=H[q-1],v;for(var W=0;W<x.length;W++)v=x[W],this.findPlaceforPrunedNode(v),v[2].add(v[0]),v[2].add(v[1],v[1].source,v[1].target);H.splice(H.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},G.prototype.findPlaceforPrunedNode=function(H){var q,x,v=H[0];if(v==H[1].source)x=H[1].target;else x=H[1].source;var{startX:W,finishX:S,startY:T,finishY:R}=x,Y=0,a=0,I=0,O=0,i=[Y,I,a,O];if(T>0)for(var N=W;N<=S;N++)i[0]+=this.grid[N][T-1].length+this.grid[N][T].length-1;if(S<this.grid.length-1)for(var N=T;N<=R;N++)i[1]+=this.grid[S+1][N].length+this.grid[S][N].length-1;if(R<this.grid[0].length-1)for(var N=W;N<=S;N++)i[2]+=this.grid[N][R+1].length+this.grid[N][R].length-1;if(W>0)for(var N=T;N<=R;N++)i[3]+=this.grid[W-1][N].length+this.grid[W][N].length-1;var V=J.MAX_VALUE,h,r;for(var m=0;m<i.length;m++)if(i[m]<V)V=i[m],h=1,r=m;else if(i[m]==V)h++;if(h==3&&V==0){if(i[0]==0&&i[1]==0&&i[2]==0)q=1;else if(i[0]==0&&i[1]==0&&i[3]==0)q=0;else if(i[0]==0&&i[2]==0&&i[3]==0)q=3;else if(i[1]==0&&i[2]==0&&i[3]==0)q=2}else if(h==2&&V==0){var $=Math.floor(Math.random()*2);if(i[0]==0&&i[1]==0)if($==0)q=0;else q=1;else if(i[0]==0&&i[2]==0)if($==0)q=0;else q=2;else if(i[0]==0&&i[3]==0)if($==0)q=0;else q=3;else if(i[1]==0&&i[2]==0)if($==0)q=1;else q=2;else if(i[1]==0&&i[3]==0)if($==0)q=1;else q=3;else if($==0)q=2;else q=3}else if(h==4&&V==0){var $=Math.floor(Math.random()*4);q=$}else q=r;if(q==0)v.setCenter(x.getCenterX(),x.getCenterY()-x.getHeight()/2-f.DEFAULT_EDGE_LENGTH-v.getHeight()/2);else if(q==1)v.setCenter(x.getCenterX()+x.getWidth()/2+f.DEFAULT_EDGE_LENGTH+v.getWidth()/2,x.getCenterY());else if(q==2)v.setCenter(x.getCenterX(),x.getCenterY()+x.getHeight()/2+f.DEFAULT_EDGE_LENGTH+v.getHeight()/2);else v.setCenter(x.getCenterX()-x.getWidth()/2-f.DEFAULT_EDGE_LENGTH-v.getWidth()/2,x.getCenterY())},B.exports=G},function(B,E,A){var C={};C.layoutBase=A(0),C.CoSEConstants=A(1),C.CoSEEdge=A(2),C.CoSEGraph=A(3),C.CoSEGraphManager=A(4),C.CoSELayout=A(6),C.CoSENode=A(5),B.exports=C}])})});var Kc0=P1((VW,O50)=>{(function(B,E){if(typeof VW==="object"&&typeof O50==="object")O50.exports=E(T50());else if(typeof define==="function"&&define.amd)define(["cose-base"],E);else if(typeof VW==="object")VW.cytoscapeCoseBilkent=E(T50());else B.cytoscapeCoseBilkent=E(B.coseBase)})(VW,function(u){return function(B){var E={};function A(C){if(E[C])return E[C].exports;var D=E[C]={i:C,l:!1,exports:{}};return B[C].call(D.exports,D,D.exports,A),D.l=!0,D.exports}return A.m=B,A.c=E,A.i=function(C){return C},A.d=function(C,D,F){if(!A.o(C,D))Object.defineProperty(C,D,{configurable:!1,enumerable:!0,get:F})},A.n=function(C){var D=C&&C.__esModule?function(){return C.default}:function(){return C};return A.d(D,"a",D),D},A.o=function(C,D){return Object.prototype.hasOwnProperty.call(C,D)},A.p="",A(A.s=1)}([function(B,E){B.exports=u},function(B,E,A){var C=A(0).layoutBase.LayoutConstants,D=A(0).layoutBase.FDLayoutConstants,F=A(0).CoSEConstants,U=A(0).CoSELayout,z=A(0).CoSENode,k=A(0).layoutBase.PointD,f=A(0).layoutBase.DimensionD,l={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 b(w,K){var Q={};for(var G in w)Q[G]=w[G];for(var G in K)Q[G]=K[G];return Q}function M(w){this.options=b(l,w),Z(this.options)}var Z=function(K){if(K.nodeRepulsion!=null)F.DEFAULT_REPULSION_STRENGTH=D.DEFAULT_REPULSION_STRENGTH=K.nodeRepulsion;if(K.idealEdgeLength!=null)F.DEFAULT_EDGE_LENGTH=D.DEFAULT_EDGE_LENGTH=K.idealEdgeLength;if(K.edgeElasticity!=null)F.DEFAULT_SPRING_STRENGTH=D.DEFAULT_SPRING_STRENGTH=K.edgeElasticity;if(K.nestingFactor!=null)F.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=D.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=K.nestingFactor;if(K.gravity!=null)F.DEFAULT_GRAVITY_STRENGTH=D.DEFAULT_GRAVITY_STRENGTH=K.gravity;if(K.numIter!=null)F.MAX_ITERATIONS=D.MAX_ITERATIONS=K.numIter;if(K.gravityRange!=null)F.DEFAULT_GRAVITY_RANGE_FACTOR=D.DEFAULT_GRAVITY_RANGE_FACTOR=K.gravityRange;if(K.gravityCompound!=null)F.DEFAULT_COMPOUND_GRAVITY_STRENGTH=D.DEFAULT_COMPOUND_GRAVITY_STRENGTH=K.gravityCompound;if(K.gravityRangeCompound!=null)F.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=D.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=K.gravityRangeCompound;if(K.initialEnergyOnIncremental!=null)F.DEFAULT_COOLING_FACTOR_INCREMENTAL=D.DEFAULT_COOLING_FACTOR_INCREMENTAL=K.initialEnergyOnIncremental;if(K.quality=="draft")C.QUALITY=0;else if(K.quality=="proof")C.QUALITY=2;else C.QUALITY=1;F.NODE_DIMENSIONS_INCLUDE_LABELS=D.NODE_DIMENSIONS_INCLUDE_LABELS=C.NODE_DIMENSIONS_INCLUDE_LABELS=K.nodeDimensionsIncludeLabels,F.DEFAULT_INCREMENTAL=D.DEFAULT_INCREMENTAL=C.DEFAULT_INCREMENTAL=!K.randomize,F.ANIMATE=D.ANIMATE=C.ANIMATE=K.animate,F.TILE=K.tile,F.TILING_PADDING_VERTICAL=typeof K.tilingPaddingVertical==="function"?K.tilingPaddingVertical.call():K.tilingPaddingVertical,F.TILING_PADDING_HORIZONTAL=typeof K.tilingPaddingHorizontal==="function"?K.tilingPaddingHorizontal.call():K.tilingPaddingHorizontal};M.prototype.run=function(){var w,K,Q=this.options,G=this.idToLNode={},L=this.layout=new U,H=this;H.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var q=L.newGraphManager();this.gm=q;var x=this.options.eles.nodes(),v=this.options.eles.edges();this.root=q.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(x),L);for(var W=0;W<v.length;W++){var S=v[W],T=this.idToLNode[S.data("source")],R=this.idToLNode[S.data("target")];if(T!==R&&T.getEdgesBetween(R).length==0){var Y=q.add(L.newEdge(),T,R);Y.id=S.id()}}var a=function(i,N){if(typeof i==="number")i=N;var V=i.data("id"),h=H.idToLNode[V];return{x:h.getRect().getCenterX(),y:h.getRect().getCenterY()}},I=function O(){var i=function(){if(Q.fit)Q.cy.fit(Q.eles,Q.padding);if(!w)w=!0,H.cy.one("layoutready",Q.ready),H.cy.trigger({type:"layoutready",layout:H})},N=H.options.refresh,V;for(var h=0;h<N&&!V;h++)V=H.stopped||H.layout.tick();if(V){if(L.checkLayoutSuccess()&&!L.isSubLayout)L.doPostLayout();if(L.tilingPostLayout)L.tilingPostLayout();if(L.isLayoutFinished=!0,H.options.eles.nodes().positions(a),i(),H.cy.one("layoutstop",H.options.stop),H.cy.trigger({type:"layoutstop",layout:H}),K)cancelAnimationFrame(K);w=!1;return}var r=H.layout.getPositionsData();Q.eles.nodes().positions(function(m,$){if(typeof m==="number")m=$;if(!m.isParent()){var y=m.id(),p=r[y],e=m;while(p==null)if(p=r[e.data("parent")]||r["DummyCompound_"+e.data("parent")],r[y]=p,e=e.parent()[0],e==null)break;if(p!=null)return{x:p.x,y:p.y};else return{x:m.position("x"),y:m.position("y")}}}),i(),K=requestAnimationFrame(O)};if(L.addListener("layoutstarted",function(){if(H.options.animate==="during")K=requestAnimationFrame(I)}),L.runLayout(),this.options.animate!=="during")H.options.eles.nodes().not(":parent").layoutPositions(H,H.options,a),w=!1;return this},M.prototype.getTopMostNodes=function(w){var K={};for(var Q=0;Q<w.length;Q++)K[w[Q].id()]=!0;var G=w.filter(function(L,H){if(typeof L==="number")L=H;var q=L.parent()[0];while(q!=null){if(K[q.id()])return!1;q=q.parent()[0]}return!0});return G},M.prototype.processChildrenList=function(w,K,Q){var G=K.length;for(var L=0;L<G;L++){var H=K[L],q=H.children(),x,v=H.layoutDimensions({nodeDimensionsIncludeLabels:this.options.nodeDimensionsIncludeLabels});if(H.outerWidth()!=null&&H.outerHeight()!=null)x=w.add(new z(Q.graphManager,new k(H.position("x")-v.w/2,H.position("y")-v.h/2),new f(parseFloat(v.w),parseFloat(v.h))));else x=w.add(new z(this.graphManager));if(x.id=H.data("id"),x.paddingLeft=parseInt(H.css("padding")),x.paddingTop=parseInt(H.css("padding")),x.paddingRight=parseInt(H.css("padding")),x.paddingBottom=parseInt(H.css("padding")),this.options.nodeDimensionsIncludeLabels){if(H.isParent()){var W=H.boundingBox({includeLabels:!0,includeNodes:!1}).w,S=H.boundingBox({includeLabels:!0,includeNodes:!1}).h,T=H.css("text-halign");x.labelWidth=W,x.labelHeight=S,x.labelPos=T}}if(this.idToLNode[H.data("id")]=x,isNaN(x.rect.x))x.rect.x=0;if(isNaN(x.rect.y))x.rect.y=0;if(q!=null&&q.length>0){var R=Q.getGraphManager().add(Q.newGraph(),x);this.processChildrenList(R,q,Q)}}},M.prototype.stop=function(){return this.stopped=!0,this};var J=function(K){K("layout","cose-bilkent",M)};if(typeof cytoscape<"u")J(cytoscape);B.exports=J}])})});var Sc0={};ju(Sc0,{render:()=>CG4});function Gc0(u,B){u.forEach((E)=>{let A={id:E.id,labelText:E.label,height:E.height,width:E.width,padding:E.padding??0};Object.keys(E).forEach((C)=>{if(!["id","label","height","width","padding","x","y"].includes(C))A[C]=E[C]}),B.add({group:"nodes",data:A,position:{x:E.x??0,y:E.y??0}})})}function Hc0(u,B){u.forEach((E)=>{let A={id:E.id,source:E.start,target:E.end};Object.keys(E).forEach((C)=>{if(!["id","start","end"].includes(C))A[C]=E[C]}),B.add({group:"edges",data:A})})}function Lc0(u){return new Promise((B)=>{let E=Ku("body").append("div").attr("id","cy").attr("style","display:none"),A=zA({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});E.remove(),Gc0(u.nodes,A),Hc0(u.edges,A),A.nodes().forEach(function(D){D.layoutDimensions=()=>{let F=D.data();return{w:F.width,h:F.height}}});let C={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};A.layout(C).run(),A.ready((D)=>{z0.info("Cytoscape ready",D),B(A)})})}function qc0(u){return u.nodes().map((B)=>{let E=B.data(),A=B.position(),C={id:E.id,x:A.x,y:A.y};return Object.keys(E).forEach((D)=>{if(D!=="id")C[D]=E[D]}),C})}function Xc0(u){return u.edges().map((B)=>{let E=B.data(),A=B._private.rscratch,C={id:E.id,source:E.source,target:E.target,startX:A.startX,startY:A.startY,midX:A.midX,midY:A.midY,endX:A.endX,endY:A.endY};return Object.keys(E).forEach((D)=>{if(!["id","source","target"].includes(D))C[D]=E[D]}),C})}async function xc0(u,B){z0.debug("Starting cose-bilkent layout algorithm");try{vc0(u);let E=await Lc0(u),A=qc0(E),C=Xc0(E);return z0.debug(`Layout completed: ${A.length} nodes, ${C.length} edges`),{nodes:A,edges:C}}catch(E){throw z0.error("Error in cose-bilkent layout algorithm:",E),E}}function vc0(u){if(!u)throw Error("Layout data is required");if(!u.config)throw Error("Configuration is required in layout data");if(!u.rootNode)throw Error("Root node is required");if(!u.nodes||!Array.isArray(u.nodes))throw Error("No nodes found in layout data");if(!Array.isArray(u.edges))throw Error("Edges array is required in layout data");return!0}var Qc0,AG4,CG4;var Wc0=g(()=>{o4();Y4();S50();i3();Qc0=Eu(Kc0(),1);zA.use(Qc0.default);X(Gc0,"addNodes");X(Hc0,"addEdges");X(Lc0,"createCytoscapeInstance");X(qc0,"extractPositionedNodes");X(Xc0,"extractPositionedEdges");X(xc0,"executeCoseBilkentLayout");X(vc0,"validateLayoutData");AG4=X(async(u,B,{insertCluster:E,insertEdge:A,insertEdgeLabel:C,insertMarkers:D,insertNode:F,log:U,positionEdgeLabel:z},{algorithm:k})=>{let f={},l={},b=B.select("g");D(b,u.markers,u.type,u.diagramId);let M=b.insert("g").attr("class","subgraphs"),Z=b.insert("g").attr("class","edgePaths"),J=b.insert("g").attr("class","edgeLabels"),w=b.insert("g").attr("class","nodes");U.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(u.nodes.map(async(G)=>{if(G.isGroup){let L={...G};l[G.id]=L,f[G.id]=L,await E(M,G)}else{let L={...G};f[G.id]=L;let H=await F(w,G,{config:u.config,dir:u.direction||"TB"}),q=H.node().getBBox();L.width=q.width,L.height=q.height,L.domId=H,U.debug(`Node ${G.id} dimensions: ${q.width}x${q.height}`)}})),U.debug("Running cose-bilkent layout algorithm");let K={...u,nodes:u.nodes.map((G)=>{let L=f[G.id];return{...G,width:L.width,height:L.height}})},Q=await xc0(K,u.config);U.debug("Positioning nodes based on layout results"),Q.nodes.forEach((G)=>{let L=f[G.id];if(L?.domId)L.domId.attr("transform",`translate(${G.x}, ${G.y})`),L.x=G.x,L.y=G.y,U.debug(`Positioned node ${L.id} at center (${G.x}, ${G.y})`)}),Q.edges.forEach((G)=>{let L=u.edges.find((H)=>H.id===G.id);if(L)L.points=[{x:G.startX,y:G.startY},{x:G.midX,y:G.midY},{x:G.endX,y:G.endY}]}),U.debug("Inserting and positioning edges"),await Promise.all(u.edges.map(async(G)=>{let L=await C(J,G),H=f[G.start??""],q=f[G.end??""];if(H&&q){let x=Q.edges.find((v)=>v.id===G.id);if(x){U.debug("APA01 positionedEdge",x);let v={...G},W=A(Z,v,l,u.type,H,q,u.diagramId);z(v,W)}else{let v={...G,points:[{x:H.x||0,y:H.y||0},{x:q.x||0,y:q.y||0}]},W=A(Z,v,l,u.type,H,q,u.diagramId);z(v,W)}}})),U.debug("Cose-bilkent rendering completed")},"render"),CG4=AG4});var DG4,hW,I50,FG4,kA,$F;var J8=g(()=>{D8();B7();t3();s4();o4();Y4();DG4={common:yu,getConfig:F4,insertCluster:of,insertEdge:IG,insertEdgeLabel:sZ,insertMarkers:PG,insertNode:Pz,interpolateToCurve:Wi,labelHelper:b3,log:z0,positionEdgeLabel:Ca},hW={},I50=X((u)=>{for(let B of u)hW[B.name]=B},"registerLayoutLoaders"),FG4=X(()=>{I50([{name:"dagre",loader:X(async()=>await Promise.resolve().then(() => (ea0(),ta0)),"loader")},{name:"swimlane",loader:X(async()=>await Promise.resolve().then(() => (ph0(),nh0)),"loader")},{name:"cose-bilkent",loader:X(async()=>await Promise.resolve().then(() => (Wc0(),Sc0)),"loader")}])},"registerDefaultLayoutLoaders");FG4();kA=X(async(u,B,E)=>{if(!(u.layoutAlgorithm in hW))throw Error(`Unknown layout algorithm: ${u.layoutAlgorithm}`);if(u.diagramId)for(let l of u.nodes){let b=l.domId||l.id;l.domId=`${u.diagramId}-${b}`}let A=hW[u.layoutAlgorithm],C=await A.loader(),{theme:D,themeVariables:F}=u.config,{useGradient:U,gradientStart:z,gradientStop:k}=F,f=B.attr("id");if(B.append("defs").append("filter").attr("id",`${f}-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?.includes("dark")?"#FFFFFF":"#000000"}`),B.append("defs").append("filter").attr("id",`${f}-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",`${D?.includes("dark")?"#FFFFFF":"#000000"}`),U){let l=B.append("linearGradient").attr("id",B.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");l.append("svg:stop").attr("offset","0%").attr("stop-color",z).attr("stop-opacity",1),l.append("svg:stop").attr("offset","100%").attr("stop-color",k).attr("stop-opacity",1)}return C.render(u,B,DG4,{algorithm:A.algorithm},E)},"render"),$F=X((u="",{fallback:B="dagre"}={})=>{if(u in hW)return u;if(B in hW)return z0.warn(`Layout algorithm ${u} is not registered. Using ${B} as fallback.`),B;throw Error(`Both layout algorithms ${u} and ${B} are not registered.`)},"getRegisteredLayoutAlgorithm")});var aH="comm",mh="rule",rh="decl",Yc0="@media",Rc0="@import",Tc0="@supports",Oc0="@namespace",mW="@keyframes",$h="@layer",Ic0="@scope";function yh(u){return u.trim()}function rW(u,B,E){return u.replace(B,E)}function pz(u,B){return u.charCodeAt(B)|0}function dz(u,B,E){return u.slice(B,E)}function w8(u){return u.length}function ch(u){return u.length}function VH(u,B){return B.push(u),u}var Pc0,YJ;var hH=g(()=>{Pc0=Math.abs,YJ=String.fromCharCode});function _h(u,B,E,A,C,D,F,U){return{value:u,root:B,parent:E,type:A,props:C,children:D,line:gh,column:mH,length:F,return:"",siblings:U}}function Nc0(){return Y2}function ic0(){if(Y2=fA>0?pz($H,--fA):0,mH--,Y2===10)mH=1,gh--;return Y2}function lA(){if(Y2=fA<jc0?pz($H,fA++):0,mH++,Y2===10)mH=1,gh++;return Y2}function sz(){return pz($H,fA)}function $W(){return fA}function nh(u,B){return dz($H,u,B)}function rH(u){switch(u){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 ac0(u){return gh=mH=1,jc0=w8($H=u),fA=0,[]}function Vc0(u){return $H="",u}function ph(u){return yh(nh(fA-1,P50(u===91?u+2:u===40?u+1:u)))}function hc0(u){while(Y2=sz())if(Y2<33)lA();else break;return rH(u)>2||rH(Y2)>3?"":" "}function mc0(u,B){while(--B&&lA())if(Y2<48||Y2>102||Y2>57&&Y2<65||Y2>70&&Y2<97)break;return nh(u,$W()+(B<6&&sz()==32&&lA()==32))}function P50(u){while(lA())switch(Y2){case u:return fA;case 34:case 39:if(u!==34&&u!==39)P50(Y2);break;case 40:if(u===41)P50(u);break;case 92:lA();break}return fA}function rc0(u,B){while(lA())if(u+Y2===57)break;else if(u+Y2===84&&sz()===47)break;return"/*"+nh(B,fA-1)+"*"+YJ(u===47?u:lA())}function $c0(u){while(!rH(sz()))lA();return nh(u,fA)}var gh=1,mH=1,jc0=0,fA=0,Y2=0,$H="";var j50=g(()=>{hH()});function gc0(u){return Vc0(dh("",null,null,null,[""],u=ac0(u),0,[0],u))}function dh(u,B,E,A,C,D,F,U,z){var k=0,f=0,l=F,b=0,M=0,Z=0,J=1,w=1,K=1,Q=0,G=0,L="",H=C,q=D,x=A,v=L;while(w)switch(Z=G,G=lA()){case 40:if(Z!=108&&pz(v,l-1)==58)Q++,v+="(";else v+=ph(G);break;case 41:Q--,v+=")";break;case 34:case 39:case 91:v+=ph(G);break;case 9:case 10:case 13:case 32:if(Q>0){v+=YJ(G);break}v+=hc0(Z);break;case 92:v+=mc0($W()-1,7);continue;case 47:switch(sz()){case 42:case 47:if(VH(zG4(rc0(lA(),$W()),B,E,z),z),(rH(Z||1)==5||rH(sz()||1)==5)&&w8(v)&&dz(v,-1,void 0)!==" ")v+=" ";break;default:v+="/"}break;case 123*J:U[k++]=w8(v)*K;case 125*J:case 59:case 0:if(Q>0&&G){v+=YJ(G);break}switch(G){case 0:case 125:w=0;case 59+f:if(K==-1)v=rW(v,/\f/g,"");if(M>0&&(w8(v)-l||J===0))VH(M>32?cc0(v+";",A,E,l-1,z):cc0(rW(v," ","")+";",A,E,l-2,z),z);break;case 59:v+=";";default:if(VH(x=yc0(v,B,E,k,f,C,U,L,H=[],q=[],l,D),D),G===123)if(f===0)dh(v,B,x,x,H,D,l,U,q);else{switch(b){case 99:if(pz(v,3)===110)break;case 108:if(pz(v,2)===97)break;default:f=0;case 100:case 109:case 115:}if(f)dh(u,x,x,A&&VH(yc0(u,x,x,0,0,C,U,L,C,H=[],l,q),q),C,q,l,U,A?H:q);else dh(v,x,x,x,[""],q,0,U,q)}}k=f=M=0,J=K=1,L=v="",l=F;break;case 58:l=1+w8(v),M=Z;default:if(J<1){if(G==123)--J;else if(G==125&&J++==0&&ic0()==125)continue}switch(v+=YJ(G),G*J){case 38:K=f>0?1:(v+="\f",-1);break;case 44:if(Q>0)break;U[k++]=(w8(v)-1)*K,K=1;break;case 64:if(sz()===45)v+=ph(lA());b=sz(),f=l=w8(L=v+=$c0($W())),G++;break;case 45:if(Z===45&&w8(v)==2)J=0}}return D}function yc0(u,B,E,A,C,D,F,U,z,k,f,l){var b=C-1,M=C===0?D:[""],Z=ch(M);for(var J=0,w=0,K=0;J<A;++J)for(var Q=0,G=dz(u,b+1,b=Pc0(w=F[J])),L=u;Q<Z;++Q)if(L=yh(w>0?M[Q]+" "+G:rW(G,/&\f/g,M[Q])))z[K++]=L;return _h(u,B,E,C===0?mh:U,z,k,f,l)}function zG4(u,B,E,A){return _h(u,B,E,aH,YJ(Nc0()),dz(u,2,-2),0,A)}function cc0(u,B,E,A,C){return _h(u,B,E,rh,dz(u,0,A),dz(u,A+1,-1),A,C)}var _c0=g(()=>{hH();j50()});var nc0=()=>{};function sh(u,B){var E="";for(var A=0;A<u.length;A++)E+=B(u[A],A,u,B)||"";return E}function pc0(u,B,E,A){switch(u.type){case $h:if(u.children.length)break;case Rc0:case Oc0:case rh:return u.return=u.return||u.value;case aH:return"";case mW:return u.return=u.value+"{"+sh(u.children,A)+"}";case mh:if(!w8(u.value=u.props.join(",")))return""}return w8(E=sh(u.children,A))?u.return=u.value+"{"+E+"}":""}var dc0=g(()=>{hH()});function sc0(u){var B=ch(u);return function(E,A,C,D){var F="";for(var U=0;U<B;U++)F+=u[U](E,A,C,D)||"";return F}}var oc0=g(()=>{hH()});var tc0=g(()=>{hH();_c0();nc0();j50();dc0();oc0()});var N50,RJ,oh,ec0,th,eh,N7,um,yH;var bE=g(()=>{s4();Y4();i3();N50=Eu(wG(),1),RJ=X((u,B)=>{let E=u.append("rect");if(E.attr("x",B.x),E.attr("y",B.y),E.attr("fill",B.fill),E.attr("stroke",B.stroke),E.attr("width",B.width),E.attr("height",B.height),B.name)E.attr("name",B.name);if(B.rx)E.attr("rx",B.rx);if(B.ry)E.attr("ry",B.ry);if(B.attrs!==void 0)for(let A in B.attrs)E.attr(A,B.attrs[A]);if(B.class)E.attr("class",B.class);return E},"drawRect"),oh=X((u,B)=>{let E={x:B.startx,y:B.starty,width:B.stopx-B.startx,height:B.stopy-B.starty,fill:B.fill,stroke:B.stroke,class:"rect"};RJ(u,E).lower()},"drawBackgroundRect"),ec0=X((u,B)=>{let E=B.text.replace(HZ," "),A=u.append("text");if(A.attr("x",B.x),A.attr("y",B.y),A.attr("class","legend"),A.style("text-anchor",B.anchor),B.class)A.attr("class",B.class);let C=A.append("tspan");return C.attr("x",B.x+B.textMargin*2),C.text(E),A},"drawText"),th=X((u,B,E,A)=>{let C=u.append("image");C.attr("x",B),C.attr("y",E);let D=N50.sanitizeUrl(A);C.attr("xlink:href",D)},"drawImage"),eh=X((u,B,E,A)=>{let C=u.append("use");C.attr("x",B),C.attr("y",E);let D=N50.sanitizeUrl(A);C.attr("xlink:href",`#${D}`)},"drawEmbeddedImage"),N7=X(()=>{return{x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}},"getNoteRect"),um=X(()=>{return{x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}},"getTextObj"),yH=X(()=>{let u=Ku(".mermaidTooltip");if(u.empty())u=Ku("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 u},"createTooltip")});var lg0={};ju(lg0,{diagram:()=>BH4});function MA(u,B,E,A,C){if(!B[u].width)if(E)B[u].text=yZ(B[u].text,C,A),B[u].textLines=B[u].text.split(yu.lineBreakRegex).length,B[u].width=C,B[u].height=FS(B[u].text,A);else{let D=B[u].text.split(yu.lineBreakRegex);B[u].textLines=D.length;let F=0;B[u].height=0,B[u].width=0;for(let U of D)B[u].width=Math.max(t5(U,A),B[u].width),F=FS(U,A),B[u].height=B[u].height+F}}function $50(u,B,E,A,C){let D=new zg0(C);D.data.widthLimit=E.data.widthLimit/Math.min(a50,A.length);for(let[F,U]of A.entries()){let z=0;if(U.image={width:0,height:0,Y:0},U.sprite)U.image.width=48,U.image.height=48,U.image.Y=z,z=U.image.Y+U.image.height;let k=U.wrap&&r4.wrap,f=Bm(r4);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",MA("label",U,k,f,D.data.widthLimit),U.label.Y=z+8,z=U.label.Y+U.label.height,U.type&&U.type.text!==""){U.type.text="["+U.type.text+"]";let Z=Bm(r4);MA("type",U,k,Z,D.data.widthLimit),U.type.Y=z+5,z=U.type.Y+U.type.height}if(U.descr&&U.descr.text!==""){let Z=Bm(r4);Z.fontSize=Z.fontSize-2,MA("descr",U,k,Z,D.data.widthLimit),U.descr.Y=z+20,z=U.descr.Y+U.descr.height}if(F==0||F%a50===0){let Z=E.data.startx+r4.diagramMarginX,J=E.data.stopy+r4.diagramMarginY+z;D.setData(Z,Z,J,J)}else{let Z=D.data.stopx!==D.data.startx?D.data.stopx+r4.diagramMarginX:D.data.startx,J=D.data.starty;D.setData(Z,Z,J,J)}D.name=U.alias;let l=C.db.getC4ShapeArray(U.alias),b=C.db.getC4ShapeKeys(U.alias);if(b.length>0)fg0(D,u,l,b);B=U.alias;let M=C.db.getBoundaries(B);if(M.length>0)$50(u,B,D,M,C);if(U.alias!=="global")kg0(u,U,D);E.data.stopy=Math.max(D.data.stopy+r4.c4ShapeMargin,E.data.stopy),E.data.stopx=Math.max(D.data.stopx+r4.c4ShapeMargin,E.data.stopx),Dm=Math.max(Dm,E.data.stopx),Fm=Math.max(Fm,E.data.stopy)}}var Dg0,Em,kG4,OC,gl,HB="global",TC="",cF,cW,h50="",m50=!1,Am=4,Cm=2,Eg0,fG4,lG4,bG4,MG4,ZG4,JG4,wG4,KG4,QG4,GG4,HG4,LG4,qG4,XG4,xG4,vG4,SG4,Ag0,WG4,YG4,Cg0,RG4,TG4,OG4,IG4,_l,PG4,jG4,NG4,iG4,aG4,i50,r50,Fg0,VG4,hG4,mG4,rG4,$G4,yG4,cG4,gG4,_G4,nG4,pG4,oz,yF,Dm=0,Fm=0,Ug0=4,a50=2,r4,zg0,V50,yW,Bm,dG4,kg0,fg0,bA,ug0,sG4,oG4,tG4,Bg0,eG4,uH4,BH4;var bg0=g(()=>{bE();t3();s4();o4();Y4();i3();Dg0=Eu(wG(),1),Em=function(){var u=X(function(u0,M0,X0,S0){for(X0=X0||{},S0=u0.length;S0--;X0[u0[S0]]=M0);return X0},"o"),B=[1,24],E=[1,25],A=[1,26],C=[1,27],D=[1,28],F=[1,63],U=[1,64],z=[1,65],k=[1,66],f=[1,67],l=[1,68],b=[1,69],M=[1,29],Z=[1,30],J=[1,31],w=[1,32],K=[1,33],Q=[1,34],G=[1,35],L=[1,36],H=[1,37],q=[1,38],x=[1,39],v=[1,40],W=[1,41],S=[1,42],T=[1,43],R=[1,44],Y=[1,45],a=[1,46],I=[1,47],O=[1,48],i=[1,50],N=[1,51],V=[1,52],h=[1,53],r=[1,54],m=[1,55],$=[1,56],y=[1,57],p=[1,58],e=[1,59],_=[1,60],b0=[14,42],B0=[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],k0=[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],f0=[1,82],D0=[1,83],P0=[1,84],q0=[1,85],m0=[12,14,42],a0=[12,14,33,42],_0=[12,14,33,42,76,77,79,80],w0=[12,33],v0=[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],T0={trace:X(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:X(function(M0,X0,S0,Y0,h0,J0,n){var d=J0.length-1;switch(h0){case 3:Y0.setDirection("TB");break;case 4:Y0.setDirection("BT");break;case 5:Y0.setDirection("RL");break;case 6:Y0.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:Y0.setC4Type(J0[d-3]);break;case 19:Y0.setTitle(J0[d].substring(6)),this.$=J0[d].substring(6);break;case 20:Y0.setAccDescription(J0[d].substring(15)),this.$=J0[d].substring(15);break;case 21:this.$=J0[d].trim(),Y0.setTitle(this.$);break;case 22:case 23:this.$=J0[d].trim(),Y0.setAccDescription(this.$);break;case 28:J0[d].splice(2,0,"ENTERPRISE"),Y0.addPersonOrSystemBoundary(...J0[d]),this.$=J0[d];break;case 29:J0[d].splice(2,0,"SYSTEM"),Y0.addPersonOrSystemBoundary(...J0[d]),this.$=J0[d];break;case 30:Y0.addPersonOrSystemBoundary(...J0[d]),this.$=J0[d];break;case 31:J0[d].splice(2,0,"CONTAINER"),Y0.addContainerBoundary(...J0[d]),this.$=J0[d];break;case 32:Y0.addDeploymentNode("node",...J0[d]),this.$=J0[d];break;case 33:Y0.addDeploymentNode("nodeL",...J0[d]),this.$=J0[d];break;case 34:Y0.addDeploymentNode("nodeR",...J0[d]),this.$=J0[d];break;case 35:Y0.popBoundaryParseStack();break;case 39:Y0.addPersonOrSystem("person",...J0[d]),this.$=J0[d];break;case 40:Y0.addPersonOrSystem("external_person",...J0[d]),this.$=J0[d];break;case 41:Y0.addPersonOrSystem("system",...J0[d]),this.$=J0[d];break;case 42:Y0.addPersonOrSystem("system_db",...J0[d]),this.$=J0[d];break;case 43:Y0.addPersonOrSystem("system_queue",...J0[d]),this.$=J0[d];break;case 44:Y0.addPersonOrSystem("external_system",...J0[d]),this.$=J0[d];break;case 45:Y0.addPersonOrSystem("external_system_db",...J0[d]),this.$=J0[d];break;case 46:Y0.addPersonOrSystem("external_system_queue",...J0[d]),this.$=J0[d];break;case 47:Y0.addContainer("container",...J0[d]),this.$=J0[d];break;case 48:Y0.addContainer("container_db",...J0[d]),this.$=J0[d];break;case 49:Y0.addContainer("container_queue",...J0[d]),this.$=J0[d];break;case 50:Y0.addContainer("external_container",...J0[d]),this.$=J0[d];break;case 51:Y0.addContainer("external_container_db",...J0[d]),this.$=J0[d];break;case 52:Y0.addContainer("external_container_queue",...J0[d]),this.$=J0[d];break;case 53:Y0.addComponent("component",...J0[d]),this.$=J0[d];break;case 54:Y0.addComponent("component_db",...J0[d]),this.$=J0[d];break;case 55:Y0.addComponent("component_queue",...J0[d]),this.$=J0[d];break;case 56:Y0.addComponent("external_component",...J0[d]),this.$=J0[d];break;case 57:Y0.addComponent("external_component_db",...J0[d]),this.$=J0[d];break;case 58:Y0.addComponent("external_component_queue",...J0[d]),this.$=J0[d];break;case 60:Y0.addRel("rel",...J0[d]),this.$=J0[d];break;case 61:Y0.addRel("birel",...J0[d]),this.$=J0[d];break;case 62:Y0.addRel("rel_u",...J0[d]),this.$=J0[d];break;case 63:Y0.addRel("rel_d",...J0[d]),this.$=J0[d];break;case 64:Y0.addRel("rel_l",...J0[d]),this.$=J0[d];break;case 65:Y0.addRel("rel_r",...J0[d]),this.$=J0[d];break;case 66:Y0.addRel("rel_b",...J0[d]),this.$=J0[d];break;case 67:J0[d].splice(0,1),Y0.addRel("rel",...J0[d]),this.$=J0[d];break;case 68:Y0.updateElStyle("update_el_style",...J0[d]),this.$=J0[d];break;case 69:Y0.updateRelStyle("update_rel_style",...J0[d]),this.$=J0[d];break;case 70:Y0.updateLayoutConfig("update_layout_config",...J0[d]),this.$=J0[d];break;case 71:this.$=[J0[d]];break;case 72:J0[d].unshift(J0[d-1]),this.$=J0[d];break;case 73:case 75:this.$=J0[d].trim();break;case 74:let H0={};H0[J0[d-1].trim()]=J0[d].trim(),this.$=H0;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:B,23:E,24:A,26:C,28:D,29:49,30:61,32:62,34:F,36:U,37:z,38:k,39:f,40:l,41:b,43:23,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_},{13:70,19:20,20:21,21:22,22:B,23:E,24:A,26:C,28:D,29:49,30:61,32:62,34:F,36:U,37:z,38:k,39:f,40:l,41:b,43:23,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_},{13:71,19:20,20:21,21:22,22:B,23:E,24:A,26:C,28:D,29:49,30:61,32:62,34:F,36:U,37:z,38:k,39:f,40:l,41:b,43:23,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_},{13:72,19:20,20:21,21:22,22:B,23:E,24:A,26:C,28:D,29:49,30:61,32:62,34:F,36:U,37:z,38:k,39:f,40:l,41:b,43:23,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_},{13:73,19:20,20:21,21:22,22:B,23:E,24:A,26:C,28:D,29:49,30:61,32:62,34:F,36:U,37:z,38:k,39:f,40:l,41:b,43:23,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_},{14:[1,74]},u(b0,[2,13],{43:23,29:49,30:61,32:62,20:75,34:F,36:U,37:z,38:k,39:f,40:l,41:b,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_}),u(b0,[2,14]),u(B0,[2,16],{12:[1,76]}),u(b0,[2,36],{12:[1,77]}),u(k0,[2,19]),u(k0,[2,20]),{25:[1,78]},{27:[1,79]},u(k0,[2,23]),{35:80,75:81,76:f0,77:D0,79:P0,80:q0},{35:86,75:81,76:f0,77:D0,79:P0,80:q0},{35:87,75:81,76:f0,77:D0,79:P0,80:q0},{35:88,75:81,76:f0,77:D0,79:P0,80:q0},{35:89,75:81,76:f0,77:D0,79:P0,80:q0},{35:90,75:81,76:f0,77:D0,79:P0,80:q0},{35:91,75:81,76:f0,77:D0,79:P0,80:q0},{35:92,75:81,76:f0,77:D0,79:P0,80:q0},{35:93,75:81,76:f0,77:D0,79:P0,80:q0},{35:94,75:81,76:f0,77:D0,79:P0,80:q0},{35:95,75:81,76:f0,77:D0,79:P0,80:q0},{35:96,75:81,76:f0,77:D0,79:P0,80:q0},{35:97,75:81,76:f0,77:D0,79:P0,80:q0},{35:98,75:81,76:f0,77:D0,79:P0,80:q0},{35:99,75:81,76:f0,77:D0,79:P0,80:q0},{35:100,75:81,76:f0,77:D0,79:P0,80:q0},{35:101,75:81,76:f0,77:D0,79:P0,80:q0},{35:102,75:81,76:f0,77:D0,79:P0,80:q0},{35:103,75:81,76:f0,77:D0,79:P0,80:q0},{35:104,75:81,76:f0,77:D0,79:P0,80:q0},u(m0,[2,59]),{35:105,75:81,76:f0,77:D0,79:P0,80:q0},{35:106,75:81,76:f0,77:D0,79:P0,80:q0},{35:107,75:81,76:f0,77:D0,79:P0,80:q0},{35:108,75:81,76:f0,77:D0,79:P0,80:q0},{35:109,75:81,76:f0,77:D0,79:P0,80:q0},{35:110,75:81,76:f0,77:D0,79:P0,80:q0},{35:111,75:81,76:f0,77:D0,79:P0,80:q0},{35:112,75:81,76:f0,77:D0,79:P0,80:q0},{35:113,75:81,76:f0,77:D0,79:P0,80:q0},{35:114,75:81,76:f0,77:D0,79:P0,80:q0},{35:115,75:81,76:f0,77:D0,79:P0,80:q0},{20:116,29:49,30:61,32:62,34:F,36:U,37:z,38:k,39:f,40:l,41:b,43:23,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_},{12:[1,118],33:[1,117]},{35:119,75:81,76:f0,77:D0,79:P0,80:q0},{35:120,75:81,76:f0,77:D0,79:P0,80:q0},{35:121,75:81,76:f0,77:D0,79:P0,80:q0},{35:122,75:81,76:f0,77:D0,79:P0,80:q0},{35:123,75:81,76:f0,77:D0,79:P0,80:q0},{35:124,75:81,76:f0,77:D0,79:P0,80:q0},{35:125,75:81,76:f0,77:D0,79:P0,80:q0},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},u(b0,[2,15]),u(B0,[2,17],{21:22,19:130,22:B,23:E,24:A,26:C,28:D}),u(b0,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:B,23:E,24:A,26:C,28:D,34:F,36:U,37:z,38:k,39:f,40:l,41:b,44:M,45:Z,46:J,47:w,48:K,49:Q,50:G,51:L,52:H,53:q,54:x,55:v,56:W,57:S,58:T,59:R,60:Y,61:a,62:I,63:O,64:i,65:N,66:V,67:h,68:r,69:m,70:$,71:y,72:p,73:e,74:_}),u(k0,[2,21]),u(k0,[2,22]),u(m0,[2,39]),u(a0,[2,71],{75:81,35:132,76:f0,77:D0,79:P0,80:q0}),u(_0,[2,73]),{78:[1,133]},u(_0,[2,75]),u(_0,[2,76]),u(m0,[2,40]),u(m0,[2,41]),u(m0,[2,42]),u(m0,[2,43]),u(m0,[2,44]),u(m0,[2,45]),u(m0,[2,46]),u(m0,[2,47]),u(m0,[2,48]),u(m0,[2,49]),u(m0,[2,50]),u(m0,[2,51]),u(m0,[2,52]),u(m0,[2,53]),u(m0,[2,54]),u(m0,[2,55]),u(m0,[2,56]),u(m0,[2,57]),u(m0,[2,58]),u(m0,[2,60]),u(m0,[2,61]),u(m0,[2,62]),u(m0,[2,63]),u(m0,[2,64]),u(m0,[2,65]),u(m0,[2,66]),u(m0,[2,67]),u(m0,[2,68]),u(m0,[2,69]),u(m0,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},u(w0,[2,28]),u(w0,[2,29]),u(w0,[2,30]),u(w0,[2,31]),u(w0,[2,32]),u(w0,[2,33]),u(w0,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},u(B0,[2,18]),u(b0,[2,38]),u(a0,[2,72]),u(_0,[2,74]),u(m0,[2,24]),u(m0,[2,35]),u(v0,[2,25]),u(v0,[2,26],{12:[1,138]}),u(v0,[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:X(function(M0,X0){if(X0.recoverable)this.trace(M0);else{var S0=Error(M0);throw S0.hash=X0,S0}},"parseError"),parse:X(function(M0){var X0=this,S0=[0],Y0=[],h0=[null],J0=[],n=this.table,d="",H0=0,o=0,L0=0,E0=2,r0=1,c0=J0.slice.call(arguments,1),p0=Object.create(this.lexer),g0={yy:{}};for(var Bu in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Bu))g0.yy[Bu]=this.yy[Bu];if(p0.setInput(M0,g0.yy),g0.yy.lexer=p0,g0.yy.parser=this,typeof p0.yylloc>"u")p0.yylloc={};var n0=p0.yylloc;J0.push(n0);var e0=p0.options&&p0.options.ranges;if(typeof g0.yy.parseError==="function")this.parseError=g0.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function t0(Zu){S0.length=S0.length-2*Zu,h0.length=h0.length-Zu,J0.length=J0.length-Zu}X(t0,"popStack");function zu(){var Zu=Y0.pop()||p0.lex()||r0;if(typeof Zu!=="number"){if(Zu instanceof Array)Y0=Zu,Zu=Y0.pop();Zu=X0.symbols_[Zu]||Zu}return Zu}X(zu,"lex");var W0,$u,i0,vu,cu,Du,Nu={},du,Iu,x0,Tu;while(!0){if(i0=S0[S0.length-1],this.defaultActions[i0])vu=this.defaultActions[i0];else{if(W0===null||typeof W0>"u")W0=zu();vu=n[i0]&&n[i0][W0]}if(typeof vu>"u"||!vu.length||!vu[0]){var Vu="";Tu=[];for(du in n[i0])if(this.terminals_[du]&&du>E0)Tu.push("'"+this.terminals_[du]+"'");if(p0.showPosition)Vu="Parse error on line "+(H0+1)+`:
`+p0.showPosition()+`
Expecting `+Tu.join(", ")+", got '"+(this.terminals_[W0]||W0)+"'";else Vu="Parse error on line "+(H0+1)+": Unexpected "+(W0==r0?"end of input":"'"+(this.terminals_[W0]||W0)+"'");this.parseError(Vu,{text:p0.match,token:this.terminals_[W0]||W0,line:p0.yylineno,loc:n0,expected:Tu})}if(vu[0]instanceof Array&&vu.length>1)throw Error("Parse Error: multiple actions possible at state: "+i0+", token: "+W0);switch(vu[0]){case 1:if(S0.push(W0),h0.push(p0.yytext),J0.push(p0.yylloc),S0.push(vu[1]),W0=null,!$u){if(o=p0.yyleng,d=p0.yytext,H0=p0.yylineno,n0=p0.yylloc,L0>0)L0--}else W0=$u,$u=null;break;case 2:if(Iu=this.productions_[vu[1]][1],Nu.$=h0[h0.length-Iu],Nu._$={first_line:J0[J0.length-(Iu||1)].first_line,last_line:J0[J0.length-1].last_line,first_column:J0[J0.length-(Iu||1)].first_column,last_column:J0[J0.length-1].last_column},e0)Nu._$.range=[J0[J0.length-(Iu||1)].range[0],J0[J0.length-1].range[1]];if(Du=this.performAction.apply(Nu,[d,o,H0,g0.yy,vu[1],h0,J0].concat(c0)),typeof Du<"u")return Du;if(Iu)S0=S0.slice(0,-1*Iu*2),h0=h0.slice(0,-1*Iu),J0=J0.slice(0,-1*Iu);S0.push(this.productions_[vu[1]][0]),h0.push(Nu.$),J0.push(Nu._$),x0=n[S0[S0.length-2]][S0[S0.length-1]],S0.push(x0);break;case 3:return!0}}return!0},"parse")},Z0=function(){var u0={EOF:1,parseError:X(function(X0,S0){if(this.yy.parser)this.yy.parser.parseError(X0,S0);else throw Error(X0)},"parseError"),setInput:X(function(M0,X0){if(this.yy=X0||this.yy||{},this._input=M0,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:X(function(){var M0=this._input[0];this.yytext+=M0,this.yyleng++,this.offset++,this.match+=M0,this.matched+=M0;var X0=M0.match(/(?:\r\n?|\n).*/g);if(X0)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),M0},"input"),unput:X(function(M0){var X0=M0.length,S0=M0.split(/(?:\r\n?|\n)/g);this._input=M0+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-X0),this.offset-=X0;var Y0=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),S0.length-1)this.yylineno-=S0.length-1;var h0=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:S0?(S0.length===Y0.length?this.yylloc.first_column:0)+Y0[Y0.length-S0.length].length-S0[0].length:this.yylloc.first_column-X0},this.options.ranges)this.yylloc.range=[h0[0],h0[0]+this.yyleng-X0];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(M0){this.unput(this.match.slice(M0))},"less"),pastInput:X(function(){var M0=this.matched.substr(0,this.matched.length-this.match.length);return(M0.length>20?"...":"")+M0.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var M0=this.match;if(M0.length<20)M0+=this._input.substr(0,20-M0.length);return(M0.substr(0,20)+(M0.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var M0=this.pastInput(),X0=Array(M0.length+1).join("-");return M0+this.upcomingInput()+`
`+X0+"^"},"showPosition"),test_match:X(function(M0,X0){var S0,Y0,h0;if(this.options.backtrack_lexer){if(h0={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)h0.yylloc.range=this.yylloc.range.slice(0)}if(Y0=M0[0].match(/(?:\r\n?|\n).*/g),Y0)this.yylineno+=Y0.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Y0?Y0[Y0.length-1].length-Y0[Y0.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+M0[0].length},this.yytext+=M0[0],this.match+=M0[0],this.matches=M0,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(M0[0].length),this.matched+=M0[0],S0=this.performAction.call(this,this.yy,this,X0,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(S0)return S0;else if(this._backtrack){for(var J0 in h0)this[J0]=h0[J0];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var M0,X0,S0,Y0;if(!this._more)this.yytext="",this.match="";var h0=this._currentRules();for(var J0=0;J0<h0.length;J0++)if(S0=this._input.match(this.rules[h0[J0]]),S0&&(!X0||S0[0].length>X0[0].length)){if(X0=S0,Y0=J0,this.options.backtrack_lexer)if(M0=this.test_match(S0,h0[J0]),M0!==!1)return M0;else if(this._backtrack){X0=!1;continue}else return!1;else if(!this.options.flex)break}if(X0){if(M0=this.test_match(X0,h0[Y0]),M0!==!1)return M0;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:X(function(){var X0=this.next();if(X0)return X0;else return this.lex()},"lex"),begin:X(function(X0){this.conditionStack.push(X0)},"begin"),popState:X(function(){var X0=this.conditionStack.length-1;if(X0>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(X0){if(X0=this.conditionStack.length-1-Math.abs(X0||0),X0>=0)return this.conditionStack[X0];else return"INITIAL"},"topState"),pushState:X(function(X0){this.begin(X0)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:X(function(X0,S0,Y0,h0){var J0=h0;switch(Y0){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 u0}();T0.lexer=Z0;function F0(){this.yy={}}return X(F0,"Parser"),F0.prototype=T0,T0.Parser=F0,new F0}();Em.parser=Em;kG4=Em,OC=[],gl=[""],cF=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],cW=[],fG4=X(function(){return Eg0},"getC4Type"),lG4=X(function(u){Eg0=C3(u,$0())},"setC4Type"),bG4=X(function(u,B,E,A,C,D,F,U,z){if(u===void 0||u===null||B===void 0||B===null||E===void 0||E===null||A===void 0||A===null)return;let k={},f=cW.find((l)=>l.from===B&&l.to===E);if(f)k=f;else cW.push(k);if(k.type=u,k.from=B,k.to=E,k.label={text:A},C===void 0||C===null)k.techn={text:""};else if(typeof C==="object"){let[l,b]=Object.entries(C)[0];k[l]={text:b}}else k.techn={text:C};if(D===void 0||D===null)k.descr={text:""};else if(typeof D==="object"){let[l,b]=Object.entries(D)[0];k[l]={text:b}}else k.descr={text:D};if(typeof F==="object"){let[l,b]=Object.entries(F)[0];k[l]=b}else k.sprite=F;if(typeof U==="object"){let[l,b]=Object.entries(U)[0];k[l]=b}else k.tags=U;if(typeof z==="object"){let[l,b]=Object.entries(z)[0];k[l]=b}else k.link=z;k.wrap=_l()},"addRel"),MG4=X(function(u,B,E,A,C,D,F){if(B===null||E===null)return;let U={},z=OC.find((k)=>k.alias===B);if(z&&B===z.alias)U=z;else U.alias=B,OC.push(U);if(E===void 0||E===null)U.label={text:""};else U.label={text:E};if(A===void 0||A===null)U.descr={text:""};else if(typeof A==="object"){let[k,f]=Object.entries(A)[0];U[k]={text:f}}else U.descr={text:A};if(typeof C==="object"){let[k,f]=Object.entries(C)[0];U[k]=f}else U.sprite=C;if(typeof D==="object"){let[k,f]=Object.entries(D)[0];U[k]=f}else U.tags=D;if(typeof F==="object"){let[k,f]=Object.entries(F)[0];U[k]=f}else U.link=F;U.typeC4Shape={text:u},U.parentBoundary=HB,U.wrap=_l()},"addPersonOrSystem"),ZG4=X(function(u,B,E,A,C,D,F,U){if(B===null||E===null)return;let z={},k=OC.find((f)=>f.alias===B);if(k&&B===k.alias)z=k;else z.alias=B,OC.push(z);if(E===void 0||E===null)z.label={text:""};else z.label={text:E};if(A===void 0||A===null)z.techn={text:""};else if(typeof A==="object"){let[f,l]=Object.entries(A)[0];z[f]={text:l}}else z.techn={text:A};if(C===void 0||C===null)z.descr={text:""};else if(typeof C==="object"){let[f,l]=Object.entries(C)[0];z[f]={text:l}}else z.descr={text:C};if(typeof D==="object"){let[f,l]=Object.entries(D)[0];z[f]=l}else z.sprite=D;if(typeof F==="object"){let[f,l]=Object.entries(F)[0];z[f]=l}else z.tags=F;if(typeof U==="object"){let[f,l]=Object.entries(U)[0];z[f]=l}else z.link=U;z.wrap=_l(),z.typeC4Shape={text:u},z.parentBoundary=HB},"addContainer"),JG4=X(function(u,B,E,A,C,D,F,U){if(B===null||E===null)return;let z={},k=OC.find((f)=>f.alias===B);if(k&&B===k.alias)z=k;else z.alias=B,OC.push(z);if(E===void 0||E===null)z.label={text:""};else z.label={text:E};if(A===void 0||A===null)z.techn={text:""};else if(typeof A==="object"){let[f,l]=Object.entries(A)[0];z[f]={text:l}}else z.techn={text:A};if(C===void 0||C===null)z.descr={text:""};else if(typeof C==="object"){let[f,l]=Object.entries(C)[0];z[f]={text:l}}else z.descr={text:C};if(typeof D==="object"){let[f,l]=Object.entries(D)[0];z[f]=l}else z.sprite=D;if(typeof F==="object"){let[f,l]=Object.entries(F)[0];z[f]=l}else z.tags=F;if(typeof U==="object"){let[f,l]=Object.entries(U)[0];z[f]=l}else z.link=U;z.wrap=_l(),z.typeC4Shape={text:u},z.parentBoundary=HB},"addComponent"),wG4=X(function(u,B,E,A,C){if(u===null||B===null)return;let D={},F=cF.find((U)=>U.alias===u);if(F&&u===F.alias)D=F;else D.alias=u,cF.push(D);if(B===void 0||B===null)D.label={text:""};else D.label={text:B};if(E===void 0||E===null)D.type={text:"system"};else if(typeof E==="object"){let[U,z]=Object.entries(E)[0];D[U]={text:z}}else D.type={text:E};if(typeof A==="object"){let[U,z]=Object.entries(A)[0];D[U]=z}else D.tags=A;if(typeof C==="object"){let[U,z]=Object.entries(C)[0];D[U]=z}else D.link=C;D.parentBoundary=HB,D.wrap=_l(),TC=HB,HB=u,gl.push(TC)},"addPersonOrSystemBoundary"),KG4=X(function(u,B,E,A,C){if(u===null||B===null)return;let D={},F=cF.find((U)=>U.alias===u);if(F&&u===F.alias)D=F;else D.alias=u,cF.push(D);if(B===void 0||B===null)D.label={text:""};else D.label={text:B};if(E===void 0||E===null)D.type={text:"container"};else if(typeof E==="object"){let[U,z]=Object.entries(E)[0];D[U]={text:z}}else D.type={text:E};if(typeof A==="object"){let[U,z]=Object.entries(A)[0];D[U]=z}else D.tags=A;if(typeof C==="object"){let[U,z]=Object.entries(C)[0];D[U]=z}else D.link=C;D.parentBoundary=HB,D.wrap=_l(),TC=HB,HB=u,gl.push(TC)},"addContainerBoundary"),QG4=X(function(u,B,E,A,C,D,F,U){if(B===null||E===null)return;let z={},k=cF.find((f)=>f.alias===B);if(k&&B===k.alias)z=k;else z.alias=B,cF.push(z);if(E===void 0||E===null)z.label={text:""};else z.label={text:E};if(A===void 0||A===null)z.type={text:"node"};else if(typeof A==="object"){let[f,l]=Object.entries(A)[0];z[f]={text:l}}else z.type={text:A};if(C===void 0||C===null)z.descr={text:""};else if(typeof C==="object"){let[f,l]=Object.entries(C)[0];z[f]={text:l}}else z.descr={text:C};if(typeof F==="object"){let[f,l]=Object.entries(F)[0];z[f]=l}else z.tags=F;if(typeof U==="object"){let[f,l]=Object.entries(U)[0];z[f]=l}else z.link=U;z.nodeType=u,z.parentBoundary=HB,z.wrap=_l(),TC=HB,HB=B,gl.push(TC)},"addDeploymentNode"),GG4=X(function(){HB=TC,gl.pop(),TC=gl.pop(),gl.push(TC)},"popBoundaryParseStack"),HG4=X(function(u,B,E,A,C,D,F,U,z,k,f){let l=OC.find((b)=>b.alias===B);if(l===void 0){if(l=cF.find((b)=>b.alias===B),l===void 0)return}if(E!==void 0&&E!==null)if(typeof E==="object"){let[b,M]=Object.entries(E)[0];l[b]=M}else l.bgColor=E;if(A!==void 0&&A!==null)if(typeof A==="object"){let[b,M]=Object.entries(A)[0];l[b]=M}else l.fontColor=A;if(C!==void 0&&C!==null)if(typeof C==="object"){let[b,M]=Object.entries(C)[0];l[b]=M}else l.borderColor=C;if(D!==void 0&&D!==null)if(typeof D==="object"){let[b,M]=Object.entries(D)[0];l[b]=M}else l.shadowing=D;if(F!==void 0&&F!==null)if(typeof F==="object"){let[b,M]=Object.entries(F)[0];l[b]=M}else l.shape=F;if(U!==void 0&&U!==null)if(typeof U==="object"){let[b,M]=Object.entries(U)[0];l[b]=M}else l.sprite=U;if(z!==void 0&&z!==null)if(typeof z==="object"){let[b,M]=Object.entries(z)[0];l[b]=M}else l.techn=z;if(k!==void 0&&k!==null)if(typeof k==="object"){let[b,M]=Object.entries(k)[0];l[b]=M}else l.legendText=k;if(f!==void 0&&f!==null)if(typeof f==="object"){let[b,M]=Object.entries(f)[0];l[b]=M}else l.legendSprite=f},"updateElStyle"),LG4=X(function(u,B,E,A,C,D,F){let U=cW.find((z)=>z.from===B&&z.to===E);if(U===void 0)return;if(A!==void 0&&A!==null)if(typeof A==="object"){let[z,k]=Object.entries(A)[0];U[z]=k}else U.textColor=A;if(C!==void 0&&C!==null)if(typeof C==="object"){let[z,k]=Object.entries(C)[0];U[z]=k}else U.lineColor=C;if(D!==void 0&&D!==null)if(typeof D==="object"){let[z,k]=Object.entries(D)[0];U[z]=parseInt(k)}else U.offsetX=parseInt(D);if(F!==void 0&&F!==null)if(typeof F==="object"){let[z,k]=Object.entries(F)[0];U[z]=parseInt(k)}else U.offsetY=parseInt(F)},"updateRelStyle"),qG4=X(function(u,B,E){let A=Am,C=Cm;if(typeof B==="object"){let D=Object.values(B)[0];A=parseInt(D)}else A=parseInt(B);if(typeof E==="object"){let D=Object.values(E)[0];C=parseInt(D)}else C=parseInt(E);if(A>=1)Am=A;if(C>=1)Cm=C},"updateLayoutConfig"),XG4=X(function(){return Am},"getC4ShapeInRow"),xG4=X(function(){return Cm},"getC4BoundaryInRow"),vG4=X(function(){return HB},"getCurrentBoundaryParse"),SG4=X(function(){return TC},"getParentBoundaryParse"),Ag0=X(function(u){if(u===void 0||u===null)return OC;else return OC.filter((B)=>{return B.parentBoundary===u})},"getC4ShapeArray"),WG4=X(function(u){return OC.find((B)=>B.alias===u)},"getC4Shape"),YG4=X(function(u){return Object.keys(Ag0(u))},"getC4ShapeKeys"),Cg0=X(function(u){if(u===void 0||u===null)return cF;else return cF.filter((B)=>B.parentBoundary===u)},"getBoundaries"),RG4=Cg0,TG4=X(function(){return cW},"getRels"),OG4=X(function(){return h50},"getTitle"),IG4=X(function(u){m50=u},"setWrap"),_l=X(function(){return m50},"autoWrap"),PG4=X(function(){OC=[],cF=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],TC="",HB="global",gl=[""],cW=[],gl=[""],h50="",m50=!1,Am=4,Cm=2},"clear"),jG4={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},NG4={FILLED:0,OPEN:1},iG4={LEFTOF:0,RIGHTOF:1,OVER:2},aG4=X(function(u){h50=C3(u,$0())},"setTitle"),i50={addPersonOrSystem:MG4,addPersonOrSystemBoundary:wG4,addContainer:ZG4,addContainerBoundary:KG4,addComponent:JG4,addDeploymentNode:QG4,popBoundaryParseStack:GG4,addRel:bG4,updateElStyle:HG4,updateRelStyle:LG4,updateLayoutConfig:qG4,autoWrap:_l,setWrap:IG4,getC4ShapeArray:Ag0,getC4Shape:WG4,getC4ShapeKeys:YG4,getBoundaries:Cg0,getBoundarys:RG4,getCurrentBoundaryParse:vG4,getParentBoundaryParse:SG4,getRels:TG4,getTitle:OG4,getC4Type:fG4,getC4ShapeInRow:XG4,getC4BoundaryInRow:xG4,setAccTitle:w3,getAccTitle:H3,getAccDescription:q3,setAccDescription:L3,getConfig:X(()=>$0().c4,"getConfig"),clear:PG4,LINETYPE:jG4,ARROWTYPE:NG4,PLACEMENT:iG4,setTitle:aG4,setC4Type:lG4},r50=X(function(u,B){return RJ(u,B)},"drawRect"),Fg0=X(function(u,B,E,A,C,D){let F=u.append("image");F.attr("width",B),F.attr("height",E),F.attr("x",A),F.attr("y",C);let U=D.startsWith("data:image/png;base64")?D:Dg0.sanitizeUrl(D);F.attr("xlink:href",U)},"drawImage"),VG4=X((u,B,E,A)=>{let C=u.append("g"),D=0;for(let F of B){let U=F.textColor?F.textColor:"#444444",z=F.lineColor?F.lineColor:"#444444",k=F.offsetX?parseInt(F.offsetX):0,f=F.offsetY?parseInt(F.offsetY):0,l="";if(D===0){let M=C.append("line");if(M.attr("x1",F.startPoint.x),M.attr("y1",F.startPoint.y),M.attr("x2",F.endPoint.x),M.attr("y2",F.endPoint.y),M.attr("stroke-width","1"),M.attr("stroke",z),M.style("fill","none"),F.type!=="rel_b")M.attr("marker-end","url("+l+"#"+A+"-arrowhead)");if(F.type==="birel"||F.type==="rel_b")M.attr("marker-start","url("+l+"#"+A+"-arrowend)");D=-1}else{let M=C.append("path");if(M.attr("fill","none").attr("stroke-width","1").attr("stroke",z).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",F.startPoint.x).replaceAll("starty",F.startPoint.y).replaceAll("controlx",F.startPoint.x+(F.endPoint.x-F.startPoint.x)/2-(F.endPoint.x-F.startPoint.x)/4).replaceAll("controly",F.startPoint.y+(F.endPoint.y-F.startPoint.y)/2).replaceAll("stopx",F.endPoint.x).replaceAll("stopy",F.endPoint.y)),F.type!=="rel_b")M.attr("marker-end","url("+l+"#"+A+"-arrowhead)");if(F.type==="birel"||F.type==="rel_b")M.attr("marker-start","url("+l+"#"+A+"-arrowend)")}let b=E.messageFont();if(oz(E)(F.label.text,C,Math.min(F.startPoint.x,F.endPoint.x)+Math.abs(F.endPoint.x-F.startPoint.x)/2+k,Math.min(F.startPoint.y,F.endPoint.y)+Math.abs(F.endPoint.y-F.startPoint.y)/2+f,F.label.width,F.label.height,{fill:U},b),F.techn&&F.techn.text!=="")b=E.messageFont(),oz(E)("["+F.techn.text+"]",C,Math.min(F.startPoint.x,F.endPoint.x)+Math.abs(F.endPoint.x-F.startPoint.x)/2+k,Math.min(F.startPoint.y,F.endPoint.y)+Math.abs(F.endPoint.y-F.startPoint.y)/2+E.messageFontSize+5+f,Math.max(F.label.width,F.techn.width),F.techn.height,{fill:U,"font-style":"italic"},b)}},"drawRels"),hG4=X(function(u,B,E){let A=u.append("g"),C=B.bgColor?B.bgColor:"none",D=B.borderColor?B.borderColor:"#444444",F=B.fontColor?B.fontColor:"black",U={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};if(B.nodeType)U={"stroke-width":1};let z={x:B.x,y:B.y,fill:C,stroke:D,width:B.width,height:B.height,rx:2.5,ry:2.5,attrs:U};r50(A,z);let k=E.boundaryFont();if(k.fontWeight="bold",k.fontSize=k.fontSize+2,k.fontColor=F,oz(E)(B.label.text,A,B.x,B.y+B.label.Y,B.width,B.height,{fill:"#444444"},k),B.type&&B.type.text!=="")k=E.boundaryFont(),k.fontColor=F,oz(E)(B.type.text,A,B.x,B.y+B.type.Y,B.width,B.height,{fill:"#444444"},k);if(B.descr&&B.descr.text!=="")k=E.boundaryFont(),k.fontSize=k.fontSize-2,k.fontColor=F,oz(E)(B.descr.text,A,B.x,B.y+B.descr.Y,B.width,B.height,{fill:"#444444"},k)},"drawBoundary"),mG4=X(function(u,B,E){let A=B.bgColor?B.bgColor:E[B.typeC4Shape.text+"_bg_color"],C=B.borderColor?B.borderColor:E[B.typeC4Shape.text+"_border_color"],D=B.fontColor?B.fontColor:"#FFFFFF",F="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(B.typeC4Shape.text){case"person":F="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":F="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 U=u.append("g");U.attr("class","person-man");let z=N7();switch(B.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":z.x=B.x,z.y=B.y,z.fill=A,z.width=B.width,z.height=B.height,z.stroke=C,z.rx=2.5,z.ry=2.5,z.attrs={"stroke-width":0.5},r50(U,z);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":U.append("path").attr("fill",A).attr("stroke-width","0.5").attr("stroke",C).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",B.x).replaceAll("starty",B.y).replaceAll("half",B.width/2).replaceAll("height",B.height)),U.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",C).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",B.x).replaceAll("starty",B.y).replaceAll("half",B.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":U.append("path").attr("fill",A).attr("stroke-width","0.5").attr("stroke",C).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",B.x).replaceAll("starty",B.y).replaceAll("width",B.width).replaceAll("half",B.height/2)),U.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",C).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",B.x+B.width).replaceAll("starty",B.y).replaceAll("half",B.height/2));break}let k=pG4(E,B.typeC4Shape.text);switch(U.append("text").attr("fill",D).attr("font-family",k.fontFamily).attr("font-size",k.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",B.typeC4Shape.width).attr("x",B.x+B.width/2-B.typeC4Shape.width/2).attr("y",B.y+B.typeC4Shape.Y).text("<<"+B.typeC4Shape.text+">>"),B.typeC4Shape.text){case"person":case"external_person":Fg0(U,48,48,B.x+B.width/2-24,B.y+B.image.Y,F);break}let f=E[B.typeC4Shape.text+"Font"]();if(f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=D,oz(E)(B.label.text,U,B.x,B.y+B.label.Y,B.width,B.height,{fill:D},f),f=E[B.typeC4Shape.text+"Font"](),f.fontColor=D,B.techn&&B.techn?.text!=="")oz(E)(B.techn.text,U,B.x,B.y+B.techn.Y,B.width,B.height,{fill:D,"font-style":"italic"},f);else if(B.type&&B.type.text!=="")oz(E)(B.type.text,U,B.x,B.y+B.type.Y,B.width,B.height,{fill:D,"font-style":"italic"},f);if(B.descr&&B.descr.text!=="")f=E.personFont(),f.fontColor=D,oz(E)(B.descr.text,U,B.x,B.y+B.descr.Y,B.width,B.height,{fill:D},f);return B.height},"drawC4Shape"),rG4=X(function(u,B){u.append("defs").append("symbol").attr("id",B+"-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"),$G4=X(function(u,B){u.append("defs").append("symbol").attr("id",B+"-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"),yG4=X(function(u,B){u.append("defs").append("symbol").attr("id",B+"-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"),cG4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),gG4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),_G4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),nG4=X(function(u,B){let A=u.append("defs").append("marker").attr("id",B+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);A.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"),A.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"),pG4=X((u,B)=>{return{fontFamily:u[B+"FontFamily"],fontSize:u[B+"FontSize"],fontWeight:u[B+"FontWeight"]}},"getC4ShapeFont"),oz=function(){function u(C,D,F,U,z,k,f){let l=D.append("text").attr("x",F+z/2).attr("y",U+k/2+5).style("text-anchor","middle").text(C);A(l,f)}X(u,"byText");function B(C,D,F,U,z,k,f,l){let{fontSize:b,fontFamily:M,fontWeight:Z}=l,J=C.split(yu.lineBreakRegex);for(let w=0;w<J.length;w++){let K=w*b-b*(J.length-1)/2,Q=D.append("text").attr("x",F+z/2).attr("y",U).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",b).style("font-weight",Z).style("font-family",M);Q.append("tspan").attr("dy",K).text(J[w]).attr("alignment-baseline","mathematical"),A(Q,f)}}X(B,"byTspan");function E(C,D,F,U,z,k,f,l){let b=D.append("switch"),Z=b.append("foreignObject").attr("x",F).attr("y",U).attr("width",z).attr("height",k).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");Z.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(C),B(C,b,F,U,z,k,f,l),A(Z,f)}X(E,"byFo");function A(C,D){for(let F in D)if(D.hasOwnProperty(F))C.attr(F,D[F])}return X(A,"_setTextAttrs"),function(C){return C.textPlacement==="fo"?E:C.textPlacement==="old"?u:B}}(),yF={drawRect:r50,drawBoundary:hG4,drawC4Shape:mG4,drawRels:VG4,drawImage:Fg0,insertArrowHead:cG4,insertArrowEnd:gG4,insertArrowFilledHead:_G4,insertArrowCrossHead:nG4,insertDatabaseIcon:rG4,insertComputerIcon:$G4,insertClockIcon:yG4};Em.yy=i50;r4={},zg0=class{static{X(this,"Bounds")}constructor(u){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,V50(u.db.getConfig())}setData(u,B,E,A){this.nextData.startx=this.data.startx=u,this.nextData.stopx=this.data.stopx=B,this.nextData.starty=this.data.starty=E,this.nextData.stopy=this.data.stopy=A}updateVal(u,B,E,A){if(u[B]===void 0)u[B]=E;else u[B]=A(E,u[B])}insert(u){this.nextData.cnt=this.nextData.cnt+1;let B=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+u.margin:this.nextData.stopx+u.margin*2,E=B+u.width,A=this.nextData.starty+u.margin*2,C=A+u.height;if(B>=this.data.widthLimit||E>=this.data.widthLimit||this.nextData.cnt>Ug0)B=this.nextData.startx+u.margin+r4.nextLinePaddingX,A=this.nextData.stopy+u.margin*2,this.nextData.stopx=E=B+u.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=C=A+u.height,this.nextData.cnt=1;u.x=B,u.y=A,this.updateVal(this.data,"startx",B,Math.min),this.updateVal(this.data,"starty",A,Math.min),this.updateVal(this.data,"stopx",E,Math.max),this.updateVal(this.data,"stopy",C,Math.max),this.updateVal(this.nextData,"startx",B,Math.min),this.updateVal(this.nextData,"starty",A,Math.min),this.updateVal(this.nextData,"stopx",E,Math.max),this.updateVal(this.nextData,"stopy",C,Math.max)}init(u){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},V50(u.db.getConfig())}bumpLastMargin(u){this.data.stopx+=u,this.data.stopy+=u}},V50=X(function(u){if(E9(r4,u),u.fontFamily)r4.personFontFamily=r4.systemFontFamily=r4.messageFontFamily=u.fontFamily;if(u.fontSize)r4.personFontSize=r4.systemFontSize=r4.messageFontSize=u.fontSize;if(u.fontWeight)r4.personFontWeight=r4.systemFontWeight=r4.messageFontWeight=u.fontWeight},"setConf"),yW=X((u,B)=>{return{fontFamily:u[B+"FontFamily"],fontSize:u[B+"FontSize"],fontWeight:u[B+"FontWeight"]}},"c4ShapeFont"),Bm=X((u)=>{return{fontFamily:u.boundaryFontFamily,fontSize:u.boundaryFontSize,fontWeight:u.boundaryFontWeight}},"boundaryFont"),dG4=X((u)=>{return{fontFamily:u.messageFontFamily,fontSize:u.messageFontSize,fontWeight:u.messageFontWeight}},"messageFont");X(MA,"calcC4ShapeTextWH");kg0=X(function(u,B,E){B.x=E.data.startx,B.y=E.data.starty,B.width=E.data.stopx-E.data.startx,B.height=E.data.stopy-E.data.starty,B.label.y=r4.c4ShapeMargin-35;let A=B.wrap&&r4.wrap,C=Bm(r4);C.fontSize=C.fontSize+2,C.fontWeight="bold";let D=t5(B.label.text,C);MA("label",B,A,C,D),yF.drawBoundary(u,B,r4)},"drawBoundary"),fg0=X(function(u,B,E,A){let C=0;for(let D of A){C=0;let F=E[D],U=yW(r4,F.typeC4Shape.text);switch(U.fontSize=U.fontSize-2,F.typeC4Shape.width=t5("«"+F.typeC4Shape.text+"»",U),F.typeC4Shape.height=U.fontSize+2,F.typeC4Shape.Y=r4.c4ShapePadding,C=F.typeC4Shape.Y+F.typeC4Shape.height-4,F.image={width:0,height:0,Y:0},F.typeC4Shape.text){case"person":case"external_person":F.image.width=48,F.image.height=48,F.image.Y=C,C=F.image.Y+F.image.height;break}if(F.sprite)F.image.width=48,F.image.height=48,F.image.Y=C,C=F.image.Y+F.image.height;let z=F.wrap&&r4.wrap,k=r4.width-r4.c4ShapePadding*2,f=yW(r4,F.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",MA("label",F,z,f,k),F.label.Y=C+8,C=F.label.Y+F.label.height,F.type&&F.type.text!==""){F.type.text="["+F.type.text+"]";let M=yW(r4,F.typeC4Shape.text);MA("type",F,z,M,k),F.type.Y=C+5,C=F.type.Y+F.type.height}else if(F.techn&&F.techn.text!==""){F.techn.text="["+F.techn.text+"]";let M=yW(r4,F.techn.text);MA("techn",F,z,M,k),F.techn.Y=C+5,C=F.techn.Y+F.techn.height}let l=C,b=F.label.width;if(F.descr&&F.descr.text!==""){let M=yW(r4,F.typeC4Shape.text);MA("descr",F,z,M,k),F.descr.Y=C+20,C=F.descr.Y+F.descr.height,b=Math.max(F.label.width,F.descr.width),l=C-F.descr.textLines*5}b=b+r4.c4ShapePadding,F.width=Math.max(F.width||r4.width,b,r4.width),F.height=Math.max(F.height||r4.height,l,r4.height),F.margin=F.margin||r4.c4ShapeMargin,u.insert(F),yF.drawC4Shape(B,F,r4)}u.bumpLastMargin(r4.c4ShapeMargin)},"drawC4ShapeArray"),bA=class{static{X(this,"Point")}constructor(u,B){this.x=u,this.y=B}},ug0=X(function(u,B){let{x:E,y:A}=u,C=B.x,D=B.y,F=E+u.width/2,U=A+u.height/2,z=Math.abs(E-C),k=Math.abs(A-D),f=k/z,l=u.height/u.width,b=null;if(A==D&&E<C)b=new bA(E+u.width,U);else if(A==D&&E>C)b=new bA(E,U);else if(E==C&&A<D)b=new bA(F,A+u.height);else if(E==C&&A>D)b=new bA(F,A);if(E>C&&A<D)if(l>=f)b=new bA(E,U+f*u.width/2);else b=new bA(F-z/k*u.height/2,A+u.height);else if(E<C&&A<D)if(l>=f)b=new bA(E+u.width,U+f*u.width/2);else b=new bA(F+z/k*u.height/2,A+u.height);else if(E<C&&A>D)if(l>=f)b=new bA(E+u.width,U-f*u.width/2);else b=new bA(F+u.height/2*z/k,A);else if(E>C&&A>D)if(l>=f)b=new bA(E,U-u.width/2*f);else b=new bA(F-u.height/2*z/k,A);return b},"getIntersectPoint"),sG4=X(function(u,B){let E={x:0,y:0};E.x=B.x+B.width/2,E.y=B.y+B.height/2;let A=ug0(u,E);E.x=u.x+u.width/2,E.y=u.y+u.height/2;let C=ug0(B,E);return{startPoint:A,endPoint:C}},"getIntersectPoints"),oG4=X(function(u,B,E,A,C){let D=0;for(let F of B){D=D+1;let U=F.wrap&&r4.wrap,z=dG4(r4);if(A.db.getC4Type()==="C4Dynamic")F.label.text=D+": "+F.label.text;let f=t5(F.label.text,z);if(MA("label",F,U,z,f),F.techn&&F.techn.text!=="")f=t5(F.techn.text,z),MA("techn",F,U,z,f);if(F.descr&&F.descr.text!=="")f=t5(F.descr.text,z),MA("descr",F,U,z,f);let l=E(F.from),b=E(F.to),M=sG4(l,b);F.startPoint=M.startPoint,F.endPoint=M.endPoint}yF.drawRels(u,B,r4,C)},"drawRels");X($50,"drawInsideBoundary");tG4=X(function(u,B,E,A){r4=$0().c4;let C=$0().securityLevel,D;if(C==="sandbox")D=Ku("#i"+B);let F=C==="sandbox"?Ku(D.nodes()[0].contentDocument.body):Ku("body"),U=A.db;A.db.setWrap(r4.wrap),Ug0=U.getC4ShapeInRow(),a50=U.getC4BoundaryInRow(),z0.debug(`C:${JSON.stringify(r4,null,2)}`);let z=C==="sandbox"?F.select(`[id="${B}"]`):Ku(`[id="${B}"]`);yF.insertComputerIcon(z,B),yF.insertDatabaseIcon(z,B),yF.insertClockIcon(z,B);let k=new zg0(A);k.setData(r4.diagramMarginX,r4.diagramMarginX,r4.diagramMarginY,r4.diagramMarginY),k.data.widthLimit=screen.availWidth,Dm=r4.diagramMarginX,Fm=r4.diagramMarginY;let f=A.db.getTitle(),l=A.db.getBoundaries("");$50(z,"",k,l,A),yF.insertArrowHead(z,B),yF.insertArrowEnd(z,B),yF.insertArrowCrossHead(z,B),yF.insertArrowFilledHead(z,B),oG4(z,A.db.getRels(),A.db.getC4Shape,A,B),k.data.stopx=Dm,k.data.stopy=Fm;let b=k.data,Z=b.stopy-b.starty+2*r4.diagramMarginY,w=b.stopx-b.startx+2*r4.diagramMarginX;if(f)z.append("text").text(f).attr("x",(b.stopx-b.startx)/2-4*r4.diagramMarginX).attr("y",b.starty+r4.diagramMarginY);y3(z,Z,w,r4.useMaxWidth);let K=f?60:0;z.attr("viewBox",b.startx-r4.diagramMarginX+" -"+(r4.diagramMarginY+K)+" "+w+" "+(Z+K)),z0.debug("models:",b)},"draw"),Bg0={drawPersonOrSystemArray:fg0,drawBoundary:kg0,setConf:V50,draw:tG4},eG4=X((u)=>`.person {
stroke: ${u.personBorder};
fill: ${u.personBkg};
}
`,"getStyles"),uH4=eG4,BH4={parser:kG4,db:i50,renderer:Bg0,styles:uH4,init:X(({c4:u,wrap:B})=>{Bg0.setConf(u),i50.setWrap(B)},"init")}});var gF;var _F=g(()=>{Y4();gF=X(()=>`
/* 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 ZA;var ME=g(()=>{Y4();i3();ZA=X((u,B)=>{let E;if(B==="sandbox")E=Ku("#i"+u);return(B==="sandbox"?Ku(E.nodes()[0].contentDocument.body):Ku("body")).select(`[id="${u}"]`)},"getDiagramElement")});var K8,EH4,AH4;var Q8=g(()=>{s4();o4();Y4();K8=X((u,B,E,A)=>{u.attr("class",E);let{width:C,height:D,x:F,y:U}=EH4(u,B);y3(u,D,C,A);let z=AH4(F,U,C,D,B);u.attr("viewBox",z),z0.debug(`viewBox configured: ${z} with padding: ${B}`)},"setupViewPortForSVG"),EH4=X((u,B)=>{let E=u.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:E.width+B*2,height:E.height+B*2,x:E.x,y:E.y}},"calculateDimensionsWithPadding"),AH4=X((u,B,E,A,C)=>{return`${u-C} ${B-C} ${E} ${A}`},"createViewBox")});var CH4="flowchart-",DH4,FH4,UH4,zH4,y50,Mg0,Zg0,kH4,fH4,lH4,c50,gW,Jg0;var g50=g(()=>{_F();ME();Q8();mZ();J8();bE();B7();t3();s4();o4();Y4();i3();WQ();K2();DH4=class{constructor(){this.vertexCounter=0,this.config=$0(),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=w3,this.setAccDescription=L3,this.setDiagramTitle=T3,this.getAccTitle=H3,this.getAccDescription=q3,this.getDiagramTitle=X3,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{X(this,"FlowDB")}sanitizeText(u){return yu.sanitizeText(u,this.config)}sanitizeNodeLabelType(u){switch(u){case"markdown":case"string":case"text":return u;default:return"markdown"}}setDiagramId(u){this.diagramId=u}lookUpDomId(u){for(let B of this.vertices.values())if(B.id===u)return this.diagramId?`${this.diagramId}-${B.domId}`:B.domId;return this.diagramId?`${this.diagramId}-${u}`:u}addVertex(u,B,E,A,C,D,F={},U){if(!u||u.trim().length===0)return;let z;if(U!==void 0){let b;if(!U.includes(`
`))b=`{
`+U+`
}`;else b=U+`
`;z=gf(b,{schema:cf})}let k=this.edges.find((b)=>b.id===u);if(k){let b=z;if(b?.animate!==void 0)k.animate=b.animate;if(b?.animation!==void 0)k.animation=b.animation;if(b?.curve!==void 0)k.interpolate=b.curve;return}let f,l=this.vertices.get(u);if(l===void 0){if(B===void 0&&E===void 0&&A!==void 0&&A!==null)z0.warn(`Style applied to unknown node "${u}". This may indicate a typo. The node will be created automatically.`);l={id:u,labelType:"text",domId:CH4+u+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(u,l)}if(this.vertexCounter++,B!==void 0){if(this.config=$0(),f=this.sanitizeText(B.text.trim()),l.labelType=B.type,f.startsWith('"')&&f.endsWith('"'))f=f.substring(1,f.length-1);l.text=f}else if(l.text===void 0)l.text=u;if(E!==void 0)l.type=E;if(A!==void 0&&A!==null)A.forEach((b)=>{l.styles.push(b)});if(C!==void 0&&C!==null)C.forEach((b)=>{l.classes.push(b)});if(D!==void 0)l.dir=D;if(l.props===void 0)l.props=F;else if(F!==void 0)Object.assign(l.props,F);if(z!==void 0){if(z.shape){if(z.shape!==z.shape.toLowerCase()||z.shape.includes("_"))throw Error(`No such shape: ${z.shape}. Shape names should be lowercase.`);else if(!L30(z.shape))throw Error(`No such shape: ${z.shape}.`);l.type=z?.shape}if(z?.label)l.text=z?.label,l.labelType=this.sanitizeNodeLabelType(z?.labelType);if(z?.icon){if(l.icon=z?.icon,!z.label?.trim()&&l.text===u)l.text=""}if(z?.form)l.form=z?.form;if(z?.pos)l.pos=z?.pos;if(z?.img){if(l.img=z?.img,!z.label?.trim()&&l.text===u)l.text=""}if(z?.constraint)l.constraint=z.constraint;if(z.w)l.assetWidth=Number(z.w);if(z.h)l.assetHeight=Number(z.h)}}addSingleLink(u,B,E,A){let F={start:u,end:B,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};z0.info("abc78 Got edge...",F);let U=E.text;if(U!==void 0){if(F.text=this.sanitizeText(U.text.trim()),F.text.startsWith('"')&&F.text.endsWith('"'))F.text=F.text.substring(1,F.text.length-1);F.labelType=this.sanitizeNodeLabelType(U.type)}if(E!==void 0)F.type=E.type,F.stroke=E.stroke,F.length=E.length>10?10:E.length;if(A&&!this.edges.some((z)=>z.id===A))F.id=A,F.isUserDefinedId=!0;else{let z=this.edges.filter((k)=>k.start===F.start&&k.end===F.end);if(z.length===0)F.id=QF(F.start,F.end,{counter:0,prefix:"L"});else F.id=QF(F.start,F.end,{counter:z.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))z0.info("Pushing edge..."),this.edges.push(F);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(u){return u!==null&&typeof u==="object"&&"id"in u&&typeof u.id==="string"}addLink(u,B,E){let A=this.isLinkData(E)?E.id.replace("@",""):void 0;z0.info("addLink",u,B,A);for(let C of u)for(let D of B){let F=C===u[u.length-1],U=D===B[0];if(F&&U)this.addSingleLink(C,D,E,A);else this.addSingleLink(C,D,E,void 0)}}updateLinkInterpolate(u,B){u.forEach((E)=>{if(E==="default")this.edges.defaultInterpolate=B;else this.edges[E].interpolate=B})}updateLink(u,B){u.forEach((E)=>{if(typeof E==="number"&&E>=this.edges.length)throw Error(`The index ${E} 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(E==="default")this.edges.defaultStyle=B;else if(this.edges[E].style=B,(this.edges[E]?.style?.length??0)>0&&!this.edges[E]?.style?.some((A)=>A?.startsWith("fill")))this.edges[E]?.style?.push("fill:none")})}addClass(u,B){let E=B.join().replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");u.split(",").forEach((A)=>{let C=this.classes.get(A);if(C===void 0)C={id:A,styles:[],textStyles:[]},this.classes.set(A,C);if(E!==void 0&&E!==null)E.forEach((D)=>{if(/color/.exec(D)){let F=D.replace("fill","bgFill");C.textStyles.push(F)}C.styles.push(D)})})}setDirection(u){if(this.direction=u.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(u,B){for(let E of u.split(",")){let A=this.vertices.get(E);if(A)A.classes.push(B);let C=this.edges.find((F)=>F.id===E);if(C)C.classes.push(B);let D=this.subGraphLookup.get(E);if(D)D.classes.push(B)}}setTooltip(u,B){if(B===void 0)return;B=this.sanitizeText(B);for(let E of u.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(E):E,B)}setClickFun(u,B,E){if($0().securityLevel!=="loose")return;if(B===void 0)return;let A=[];if(typeof E==="string"){A=E.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let D=0;D<A.length;D++){let F=A[D].trim();if(F.startsWith('"')&&F.endsWith('"'))F=F.substr(1,F.length-2);A[D]=F}}if(A.length===0)A.push(u);let C=this.vertices.get(u);if(C)C.haveCallback=!0,this.funs.push(()=>{let D=this.lookUpDomId(u),F=document.querySelector(`[id="${D}"]`);if(F!==null)F.addEventListener("click",()=>{R4.runFunc(B,...A)},!1)})}setLink(u,B,E){u.split(",").forEach((A)=>{let C=this.vertices.get(A);if(C!==void 0)C.link=R4.formatUrl(B,this.config),C.linkTarget=E}),this.setClass(u,"clickable")}getTooltip(u){return this.tooltips.get(u)}setClickEvent(u,B,E){u.split(",").forEach((A)=>{this.setClickFun(A,B,E)}),this.setClass(u,"clickable")}bindFunctions(u){this.funs.forEach((B)=>{B(u)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(u){let B=yH();Ku(u).select("svg").selectAll("g.node").on("mouseover",(C)=>{let D=Ku(C.currentTarget),F=D.attr("title");if(F===null)return;let U=C.currentTarget?.getBoundingClientRect();B.transition().duration(200).style("opacity",".9"),B.text(D.attr("title")).style("left",window.scrollX+U.left+(U.right-U.left)/2+"px").style("top",window.scrollY+U.bottom+"px"),B.html(oB.sanitize(F)),D.classed("hover",!0)}).on("mouseout",(C)=>{B.transition().duration(500).style("opacity",0),Ku(C.currentTarget).classed("hover",!1)})}clear(u="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=u,this.config=$0(),D3()}setGen(u){this.version=u||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(u,B,E){let A=u.text.trim(),C=E.text;if(u===E&&/\s/.exec(E.text))A=void 0;let F=X((M)=>{let Z={boolean:{},number:{},string:{}},J=[],w;return{nodeList:M.filter(function(Q){let G=typeof Q;if(Q.stmt&&Q.stmt==="dir")return w=Q.value,!1;if(Q.trim()==="")return!1;if(G in Z)return Z[G].hasOwnProperty(Q)?!1:Z[G][Q]=!0;else return J.includes(Q)?!1:J.push(Q)}),dir:w}},"uniq")(B.flat()),U=F.nodeList,z=F.dir,k=z!==void 0,f=$0().flowchart??{},l=z??(f.inheritDir?this.getDirection()??$0().direction??void 0:void 0);if(this.version==="gen-1")for(let M=0;M<U.length;M++)U[M]=this.lookUpDomId(U[M]);A=A??"subGraph"+this.subCount,C=C||"",C=this.sanitizeText(C),this.subCount=this.subCount+1;let b={id:A,nodes:U,title:C.trim(),classes:[],dir:l,hasExplicitDir:k,labelType:this.sanitizeNodeLabelType(E?.type)};return z0.info("Adding",b.id,b.nodes,b.dir),b.nodes=this.makeUniq(b,this.subGraphs).nodes,this.subGraphs.push(b),this.subGraphLookup.set(A,b),A}getPosForId(u){for(let[B,E]of this.subGraphs.entries())if(E.id===u)return B;return-1}indexNodes2(u,B){let E=this.subGraphs[B].nodes;if(this.secCount=this.secCount+1,this.secCount>2000)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=B,this.subGraphs[B].id===u)return{result:!0,count:0};let A=0,C=1;while(A<E.length){let D=this.getPosForId(E[A]);if(D>=0){let F=this.indexNodes2(u,D);if(F.result)return{result:!0,count:C+F.count};else C=C+F.count}A=A+1}return{result:!1,count:C}}getDepthFirstPos(u){return this.posCrossRef[u]}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(u){let B=u.trim(),E="arrow_open";switch(B[0]){case"<":E="arrow_point",B=B.slice(1);break;case"x":E="arrow_cross",B=B.slice(1);break;case"o":E="arrow_circle",B=B.slice(1);break}let A="normal";if(B.includes("="))A="thick";if(B.includes("."))A="dotted";return{type:E,stroke:A}}countChar(u,B){let E=B.length,A=0;for(let C=0;C<E;++C)if(B[C]===u)++A;return A}destructEndLink(u){let B=u.trim(),E=B.slice(0,-1),A="arrow_open";switch(B.slice(-1)){case"x":if(A="arrow_cross",B.startsWith("x"))A="double_"+A,E=E.slice(1);break;case">":if(A="arrow_point",B.startsWith("<"))A="double_"+A,E=E.slice(1);break;case"o":if(A="arrow_circle",B.startsWith("o"))A="double_"+A,E=E.slice(1);break}let C="normal",D=E.length-1;if(E.startsWith("="))C="thick";if(E.startsWith("~"))C="invisible";let F=this.countChar(".",E);if(F)C="dotted",D=F;return{type:A,stroke:C,length:D}}destructLink(u,B){let E=this.destructEndLink(u),A;if(B){if(A=this.destructStartLink(B),A.stroke!==E.stroke)return{type:"INVALID",stroke:"INVALID"};if(A.type==="arrow_open")A.type=E.type;else{if(A.type!==E.type)return{type:"INVALID",stroke:"INVALID"};A.type="double_"+A.type}if(A.type==="double_arrow")A.type="double_arrow_point";return A.length=E.length,A}return E}exists(u,B){for(let E of u)if(E.nodes.includes(B))return!0;return!1}makeUniq(u,B){let E=[];return u.nodes.forEach((A,C)=>{if(!this.exists(B,A))E.push(u.nodes[C])}),{nodes:E}}getTypeFromVertex(u){if(u.img)return"imageSquare";if(u.icon){if(u.form==="circle")return"iconCircle";if(u.form==="square")return"iconSquare";if(u.form==="rounded")return"iconRounded";return"icon"}switch(u.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return u.type}}findNode(u,B){return u.find((E)=>E.id===B)}destructEdgeType(u){let B="none",E="arrow_point";switch(u){case"arrow_point":case"arrow_circle":case"arrow_cross":E=u;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":B=u.replace("double_",""),E=B;break}return{arrowTypeStart:B,arrowTypeEnd:E}}addNodeFromVertex(u,B,E,A,C,D){let F=E.get(u.id),U=A.get(u.id)??!1,z=this.findNode(B,u.id);if(z)z.cssStyles=u.styles,z.cssCompiledStyles=this.getCompiledStyles(u.classes),z.cssClasses=u.classes.join(" ");else{let k={id:u.id,label:u.text,labelType:u.labelType,labelStyle:"",parentId:F,padding:C.flowchart?.padding||8,cssStyles:u.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...u.classes]),cssClasses:"default "+u.classes.join(" "),dir:u.dir,domId:u.domId,look:D,link:u.link,linkTarget:u.linkTarget,tooltip:this.getTooltip(u.id),icon:u.icon,pos:u.pos,img:u.img,assetWidth:u.assetWidth,assetHeight:u.assetHeight,constraint:u.constraint};if(U)B.push({...k,isGroup:!0,shape:"rect"});else B.push({...k,isGroup:!1,shape:this.getTypeFromVertex(u)})}}getCompiledStyles(u){let B=[];for(let E of u){let A=this.classes.get(E);if(A?.styles)B=[...B,...A.styles??[]].map((C)=>C.trim());if(A?.textStyles)B=[...B,...A.textStyles??[]].map((C)=>C.trim())}return B}getData(){let u=$0(),B=[],E=[],A=this.getSubGraphs(),C=new Map,D=new Map;for(let z=A.length-1;z>=0;z--){let k=A[z];if(k.nodes.length>0)D.set(k.id,!0);for(let f of k.nodes)C.set(f,k.id)}for(let z=A.length-1;z>=0;z--){let k=A[z];B.push({id:k.id,label:k.title,labelStyle:"",labelType:k.labelType,parentId:C.get(k.id),padding:8,cssCompiledStyles:this.getCompiledStyles(k.classes),cssClasses:k.classes.join(" "),shape:"rect",dir:k.dir==="TD"?"TB":k.dir,explicitDir:k.hasExplicitDir,isGroup:!0,look:u.look})}this.getVertices().forEach((z)=>{this.addNodeFromVertex(z,B,C,D,u,u.look||"classic")});let U=this.getEdges();return U.forEach((z,k)=>{let{arrowTypeStart:f,arrowTypeEnd:l}=this.destructEdgeType(z.type),b=[...U.defaultStyle??[]];if(z.style)b.push(...z.style);let M={id:QF(z.start,z.end,{counter:k,prefix:"L"},z.id),isUserDefinedId:z.isUserDefinedId,start:z.start,end:z.end,type:z.type??"normal",label:z.text,labelType:z.labelType,labelpos:"c",thickness:z.stroke,minlen:z.length,classes:z?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:z?.stroke==="invisible"||z?.type==="arrow_open"?"none":f,arrowTypeEnd:z?.stroke==="invisible"||z?.type==="arrow_open"?"none":l,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(z.classes),labelStyle:b,style:b,pattern:z.stroke,look:u.look,animate:z.animate,animation:z.animation,curve:z.interpolate||this.edges.defaultInterpolate||u.flowchart?.curve};E.push(M)}),{nodes:B,edges:E,other:{},config:u}}defaultConfig(){return xj.flowchart}},FH4=X(function(u,B){return B.db.getClasses()},"getClasses"),UH4=X(async function(u,B,E,A,C){z0.info("REF0:"),z0.info("Drawing state diagram (v2)",B);let{securityLevel:D,flowchart:F,layout:U}=$0();A.db.setDiagramId(B),z0.debug("Before getData: ");let z=A.db.getData();z0.debug("Data: ",z);let k=ZA(B,D),f=A.db.getDirection();if(z.type=A.type,z.layoutAlgorithm=$F(U),z.layoutAlgorithm==="dagre"&&U==="elk")z0.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.");z.direction=f,z.nodeSpacing=F?.nodeSpacing||50,z.rankSpacing=F?.rankSpacing||50,z.markers=["point","circle","cross"],z.diagramId=B,z0.debug("REF1:",z),await kA(z,k,C);let l=z.config.flowchart?.diagramPadding??8;R4.insertTitle(k,"flowchartTitleText",F?.titleTopMargin||0,A.db.getDiagramTitle()),K8(k,l,"flowchart",F?.useMaxWidth||!1)},"draw"),zH4={getClasses:FH4,draw:UH4},y50=function(){var u=X(function(eu,au,f4,U4){for(f4=f4||{},U4=eu.length;U4--;f4[eu[U4]]=au);return f4},"o"),B=[1,4],E=[1,3],A=[1,5],C=[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],D=[2,2],F=[1,13],U=[1,14],z=[1,15],k=[1,16],f=[1,23],l=[1,25],b=[1,26],M=[1,27],Z=[1,50],J=[1,49],w=[1,29],K=[1,30],Q=[1,31],G=[1,32],L=[1,33],H=[1,45],q=[1,47],x=[1,43],v=[1,48],W=[1,44],S=[1,51],T=[1,46],R=[1,52],Y=[1,53],a=[1,34],I=[1,35],O=[1,36],i=[1,37],N=[1,38],V=[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],r=[1,62],m=[1,61],$=[1,63],y=[8,9,11,75,77,78],p=[1,79],e=[1,92],_=[1,97],b0=[1,96],B0=[1,93],k0=[1,89],f0=[1,95],D0=[1,91],P0=[1,98],q0=[1,94],m0=[1,99],a0=[1,90],_0=[8,9,10,11,40,75,77,78],w0=[8,9,10,11,40,46,75,77,78],v0=[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],T0=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],Z0=[44,60,89,102,105,106,109,111,114,115,116],F0=[1,122],u0=[1,123],M0=[1,125],X0=[1,124],S0=[44,60,62,74,89,102,105,106,109,111,114,115,116],Y0=[1,134],h0=[1,148],J0=[1,149],n=[1,150],d=[1,151],H0=[1,136],o=[1,138],L0=[1,142],E0=[1,143],r0=[1,144],c0=[1,145],p0=[1,146],g0=[1,147],Bu=[1,152],n0=[1,153],e0=[1,132],t0=[1,133],zu=[1,140],W0=[1,135],$u=[1,139],i0=[1,137],vu=[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],cu=[1,155],Du=[1,157],Nu=[8,9,11],du=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],Iu=[1,177],x0=[1,173],Tu=[1,174],Vu=[1,178],Zu=[1,175],I0=[1,176],lu=[77,116,119],Hu=[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],Ru=[10,106],W4=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],ru=[1,248],q4=[1,246],F3=[1,250],i4=[1,244],b4=[1,245],P4=[1,247],bu=[1,249],qu=[1,251],nu=[1,269],c4=[8,9,11,106],$4=[8,9,10,11,60,84,105,106,109,110,111,112],B3={trace:X(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:X(function(au,f4,U4,iu,X4,O0,J1){var V0=O0.length-1;switch(X4){case 2:this.$=[];break;case 3:if(!Array.isArray(O0[V0])||O0[V0].length>0)O0[V0-1].push(O0[V0]);this.$=O0[V0-1];break;case 4:case 183:this.$=O0[V0];break;case 11:iu.setDirection("TB"),this.$="TB";break;case 12:iu.setDirection(O0[V0-1]),this.$=O0[V0-1];break;case 27:this.$=O0[V0-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=iu.addSubGraph(O0[V0-6],O0[V0-1],O0[V0-4]);break;case 34:this.$=iu.addSubGraph(O0[V0-3],O0[V0-1],O0[V0-3]);break;case 35:this.$=iu.addSubGraph(void 0,O0[V0-1],void 0);break;case 37:this.$=O0[V0].trim(),iu.setAccTitle(this.$);break;case 38:case 39:this.$=O0[V0].trim(),iu.setAccDescription(this.$);break;case 43:this.$=O0[V0-1]+O0[V0];break;case 44:this.$=O0[V0];break;case 45:iu.addVertex(O0[V0-1][O0[V0-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,O0[V0]),iu.addLink(O0[V0-3].stmt,O0[V0-1],O0[V0-2]),this.$={stmt:O0[V0-1],nodes:O0[V0-1].concat(O0[V0-3].nodes)};break;case 46:iu.addLink(O0[V0-2].stmt,O0[V0],O0[V0-1]),this.$={stmt:O0[V0],nodes:O0[V0].concat(O0[V0-2].nodes)};break;case 47:iu.addLink(O0[V0-3].stmt,O0[V0-1],O0[V0-2]),this.$={stmt:O0[V0-1],nodes:O0[V0-1].concat(O0[V0-3].nodes)};break;case 48:this.$={stmt:O0[V0-1],nodes:O0[V0-1]};break;case 49:iu.addVertex(O0[V0-1][O0[V0-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,O0[V0]),this.$={stmt:O0[V0-1],nodes:O0[V0-1],shapeData:O0[V0]};break;case 50:this.$={stmt:O0[V0],nodes:O0[V0]};break;case 51:this.$=[O0[V0]];break;case 52:iu.addVertex(O0[V0-5][O0[V0-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,O0[V0-4]),this.$=O0[V0-5].concat(O0[V0]);break;case 53:this.$=O0[V0-4].concat(O0[V0]);break;case 54:this.$=O0[V0];break;case 55:this.$=O0[V0-2],iu.setClass(O0[V0-2],O0[V0]);break;case 56:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"square");break;case 57:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"doublecircle");break;case 58:this.$=O0[V0-5],iu.addVertex(O0[V0-5],O0[V0-2],"circle");break;case 59:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"ellipse");break;case 60:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"stadium");break;case 61:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"subroutine");break;case 62:this.$=O0[V0-7],iu.addVertex(O0[V0-7],O0[V0-1],"rect",void 0,void 0,void 0,Object.fromEntries([[O0[V0-5],O0[V0-3]]]));break;case 63:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"cylinder");break;case 64:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"round");break;case 65:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"diamond");break;case 66:this.$=O0[V0-5],iu.addVertex(O0[V0-5],O0[V0-2],"hexagon");break;case 67:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"odd");break;case 68:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"trapezoid");break;case 69:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"inv_trapezoid");break;case 70:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"lean_right");break;case 71:this.$=O0[V0-3],iu.addVertex(O0[V0-3],O0[V0-1],"lean_left");break;case 72:this.$=O0[V0],iu.addVertex(O0[V0]);break;case 73:O0[V0-1].text=O0[V0],this.$=O0[V0-1];break;case 74:case 75:O0[V0-2].text=O0[V0-1],this.$=O0[V0-2];break;case 76:this.$=O0[V0];break;case 77:var A3=iu.destructLink(O0[V0],O0[V0-2]);this.$={type:A3.type,stroke:A3.stroke,length:A3.length,text:O0[V0-1]};break;case 78:var A3=iu.destructLink(O0[V0],O0[V0-2]);this.$={type:A3.type,stroke:A3.stroke,length:A3.length,text:O0[V0-1],id:O0[V0-3]};break;case 79:this.$={text:O0[V0],type:"text"};break;case 80:this.$={text:O0[V0-1].text+""+O0[V0],type:O0[V0-1].type};break;case 81:this.$={text:O0[V0],type:"string"};break;case 82:this.$={text:O0[V0],type:"markdown"};break;case 83:var A3=iu.destructLink(O0[V0]);this.$={type:A3.type,stroke:A3.stroke,length:A3.length};break;case 84:var A3=iu.destructLink(O0[V0]);this.$={type:A3.type,stroke:A3.stroke,length:A3.length,id:O0[V0-1]};break;case 85:this.$=O0[V0-1];break;case 86:this.$={text:O0[V0],type:"text"};break;case 87:this.$={text:O0[V0-1].text+""+O0[V0],type:O0[V0-1].type};break;case 88:this.$={text:O0[V0],type:"string"};break;case 89:case 104:this.$={text:O0[V0],type:"markdown"};break;case 101:this.$={text:O0[V0],type:"text"};break;case 102:this.$={text:O0[V0-1].text+""+O0[V0],type:O0[V0-1].type};break;case 103:this.$={text:O0[V0],type:"text"};break;case 105:this.$=O0[V0-4],iu.addClass(O0[V0-2],O0[V0]);break;case 106:this.$=O0[V0-4],iu.setClass(O0[V0-2],O0[V0]);break;case 107:case 115:this.$=O0[V0-1],iu.setClickEvent(O0[V0-1],O0[V0]);break;case 108:case 116:this.$=O0[V0-3],iu.setClickEvent(O0[V0-3],O0[V0-2]),iu.setTooltip(O0[V0-3],O0[V0]);break;case 109:this.$=O0[V0-2],iu.setClickEvent(O0[V0-2],O0[V0-1],O0[V0]);break;case 110:this.$=O0[V0-4],iu.setClickEvent(O0[V0-4],O0[V0-3],O0[V0-2]),iu.setTooltip(O0[V0-4],O0[V0]);break;case 111:this.$=O0[V0-2],iu.setLink(O0[V0-2],O0[V0]);break;case 112:this.$=O0[V0-4],iu.setLink(O0[V0-4],O0[V0-2]),iu.setTooltip(O0[V0-4],O0[V0]);break;case 113:this.$=O0[V0-4],iu.setLink(O0[V0-4],O0[V0-2],O0[V0]);break;case 114:this.$=O0[V0-6],iu.setLink(O0[V0-6],O0[V0-4],O0[V0]),iu.setTooltip(O0[V0-6],O0[V0-2]);break;case 117:this.$=O0[V0-1],iu.setLink(O0[V0-1],O0[V0]);break;case 118:this.$=O0[V0-3],iu.setLink(O0[V0-3],O0[V0-2]),iu.setTooltip(O0[V0-3],O0[V0]);break;case 119:this.$=O0[V0-3],iu.setLink(O0[V0-3],O0[V0-2],O0[V0]);break;case 120:this.$=O0[V0-5],iu.setLink(O0[V0-5],O0[V0-4],O0[V0]),iu.setTooltip(O0[V0-5],O0[V0-2]);break;case 121:this.$=O0[V0-4],iu.addVertex(O0[V0-2],void 0,void 0,O0[V0]);break;case 122:this.$=O0[V0-4],iu.updateLink([O0[V0-2]],O0[V0]);break;case 123:this.$=O0[V0-4],iu.updateLink(O0[V0-2],O0[V0]);break;case 124:this.$=O0[V0-8],iu.updateLinkInterpolate([O0[V0-6]],O0[V0-2]),iu.updateLink([O0[V0-6]],O0[V0]);break;case 125:this.$=O0[V0-8],iu.updateLinkInterpolate(O0[V0-6],O0[V0-2]),iu.updateLink(O0[V0-6],O0[V0]);break;case 126:this.$=O0[V0-6],iu.updateLinkInterpolate([O0[V0-4]],O0[V0]);break;case 127:this.$=O0[V0-6],iu.updateLinkInterpolate(O0[V0-4],O0[V0]);break;case 128:case 130:this.$=[O0[V0]];break;case 129:case 131:O0[V0-2].push(O0[V0]),this.$=O0[V0-2];break;case 133:this.$=O0[V0-1]+O0[V0];break;case 181:this.$=O0[V0];break;case 182:this.$=O0[V0-1]+""+O0[V0];break;case 184:this.$=O0[V0-1]+""+O0[V0];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:B,10:E,12:A},{1:[3]},u(C,D,{5:6}),{4:7,9:B,10:E,12:A},{4:8,9:B,10:E,12:A},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:F,9:U,10:z,11:k,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:l,36:b,38:M,42:28,43:39,44:Z,45:40,47:41,60:J,84:w,85:K,86:Q,87:G,88:L,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y,121:a,122:I,123:O,124:i,125:N},u(C,[2,9]),u(C,[2,10]),u(C,[2,11]),{8:[1,55],9:[1,56],10:V,15:54,18:57},u(h,[2,3]),u(h,[2,4]),u(h,[2,5]),u(h,[2,6]),u(h,[2,7]),u(h,[2,8]),{8:r,9:m,11:$,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:r,9:m,11:$,21:68},{8:r,9:m,11:$,21:69},{8:r,9:m,11:$,21:70},{8:r,9:m,11:$,21:71},{8:r,9:m,11:$,21:72},{8:r,9:m,10:[1,73],11:$,21:74},u(h,[2,36]),{35:[1,75]},{37:[1,76]},u(h,[2,39]),u(y,[2,50],{18:77,39:78,10:V,40:p}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:e,44:_,60:b0,80:[1,87],89:B0,95:[1,84],97:[1,85],101:86,105:k0,106:f0,109:D0,111:P0,114:q0,115:m0,116:a0,120:88},u(h,[2,185]),u(h,[2,186]),u(h,[2,187]),u(h,[2,188]),u(h,[2,189]),u(_0,[2,51]),u(_0,[2,54],{46:[1,100]}),u(w0,[2,72],{113:113,29:[1,101],44:Z,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:J,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:H,102:q,105:x,106:v,109:W,111:S,114:T,115:R,116:Y}),u(v0,[2,181]),u(v0,[2,142]),u(v0,[2,143]),u(v0,[2,144]),u(v0,[2,145]),u(v0,[2,146]),u(v0,[2,147]),u(v0,[2,148]),u(v0,[2,149]),u(v0,[2,150]),u(v0,[2,151]),u(v0,[2,152]),u(C,[2,12]),u(C,[2,18]),u(C,[2,19]),{9:[1,114]},u(T0,[2,26],{18:115,10:V}),u(h,[2,27]),{42:116,43:39,44:Z,45:40,47:41,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},u(h,[2,40]),u(h,[2,41]),u(h,[2,42]),u(Z0,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:F0,81:u0,116:M0,119:X0},{75:[1,126],77:[1,127]},u(S0,[2,83]),u(h,[2,28]),u(h,[2,29]),u(h,[2,30]),u(h,[2,31]),u(h,[2,32]),{10:Y0,12:h0,14:J0,27:n,28:128,32:d,44:H0,60:o,75:L0,80:[1,130],81:[1,131],83:141,84:E0,85:r0,86:c0,87:p0,88:g0,89:Bu,90:n0,91:129,105:e0,109:t0,111:zu,114:W0,115:$u,116:i0},u(vu,D,{5:154}),u(h,[2,37]),u(h,[2,38]),u(y,[2,48],{44:cu}),u(y,[2,49],{18:156,10:V,40:Du}),u(_0,[2,44]),{44:Z,47:158,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},{102:[1,159],103:160,105:[1,161]},{44:Z,47:162,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},{44:Z,47:163,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},u(Nu,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},u(Nu,[2,115],{120:168,10:[1,167],14:e,44:_,60:b0,89:B0,105:k0,106:f0,109:D0,111:P0,114:q0,115:m0,116:a0}),u(Nu,[2,117],{10:[1,169]}),u(du,[2,183]),u(du,[2,170]),u(du,[2,171]),u(du,[2,172]),u(du,[2,173]),u(du,[2,174]),u(du,[2,175]),u(du,[2,176]),u(du,[2,177]),u(du,[2,178]),u(du,[2,179]),u(du,[2,180]),{44:Z,47:170,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},{30:171,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:179,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:181,50:[1,180],67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:182,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:183,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:184,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{109:[1,185]},{30:186,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:187,65:[1,188],67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:189,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:190,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{30:191,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},u(v0,[2,182]),u(C,[2,20]),u(T0,[2,25]),u(y,[2,46],{39:192,18:193,10:V,40:p}),u(Z0,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{77:[1,197],79:198,116:M0,119:X0},u(lu,[2,79]),u(lu,[2,81]),u(lu,[2,82]),u(lu,[2,168]),u(lu,[2,169]),{76:199,79:121,80:F0,81:u0,116:M0,119:X0},u(S0,[2,84]),{8:r,9:m,10:Y0,11:$,12:h0,14:J0,21:201,27:n,29:[1,200],32:d,44:H0,60:o,75:L0,83:141,84:E0,85:r0,86:c0,87:p0,88:g0,89:Bu,90:n0,91:202,105:e0,109:t0,111:zu,114:W0,115:$u,116:i0},u(Hu,[2,101]),u(Hu,[2,103]),u(Hu,[2,104]),u(Hu,[2,157]),u(Hu,[2,158]),u(Hu,[2,159]),u(Hu,[2,160]),u(Hu,[2,161]),u(Hu,[2,162]),u(Hu,[2,163]),u(Hu,[2,164]),u(Hu,[2,165]),u(Hu,[2,166]),u(Hu,[2,167]),u(Hu,[2,90]),u(Hu,[2,91]),u(Hu,[2,92]),u(Hu,[2,93]),u(Hu,[2,94]),u(Hu,[2,95]),u(Hu,[2,96]),u(Hu,[2,97]),u(Hu,[2,98]),u(Hu,[2,99]),u(Hu,[2,100]),{6:11,7:12,8:F,9:U,10:z,11:k,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,203],33:24,34:l,36:b,38:M,42:28,43:39,44:Z,45:40,47:41,60:J,84:w,85:K,86:Q,87:G,88:L,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y,121:a,122:I,123:O,124:i,125:N},{10:V,18:204},{44:[1,205]},u(_0,[2,43]),{10:[1,206],44:Z,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:113,114:T,115:R,116:Y},{10:[1,207]},{10:[1,208],106:[1,209]},u(Ru,[2,128]),{10:[1,210],44:Z,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:113,114:T,115:R,116:Y},{10:[1,211],44:Z,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:113,114:T,115:R,116:Y},{80:[1,212]},u(Nu,[2,109],{10:[1,213]}),u(Nu,[2,111],{10:[1,214]}),{80:[1,215]},u(du,[2,184]),{80:[1,216],98:[1,217]},u(_0,[2,55],{113:113,44:Z,60:J,89:H,102:q,105:x,106:v,109:W,111:S,114:T,115:R,116:Y}),{31:[1,218],67:Iu,82:219,116:Vu,117:Zu,118:I0},u(W4,[2,86]),u(W4,[2,88]),u(W4,[2,89]),u(W4,[2,153]),u(W4,[2,154]),u(W4,[2,155]),u(W4,[2,156]),{49:[1,220],67:Iu,82:219,116:Vu,117:Zu,118:I0},{30:221,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{51:[1,222],67:Iu,82:219,116:Vu,117:Zu,118:I0},{53:[1,223],67:Iu,82:219,116:Vu,117:Zu,118:I0},{55:[1,224],67:Iu,82:219,116:Vu,117:Zu,118:I0},{57:[1,225],67:Iu,82:219,116:Vu,117:Zu,118:I0},{60:[1,226]},{64:[1,227],67:Iu,82:219,116:Vu,117:Zu,118:I0},{66:[1,228],67:Iu,82:219,116:Vu,117:Zu,118:I0},{30:229,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},{31:[1,230],67:Iu,82:219,116:Vu,117:Zu,118:I0},{67:Iu,69:[1,231],71:[1,232],82:219,116:Vu,117:Zu,118:I0},{67:Iu,69:[1,234],71:[1,233],82:219,116:Vu,117:Zu,118:I0},u(y,[2,45],{18:156,10:V,40:Du}),u(y,[2,47],{44:cu}),u(Z0,[2,75]),u(Z0,[2,74]),{62:[1,235],67:Iu,82:219,116:Vu,117:Zu,118:I0},u(Z0,[2,77]),u(lu,[2,80]),{77:[1,236],79:198,116:M0,119:X0},{30:237,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},u(vu,D,{5:238}),u(Hu,[2,102]),u(h,[2,35]),{43:239,44:Z,45:40,47:41,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},{10:V,18:240},{10:ru,60:q4,84:F3,92:241,105:i4,107:242,108:243,109:b4,110:P4,111:bu,112:qu},{10:ru,60:q4,84:F3,92:252,104:[1,253],105:i4,107:242,108:243,109:b4,110:P4,111:bu,112:qu},{10:ru,60:q4,84:F3,92:254,104:[1,255],105:i4,107:242,108:243,109:b4,110:P4,111:bu,112:qu},{105:[1,256]},{10:ru,60:q4,84:F3,92:257,105:i4,107:242,108:243,109:b4,110:P4,111:bu,112:qu},{44:Z,47:258,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},u(Nu,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},u(Nu,[2,116]),u(Nu,[2,118],{10:[1,262]}),u(Nu,[2,119]),u(w0,[2,56]),u(W4,[2,87]),u(w0,[2,57]),{51:[1,263],67:Iu,82:219,116:Vu,117:Zu,118:I0},u(w0,[2,64]),u(w0,[2,59]),u(w0,[2,60]),u(w0,[2,61]),{109:[1,264]},u(w0,[2,63]),u(w0,[2,65]),{66:[1,265],67:Iu,82:219,116:Vu,117:Zu,118:I0},u(w0,[2,67]),u(w0,[2,68]),u(w0,[2,70]),u(w0,[2,69]),u(w0,[2,71]),u([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),u(Z0,[2,78]),{31:[1,266],67:Iu,82:219,116:Vu,117:Zu,118:I0},{6:11,7:12,8:F,9:U,10:z,11:k,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,267],33:24,34:l,36:b,38:M,42:28,43:39,44:Z,45:40,47:41,60:J,84:w,85:K,86:Q,87:G,88:L,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y,121:a,122:I,123:O,124:i,125:N},u(_0,[2,53]),{43:268,44:Z,45:40,47:41,60:J,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y},u(Nu,[2,121],{106:nu}),u(c4,[2,130],{108:270,10:ru,60:q4,84:F3,105:i4,109:b4,110:P4,111:bu,112:qu}),u($4,[2,132]),u($4,[2,134]),u($4,[2,135]),u($4,[2,136]),u($4,[2,137]),u($4,[2,138]),u($4,[2,139]),u($4,[2,140]),u($4,[2,141]),u(Nu,[2,122],{106:nu}),{10:[1,271]},u(Nu,[2,123],{106:nu}),{10:[1,272]},u(Ru,[2,129]),u(Nu,[2,105],{106:nu}),u(Nu,[2,106],{113:113,44:Z,60:J,89:H,102:q,105:x,106:v,109:W,111:S,114:T,115:R,116:Y}),u(Nu,[2,110]),u(Nu,[2,112],{10:[1,273]}),u(Nu,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:r,9:m,11:$,21:278},u(h,[2,34]),u(_0,[2,52]),{10:ru,60:q4,84:F3,105:i4,107:279,108:243,109:b4,110:P4,111:bu,112:qu},u($4,[2,133]),{14:e,44:_,60:b0,89:B0,101:280,105:k0,106:f0,109:D0,111:P0,114:q0,115:m0,116:a0,120:88},{14:e,44:_,60:b0,89:B0,101:281,105:k0,106:f0,109:D0,111:P0,114:q0,115:m0,116:a0,120:88},{98:[1,282]},u(Nu,[2,120]),u(w0,[2,58]),{30:283,67:Iu,80:x0,81:Tu,82:172,116:Vu,117:Zu,118:I0},u(w0,[2,66]),u(vu,D,{5:284}),u(c4,[2,131],{108:270,10:ru,60:q4,84:F3,105:i4,109:b4,110:P4,111:bu,112:qu}),u(Nu,[2,126],{120:168,10:[1,285],14:e,44:_,60:b0,89:B0,105:k0,106:f0,109:D0,111:P0,114:q0,115:m0,116:a0}),u(Nu,[2,127],{120:168,10:[1,286],14:e,44:_,60:b0,89:B0,105:k0,106:f0,109:D0,111:P0,114:q0,115:m0,116:a0}),u(Nu,[2,114]),{31:[1,287],67:Iu,82:219,116:Vu,117:Zu,118:I0},{6:11,7:12,8:F,9:U,10:z,11:k,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,288],33:24,34:l,36:b,38:M,42:28,43:39,44:Z,45:40,47:41,60:J,84:w,85:K,86:Q,87:G,88:L,89:H,102:q,105:x,106:v,109:W,111:S,113:42,114:T,115:R,116:Y,121:a,122:I,123:O,124:i,125:N},{10:ru,60:q4,84:F3,92:289,105:i4,107:242,108:243,109:b4,110:P4,111:bu,112:qu},{10:ru,60:q4,84:F3,92:290,105:i4,107:242,108:243,109:b4,110:P4,111:bu,112:qu},u(w0,[2,62]),u(h,[2,33]),u(Nu,[2,124],{106:nu}),u(Nu,[2,125],{106:nu})],defaultActions:{},parseError:X(function(au,f4){if(f4.recoverable)this.trace(au);else{var U4=Error(au);throw U4.hash=f4,U4}},"parseError"),parse:X(function(au){var f4=this,U4=[0],iu=[],X4=[null],O0=[],J1=this.table,V0="",A3=0,f6=0,h2=0,o9=2,CB=1,g3=O0.slice.call(arguments,1),S6=Object.create(this.lexer),Q5={yy:{}};for(var DB in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,DB))Q5.yy[DB]=this.yy[DB];if(S6.setInput(au,Q5.yy),Q5.yy.lexer=S6,Q5.yy.parser=this,typeof S6.yylloc>"u")S6.yylloc={};var t9=S6.yylloc;O0.push(t9);var Ez=S6.options&&S6.options.ranges;if(typeof Q5.yy.parseError==="function")this.parseError=Q5.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function m2(n3){U4.length=U4.length-2*n3,X4.length=X4.length-n3,O0.length=O0.length-n3}X(m2,"popStack");function Az(){var n3=iu.pop()||S6.lex()||CB;if(typeof n3!=="number"){if(n3 instanceof Array)iu=n3,n3=iu.pop();n3=f4.symbols_[n3]||n3}return n3}X(Az,"lex");var e9,Cz,n8,r2,UZ,su,N0={},fu,hu,Z4,x4;while(!0){if(n8=U4[U4.length-1],this.defaultActions[n8])r2=this.defaultActions[n8];else{if(e9===null||typeof e9>"u")e9=Az();r2=J1[n8]&&J1[n8][e9]}if(typeof r2>"u"||!r2.length||!r2[0]){var d4="";x4=[];for(fu in J1[n8])if(this.terminals_[fu]&&fu>o9)x4.push("'"+this.terminals_[fu]+"'");if(S6.showPosition)d4="Parse error on line "+(A3+1)+`:
`+S6.showPosition()+`
Expecting `+x4.join(", ")+", got '"+(this.terminals_[e9]||e9)+"'";else d4="Parse error on line "+(A3+1)+": Unexpected "+(e9==CB?"end of input":"'"+(this.terminals_[e9]||e9)+"'");this.parseError(d4,{text:S6.match,token:this.terminals_[e9]||e9,line:S6.yylineno,loc:t9,expected:x4})}if(r2[0]instanceof Array&&r2.length>1)throw Error("Parse Error: multiple actions possible at state: "+n8+", token: "+e9);switch(r2[0]){case 1:if(U4.push(e9),X4.push(S6.yytext),O0.push(S6.yylloc),U4.push(r2[1]),e9=null,!Cz){if(f6=S6.yyleng,V0=S6.yytext,A3=S6.yylineno,t9=S6.yylloc,h2>0)h2--}else e9=Cz,Cz=null;break;case 2:if(hu=this.productions_[r2[1]][1],N0.$=X4[X4.length-hu],N0._$={first_line:O0[O0.length-(hu||1)].first_line,last_line:O0[O0.length-1].last_line,first_column:O0[O0.length-(hu||1)].first_column,last_column:O0[O0.length-1].last_column},Ez)N0._$.range=[O0[O0.length-(hu||1)].range[0],O0[O0.length-1].range[1]];if(su=this.performAction.apply(N0,[V0,f6,A3,Q5.yy,r2[1],X4,O0].concat(g3)),typeof su<"u")return su;if(hu)U4=U4.slice(0,-1*hu*2),X4=X4.slice(0,-1*hu),O0=O0.slice(0,-1*hu);U4.push(this.productions_[r2[1]][0]),X4.push(N0.$),O0.push(N0._$),Z4=J1[U4[U4.length-2]][U4[U4.length-1]],U4.push(Z4);break;case 3:return!0}}return!0},"parse")},z1=function(){var eu={EOF:1,parseError:X(function(f4,U4){if(this.yy.parser)this.yy.parser.parseError(f4,U4);else throw Error(f4)},"parseError"),setInput:X(function(au,f4){if(this.yy=f4||this.yy||{},this._input=au,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:X(function(){var au=this._input[0];this.yytext+=au,this.yyleng++,this.offset++,this.match+=au,this.matched+=au;var f4=au.match(/(?:\r\n?|\n).*/g);if(f4)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),au},"input"),unput:X(function(au){var f4=au.length,U4=au.split(/(?:\r\n?|\n)/g);this._input=au+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-f4),this.offset-=f4;var iu=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),U4.length-1)this.yylineno-=U4.length-1;var X4=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:U4?(U4.length===iu.length?this.yylloc.first_column:0)+iu[iu.length-U4.length].length-U4[0].length:this.yylloc.first_column-f4},this.options.ranges)this.yylloc.range=[X4[0],X4[0]+this.yyleng-f4];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(au){this.unput(this.match.slice(au))},"less"),pastInput:X(function(){var au=this.matched.substr(0,this.matched.length-this.match.length);return(au.length>20?"...":"")+au.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var au=this.match;if(au.length<20)au+=this._input.substr(0,20-au.length);return(au.substr(0,20)+(au.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var au=this.pastInput(),f4=Array(au.length+1).join("-");return au+this.upcomingInput()+`
`+f4+"^"},"showPosition"),test_match:X(function(au,f4){var U4,iu,X4;if(this.options.backtrack_lexer){if(X4={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)X4.yylloc.range=this.yylloc.range.slice(0)}if(iu=au[0].match(/(?:\r\n?|\n).*/g),iu)this.yylineno+=iu.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:iu?iu[iu.length-1].length-iu[iu.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+au[0].length},this.yytext+=au[0],this.match+=au[0],this.matches=au,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(au[0].length),this.matched+=au[0],U4=this.performAction.call(this,this.yy,this,f4,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(U4)return U4;else if(this._backtrack){for(var O0 in X4)this[O0]=X4[O0];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var au,f4,U4,iu;if(!this._more)this.yytext="",this.match="";var X4=this._currentRules();for(var O0=0;O0<X4.length;O0++)if(U4=this._input.match(this.rules[X4[O0]]),U4&&(!f4||U4[0].length>f4[0].length)){if(f4=U4,iu=O0,this.options.backtrack_lexer)if(au=this.test_match(U4,X4[O0]),au!==!1)return au;else if(this._backtrack){f4=!1;continue}else return!1;else if(!this.options.flex)break}if(f4){if(au=this.test_match(f4,X4[iu]),au!==!1)return au;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:X(function(){var f4=this.next();if(f4)return f4;else return this.lex()},"lex"),begin:X(function(f4){this.conditionStack.push(f4)},"begin"),popState:X(function(){var f4=this.conditionStack.length-1;if(f4>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(f4){if(f4=this.conditionStack.length-1-Math.abs(f4||0),f4>=0)return this.conditionStack[f4];else return"INITIAL"},"topState"),pushState:X(function(f4){this.begin(f4)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:X(function(f4,U4,iu,X4){var O0=X4;switch(iu){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"),U4.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let J1=/\n\s*/g;return U4.yytext=U4.yytext.replace(J1,"<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(f4.lex.firstGraph())this.begin("dir");return 12;case 36:if(f4.lex.firstGraph())this.begin("dir");return 12;case 37:if(f4.lex.firstGraph())this.begin("dir");return 12;case 38:if(f4.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 eu}();B3.lexer=z1;function E3(){this.yy={}}return X(E3,"Parser"),E3.prototype=B3,B3.Parser=E3,new E3}();y50.parser=y50;Mg0=y50,Zg0=Object.assign({},Mg0);Zg0.parse=(u)=>{let B=u.replace(/}\s*\n/g,`}
`);return Mg0.parse(B)};kH4=Zg0,fH4=X((u,B)=>{let E=fZ,A=E(u,"r"),C=E(u,"g"),D=E(u,"b");return u2(A,C,D,B)},"fade"),lH4=X((u)=>`.label {
font-family: ${u.fontFamily};
color: ${u.nodeTextColor||u.textColor};
}
.cluster-label text {
fill: ${u.titleColor};
}
.cluster-label span {
color: ${u.titleColor};
}
.cluster-label span p {
background-color: transparent;
}
.label text,span {
fill: ${u.nodeTextColor||u.textColor};
color: ${u.nodeTextColor||u.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
stroke-width: ${u.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: ${u.lineColor} !important;
stroke-width: 0;
stroke: ${u.lineColor};
}
.arrowheadPath {
fill: ${u.arrowheadColor};
}
.edgePath .path {
stroke: ${u.lineColor};
stroke-width: ${u.strokeWidth??2}px;
}
.flowchart-link {
stroke: ${u.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${u.edgeLabelBackground};
p {
background-color: ${u.edgeLabelBackground};
}
rect {
opacity: 0.5;
background-color: ${u.edgeLabelBackground};
fill: ${u.edgeLabelBackground};
}
text-align: center;
}
/* For html labels only */
.labelBkg {
background-color: ${fH4(u.edgeLabelBackground,0.5)};
// background-color:
}
.cluster rect {
fill: ${u.clusterBkg};
stroke: ${u.clusterBorder};
stroke-width: 1px;
}
.cluster text {
fill: ${u.titleColor};
}
.cluster span {
color: ${u.titleColor};
}
/* .cluster div {
color: ${u.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${u.fontFamily};
font-size: 12px;
background: ${u.tertiaryColor};
border: 1px solid ${u.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${u.textColor};
}
rect.text {
fill: none;
stroke-width: 0;
}
.icon-shape, .image-shape {
background-color: ${u.edgeLabelBackground};
p {
background-color: ${u.edgeLabelBackground};
padding: 2px;
}
.label rect {
opacity: 0.5;
background-color: ${u.edgeLabelBackground};
fill: ${u.edgeLabelBackground};
}
text-align: center;
}
${gF()}
`,"getStyles"),c50=lH4,gW=X(({defaultLayout:u,styles:B=c50}={})=>({parser:kH4,get db(){return new DH4},renderer:zH4,styles:B,init:X((E)=>{if(!E.flowchart)E.flowchart={};let A=Hj().layout??u??E.layout;if(A)Av({layout:A});E.flowchart.arrowMarkerAbsolute=E.arrowMarkerAbsolute,Av({flowchart:{arrowMarkerAbsolute:E.arrowMarkerAbsolute}})},"init")}),"createFlowDiagram"),Jg0=gW()});var Um={};ju(Um,{diagram:()=>Jg0,createFlowDiagram:()=>gW});var zm=g(()=>{g50();_F();ME();Q8();mZ();J8();bE();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4()});var wg0={};ju(wg0,{diagram:()=>ZH4});var bH4,MH4,ZH4;var Kg0=g(()=>{g50();_F();ME();Q8();mZ();J8();bE();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();bH4=X((u)=>`${c50(u)}
.swimlane.cluster rect {
stroke: ${u.clusterBorder} !important;
}
[data-look="neo"].cluster rect {
filter: none;
}
`,"getStyles"),MH4=bH4,ZH4=gW({defaultLayout:"swimlane",styles:MH4})});var Hg0={};ju(Hg0,{diagram:()=>LH4});var _50,JH4,wH4,Gg0,KH4,Qg0,km,QH4,GH4,HH4,LH4;var Lg0=g(()=>{ME();Q8();J8();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();i3();K2();_50=function(){var u=X(function(m0,a0,_0,w0){for(_0=_0||{},w0=m0.length;w0--;_0[m0[w0]]=a0);return _0},"o"),B=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],E=[1,10],A=[1,11],C=[1,12],D=[1,13],F=[1,23],U=[1,24],z=[1,25],k=[1,26],f=[1,27],l=[1,19],b=[1,28],M=[1,29],Z=[1,20],J=[1,18],w=[1,21],K=[1,22],Q=[1,36],G=[1,37],L=[1,38],H=[1,39],q=[1,40],x=[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],v=[1,45],W=[1,46],S=[1,55],T=[40,48,50,51,52,71,72],R=[1,66],Y=[1,64],a=[1,61],I=[1,65],O=[1,67],i=[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],N=[66,67,68,69,70],V=[1,85],h=[1,84],r=[1,82],m=[1,83],$=[6,10,42,47],y=[6,10,13,41,42,47,48,49],p=[1,93],e=[1,92],_=[1,91],b0=[19,58],B0=[1,102],k0=[1,101],f0=[19,58,61,63],D0={trace:X(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:X(function(a0,_0,w0,v0,T0,Z0,F0){var u0=Z0.length-1;switch(T0){case 1:break;case 2:this.$=[];break;case 3:Z0[u0-1].push(Z0[u0]),this.$=Z0[u0-1];break;case 4:case 5:this.$=Z0[u0];break;case 6:case 7:this.$=[];break;case 8:v0.addEntity(Z0[u0-4]),v0.addEntity(Z0[u0-2]),v0.addRelationship(Z0[u0-4],Z0[u0],Z0[u0-2],Z0[u0-3]);break;case 9:v0.addEntity(Z0[u0-8]),v0.addEntity(Z0[u0-4]),v0.addRelationship(Z0[u0-8],Z0[u0],Z0[u0-4],Z0[u0-5]),v0.setClass([Z0[u0-8]],Z0[u0-6]),v0.setClass([Z0[u0-4]],Z0[u0-2]);break;case 10:v0.addEntity(Z0[u0-6]),v0.addEntity(Z0[u0-2]),v0.addRelationship(Z0[u0-6],Z0[u0],Z0[u0-2],Z0[u0-3]),v0.setClass([Z0[u0-6]],Z0[u0-4]);break;case 11:v0.addEntity(Z0[u0-6]),v0.addEntity(Z0[u0-4]),v0.addRelationship(Z0[u0-6],Z0[u0],Z0[u0-4],Z0[u0-5]),v0.setClass([Z0[u0-4]],Z0[u0-2]);break;case 12:v0.addEntity(Z0[u0-3]),v0.addAttributes(Z0[u0-3],Z0[u0-1]);break;case 13:v0.addEntity(Z0[u0-5]),v0.addAttributes(Z0[u0-5],Z0[u0-1]),v0.setClass([Z0[u0-5]],Z0[u0-3]);break;case 14:v0.addEntity(Z0[u0-2]);break;case 15:v0.addEntity(Z0[u0-4]),v0.setClass([Z0[u0-4]],Z0[u0-2]);break;case 16:v0.addEntity(Z0[u0]);break;case 17:v0.addEntity(Z0[u0-2]),v0.setClass([Z0[u0-2]],Z0[u0]);break;case 18:v0.addEntity(Z0[u0-6],Z0[u0-4]),v0.addAttributes(Z0[u0-6],Z0[u0-1]);break;case 19:v0.addEntity(Z0[u0-8],Z0[u0-6]),v0.addAttributes(Z0[u0-8],Z0[u0-1]),v0.setClass([Z0[u0-8]],Z0[u0-3]);break;case 20:v0.addEntity(Z0[u0-5],Z0[u0-3]);break;case 21:v0.addEntity(Z0[u0-7],Z0[u0-5]),v0.setClass([Z0[u0-7]],Z0[u0-2]);break;case 22:v0.addEntity(Z0[u0-3],Z0[u0-1]);break;case 23:v0.addEntity(Z0[u0-5],Z0[u0-3]),v0.setClass([Z0[u0-5]],Z0[u0]);break;case 24:case 25:this.$=Z0[u0].trim(),v0.setAccTitle(this.$);break;case 26:case 27:this.$=Z0[u0].trim(),v0.setAccDescription(this.$);break;case 32:v0.setDirection("TB");break;case 33:v0.setDirection("BT");break;case 34:v0.setDirection("RL");break;case 35:v0.setDirection("LR");break;case 36:this.$=Z0[u0-3],v0.addClass(Z0[u0-2],Z0[u0-1]);break;case 37:case 38:case 59:case 68:this.$=[Z0[u0]];break;case 39:case 40:this.$=Z0[u0-2].concat([Z0[u0]]);break;case 41:this.$=Z0[u0-2],v0.setClass(Z0[u0-1],Z0[u0]);break;case 42:this.$=Z0[u0-3],v0.addCssStyles(Z0[u0-2],Z0[u0-1]);break;case 43:this.$=[Z0[u0]];break;case 44:Z0[u0-2].push(Z0[u0]),this.$=Z0[u0-2];break;case 46:this.$=Z0[u0-1]+Z0[u0];break;case 54:case 80:case 81:this.$=Z0[u0].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 82:this.$=Z0[u0];break;case 60:Z0[u0].push(Z0[u0-1]),this.$=Z0[u0];break;case 61:this.$={type:Z0[u0-1],name:Z0[u0]};break;case 62:this.$={type:Z0[u0-2],name:Z0[u0-1],keys:Z0[u0]};break;case 63:this.$={type:Z0[u0-2],name:Z0[u0-1],comment:Z0[u0]};break;case 64:this.$={type:Z0[u0-3],name:Z0[u0-2],keys:Z0[u0-1],comment:Z0[u0]};break;case 65:case 67:case 70:this.$=Z0[u0];break;case 66:this.$=Z0[u0-1]+Z0[u0];break;case 69:Z0[u0-2].push(Z0[u0]),this.$=Z0[u0-2];break;case 71:this.$=Z0[u0].replace(/"/g,"");break;case 72:this.$={cardA:Z0[u0],relType:Z0[u0-1],cardB:Z0[u0-2]};break;case 73:this.$=v0.Cardinality.ZERO_OR_ONE;break;case 74:this.$=v0.Cardinality.ZERO_OR_MORE;break;case 75:this.$=v0.Cardinality.ONE_OR_MORE;break;case 76:this.$=v0.Cardinality.ONLY_ONE;break;case 77:this.$=v0.Cardinality.MD_PARENT;break;case 78:this.$=v0.Identification.NON_IDENTIFYING;break;case 79:this.$=v0.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},u(B,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:E,24:A,26:C,28:D,29:14,30:15,31:16,32:17,33:F,34:U,35:z,36:k,37:f,40:l,43:b,44:M,48:Z,50:J,51:w,52:K},u(B,[2,7],{1:[2,1]}),u(B,[2,3]),{9:30,11:9,22:E,24:A,26:C,28:D,29:14,30:15,31:16,32:17,33:F,34:U,35:z,36:k,37:f,40:l,43:b,44:M,48:Z,50:J,51:w,52:K},u(B,[2,5]),u(B,[2,6]),u(B,[2,16],{12:31,64:35,15:[1,32],17:[1,33],20:[1,34],66:Q,67:G,68:L,69:H,70:q}),{23:[1,41]},{25:[1,42]},{27:[1,43]},u(B,[2,27]),u(B,[2,28]),u(B,[2,29]),u(B,[2,30]),u(B,[2,31]),u(x,[2,54]),u(x,[2,55]),u(x,[2,56]),u(x,[2,57]),u(x,[2,58]),u(B,[2,32]),u(B,[2,33]),u(B,[2,34]),u(B,[2,35]),{16:44,40:v,41:W},{16:47,40:v,41:W},{16:48,40:v,41:W},u(B,[2,4]),{11:49,40:l,48:Z,50:J,51:w,52:K},{16:50,40:v,41:W},{18:51,19:[1,52],53:53,54:54,58:S},{11:56,40:l,48:Z,50:J,51:w,52:K},{65:57,71:[1,58],72:[1,59]},u(T,[2,73]),u(T,[2,74]),u(T,[2,75]),u(T,[2,76]),u(T,[2,77]),u(B,[2,24]),u(B,[2,25]),u(B,[2,26]),{13:R,38:60,41:Y,42:a,45:62,46:63,48:I,49:O},u(i,[2,37]),u(i,[2,38]),{16:68,40:v,41:W,42:a},{13:R,38:69,41:Y,42:a,45:62,46:63,48:I,49:O},{13:[1,70],15:[1,71]},u(B,[2,17],{64:35,12:72,17:[1,73],42:a,66:Q,67:G,68:L,69:H,70:q}),{19:[1,74]},u(B,[2,14]),{18:75,19:[2,59],53:53,54:54,58:S},{55:76,58:[1,77]},{58:[2,65],59:[1,78]},{21:[1,79]},{64:80,66:Q,67:G,68:L,69:H,70:q},u(N,[2,78]),u(N,[2,79]),{6:V,10:h,39:81,42:r,47:m},{40:[1,86],41:[1,87]},u($,[2,43],{46:88,13:R,41:Y,48:I,49:O}),u(y,[2,45]),u(y,[2,50]),u(y,[2,51]),u(y,[2,52]),u(y,[2,53]),u(B,[2,41],{42:a}),{6:V,10:h,39:89,42:r,47:m},{14:90,40:p,50:e,73:_},{16:94,40:v,41:W},{11:95,40:l,48:Z,50:J,51:w,52:K},{18:96,19:[1,97],53:53,54:54,58:S},u(B,[2,12]),{19:[2,60]},u(b0,[2,61],{56:98,57:99,60:100,62:B0,63:k0}),u([19,58,62,63],[2,67]),{58:[2,66]},u(B,[2,22],{15:[1,104],17:[1,103]}),u([40,48,50,51,52],[2,72]),u(B,[2,36]),{13:R,41:Y,45:105,46:63,48:I,49:O},u(B,[2,47]),u(B,[2,48]),u(B,[2,49]),u(i,[2,39]),u(i,[2,40]),u(y,[2,46]),u(B,[2,42]),u(B,[2,8]),u(B,[2,80]),u(B,[2,81]),u(B,[2,82]),{13:[1,106],42:a},{13:[1,108],15:[1,107]},{19:[1,109]},u(B,[2,15]),u(b0,[2,62],{57:110,61:[1,111],63:k0}),u(b0,[2,63]),u(f0,[2,68]),u(b0,[2,71]),u(f0,[2,70]),{18:112,19:[1,113],53:53,54:54,58:S},{16:114,40:v,41:W},u($,[2,44],{46:88,13:R,41:Y,48:I,49:O}),{14:115,40:p,50:e,73:_},{16:116,40:v,41:W},{14:117,40:p,50:e,73:_},u(B,[2,13]),u(b0,[2,64]),{60:118,62:B0},{19:[1,119]},u(B,[2,20]),u(B,[2,23],{17:[1,120],42:a}),u(B,[2,11]),{13:[1,121],42:a},u(B,[2,10]),u(f0,[2,69]),u(B,[2,18]),{18:122,19:[1,123],53:53,54:54,58:S},{14:124,40:p,50:e,73:_},{19:[1,125]},u(B,[2,21]),u(B,[2,9]),u(B,[2,19])],defaultActions:{75:[2,60],78:[2,66]},parseError:X(function(a0,_0){if(_0.recoverable)this.trace(a0);else{var w0=Error(a0);throw w0.hash=_0,w0}},"parseError"),parse:X(function(a0){var _0=this,w0=[0],v0=[],T0=[null],Z0=[],F0=this.table,u0="",M0=0,X0=0,S0=0,Y0=2,h0=1,J0=Z0.slice.call(arguments,1),n=Object.create(this.lexer),d={yy:{}};for(var H0 in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,H0))d.yy[H0]=this.yy[H0];if(n.setInput(a0,d.yy),d.yy.lexer=n,d.yy.parser=this,typeof n.yylloc>"u")n.yylloc={};var o=n.yylloc;Z0.push(o);var L0=n.options&&n.options.ranges;if(typeof d.yy.parseError==="function")this.parseError=d.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function E0(cu){w0.length=w0.length-2*cu,T0.length=T0.length-cu,Z0.length=Z0.length-cu}X(E0,"popStack");function r0(){var cu=v0.pop()||n.lex()||h0;if(typeof cu!=="number"){if(cu instanceof Array)v0=cu,cu=v0.pop();cu=_0.symbols_[cu]||cu}return cu}X(r0,"lex");var c0,p0,g0,Bu,n0,e0,t0={},zu,W0,$u,i0;while(!0){if(g0=w0[w0.length-1],this.defaultActions[g0])Bu=this.defaultActions[g0];else{if(c0===null||typeof c0>"u")c0=r0();Bu=F0[g0]&&F0[g0][c0]}if(typeof Bu>"u"||!Bu.length||!Bu[0]){var vu="";i0=[];for(zu in F0[g0])if(this.terminals_[zu]&&zu>Y0)i0.push("'"+this.terminals_[zu]+"'");if(n.showPosition)vu="Parse error on line "+(M0+1)+`:
`+n.showPosition()+`
Expecting `+i0.join(", ")+", got '"+(this.terminals_[c0]||c0)+"'";else vu="Parse error on line "+(M0+1)+": Unexpected "+(c0==h0?"end of input":"'"+(this.terminals_[c0]||c0)+"'");this.parseError(vu,{text:n.match,token:this.terminals_[c0]||c0,line:n.yylineno,loc:o,expected:i0})}if(Bu[0]instanceof Array&&Bu.length>1)throw Error("Parse Error: multiple actions possible at state: "+g0+", token: "+c0);switch(Bu[0]){case 1:if(w0.push(c0),T0.push(n.yytext),Z0.push(n.yylloc),w0.push(Bu[1]),c0=null,!p0){if(X0=n.yyleng,u0=n.yytext,M0=n.yylineno,o=n.yylloc,S0>0)S0--}else c0=p0,p0=null;break;case 2:if(W0=this.productions_[Bu[1]][1],t0.$=T0[T0.length-W0],t0._$={first_line:Z0[Z0.length-(W0||1)].first_line,last_line:Z0[Z0.length-1].last_line,first_column:Z0[Z0.length-(W0||1)].first_column,last_column:Z0[Z0.length-1].last_column},L0)t0._$.range=[Z0[Z0.length-(W0||1)].range[0],Z0[Z0.length-1].range[1]];if(e0=this.performAction.apply(t0,[u0,X0,M0,d.yy,Bu[1],T0,Z0].concat(J0)),typeof e0<"u")return e0;if(W0)w0=w0.slice(0,-1*W0*2),T0=T0.slice(0,-1*W0),Z0=Z0.slice(0,-1*W0);w0.push(this.productions_[Bu[1]][0]),T0.push(t0.$),Z0.push(t0._$),$u=F0[w0[w0.length-2]][w0[w0.length-1]],w0.push($u);break;case 3:return!0}}return!0},"parse")},P0=function(){var m0={EOF:1,parseError:X(function(_0,w0){if(this.yy.parser)this.yy.parser.parseError(_0,w0);else throw Error(_0)},"parseError"),setInput:X(function(a0,_0){if(this.yy=_0||this.yy||{},this._input=a0,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:X(function(){var a0=this._input[0];this.yytext+=a0,this.yyleng++,this.offset++,this.match+=a0,this.matched+=a0;var _0=a0.match(/(?:\r\n?|\n).*/g);if(_0)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),a0},"input"),unput:X(function(a0){var _0=a0.length,w0=a0.split(/(?:\r\n?|\n)/g);this._input=a0+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-_0),this.offset-=_0;var v0=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),w0.length-1)this.yylineno-=w0.length-1;var T0=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:w0?(w0.length===v0.length?this.yylloc.first_column:0)+v0[v0.length-w0.length].length-w0[0].length:this.yylloc.first_column-_0},this.options.ranges)this.yylloc.range=[T0[0],T0[0]+this.yyleng-_0];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(a0){this.unput(this.match.slice(a0))},"less"),pastInput:X(function(){var a0=this.matched.substr(0,this.matched.length-this.match.length);return(a0.length>20?"...":"")+a0.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var a0=this.match;if(a0.length<20)a0+=this._input.substr(0,20-a0.length);return(a0.substr(0,20)+(a0.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var a0=this.pastInput(),_0=Array(a0.length+1).join("-");return a0+this.upcomingInput()+`
`+_0+"^"},"showPosition"),test_match:X(function(a0,_0){var w0,v0,T0;if(this.options.backtrack_lexer){if(T0={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)T0.yylloc.range=this.yylloc.range.slice(0)}if(v0=a0[0].match(/(?:\r\n?|\n).*/g),v0)this.yylineno+=v0.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v0?v0[v0.length-1].length-v0[v0.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a0[0].length},this.yytext+=a0[0],this.match+=a0[0],this.matches=a0,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(a0[0].length),this.matched+=a0[0],w0=this.performAction.call(this,this.yy,this,_0,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(w0)return w0;else if(this._backtrack){for(var Z0 in T0)this[Z0]=T0[Z0];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var a0,_0,w0,v0;if(!this._more)this.yytext="",this.match="";var T0=this._currentRules();for(var Z0=0;Z0<T0.length;Z0++)if(w0=this._input.match(this.rules[T0[Z0]]),w0&&(!_0||w0[0].length>_0[0].length)){if(_0=w0,v0=Z0,this.options.backtrack_lexer)if(a0=this.test_match(w0,T0[Z0]),a0!==!1)return a0;else if(this._backtrack){_0=!1;continue}else return!1;else if(!this.options.flex)break}if(_0){if(a0=this.test_match(_0,T0[v0]),a0!==!1)return a0;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:X(function(){var _0=this.next();if(_0)return _0;else return this.lex()},"lex"),begin:X(function(_0){this.conditionStack.push(_0)},"begin"),popState:X(function(){var _0=this.conditionStack.length-1;if(_0>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(_0){if(_0=this.conditionStack.length-1-Math.abs(_0||0),_0>=0)return this.conditionStack[_0];else return"INITIAL"},"topState"),pushState:X(function(_0){this.begin(_0)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(_0,w0,v0,T0){var Z0=T0;switch(v0){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 w0.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 w0.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 m0}();D0.lexer=P0;function q0(){this.yy={}}return X(q0,"Parser"),q0.prototype=D0,D0.Parser=q0,new q0}();_50.parser=_50;JH4=_50,wH4=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=w3,this.getAccTitle=H3,this.setAccDescription=L3,this.getAccDescription=q3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,this.getConfig=X(()=>$0().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{X(this,"ErDB")}addEntity(u,B=""){if(!this.entities.has(u))this.entities.set(u,{id:`entity-${u}-${this.entities.size}`,label:u,attributes:[],alias:B,shape:"erBox",look:$0().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),z0.info("Added new entity :",u);else if(!this.entities.get(u)?.alias&&B)this.entities.get(u).alias=B,z0.info(`Add alias '${B}' to entity '${u}'`);return this.entities.get(u)}getEntity(u){return this.entities.get(u)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(u,B){let E=this.addEntity(u),A;for(A=B.length-1;A>=0;A--){if(!B[A].keys)B[A].keys=[];if(!B[A].comment)B[A].comment="";E.attributes.push(B[A]),z0.debug("Added attribute ",B[A].name)}}addRelationship(u,B,E,A){let C=this.entities.get(u),D=this.entities.get(E);if(!C||!D)return;let F={entityA:C.id,roleA:B,entityB:D.id,relSpec:A};this.relationships.push(F),z0.debug("Added new relationship :",F)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(u){this.direction=u}getCompiledStyles(u){let B=[];for(let E of u){let A=this.classes.get(E);if(A?.styles)B=[...B,...A.styles??[]].map((C)=>C.trim());if(A?.textStyles)B=[...B,...A.textStyles??[]].map((C)=>C.trim())}return B}addCssStyles(u,B){for(let E of u){let A=this.entities.get(E);if(!B||!A)return;for(let C of B)A.cssStyles.push(C)}}addClass(u,B){u.forEach((E)=>{let A=this.classes.get(E);if(A===void 0)A={id:E,styles:[],textStyles:[]},this.classes.set(E,A);if(B)B.forEach(function(C){if(/color/.exec(C)){let D=C.replace("fill","bgFill");A.textStyles.push(D)}A.styles.push(C)})})}setClass(u,B){for(let E of u){let A=this.entities.get(E);if(A)for(let C of B)A.cssClasses+=" "+C}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],D3()}getData(){let u=[],B=[],E=$0(),A=0;for(let D of this.entities.keys()){let F=this.entities.get(D);if(F)F.cssCompiledStyles=this.getCompiledStyles(F.cssClasses.split(" ")),F.colorIndex=A++,u.push(F)}let C=0;for(let D of this.relationships){let F={id:QF(D.entityA,D.entityB,{prefix:"id",counter:C++}),type:"normal",curve:"basis",start:D.entityA,end:D.entityB,label:D.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:D.relSpec.cardB.toLowerCase(),arrowTypeEnd:D.relSpec.cardA.toLowerCase(),pattern:D.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:E.look,labelType:"markdown"};B.push(F)}return{nodes:u,edges:B,other:{},config:E,direction:"TB"}}},Gg0={};Gf(Gg0,{draw:()=>KH4});KH4=X(async function(u,B,E,A){z0.info("REF0:"),z0.info("Drawing er diagram (unified)",B);let{securityLevel:C,er:D,layout:F}=$0(),U=A.db.getData(),z=ZA(B,C);U.type=A.type,U.layoutAlgorithm=$F(F),U.config.flowchart.nodeSpacing=D?.nodeSpacing||140,U.config.flowchart.rankSpacing=D?.rankSpacing||80,U.direction=A.db.getDirection();let{config:k}=U,{look:f}=k;if(f==="neo")U.markers=["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"];else U.markers=["only_one","zero_or_one","one_or_more","zero_or_more"];if(U.diagramId=B,await kA(U,z),U.layoutAlgorithm==="elk")z.select(".edges").lower();let l=z.selectAll('[id*="-background"]');if(Array.from(l).length>0)l.each(function(){let M=Ku(this),J=M.attr("id").replace("-background",""),w=z.select(`#${CSS.escape(J)}`);if(!w.empty()){let K=w.attr("transform");M.attr("transform",K)}});let b=8;R4.insertTitle(z,"erDiagramTitleText",D?.titleTopMargin??25,A.db.getDiagramTitle()),K8(z,b,"erDiagram",D?.useMaxWidth??!0)},"draw"),Qg0=X((u,B)=>{let E=fZ,A=E(u,"r"),C=E(u,"g"),D=E(u,"b");return u2(A,C,D,B)},"fade"),km=new Set(["redux-color","redux-dark-color"]),QH4=X((u)=>{let{theme:B,look:E,bkgColorArray:A,borderColorArray:C}=u;if(!km.has(B))return"";let D=A?.length>0,F="";for(let U=0;U<u.THEME_COLOR_LIMIT;U++)F+=`
[data-look="${E}"][data-color-id="color-${U}"].node path {
stroke: ${C[U]};
${D?`fill: ${A[U]};`:""}
}
[data-look="${E}"][data-color-id="color-${U}"].node rect {
stroke: ${C[U]};
${D?`fill: ${A[U]};`:""}
}
`;return F},"genColor"),GH4=X((u)=>{let{look:B,theme:E,erEdgeLabelBackground:A,strokeWidth:C}=u;return`
${QH4(u)}
.entityBox {
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
}
.relationshipLabelBox {
fill: ${u.tertiaryColor};
opacity: 0.7;
background-color: ${u.tertiaryColor};
rect {
opacity: 0.5;
}
}
.labelBkg {
background-color: ${km.has(E)&&A?A:Qg0(u.tertiaryColor,0.5)};
}
.edgeLabel {
background-color: ${km.has(E)&&A?A:u.edgeLabelBackground};
}
.edgeLabel .label rect {
fill: ${km.has(E)&&A?A:u.edgeLabelBackground};
}
.edgeLabel .label text {
fill: ${u.textColor};
}
.edgeLabel .label {
fill: ${u.nodeBorder};
font-size: 14px;
}
.label {
font-family: ${u.fontFamily};
color: ${u.nodeTextColor||u.textColor};
}
.edge-pattern-dashed {
stroke-dasharray: 8,8;
}
.node rect,
.node circle,
.node ellipse,
.node polygon
{
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
stroke-width: ${B==="neo"?C:"1px"};
}
.relationshipLine {
stroke: ${u.lineColor};
stroke-width: ${B==="neo"?C:"1px"};
fill: none;
}
.marker {
fill: none !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[data-look=neo].labelBkg {
background-color: ${Qg0(u.tertiaryColor,0.5)};
}
`},"getStyles"),HH4=GH4,LH4={parser:JH4,get db(){return new wH4},renderer:Gg0,styles:HH4}});var cH;var fm=g(()=>{Y4();cH=class{constructor(u){this.init=u,this.records=this.init()}static{X(this,"ImperativeState")}reset(){this.records=this.init()}}});function D6(u,B){if(u.accDescr)B.setAccDescription?.(u.accDescr);if(u.accTitle)B.setAccTitle?.(u.accTitle);if(u.title)B.setDiagramTitle?.(u.title)}var LB=g(()=>{Y4();X(D6,"populateCommonDb")});var i7={};ju(i7,{lib_exports:()=>P5,isWardley:()=>QC0,isTreemap:()=>KC0,isTransition:()=>wC0,isRailroadPeg:()=>JC0,isRailroadEbnf:()=>ZC0,isRailroadAbnf:()=>MC0,isRailroad:()=>bC0,isPieSection:()=>lC0,isPie:()=>fC0,isPacketBlock:()=>kC0,isPacket:()=>zC0,isMerge:()=>UC0,isInfo:()=>FC0,isGitGraph:()=>DC0,isEmResetFrame:()=>qR,isEmModelEntityType:()=>CC0,isDomainItem:()=>AC0,isDomainBlock:()=>EC0,isCynefin:()=>BC0,isCommit:()=>uC0,isBranch:()=>eA0,isArchitecture:()=>tA0,inject:()=>Q3,createDefaultSharedCoreModule:()=>Q1,createDefaultCoreModule:()=>K1,__name:()=>j,WardleyGrammarGeneratedModule:()=>my,Wardley:()=>u5,TreemapGrammarGeneratedModule:()=>Vy,Treemap:()=>lb,TreeViewGrammarGeneratedModule:()=>hy,TreeView:()=>tJ,TreeNode:()=>Eb,Transition:()=>Cw,Statement:()=>Bb,RailroadZeroOrMoreExpr:()=>J$,RailroadTerminalExpr:()=>Z$,RailroadSpecialExpr:()=>M$,RailroadSequenceExpr:()=>b$,RailroadRule:()=>NY,RailroadPegGrammarGeneratedModule:()=>ay,RailroadPeg:()=>fb,RailroadOptionalExpr:()=>l$,RailroadOneOrMoreExpr:()=>f$,RailroadNonTerminalExpr:()=>k$,RailroadGrammarGeneratedModule:()=>iy,RailroadExpression:()=>jC,RailroadEbnfGrammarGeneratedModule:()=>Ny,RailroadEbnf:()=>kb,RailroadChoiceExpr:()=>z$,RailroadAbnfGrammarGeneratedModule:()=>jy,RailroadAbnf:()=>zb,Railroad:()=>Ub,RadarGrammarGeneratedModule:()=>Py,Radar:()=>Ck,PieSection:()=>ML,PieGrammarGeneratedModule:()=>Iy,Pie:()=>Uk,PegSuffix:()=>jY,PegSequence:()=>U$,PegRule:()=>PY,PegPrimary:()=>oJ,PegPrefix:()=>IY,PegOrderedChoice:()=>F$,PegLiteral:()=>D$,PegIdentifier:()=>C$,PegGroup:()=>A$,PegAny:()=>E$,PacketGrammarGeneratedModule:()=>Oy,PacketBlock:()=>Fb,Packet:()=>Db,MermaidGeneratedSharedModule:()=>m1,Merge:()=>Cb,InfoGrammarGeneratedModule:()=>Ty,Info:()=>Aw,GitGraphGrammarGeneratedModule:()=>Ry,GitGraph:()=>Fk,EventModelingGeneratedModule:()=>Yy,EventModel:()=>PC,EmptyFileSystem:()=>Y1,EmFrame:()=>Ak,EmDataEntity:()=>ub,EbnfZeroOrMorePostfix:()=>B$,EbnfTerminal:()=>u$,EbnfTerm:()=>OY,EbnfSpecial:()=>er,EbnfSequence:()=>tr,EbnfRule:()=>TY,EbnfRepetition:()=>or,EbnfPrimary:()=>Ek,EbnfPostfix:()=>sJ,EbnfOptionalPostfix:()=>sr,EbnfOptional:()=>dr,EbnfOneOrMorePostfix:()=>pr,EbnfNonTerminal:()=>nr,EbnfGroup:()=>_r,EbnfExceptionPostfix:()=>gr,EbnfChoice:()=>cr,DomainItem:()=>eY,DomainBlock:()=>bL,CynefinGrammarGeneratedModule:()=>Wy,Cynefin:()=>Dk,CommonValueConverter:()=>v8,CommonTokenBuilder:()=>z1u,Commit:()=>Ab,Branch:()=>lL,ArchitectureGrammarGeneratedModule:()=>Sy,Architecture:()=>JA,AbstractMermaidValueConverter:()=>z2,AbstractMermaidTokenBuilder:()=>o1,AbnfStringLiteral:()=>yr,AbnfRuleName:()=>$r,AbnfRule:()=>RY,AbnfPrimary:()=>el,AbnfOptionalGroup:()=>rr,AbnfNumVal:()=>mr,AbnfGroup:()=>hr,AbnfElement:()=>YY,AbnfConcatenation:()=>Vr,AbnfAlternation:()=>ar});function R2(u){return typeof u==="object"&&u!==null&&typeof u.$type==="string"}function XB(u){return typeof u==="object"&&u!==null&&typeof u.$refText==="string"&&"ref"in u}function uU(u){return typeof u==="object"&&u!==null&&typeof u.$refText==="string"&&"items"in u}function Q80(u){return typeof u==="object"&&u!==null&&typeof u.name==="string"&&typeof u.type==="string"&&typeof u.path==="string"}function VJ(u){return typeof u==="object"&&u!==null&&typeof u.info==="object"&&typeof u.message==="string"}function kk(u){return typeof u==="object"&&u!==null&&Array.isArray(u.content)}function bw(u){return typeof u==="object"&&u!==null&&typeof u.tokenType==="object"}function G$(u){return kk(u)&&typeof u.fullText==="string"}function Qn0(u){if(typeof u==="string")return u;if(typeof u>"u")return"undefined";if(typeof u.toString==="function")return u.toString();return Object.prototype.toString.call(u)}function iY(u){return!!u&&typeof u[Symbol.iterator]==="function"}function F6(...u){if(u.length===1){let B=u[0];if(B instanceof tF)return B;if(iY(B))return new tF(()=>B[Symbol.iterator](),(E)=>E.next());if(typeof B.length==="number")return new tF(()=>({index:0}),(E)=>{if(E.index<B.length)return{done:!1,value:B[E.index++]};else return qB})}if(u.length>1)return new tF(()=>({collIndex:0,arrIndex:0}),(B)=>{do{if(B.iterator){let E=B.iterator.next();if(!E.done)return E;B.iterator=void 0}if(B.array){if(B.arrIndex<B.array.length)return{done:!1,value:B.array[B.arrIndex++]};B.array=void 0,B.arrIndex=0}if(B.collIndex<u.length){let E=u[B.collIndex++];if(iY(E))B.iterator=E[Symbol.iterator]();else if(E&&typeof E.length==="number")B.array=E}}while(B.iterator||B.array||B.collIndex<u.length);return qB});return ZL}function wL(u,B={}){for(let[E,A]of Object.entries(u))if(!E.startsWith("$")){if(Array.isArray(A))A.forEach((C,D)=>{if(R2(C)){if(C.$container=u,C.$containerProperty=E,C.$containerIndex=D,B.deep)wL(C,B)}});else if(R2(A)){if(A.$container=u,A.$containerProperty=E,B.deep)wL(A,B)}}}function Mw(u,B){let E=u;while(E){if(B(E))return E;E=E.$container}return}function Gn0(u,B){let E=u;while(E){if(B(E))return!0;E=E.$container}return!1}function aC(u){let E=UL(u).$document;if(!E)throw Error("AST node has no document.");return E}function UL(u){while(u.$container)u=u.$container;return u}function sm(u){if(XB(u))return u.ref?[u.ref]:[];else if(uU(u))return u.items.map((B)=>B.ref);return[]}function AR(u,B){if(!u)throw Error("Node must be an AstNode.");let E=B?.range;return new tF(()=>({keys:Object.keys(u),keyIndex:0,arrayIndex:0}),(A)=>{while(A.keyIndex<A.keys.length){let C=A.keys[A.keyIndex];if(!C.startsWith("$")){let D=u[C];if(R2(D)){if(A.keyIndex++,om(D,E))return{done:!1,value:D}}else if(Array.isArray(D)){while(A.arrayIndex<D.length){let F=A.arrayIndex++,U=D[F];if(R2(U)&&om(U,E))return{done:!1,value:U}}A.arrayIndex=0}}A.keyIndex++}return qB})}function Gk(u,B){if(!u)throw Error("Root node must be an AstNode.");return new JL(u,(E)=>AR(E,B))}function VC(u,B){if(!u)throw Error("Root node must be an AstNode.");else if(B?.range&&!om(u,B.range))return new JL(u,()=>[]);return new JL(u,(E)=>AR(E,B),{includeRoot:!0})}function om(u,B){if(!B)return!0;let E=u.$cstNode?.range;if(!E)return!1;return c80(E,B)}function KL(u){return new tF(()=>({keys:Object.keys(u),keyIndex:0,arrayIndex:0}),(B)=>{while(B.keyIndex<B.keys.length){let E=B.keys[B.keyIndex];if(!E.startsWith("$")){let A=u[E];if(XB(A)||uU(A))return B.keyIndex++,{done:!1,value:{reference:A,container:u,property:E}};else if(Array.isArray(A)){while(B.arrayIndex<A.length){let C=B.arrayIndex++,D=A[C];if(XB(D)||uU(A))return{done:!1,value:{reference:D,container:u,property:E,index:C}}}B.arrayIndex=0}}B.keyIndex++}return qB})}function L80(u,B){let E=u.getTypeMetaData(B.$type),A=B;for(let C of Object.values(E.properties))if(C.defaultValue!==void 0&&A[C.name]===void 0)A[C.name]=q80(C.defaultValue)}function q80(u){if(Array.isArray(u))return[...u.map(q80)];else return u}function tm(u,B,E){let A={$type:u.$type};if(E)E.set(u,A),E.set(A,u);for(let[C,D]of Object.entries(u))if(!C.startsWith("$"))if(R2(D))A[C]=tm(D,B,E);else if(XB(D))A[C]=B(A,C,D.$refNode,D.$refText,D);else if(Array.isArray(D)){let F=[];for(let U of D)if(R2(U))F.push(tm(U,B,E));else if(XB(U))F.push(B(A,C,U.$refNode,U.$refText,U));else F.push(U);A[C]=F}else A[C]=D;return wL(A,{deep:!0}),A}function H$(u){return f3.isInstance(u,G8.$type)}function Zw(u){return f3.isInstance(u,MY.$type)}function Ln0(u){return f3.isInstance(u,eH.$type)}function qn0(u){return f3.isInstance(u,ZE.$type)}function bb(u){return f3.isInstance(u,pl.$type)}function L$(u){return f3.isInstance(u,ZY.$type)}function Xn0(u){return f3.isInstance(u,em.$type)}function X80(u){return f3.isInstance(u,ur.$type)}function fk(u){return f3.isInstance(u,dl.$type)}function x80(u){return f3.isInstance(u,Br.$type)}function v80(u){return f3.isInstance(u,sl.$type)}function xn0(u){return f3.isInstance(u,ol.$type)}function S80(u){return f3.isInstance(u,JY.$type)}function Jw(u){return f3.isInstance(u,tl.$type)}function W80(u){return f3.isInstance(u,wY.$type)}function Y80(u){return f3.isInstance(u,Er.$type)}function vn0(u){return f3.isInstance(u,uk.$type)}function Sn0(u){return f3.isInstance(u,Ar.$type)}function ww(u){return f3.isInstance(u,hJ.$type)}function CR(u){return f3.isInstance(u,Cr.$type)}function QL(u){return f3.isInstance(u,dF.$type)}function Wn0(u){return f3.isInstance(u,KY.$type)}function Yn0(u){return f3.isInstance(u,Dr.$type)}function R80(u){return f3.isInstance(u,uL.$type)}function lk(u){return f3.isInstance(u,BL.$type)}function Rn0(u){return f3.isInstance(u,EL.$type)}function T80(u){return f3.isInstance(u,mJ.$type)}function O80(u){return f3.isInstance(u,Fr.$type)}function Tn0(u){return f3.isInstance(u,Ur.$type)}function On0(u){return f3.isInstance(u,AL.$type)}function I80(u){return f3.isInstance(u,zr.$type)}function SB(u){return f3.isInstance(u,IC.$type)}function P80(u){return f3.isInstance(u,QY.$type)}function j80(u){return f3.isInstance(u,rJ.$type)}function N80(u){return f3.isInstance(u,kr.$type)}function bk(u){return f3.isInstance(u,$J.$type)}function q$(u){return f3.isInstance(u,CL.$type)}function In0(u){return f3.isInstance(u,fr.$type)}function i80(u){return f3.isInstance(u,yJ.$type)}function Pn0(u){return f3.isInstance(u,H8.$type)}function a80(u){return f3.isInstance(u,cJ.$type)}function HA(u){return f3.isInstance(u,Bk.$type)}function X$(u){return f3.isInstance(u,gJ.$type)}function x$(u){return f3.isInstance(u,GY.$type)}function jn0(u){return f3.isInstance(u,_J.$type)}function Nn0(u){return f3.isInstance(u,nJ.$type)}function V80(u){return f3.isInstance(u,lr.$type)}function v$(u){return f3.isInstance(u,HY.$type)}function h80(u){return f3.isInstance(u,pJ.$type)}function in0(u){return f3.isInstance(u,dJ.$type)}function m80(u){return f3.isInstance(u,DL.$type)}function an0(u){let B=u,E=!1;while(B){let A=Mw(B.grammarSource,SB);if(A&&A.dataType)B=B.container,E=!0;else if(E)return B;else return}return}function GL(u){return new JL(u,(B)=>{if(kk(B))return B.content;else return[]},{includeRoot:!0})}function Vn0(u){return GL(u).filter(bw)}function $80(u,B){while(u.container)if(u=u.container,u===B)return!0;return!1}function VY(u){return{start:{character:u.startColumn-1,line:u.startLine-1},end:{character:u.endColumn,line:u.endLine-1}}}function HL(u){if(!u)return;let{offset:B,end:E,range:A}=u;return{range:A,offset:B,end:E,length:E-B}}function y80(u,B){if(u.end.line<B.start.line||u.end.line===B.start.line&&u.end.character<=B.start.character)return oF.Before;else if(u.start.line>B.end.line||u.start.line===B.end.line&&u.start.character>=B.end.character)return oF.After;let E=u.start.line>B.start.line||u.start.line===B.start.line&&u.start.character>=B.start.character,A=u.end.line<B.end.line||u.end.line===B.end.line&&u.end.character<=B.end.character;if(E&&A)return oF.Inside;else if(E)return oF.OverlapBack;else if(A)return oF.OverlapFront;else return oF.Outside}function c80(u,B){return y80(u,B)>oF.After}function hn0(u,B,E=g80){if(u){if(B>0){let A=B-u.offset,C=u.text.charAt(A);if(!E.test(C))B--}return S$(u,B)}return}function _80(u,B){if(u){let E=d80(u,!0);if(E&&br(E,B))return E;if(G$(u)){let A=u.content.findIndex((C)=>!C.hidden);for(let C=A-1;C>=0;C--){let D=u.content[C];if(br(D,B))return D}}}return}function br(u,B){return bw(u)&&B.includes(u.tokenType.name)}function S$(u,B){if(bw(u))return u;else if(kk(u)){let E=p80(u,B,!1);if(E)return S$(E,B)}return}function n80(u,B){if(bw(u))return u;else if(kk(u)){let E=p80(u,B,!0);if(E)return n80(E,B)}return}function p80(u,B,E){let A=0,C=u.content.length-1,D=void 0;while(A<=C){let F=Math.floor((A+C)/2),U=u.content[F];if(U.offset<=B&&U.end>B)return U;if(U.end<=B)D=E?U:void 0,A=F+1;else C=F-1}return D}function d80(u,B=!0){while(u.container){let E=u.container,A=E.content.indexOf(u);while(A>0){A--;let C=E.content[A];if(B||!C.hidden)return C}u=E}return}function mn0(u,B=!0){while(u.container){let E=u.container,A=E.content.indexOf(u),C=E.content.length-1;while(A<C){A++;let D=E.content[A];if(B||!D.hidden)return D}u=E}return}function rn0(u){if(u.range.start.character===0)return u;let B=u.range.start.line,E=u,A;while(u.container){let C=u.container,D=A??C.content.indexOf(u);if(D===0)u=C,A=void 0;else A=D-1,u=C.content[A];if(u.range.start.line!==B)break;E=u}return E}function $n0(u,B){let E=yn0(u,B);if(!E)return[];return E.parent.content.slice(E.a+1,E.b)}function yn0(u,B){let E=wB0(u),A=wB0(B),C;for(let D=0;D<E.length&&D<A.length;D++){let F=E[D],U=A[D];if(F.parent===U.parent)C={parent:F.parent,a:F.index,b:U.index};else break}return C}function wB0(u){let B=[];while(u.container){let E=u.container,A=E.content.indexOf(u);B.push({parent:E,index:A}),u=E}return B.reverse()}function Qb(u,B="Error: Got unexpected value."){throw Error(B)}function o80(u,B="Error: Condition is violated."){if(!u)throw Error(B)}function x3(u){return u.charCodeAt(0)}function im(u,B){if(Array.isArray(u))u.forEach(function(E){B.push(E)});else B.push(u)}function oH(u,B){if(u[B]===!0)throw"duplicate flag "+B;let E=u[B];u[B]=!0}function jJ(u){if(u===void 0)throw Error("Internal Error - Should never get here!");return!0}function zY(){throw Error("Internal Error - Should never get here!")}function KB0(u){return u.type==="Character"}function nn0(u){try{if(typeof u!=="string")u=u.source;u=`/${u}/`;let B=_n0.pattern(u),E=[];for(let A of B.value.value)eJ.reset(u),eJ.visit(A),E.push({start:eJ.startRegexp,end:eJ.endRegex});return E}catch{return[]}}function e80(u){try{if(typeof u==="string")u=new RegExp(u);return u=u.toString(),eJ.reset(u),eJ.visit(_n0.pattern(u)),eJ.multiline}catch{return!1}}function R$(u){let B=typeof u==="string"?new RegExp(u):u;return pn0.some((E)=>B.test(E))}function WL(u){return u.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function uE0(u,B){let E=BE0(u),A=B.match(E);return!!A&&A[0].length>0}function BE0(u){if(typeof u==="string")u=new RegExp(u);let B=u,E=u.source,A=0;function C(){let D="",F;function U(k){D+=E.substr(A,k),A+=k}j(U,"appendRaw");function z(k){D+="(?:"+E.substr(A,k)+"|$)",A+=k}j(z,"appendOptional");while(A<E.length)switch(E[A]){case"\\":switch(E[A+1]){case"c":z(3);break;case"x":z(4);break;case"u":if(B.unicode)if(E[A+2]==="{")z(E.indexOf("}",A)-A+1);else z(6);else z(2);break;case"p":case"P":if(B.unicode)z(E.indexOf("}",A)-A+1);else z(2);break;case"k":z(E.indexOf(">",A)-A+1);break;default:z(2);break}break;case"[":F=/\[(?:\\.|.)*?\]/g,F.lastIndex=A,F=F.exec(E)||[],z(F[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":U(1);break;case"{":if(F=/\{\d+,?\d*\}/g,F.lastIndex=A,F=F.exec(E),F)U(F[0].length);else z(1);break;case"(":if(E[A+1]==="?")switch(E[A+2]){case":":D+="(?:",A+=3,D+=C()+"|$)";break;case"=":D+="(?=",A+=3,D+=C()+")";break;case"!":F=A,A+=3,C(),D+=E.substr(F,A-F);break;case"<":switch(E[A+3]){case"=":case"!":F=A,A+=4,C(),D+=E.substr(F,A-F);break;default:U(E.indexOf(">",A)-A+1),D+=C()+"|$)";break}break}else U(1),D+=C()+"|$)";break;case")":return++A,D;default:z(1);break}return D}return j(C,"process"),new RegExp(C(),u.flags)}function EE0(u){return u.rules.find((B)=>SB(B)&&B.entry)}function AE0(u){return u.rules.filter((B)=>HA(B)&&B.hidden)}function T$(u,B){let E=new Set,A=EE0(u);if(!A)return new Set(u.rules);let C=[A].concat(AE0(u));for(let F of C)CE0(F,E,B);let D=new Set;for(let F of u.rules)if(E.has(F.name)||HA(F)&&F.hidden)D.add(F);return D}function CE0(u,B,E){B.add(u.name),Gk(u).forEach((A)=>{if(bk(A)||E&&X$(A)){let C=A.rule.ref;if(C&&!B.has(C.name))CE0(C,B,E)}})}function dn0(u){let B=new Set;return Gk(u).forEach((E)=>{if(Jw(E)){if(SB(E.type.ref))B.add(E.type.ref);if(CR(E.type.ref)&&SB(E.type.ref.$container))B.add(E.type.ref.$container)}}),B}function DE0(u){if(u.terminal)return u.terminal;else if(u.type.ref)return j$(u.type.ref)?.terminal;return}function FE0(u){return u.hidden&&!R$(UR(u))}function UE0(u,B){if(!u||!B)return[];return I$(u,B,u.astNode,!0)}function O$(u,B,E){if(!u||!B)return;let A=I$(u,B,u.astNode,!0);if(A.length===0)return;if(E!==void 0)E=Math.max(0,Math.min(E,A.length-1));else E=0;return A[E]}function I$(u,B,E,A){if(!A){let C=Mw(u.grammarSource,fk);if(C&&C.feature===B)return[u]}if(kk(u)&&u.astNode===E)return u.content.flatMap((C)=>I$(C,B,E,!1));return[]}function sn0(u,B){if(!u)return[];return P$(u,B,u?.astNode)}function zE0(u,B,E){if(!u)return;let A=P$(u,B,u?.astNode);if(A.length===0)return;if(E!==void 0)E=Math.max(0,Math.min(E,A.length-1));else E=0;return A[E]}function P$(u,B,E){if(u.astNode!==E)return[];if(lk(u.grammarSource)&&u.grammarSource.value===B)return[u];let A=GL(u).iterator(),C,D=[];do if(C=A.next(),!C.done){let F=C.value;if(F.astNode===E){if(lk(F.grammarSource)&&F.grammarSource.value===B)D.push(F)}else A.prune()}while(!C.done);return D}function kE0(u){let B=u.astNode;while(B===u.container?.astNode){let E=Mw(u.grammarSource,fk);if(E)return E;u=u.container}return}function j$(u){let B=u;if(CR(B))if(bb(B.$container))B=B.$container.$container;else if(Zw(B.$container))B=B.$container;else Qb(B.$container);return fE0(u,B,new Map)}function fE0(u,B,E){function A(C,D){let F=void 0;if(!Mw(C,fk))F=fE0(D,D,E);return E.set(u,F),F}if(j(A,"go"),E.has(u))return E.get(u);E.set(u,void 0);for(let C of Gk(B))if(fk(C)&&C.feature.toLowerCase()==="name")return E.set(u,C),C;else if(bk(C)&&SB(C.rule.ref))return A(C,C.rule.ref);else if(q$(C)&&C.typeRef?.ref)return A(C,C.typeRef.ref);return}function lE0(u){let B=u.$container;if(ww(B)){let E=B.elements,A=E.indexOf(u);for(let C=A-1;C>=0;C--){let D=E[C];if(bb(D))return D;else{let F=Gk(E[C]).find(bb);if(F)return F}}}if(H$(B))return lE0(B);else return}function on0(u,B){return u==="?"||u==="*"||ww(B)&&Boolean(B.guardCondition)}function tn0(u){return u==="*"||u==="+"}function en0(u){return u==="+="}function DR(u){return bE0(u,new Set)}function bE0(u,B){if(B.has(u))return!0;else B.add(u);for(let E of Gk(u))if(bk(E)){if(!E.rule.ref)return!1;if(SB(E.rule.ref)&&!bE0(E.rule.ref,B))return!1;if(QL(E.rule.ref))return!1}else if(fk(E))return!1;else if(bb(E))return!1;return Boolean(u.definition)}function up0(u){return Jr(u.type,new Set)}function Jr(u,B){if(B.has(u))return!0;else B.add(u);if(X80(u))return!1;else if(P80(u))return!1;else if(V80(u))return u.types.every((E)=>Jr(E,B));else if(q$(u))if(u.primitiveType!==void 0)return!0;else if(u.stringType!==void 0)return!0;else if(u.typeRef!==void 0){let E=u.typeRef.ref;if(x$(E))return Jr(E.type,B);else return!1}else return!1;else return!1}function FR(u){if(HA(u))return;if(u.inferredType)return u.inferredType.name;else if(u.dataType)return u.dataType;else if(u.returnType){let B=u.returnType.ref;if(B)return B.name}return}function Uw(u){if(Zw(u))return SB(u)&&DR(u)?u.name:FR(u)??u.name;else if(R80(u)||x$(u)||N80(u))return u.name;else if(bb(u)){let B=ME0(u);if(B)return B}else if(CR(u))return u.name;throw Error("Cannot get name of Unknown Type")}function ME0(u){if(u.inferredType)return u.inferredType.name;else if(u.type?.ref)return Uw(u.type.ref);return}function Bp0(u){if(HA(u))return u.type?.name??"string";else return SB(u)&&DR(u)?u.name:FR(u)??u.name}function ZE0(u){if(HA(u))return u.type?.name??"string";else return FR(u)??u.name}function UR(u){let B={s:!1,i:!1,u:!1},E=Kw(u.definition,B),A=Object.entries(B).filter(([,C])=>C).map(([C])=>C).join("");return new RegExp(E,A)}function Kw(u,B){if(i80(u))return Ep0(u);else if(a80(u))return Ap0(u);else if(v80(u))return Fp0(u);else if(X$(u)){let E=u.rule.ref;if(!E)throw Error("Missing rule reference.");return BU(Kw(E.definition),{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized})}else if(T80(u))return Dp0(u);else if(h80(u))return Cp0(u);else if(j80(u)){let E=u.regex.lastIndexOf("/"),A=u.regex.substring(1,E),C=u.regex.substring(E+1);if(B)B.i=C.includes("i"),B.s=C.includes("s"),B.u=C.includes("u");return BU(A,{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized,wrap:!1})}else if(m80(u))return BU(JE0,{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized});else throw Error(`Invalid terminal element: ${u?.$type}, ${u?.$cstNode?.text}`)}function Ep0(u){return BU(u.elements.map((B)=>Kw(B)).join("|"),{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized,wrap:!1})}function Ap0(u){return BU(u.elements.map((B)=>Kw(B)).join(""),{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized,wrap:!1})}function Cp0(u){return BU(`${JE0}*?${Kw(u.terminal)}`,{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized})}function Dp0(u){return BU(`(?!${Kw(u.terminal)})${JE0}*?`,{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized})}function Fp0(u){if(u.right)return BU(`[${am(u.left)}-${am(u.right)}]`,{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized,wrap:!1});return BU(am(u.left),{cardinality:u.cardinality,lookahead:u.lookahead,parenthesized:u.parenthesized,wrap:!1})}function am(u){return WL(u.value)}function BU(u,B){if(B.parenthesized||B.lookahead||B.wrap!==!1)u=`(${B.lookahead??(B.parenthesized?"":"?:")}${u})`;if(B.cardinality)return`${u}${B.cardinality}`;return u}function wE0(u){let B=[],E=u.Grammar;for(let A of E.rules)if(HA(A)&&FE0(A)&&e80(UR(A)))B.push(A.name);return{multilineCommentRules:B,nameRegexp:g80}}function kp0(u){var B=ML4.call(u,nW),E=u[nW];try{u[nW]=void 0;var A=!0}catch(D){}var C=ZL4.call(u);if(A)if(B)u[nW]=E;else delete u[nW];return C}function fp0(u){return KL4.call(u)}function lp0(u){if(u==null)return u===void 0?HL4:GL4;return vg0&&vg0 in Object(u)?JL4(u):QL4(u)}function bp0(u){return u!=null&&typeof u=="object"}function Mp0(u){return typeof u=="symbol"||rC(u)&&Gb(u)==LL4}function Zp0(u,B){var E=-1,A=u==null?0:u.length,C=Array(A);while(++E<A)C[E]=B(u[E],E,u);return C}function KE0(u){if(typeof u=="string")return u;if(W1(u))return zR(u,KE0)+"";if(N$(u))return Wg0?Wg0.call(u):"";var B=u+"";return B=="0"&&1/u==-XL4?"-0":B}function Jp0(u){var B=u.length;while(B--&&vL4.test(u.charAt(B)));return B}function wp0(u){return u?u.slice(0,SL4(u)+1).replace(WL4,""):u}function Kp0(u){var B=typeof u;return u!=null&&(B=="object"||B=="function")}function Qp0(u){if(typeof u=="number")return u;if(N$(u))return Yg0;if(GA(u)){var B=typeof u.valueOf=="function"?u.valueOf():u;u=GA(B)?B+"":B}if(typeof u!="string")return u===0?u:+u;u=YL4(u);var E=TL4.test(u);return E||OL4.test(u)?IL4(u.slice(2),E?2:8):RL4.test(u)?Yg0:+u}function Gp0(u){if(!u)return u===0?u:0;if(u=PL4(u),u===Rg0||u===-Rg0){var B=u<0?-1:1;return B*jL4}return u===u?u:0}function Hp0(u){var B=NL4(u),E=B%1;return B===B?E?B-E:B:0}function Lp0(u){return u}function qp0(u){if(!GA(u))return!1;var B=Gb(u);return B==aL4||B==VL4||B==iL4||B==hL4}function Xp0(u){return!!Tg0&&Tg0 in u}function xp0(u){if(u!=null){try{return yL4.call(u)}catch(B){}try{return u+""}catch(B){}}return""}function vp0(u){if(!GA(u)||rL4(u))return!1;var B=Hk(u)?sL4:gL4;return B.test(Qw(u))}function Sp0(u,B){return u==null?void 0:u[B]}function Wp0(u,B){var E=tL4(u,B);return oL4(E)?E:void 0}function Yp0(u,B,E){switch(E.length){case 0:return u.call(B);case 1:return u.call(B,E[0]);case 2:return u.call(B,E[0],E[1]);case 3:return u.call(B,E[0],E[1],E[2])}return u.apply(B,E)}function Rp0(){}function Tp0(u,B){var E=-1,A=u.length;B||(B=Array(A));while(++E<A)B[E]=u[E];return B}function Op0(u){var B=0,E=0;return function(){var A=Fq4(),C=Dq4-(A-E);if(E=A,C>0){if(++B>=Cq4)return arguments[0]}else B=0;return u.apply(void 0,arguments)}}function Ip0(u){return function(){return u}}function Pp0(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(B(u[E],E,u)===!1)break;return u}function Np0(u,B,E,A){var C=u.length,D=E+(A?1:-1);while(A?D--:++D<C)if(B(u[D],D,u))return D;return-1}function ap0(u){return u!==u}function Vp0(u,B,E){var A=E-1,C=u.length;while(++A<C)if(u[A]===B)return A;return-1}function hp0(u,B,E){return B===B?Jq4(u,B,E):ip0(u,Zq4,E)}function mp0(u,B){var E=u==null?0:u.length;return!!E&&QE0(u,B,0)>-1}function $p0(u,B){var E=typeof u;return B=B==null?wq4:B,!!B&&(E=="number"||E!="symbol"&&Kq4.test(u))&&(u>-1&&u%1==0&&u<B)}function yp0(u,B,E){if(B=="__proto__"&&wr)wr(u,B,{configurable:!0,enumerable:!0,value:E,writable:!0});else u[B]=E}function cp0(u,B){return u===B||u!==u&&B!==B}function gp0(u,B,E){var A=u[B];if(!(Gq4.call(u,B)&&lR(A,E))||E===void 0&&!(B in u))GE0(u,B,E)}function _p0(u,B,E,A){var C=!E;E||(E={});var D=-1,F=B.length;while(++D<F){var U=B[D],z=A?A(E[U],u[U],U,E,u):void 0;if(z===void 0)z=u[U];if(C)GE0(E,U,z);else a$(E,U,z)}return E}function np0(u,B,E){return B=Ig0(B===void 0?u.length-1:B,0),function(){var A=arguments,C=-1,D=Ig0(A.length-B,0),F=Array(D);while(++C<D)F[C]=A[B+C];C=-1;var U=Array(B+1);while(++C<B)U[C]=A[C];return U[B]=E(F),Eq4(u,this,U)}}function pp0(u,B){return Mq4(Hq4(u,B,fR),u+"")}function dp0(u){return typeof u=="number"&&u>-1&&u%1==0&&u<=Lq4}function sp0(u){return u!=null&&LE0(u.length)&&!Hk(u)}function op0(u,B,E){if(!GA(E))return!1;var A=typeof B;if(A=="number"?CU(E)&&i$(B,E.length):A=="string"&&(B in E))return lR(E[B],u);return!1}function tp0(u){return HE0(function(B,E){var A=-1,C=E.length,D=C>1?E[C-1]:void 0,F=C>2?E[2]:void 0;if(D=u.length>3&&typeof D=="function"?(C--,D):void 0,F&&V$(E[0],E[1],F))D=C<3?void 0:D,C=1;B=Object(B);while(++A<C){var U=E[A];if(U)u(B,U,A,D)}return B})}function ep0(u){var B=u&&u.constructor,E=typeof B=="function"&&B.prototype||Xq4;return u===E}function ud0(u,B){var E=-1,A=Array(u);while(++E<u)A[E]=B(E);return A}function Bd0(u){return rC(u)&&Gb(u)==vq4}function Ad0(){return!1}function Dd0(u){return rC(u)&&LE0(u.length)&&!!y6[Gb(u)]}function Fd0(u){return function(B){return u(B)}}function zd0(u,B){var E=W1(u),A=!E&&h$(u),C=!E&&!A&&hY(u),D=!E&&!A&&!C&&qE0(u),F=E||A||C||D,U=F?xq4(u.length,String):[],z=U.length;for(var k in u)if((B||zX4.call(u,k))&&!(F&&(k=="length"||C&&(k=="offset"||k=="parent")||D&&(k=="buffer"||k=="byteLength"||k=="byteOffset")||i$(k,z))))U.push(k);return U}function fd0(u,B){return function(E){return u(B(E))}}function bd0(u){if(!MR(u))return fX4(u);var B=[];for(var E in Object(u))if(bX4.call(u,E)&&E!="constructor")B.push(E);return B}function Zd0(u){return CU(u)?kd0(u):Md0(u)}function Jd0(u){var B=[];if(u!=null)for(var E in Object(u))B.push(E);return B}function wd0(u){if(!GA(u))return wX4(u);var B=MR(u),E=[];for(var A in u)if(!(A=="constructor"&&(B||!QX4.call(u,A))))E.push(A);return E}function Kd0(u){return CU(u)?kd0(u,!0):GX4(u)}function Qd0(u,B){if(W1(u))return!1;var E=typeof u;if(E=="number"||E=="symbol"||E=="boolean"||u==null||N$(u))return!0;return LX4.test(u)||!HX4.test(u)||B!=null&&u in Object(B)}function Gd0(){this.__data__=mY?mY(null):{},this.size=0}function Hd0(u){var B=this.has(u)&&delete this.__data__[u];return this.size-=B?1:0,B}function Ld0(u){var B=this.__data__;if(mY){var E=B[u];return E===vX4?void 0:E}return WX4.call(B,u)?B[u]:void 0}function qd0(u){var B=this.__data__;return mY?B[u]!==void 0:TX4.call(B,u)}function Xd0(u,B){var E=this.__data__;return this.size+=this.has(u)?0:1,E[u]=mY&&B===void 0?IX4:B,this}function Hw(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}function xd0(){this.__data__=[],this.size=0}function vd0(u,B){var E=u.length;while(E--)if(lR(u[E][0],B))return E;return-1}function Sd0(u){var B=this.__data__,E=r$(B,u);if(E<0)return!1;var A=B.length-1;if(E==A)B.pop();else iX4.call(B,E,1);return--this.size,!0}function Wd0(u){var B=this.__data__,E=r$(B,u);return E<0?void 0:B[E][1]}function Yd0(u){return r$(this.__data__,u)>-1}function Rd0(u,B){var E=this.__data__,A=r$(E,u);if(A<0)++this.size,E.push([u,B]);else E[A][1]=B;return this}function Lw(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}function Td0(){this.size=0,this.__data__={hash:new ag0,map:new(rY||$$),string:new ag0}}function Od0(u){var B=typeof u;return B=="string"||B=="number"||B=="symbol"||B=="boolean"?u!=="__proto__":u===null}function Id0(u,B){var E=u.__data__;return yX4(B)?E[typeof B=="string"?"string":"hash"]:E.map}function Pd0(u){var B=y$(this,u).delete(u);return this.size-=B?1:0,B}function jd0(u){return y$(this,u).get(u)}function Nd0(u){return y$(this,u).has(u)}function id0(u,B){var E=y$(this,u),A=E.size;return E.set(u,B),this.size+=E.size==A?0:1,this}function qw(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}function g$(u,B){if(typeof u!="function"||B!=null&&typeof B!="function")throw TypeError(pX4);var E=j(function(){var A=arguments,C=B?B.apply(this,A):A[0],D=E.cache;if(D.has(C))return D.get(C);var F=u.apply(this,A);return E.cache=D.set(C,F)||D,F},"memoized");return E.cache=new(g$.Cache||c$),E}function ad0(u){var B=dX4(u,function(A){if(E.size===sX4)E.clear();return A}),E=B.cache;return B}function Vd0(u){return u==null?"":xL4(u)}function hd0(u,B){if(W1(u))return u;return XE0(u,B)?[u]:Bx4(Ex4(u))}function md0(u){if(typeof u=="string"||N$(u))return u;var B=u+"";return B=="0"&&1/u==-Ax4?"-0":B}function rd0(u,B){B=_$(B,u);var E=0,A=B.length;while(u!=null&&E<A)u=u[JR(B[E++])];return E&&E==A?u:void 0}function $d0(u,B,E){var A=u==null?void 0:xE0(u,B);return A===void 0?E:A}function yd0(u,B){var E=-1,A=B.length,C=u.length;while(++E<A)u[C+E]=B[E];return u}function cd0(u){return W1(u)||h$(u)||!!(Vg0&&u&&u[Vg0])}function SE0(u,B,E,A,C){var D=-1,F=u.length;E||(E=Dx4),C||(C=[]);while(++D<F){var U=u[D];if(B>0&&E(U))if(B>1)SE0(U,B-1,E,A,C);else vE0(C,U);else if(!A)C[C.length]=U}return C}function gd0(u){var B=u==null?0:u.length;return B?WE0(u,1):[]}function nd0(u,B,E){var A=-1,C=u.length;if(B<0)B=-B>C?0:C+B;if(E=E>C?C:E,E<0)E+=C;C=B>E?0:E-B>>>0,B>>>=0;var D=Array(C);while(++A<C)D[A]=u[A+B];return D}function dd0(u,B,E,A){var C=-1,D=u==null?0:u.length;if(A&&D)E=u[++C];while(++C<D)E=B(E,u[C],C,u);return E}function sd0(){this.__data__=new $$,this.size=0}function od0(u){var B=this.__data__,E=B.delete(u);return this.size=B.size,E}function td0(u){return this.__data__.get(u)}function ed0(u){return this.__data__.has(u)}function us0(u,B){var E=this.__data__;if(E instanceof $$){var A=E.__data__;if(!rY||A.length<bx4-1)return A.push([u,B]),this.size=++E.size,this;E=this.__data__=new c$(A)}return E.set(u,B),this.size=E.size,this}function Xw(u){var B=this.__data__=new $$(u);this.size=B.size}function Bs0(u,B){return u&&bR(B,wE(B),u)}function Es0(u,B){return u&&bR(B,m$(B),u)}function Cs0(u,B){if(B)return u.slice();var E=u.length,A=rg0?rg0(E):new u.constructor(E);return u.copy(A),A}function Ds0(u,B){var E=-1,A=u==null?0:u.length,C=0,D=[];while(++E<A){var F=u[E];if(B(F,E,u))D[C++]=F}return D}function Fs0(){return[]}function zs0(u,B){return bR(u,RE0(u),B)}function fs0(u,B){return bR(u,ks0(u),B)}function ls0(u,B,E){var A=B(u);return W1(u)?A:vE0(A,E(u))}function Ms0(u){return bs0(u,wE,RE0)}function Zs0(u){return bs0(u,m$,ks0)}function ws0(u){var B=u.length,E=new u.constructor(B);if(B&&typeof u[0]=="string"&&Nx4.call(u,"index"))E.index=u.index,E.input=u.input;return E}function Ks0(u){var B=new u.constructor(u.byteLength);return new Kr(B).set(new Kr(u)),B}function Qs0(u,B){var E=B?TE0(u.buffer):u.buffer;return new u.constructor(E,u.byteOffset,u.byteLength)}function Gs0(u){var B=new u.constructor(u.source,hx4.exec(u));return B.lastIndex=u.lastIndex,B}function Hs0(u){return dg0?Object(dg0.call(u)):{}}function Ls0(u,B){var E=B?TE0(u.buffer):u.buffer;return new u.constructor(E,u.byteOffset,u.length)}function qs0(u,B,E){var A=u.constructor;switch(B){case ox4:return TE0(u);case yx4:case cx4:return new A(+u);case tx4:return Vx4(u,E);case ex4:case uv4:case Bv4:case Ev4:case Av4:case Cv4:case Dv4:case Fv4:case Uv4:return $x4(u,E);case gx4:return new A;case _x4:case dx4:return new A(u);case nx4:return mx4(u);case px4:return new A;case sx4:return rx4(u)}}function Xs0(u){return typeof u.constructor=="function"&&!MR(u)?Bq4(_d0(u)):{}}function xs0(u){return rC(u)&&LL(u)==fv4}function vs0(u){return rC(u)&&LL(u)==Zv4}function XY(u,B,E,A,C,D){var F,U=B&Qv4,z=B&Gv4,k=B&Hv4;if(E)F=C?E(u,A,C,D):E(u);if(F!==void 0)return F;if(!GA(u))return u;var f=W1(u);if(f){if(F=ix4(u),!U)return Aq4(u,F)}else{var l=LL(u),b=l==Ws0||l==vv4;if(hY(u))return Kx4(u,U);if(l==Ys0||l==Ss0||b&&!C){if(F=z||b?{}:kv4(u),!U)return z?xx4(u,Jx4(F,u)):Lx4(u,Zx4(F,u))}else{if(!T6[l])return C?u:{};F=zv4(u,l,U)}}D||(D=new qY);var M=D.get(u);if(M)return M;if(D.set(u,F),Kv4(u))u.forEach(function(w){F.add(XY(w,B,E,w,u,D))});else if(Mv4(u))u.forEach(function(w,K){F.set(K,XY(w,B,E,K,u,D))});var Z=k?z?Js0:GB0:z?m$:wE,J=f?void 0:Z(u);return jp0(J||u,function(w,K){if(J)K=w,w=u[K];a$(F,K,XY(w,B,E,K,u,D))}),F}function Rs0(u){return cv4(u,gv4)}function Ts0(u){var B=-1,E=u==null?0:u.length,A=0,C=[];while(++B<E){var D=u[B];if(D)C[A++]=D}return C}function Os0(u){return this.__data__.set(u,_v4),this}function Is0(u){return this.__data__.has(u)}function $Y(u){var B=-1,E=u==null?0:u.length;this.__data__=new c$;while(++B<E)this.add(u[B])}function Ps0(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(B(u[E],E,u))return!0;return!1}function Ns0(u,B){return u.has(B)}function is0(u,B,E,A,C,D){var F=E&dv4,U=u.length,z=B.length;if(U!=z&&!(F&&z>U))return!1;var k=D.get(u),f=D.get(B);if(k&&f)return k==B&&f==u;var l=-1,b=!0,M=E&sv4?new OE0:void 0;D.set(u,B),D.set(B,u);while(++l<U){var Z=u[l],J=B[l];if(A)var w=F?A(J,Z,l,B,u,D):A(Z,J,l,u,B,D);if(w!==void 0){if(w)continue;b=!1;break}if(M){if(!js0(B,function(K,Q){if(!IE0(M,Q)&&(Z===K||C(Z,K,E,A,D)))return M.push(Q)})){b=!1;break}}else if(!(Z===J||C(Z,J,E,A,D))){b=!1;break}}return D.delete(u),D.delete(B),b}function Vs0(u){var B=-1,E=Array(u.size);return u.forEach(function(A,C){E[++B]=[C,A]}),E}function hs0(u){var B=-1,E=Array(u.size);return u.forEach(function(A){E[++B]=A}),E}function ms0(u,B,E,A,C,D,F){switch(E){case fS4:if(u.byteLength!=B.byteLength||u.byteOffset!=B.byteOffset)return!1;u=u.buffer,B=B.buffer;case kS4:if(u.byteLength!=B.byteLength||!D(new Kr(u),new Kr(B)))return!1;return!0;case uS4:case BS4:case CS4:return lR(+u,+B);case ES4:return u.name==B.name&&u.message==B.message;case DS4:case US4:return u==B+"";case AS4:var U=ov4;case FS4:var z=A&tv4;if(U||(U=PE0),u.size!=B.size&&!z)return!1;var k=F.get(u);if(k)return k==B;A|=ev4,F.set(u,B);var f=as0(U(u),U(B),A,C,D,F);return F.delete(u),f;case zS4:if(s50)return s50.call(u)==s50.call(B)}return!1}function rs0(u,B,E,A,C,D){var F=E&bS4,U=GB0(u),z=U.length,k=GB0(B),f=k.length;if(z!=f&&!F)return!1;var l=z;while(l--){var b=U[l];if(!(F?b in B:ZS4.call(B,b)))return!1}var M=D.get(u),Z=D.get(B);if(M&&Z)return M==B&&Z==u;var J=!0;D.set(u,B),D.set(B,u);var w=F;while(++l<z){b=U[l];var K=u[b],Q=B[b];if(A)var G=F?A(Q,K,b,B,u,D):A(K,Q,b,u,B,D);if(!(G===void 0?K===Q||C(K,Q,E,A,D):G)){J=!1;break}w||(w=b=="constructor")}if(J&&!w){var L=u.constructor,H=B.constructor;if(L!=H&&(("constructor"in u)&&("constructor"in B))&&!(typeof L=="function"&&L instanceof L&&typeof H=="function"&&H instanceof H))J=!1}return D.delete(u),D.delete(B),J}function $s0(u,B,E,A,C,D){var F=W1(u),U=W1(B),z=F?u_0:LL(u),k=U?u_0:LL(B);z=z==eg0?bm:z,k=k==eg0?bm:k;var f=z==bm,l=k==bm,b=z==k;if(b&&hY(u)){if(!hY(B))return!1;F=!0,f=!1}if(b&&!f)return D||(D=new qY),F||qE0(u)?as0(u,B,E,A,C,D):lS4(u,B,z,E,A,C,D);if(!(E&wS4)){var M=f&&B_0.call(u,"__wrapped__"),Z=l&&B_0.call(B,"__wrapped__");if(M||Z){var J=M?u.value():u,w=Z?B.value():B;return D||(D=new qY),C(J,w,E,A,D)}}if(!b)return!1;return D||(D=new qY),JS4(u,B,E,A,C,D)}function jE0(u,B,E,A,C){if(u===B)return!0;if(u==null||B==null||!rC(u)&&!rC(B))return u!==u&&B!==B;return QS4(u,B,E,A,jE0,C)}function cs0(u,B,E,A){var C=E.length,D=C,F=!A;if(u==null)return!D;u=Object(u);while(C--){var U=E[C];if(F&&U[2]?U[1]!==u[U[0]]:!(U[0]in u))return!1}while(++C<D){U=E[C];var z=U[0],k=u[z],f=U[1];if(F&&U[2]){if(k===void 0&&!(z in u))return!1}else{var l=new qY;if(A)var b=A(k,f,z,u,B,l);if(!(b===void 0?ys0(f,k,GS4|HS4,A,l):b))return!1}}return!0}function gs0(u){return u===u&&!GA(u)}function ns0(u){var B=wE(u),E=B.length;while(E--){var A=B[E],C=u[A];B[E]=[A,C,_s0(C)]}return B}function ps0(u,B){return function(E){if(E==null)return!1;return E[u]===B&&(B!==void 0||(u in Object(E)))}}function ss0(u){var B=qS4(u);if(B.length==1&&B[0][2])return ds0(B[0][0],B[0][1]);return function(E){return E===u||LS4(E,u,B)}}function os0(u,B){return u!=null&&B in Object(u)}function ts0(u,B,E){B=_$(B,u);var A=-1,C=B.length,D=!1;while(++A<C){var F=JR(B[A]);if(!(D=u!=null&&E(u,F)))break;u=u[F]}if(D||++A!=C)return D;return C=u==null?0:u.length,!!C&&LE0(C)&&i$(F,C)&&(W1(u)||h$(u))}function uo0(u,B){return u!=null&&es0(u,B,xS4)}function Bo0(u,B){if(XE0(u)&&_s0(B))return ds0(JR(u),B);return function(E){var A=Cx4(E,u);return A===void 0&&A===B?vS4(E,u):ys0(B,A,SS4|WS4)}}function Eo0(u){return function(B){return B==null?void 0:B[u]}}function Ao0(u){return function(B){return xE0(B,u)}}function Co0(u){return XE0(u)?RS4(JR(u)):TS4(u)}function Do0(u){if(typeof u=="function")return u;if(u==null)return fR;if(typeof u=="object")return W1(u)?YS4(u[0],u[1]):XS4(u);return OS4(u)}function Fo0(u,B,E,A){var C=-1,D=u==null?0:u.length;while(++C<D){var F=u[C];B(A,F,E(F),u)}return A}function Uo0(u){return function(B,E,A){var C=-1,D=Object(B),F=A(B),U=F.length;while(U--){var z=F[u?U:++C];if(E(D[z],z,D)===!1)break}return B}}function zo0(u,B){return u&&NS4(u,B,wE)}function ko0(u,B){return function(E,A){if(E==null)return E;if(!CU(E))return u(E,A);var C=E.length,D=B?C:-1,F=Object(E);while(B?D--:++D<C)if(A(F[D],D,F)===!1)break;return E}}function fo0(u,B,E,A){return xw(u,function(C,D,F){B(A,C,E(C),F)}),A}function lo0(u,B){return function(E,A){var C=W1(E)?IS4:hS4,D=B?B():{};return C(E,u,DU(A,2),D)}}function Mo0(u){return rC(u)&&CU(u)}function Zo0(u,B,E){var A=-1,C=u==null?0:u.length;while(++A<C)if(E(B,u[A]))return!0;return!1}function wo0(u,B,E,A){var C=-1,D=rp0,F=!0,U=u.length,z=[],k=B.length;if(!U)return z;if(E)B=zR(B,ZR(E));if(A)D=Jo0,F=!1;else if(B.length>=yS4)D=IE0,F=!1,B=new OE0(B);u:while(++C<U){var f=u[C],l=E==null?f:E(f);if(f=A||f!==0?f:0,F&&l===l){var b=k;while(b--)if(B[b]===l)continue u;z.push(f)}else if(!D(B,l,A))z.push(f)}return z}function Ko0(u){var B=u==null?0:u.length;return B?u[B-1]:void 0}function Qo0(u,B,E){var A=u==null?0:u.length;if(!A)return[];return B=E||B===void 0?1:kR(B),pd0(u,B<0?0:B,A)}function Go0(u,B,E){var A=u==null?0:u.length;if(!A)return[];return B=E||B===void 0?1:kR(B),B=A-B,pd0(u,0,B<0?0:B)}function Ho0(u){return typeof u=="function"?u:fR}function Lo0(u,B){var E=W1(u)?jp0:xw;return E(u,_S4(B))}function qo0(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(!B(u[E],E,u))return!1;return!0}function Xo0(u,B){var E=!0;return xw(u,function(A,C,D){return E=!!B(A,C,D),E}),E}function xo0(u,B,E){var A=W1(u)?nS4:pS4;if(E&&V$(u,B,E))B=void 0;return A(u,DU(B,3))}function vo0(u,B){var E=[];return xw(u,function(A,C,D){if(B(A,C,D))E.push(A)}),E}function Wo0(u,B){var E=W1(u)?YE0:So0;return E(u,DU(B,3))}function Yo0(u){return function(B,E,A){var C=Object(B);if(!CU(B)){var D=DU(E,3);B=wE(B),E=j(function(U){return D(C[U],U,C)},"predicate")}var F=u(B,E,A);return F>-1?C[D?B[F]:F]:void 0}}function Ro0(u,B,E){var A=u==null?0:u.length;if(!A)return-1;var C=E==null?0:kR(E);if(C<0)C=sS4(A+C,0);return ip0(u,DU(B,3),C)}function To0(u){return u&&u.length?u[0]:void 0}function Oo0(u,B){var E=-1,A=CU(u)?Array(u.length):[];return xw(u,function(C,D,F){A[++E]=B(C,D,F)}),A}function Io0(u,B){var E=W1(u)?zR:eS4;return E(u,DU(B,3))}function Po0(u,B){return WE0(n4(u,B),1)}function jo0(u,B){return u!=null&&DW4.call(u,B)}function No0(u,B){return u!=null&&es0(u,B,FW4)}function io0(u){return typeof u=="string"||!W1(u)&&rC(u)&&Gb(u)==UW4}function ao0(u,B){return zR(B,function(E){return u[E]})}function Vo0(u){return u==null?[]:zW4(u,wE(u))}function ho0(u,B,E,A){u=CU(u)?u:B5(u),E=E&&!A?kR(E):0;var C=u.length;if(E<0)E=kW4(C+E,0);return L8(u)?E<=C&&u.indexOf(B,E)>-1:!!C&&QE0(u,B,E)>-1}function mo0(u,B,E){var A=u==null?0:u.length;if(!A)return-1;var C=E==null?0:kR(E);if(C<0)C=fW4(A+C,0);return QE0(u,B,C)}function ro0(u){if(u==null)return!0;if(CU(u)&&(W1(u)||typeof u=="string"||typeof u.splice=="function"||hY(u)||qE0(u)||h$(u)))return!u.length;var B=LL(u);if(B==lW4||B==bW4)return!u.size;if(MR(u))return!Md0(u).length;for(var E in u)if(ZW4.call(u,E))return!1;return!0}function $o0(u){return rC(u)&&Gb(u)==JW4}function yo0(u){return u===void 0}function co0(u){if(typeof u!="function")throw TypeError(QW4);return function(){var B=arguments;switch(B.length){case 0:return!u.call(this);case 1:return!u.call(this,B[0]);case 2:return!u.call(this,B[0],B[1]);case 3:return!u.call(this,B[0],B[1],B[2])}return!u.apply(this,B)}}function go0(u,B,E,A){if(!GA(u))return u;B=_$(B,u);var C=-1,D=B.length,F=D-1,U=u;while(U!=null&&++C<D){var z=JR(B[C]),k=E;if(z==="__proto__"||z==="constructor"||z==="prototype")return u;if(C!=F){var f=U[z];if(k=A?A(f,z,U):void 0,k===void 0)k=GA(f)?f:i$(B[C+1])?[]:{}}a$(U,z,k),U=U[z]}return u}function _o0(u,B,E){var A=-1,C=B.length,D={};while(++A<C){var F=B[A],U=xE0(u,F);if(E(U,F))HW4(D,_$(F,u),U)}return D}function no0(u,B){if(u==null)return{};var E=zR(Js0(u),function(A){return[A]});return B=DU(B),LW4(u,E,function(A,C){return B(A,C[0])})}function po0(u,B,E,A,C){return C(u,function(D,F,U){E=A?(A=!1,D):B(E,D,F,U)}),E}function do0(u,B,E){var A=W1(u)?Ux4:qW4,C=arguments.length<3;return A(u,DU(B,4),E,C,xw)}function so0(u,B){var E=W1(u)?YE0:So0;return E(u,GW4(DU(B,3)))}function oo0(u,B){var E;return xw(u,function(A,C,D){return E=B(A,C,D),!E}),!!E}function to0(u,B,E){var A=W1(u)?js0:XW4;if(E&&V$(u,B,E))B=void 0;return A(u,DU(B,3))}function ut0(u,B,E){var A=-1,C=rp0,D=u.length,F=!0,U=[],z=U;if(E)F=!1,C=Jo0;else if(D>=WW4){var k=B?null:SW4(u);if(k)return PE0(k);F=!1,C=IE0,z=new OE0}else z=B?[]:U;u:while(++A<D){var f=u[A],l=B?B(f):f;if(f=E||f!==0?f:0,F&&l===l){var b=z.length;while(b--)if(z[b]===l)continue u;if(B)z.push(l);U.push(f)}else if(!C(z,l,E)){if(z!==U)z.push(l);U.push(f)}}return U}function Bt0(u){return u&&u.length?YW4(u):[]}function Qr(u){if(console&&console.error)console.error(`Error: ${u}`)}function aE0(u){if(console&&console.warn)console.warn(`Warning: ${u}`)}function VE0(u){let B=new Date().getTime(),E=u();return{time:new Date().getTime()-B,value:E}}function hE0(u){function B(){}j(B,"FakeConstructor"),B.prototype=u;let E=new B;function A(){return typeof E.bar}return j(A,"fakeAccess"),A(),A(),u;(0,eval)(u)}function Et0(u){if(At0(u))return u.LABEL;else return u.name}function At0(u){return L8(u.LABEL)&&u.LABEL!==""}function Ct0(u){return n4(u,xY)}function xY(u){function B(E){return n4(E,xY)}if(j(B,"convertDefinition"),u instanceof WB){let E={type:"NonTerminal",name:u.nonTerminalName,idx:u.idx};if(L8(u.label))E.label=u.label;return E}else if(u instanceof q8)return{type:"Alternative",definition:B(u.definition)};else if(u instanceof z7)return{type:"Option",idx:u.idx,definition:B(u.definition)};else if(u instanceof GE)return{type:"RepetitionMandatory",idx:u.idx,definition:B(u.definition)};else if(u instanceof HE)return{type:"RepetitionMandatoryWithSeparator",idx:u.idx,separator:xY(new g6({terminalType:u.separator})),definition:B(u.definition)};else if(u instanceof X8)return{type:"RepetitionWithSeparator",idx:u.idx,separator:xY(new g6({terminalType:u.separator})),definition:B(u.definition)};else if(u instanceof $9)return{type:"Repetition",idx:u.idx,definition:B(u.definition)};else if(u instanceof x8)return{type:"Alternation",idx:u.idx,definition:B(u.definition)};else if(u instanceof g6){let E={type:"Terminal",name:u.terminalType.name,label:Et0(u.terminalType),idx:u.idx};if(L8(u.label))E.terminalLabel=u.label;let A=u.terminalType.PATTERN;if(u.terminalType.PATTERN)E.pattern=Mk(A)?A.source:A;return E}else if(u instanceof YL)return{type:"Rule",name:u.name,orgText:u.orgText,definition:B(u.definition)};else throw Error("non exhaustive match")}function Dt0(u){return u instanceof q8||u instanceof z7||u instanceof $9||u instanceof GE||u instanceof HE||u instanceof X8||u instanceof g6||u instanceof YL}function cY(u,B=[]){if(u instanceof z7||u instanceof $9||u instanceof X8)return!0;if(u instanceof x8)return eo0(u.definition,(A)=>{return cY(A,B)});else if(u instanceof WB&&TB(B,u))return!1;else if(u instanceof FU){if(u instanceof WB)B.push(u);return mC(u.definition,(A)=>{return cY(A,B)})}else return!1}function Ft0(u){return u instanceof x8}function NC(u){if(u instanceof WB)return"SUBRULE";else if(u instanceof z7)return"OPTION";else if(u instanceof x8)return"OR";else if(u instanceof GE)return"AT_LEAST_ONE";else if(u instanceof HE)return"AT_LEAST_ONE_SEP";else if(u instanceof X8)return"MANY_SEP";else if(u instanceof $9)return"MANY";else if(u instanceof g6)return"CONSUME";else throw Error("non exhaustive match")}function qB0(u,B,E){return[new z7({definition:[new g6({terminalType:u.separator})].concat(u.definition)})].concat(B,E)}function TL(u){if(u instanceof WB)return TL(u.referencedRule);else if(u instanceof g6)return kt0(u);else if(Dt0(u))return Ut0(u);else if(Ft0(u))return zt0(u);else throw Error("non exhaustive match")}function Ut0(u){let B=[],E=u.definition,A=0,C=E.length>A,D,F=!0;while(C&&F)D=E[A],F=cY(D),B=B.concat(TL(D)),A=A+1,C=E.length>A;return iE0(B)}function zt0(u){let B=n4(u.definition,(E)=>{return TL(E)});return iE0(hC(B))}function kt0(u){return[u.terminalType]}function lt0(u){let B={};return v3(u,(E)=>{let A=new RW4(E).startWalking();KE(B,A)}),B}function bt0(u,B){return u.name+B+ft0}function KR(u){let B=u.toString();if(Vm.hasOwnProperty(B))return Vm[B];else{let E=TW4.pattern(B);return Vm[B]=E,E}}function Mt0(){Vm={}}function Jt0(u,B=!1){try{let E=KR(u);return Hr(E.value,{},E.flags.ignoreCase)}catch(E){if(E.message===Zt0){if(B)aE0(`${Gr} Unable to optimize: < ${u.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 A="";if(B)A=`
This will disable the lexer's first char optimizations.
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`;Qr(`${Gr}
Failed parsing: < ${u.toString()} >
Using the @chevrotain/regexp-to-ast library
Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+A)}}return[]}function Hr(u,B,E){switch(u.type){case"Disjunction":for(let C=0;C<u.value.length;C++)Hr(u.value[C],B,E);break;case"Alternative":let A=u.value;for(let C=0;C<A.length;C++){let D=A[C];switch(D.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let F=D;switch(F.type){case"Character":kY(F.value,B,E);break;case"Set":if(F.complement===!0)throw Error(Zt0);v3(F.value,(z)=>{if(typeof z==="number")kY(z,B,E);else{let k=z;if(E===!0)for(let f=k.from;f<=k.to;f++)kY(f,B,E);else{for(let f=k.from;f<=k.to&&f<lY;f++)kY(f,B,E);if(k.to>=lY){let f=k.from>=lY?k.from:lY,l=k.to,b=Jk(f),M=Jk(l);for(let Z=b;Z<=M;Z++)B[Z]=Z}}}});break;case"Group":Hr(F.value,B,E);break;default:throw Error("Non Exhaustive Match")}let U=F.quantifier!==void 0&&F.quantifier.atLeast===0;if(F.type==="Group"&&Lr(F)===!1||F.type!=="Group"&&U===!1)break}break;default:throw Error("non exhaustive match!")}return B5(B)}function kY(u,B,E){let A=Jk(u);if(B[A]=A,E===!0)wt0(u,B)}function wt0(u,B){let E=String.fromCharCode(u),A=E.toUpperCase();if(A!==E){let C=Jk(A.charCodeAt(0));B[C]=C}else{let C=E.toLowerCase();if(C!==E){let D=Jk(C.charCodeAt(0));B[D]=D}}}function XB0(u,B){return qL(u.value,(E)=>{if(typeof E==="number")return TB(B,E);else{let A=E;return qL(B,(C)=>A.from<=C&&C<=A.to)!==void 0}})}function Lr(u){let B=u.quantifier;if(B&&B.atLeast===0)return!0;if(!u.value)return!1;return W1(u.value)?mC(u.value,Lr):Lr(u.value)}function s$(u,B){if(B instanceof RegExp){let E=KR(B),A=new OW4(u);return A.visit(E),A.found}else return qL(B,(E)=>{return TB(u,E.charCodeAt(0))})!==void 0}function Kt0(u,B){B=NE0(B,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
`],tracer:j((Q,G)=>G(),"tracer")});let E=B.tracer;E("initCharCodeToOptimizedIndexMap",()=>{Vt0()});let A;E("Reject Lexer.NA",()=>{A=p$(u,(Q)=>{return Q[kw]===vB.NA})});let C=!1,D;E("Transform Patterns",()=>{C=!1,D=n4(A,(Q)=>{let G=Q[kw];if(Mk(G)){let L=G.source;if(L.length===1&&L!=="^"&&L!=="$"&&L!=="."&&!G.ignoreCase)return L;else if(L.length===2&&L[0]==="\\"&&!TB(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],L[1]))return L[1];else return xB0(G)}else if(Hk(G))return C=!0,{exec:G};else if(typeof G==="object")return C=!0,G;else if(typeof G==="string")if(G.length===1)return G;else{let L=G.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),H=new RegExp(L);return xB0(H)}else throw Error("non exhaustive match")})});let F,U,z,k,f;E("misc mapping",()=>{F=n4(A,(Q)=>Q.tokenTypeIdx),U=n4(A,(Q)=>{let G=Q.GROUP;if(G===vB.SKIPPED)return;else if(L8(G))return G;else if(Zk(G))return!1;else throw Error("non exhaustive match")}),z=n4(A,(Q)=>{let G=Q.LONGER_ALT;if(G)return W1(G)?n4(G,(H)=>A_0(A,H)):[A_0(A,G)]}),k=n4(A,(Q)=>Q.PUSH_MODE),f=n4(A,(Q)=>M3(Q,"POP_MODE"))});let l;E("Line Terminator Handling",()=>{let Q=$E0(B.lineTerminatorCharacters);if(l=n4(A,(G)=>!1),B.positionTracking!=="onlyOffset")l=n4(A,(G)=>{if(M3(G,"LINE_BREAKS"))return!!G.LINE_BREAKS;else return rE0(G,Q)===!1&&s$(Q,G.PATTERN)})});let b,M,Z,J;E("Misc Mapping #2",()=>{b=n4(A,mE0),M=n4(D,it0),Z=QE(A,(Q,G)=>{let L=G.GROUP;if(L8(L)&&L!==vB.SKIPPED)Q[L]=[];return Q},{}),J=n4(D,(Q,G)=>{return{pattern:D[G],longerAlt:z[G],canLineTerminator:l[G],isCustom:b[G],short:M[G],group:U[G],push:k[G],pop:f[G],tokenTypeIdx:F[G],tokenType:A[G]}})});let w=!0,K=[];if(!B.safeMode)E("First Char Optimization",()=>{K=QE(A,(Q,G,L)=>{if(typeof G.PATTERN==="string"){let H=G.PATTERN.charCodeAt(0),q=Jk(H);hm(Q,q,J[L])}else if(W1(G.START_CHARS_HINT)){let H;v3(G.START_CHARS_HINT,(q)=>{let x=typeof q==="string"?q.charCodeAt(0):q,v=Jk(x);if(H!==v)H=v,hm(Q,v,J[L])})}else if(Mk(G.PATTERN))if(G.PATTERN.unicode){if(w=!1,B.ensureOptimizations)Qr(`${Gr} Unable to analyze < ${G.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 H=Jt0(G.PATTERN,B.ensureOptimizations);if(I6(H))w=!1;v3(H,(q)=>{hm(Q,q,J[L])})}else{if(B.ensureOptimizations)Qr(`${Gr} TokenType: <${G.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`);w=!1}return Q},[])});return{emptyGroups:Z,patternIdxToConfig:J,charCodeToPatternIdxToConfig:K,hasCustom:C,canBeOptimized:w}}function Qt0(u,B){let E=[],A=Ht0(u);E=E.concat(A.errors);let C=Lt0(A.valid),D=C.valid;return E=E.concat(C.errors),E=E.concat(Gt0(D)),E=E.concat(Wt0(D)),E=E.concat(Yt0(D,B)),E=E.concat(Rt0(D)),E}function Gt0(u){let B=[],E=LA(u,(A)=>Mk(A[kw]));return B=B.concat(qt0(E)),B=B.concat(xt0(E)),B=B.concat(vt0(E)),B=B.concat(St0(E)),B=B.concat(Xt0(E)),B}function Ht0(u){let B=LA(u,(C)=>{return!M3(C,kw)}),E=n4(B,(C)=>{return{message:"Token Type: ->"+C.name+"<- missing static 'PATTERN' property",type:y9.MISSING_PATTERN,tokenTypes:[C]}}),A=n$(u,B);return{errors:E,valid:A}}function Lt0(u){let B=LA(u,(C)=>{let D=C[kw];return!Mk(D)&&!Hk(D)&&!M3(D,"exec")&&!L8(D)}),E=n4(B,(C)=>{return{message:"Token Type: ->"+C.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:y9.INVALID_PATTERN,tokenTypes:[C]}}),A=n$(u,B);return{errors:E,valid:A}}function qt0(u){class B extends Y${static{j(this,"EndAnchorFinder")}constructor(){super(...arguments);this.found=!1}visitEndAnchor(C){this.found=!0}}let E=LA(u,(C)=>{let D=C.PATTERN;try{let F=KR(D),U=new B;return U.visit(F),U.found}catch(F){return IW4.test(D.source)}});return n4(E,(C)=>{return{message:`Unexpected RegExp Anchor Error:
Token Type: ->`+C.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:y9.EOI_ANCHOR_FOUND,tokenTypes:[C]}})}function Xt0(u){let B=LA(u,(A)=>{return A.PATTERN.test("")});return n4(B,(A)=>{return{message:"Token Type: ->"+A.name+"<- static 'PATTERN' must not match an empty string",type:y9.EMPTY_MATCH_PATTERN,tokenTypes:[A]}})}function xt0(u){class B extends Y${static{j(this,"StartAnchorFinder")}constructor(){super(...arguments);this.found=!1}visitStartAnchor(C){this.found=!0}}let E=LA(u,(C)=>{let D=C.PATTERN;try{let F=KR(D),U=new B;return U.visit(F),U.found}catch(F){return PW4.test(D.source)}});return n4(E,(C)=>{return{message:`Unexpected RegExp Anchor Error:
Token Type: ->`+C.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:y9.SOI_ANCHOR_FOUND,tokenTypes:[C]}})}function vt0(u){let B=LA(u,(A)=>{let C=A[kw];return C instanceof RegExp&&(C.multiline||C.global)});return n4(B,(A)=>{return{message:"Token Type: ->"+A.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:y9.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[A]}})}function St0(u){let B=[],E=n4(u,(D)=>{return QE(u,(F,U)=>{if(D.PATTERN.source===U.PATTERN.source&&!TB(B,U)&&U.PATTERN!==vB.NA)return B.push(U),F.push(U),F;return F},[])});E=wR(E);let A=LA(E,(D)=>{return D.length>1});return n4(A,(D)=>{let F=n4(D,(z)=>{return z.name});return{message:`The same RegExp pattern ->${$C(D).PATTERN}<-has been used in all of the following Token Types: ${F.join(", ")} <-`,type:y9.DUPLICATE_PATTERNS_FOUND,tokenTypes:D}})}function Wt0(u){let B=LA(u,(A)=>{if(!M3(A,"GROUP"))return!1;let C=A.GROUP;return C!==vB.SKIPPED&&C!==vB.NA&&!L8(C)});return n4(B,(A)=>{return{message:"Token Type: ->"+A.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:y9.INVALID_GROUP_TYPE_FOUND,tokenTypes:[A]}})}function Yt0(u,B){let E=LA(u,(C)=>{return C.PUSH_MODE!==void 0&&!TB(B,C.PUSH_MODE)});return n4(E,(C)=>{return{message:`Token Type: ->${C.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${C.PUSH_MODE}<-which does not exist`,type:y9.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[C]}})}function Rt0(u){let B=[],E=QE(u,(A,C,D)=>{let F=C.PATTERN;if(F===vB.NA)return A;if(L8(F))A.push({str:F,idx:D,tokenType:C});else if(Mk(F)&&Ot0(F))A.push({str:F.source,idx:D,tokenType:C});return A},[]);return v3(u,(A,C)=>{v3(E,({str:D,idx:F,tokenType:U})=>{if(C<F&&Tt0(D,A.PATTERN)){let z=`Token: ->${U.name}<- can never be matched.
Because it appears AFTER the Token Type ->${A.name}<-in the lexer's definition.
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;B.push({message:z,type:y9.UNREACHABLE_PATTERN,tokenTypes:[A,U]})}})}),B}function Tt0(u,B){if(Mk(B)){if(It0(B))return!1;let E=B.exec(u);return E!==null&&E.index===0}else if(Hk(B))return B(u,0,[],{});else if(M3(B,"exec"))return B.exec(u,0,[],{});else if(typeof B==="string")return B===u;else throw Error("non exhaustive match")}function Ot0(u){return qL([".","\\","[","]","|","^","$","(",")","?","*","+","{"],(E)=>u.source.indexOf(E)!==-1)===void 0}function It0(u){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(u.source)}function xB0(u){let B=u.ignoreCase?"iy":"y";return new RegExp(`${u.source}`,B)}function Pt0(u,B,E){let A=[];if(!M3(u,fY))A.push({message:"A MultiMode Lexer cannot be initialized without a <"+fY+`> property in its definition
`,type:y9.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE});if(!M3(u,Mm))A.push({message:"A MultiMode Lexer cannot be initialized without a <"+Mm+`> property in its definition
`,type:y9.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY});if(M3(u,Mm)&&M3(u,fY)&&!M3(u.modes,u.defaultMode))A.push({message:`A MultiMode Lexer cannot be initialized with a ${fY}: <${u.defaultMode}>which does not exist
`,type:y9.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST});if(M3(u,Mm))v3(u.modes,(C,D)=>{v3(C,(F,U)=>{if(Zk(F))A.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${D}> at index: <${U}>
`,type:y9.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(M3(F,"LONGER_ALT")){let z=W1(F.LONGER_ALT)?F.LONGER_ALT:[F.LONGER_ALT];v3(z,(k)=>{if(!Zk(k)&&!TB(C,k))A.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${k.name}> on token <${F.name}> outside of mode <${D}>
`,type:y9.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})});return A}function jt0(u,B,E){let A=[],C=!1,D=wR(hC(B5(u.modes))),F=p$(D,(z)=>z[kw]===vB.NA),U=$E0(E);if(B)v3(F,(z)=>{let k=rE0(z,U);if(k!==!1){let l={message:at0(z,k),type:k.issue,tokenType:z};A.push(l)}else if(M3(z,"LINE_BREAKS")){if(z.LINE_BREAKS===!0)C=!0}else if(s$(U,z.PATTERN))C=!0});if(B&&!C)A.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:y9.NO_LINE_BREAKS_FLAGS});return A}function Nt0(u){let B={},E=wE(u);return v3(E,(A)=>{let C=u[A];if(W1(C))B[A]=[];else throw Error("non exhaustive match")}),B}function mE0(u){let B=u.PATTERN;if(Mk(B))return!1;else if(Hk(B))return!0;else if(M3(B,"exec"))return!0;else if(L8(B))return!1;else throw Error("non exhaustive match")}function it0(u){if(L8(u)&&u.length===1)return u.charCodeAt(0);else return!1}function rE0(u,B){if(M3(u,"LINE_BREAKS"))return!1;else if(Mk(u.PATTERN)){try{s$(B,u.PATTERN)}catch(E){return{issue:y9.IDENTIFY_TERMINATOR,errMsg:E.message}}return!1}else if(L8(u.PATTERN))return!1;else if(mE0(u))return{issue:y9.CUSTOM_LINE_BREAK};else throw Error("non exhaustive match")}function at0(u,B){if(B.issue===y9.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
The problem is in the <${u.name}> Token Type
Root cause: ${B.errMsg}.
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;else if(B.issue===y9.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
The problem is in the <${u.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 $E0(u){return n4(u,(E)=>{if(L8(E))return E.charCodeAt(0);else return E})}function hm(u,B,E){if(u[B]===void 0)u[B]=[E];else u[B].push(E)}function Jk(u){return u<lY?u:mm[u]}function Vt0(){if(I6(mm)){mm=Array(65536);for(let u=0;u<65536;u++)mm[u]=u>255?255+~~(u/255):u}}function OL(u,B){let E=u.tokenTypeIdx;if(E===B.tokenTypeIdx)return!0;else return B.isParent===!0&&B.categoryMatchesMap[E]===!0}function gY(u,B){return u.tokenTypeIdx===B.tokenTypeIdx}function IL(u){let B=mt0(u);rt0(B),yt0(B),$t0(B),v3(B,(E)=>{E.isParent=E.categoryMatches.length>0})}function mt0(u){let B=k7(u),E=u,A=!0;while(A){E=wR(hC(n4(E,(D)=>D.CATEGORIES)));let C=n$(E,B);if(B=B.concat(C),I6(C))A=!1;else E=C}return B}function rt0(u){v3(u,(B)=>{if(!cE0(B))ht0[D_0]=B,B.tokenTypeIdx=D_0++;if(vB0(B)&&!W1(B.CATEGORIES))B.CATEGORIES=[B.CATEGORIES];if(!vB0(B))B.CATEGORIES=[];if(!ct0(B))B.categoryMatches=[];if(!gt0(B))B.categoryMatchesMap={}})}function $t0(u){v3(u,(B)=>{B.categoryMatches=[],v3(B.categoryMatchesMap,(E,A)=>{B.categoryMatches.push(ht0[A].tokenTypeIdx)})})}function yt0(u){v3(u,(B)=>{yE0([],B)})}function yE0(u,B){v3(u,(E)=>{B.categoryMatchesMap[E.tokenTypeIdx]=!0}),v3(B.CATEGORIES,(E)=>{let A=u.concat(B);if(!TB(A,E))yE0(A,E)})}function cE0(u){return M3(u,"tokenTypeIdx")}function vB0(u){return M3(u,"CATEGORIES")}function ct0(u){return M3(u,"categoryMatches")}function gt0(u){return M3(u,"categoryMatchesMap")}function _t0(u){return M3(u,"tokenTypeIdx")}function Dw(u){if(gE0(u))return u.LABEL;else return u.name}function gE0(u){return L8(u.LABEL)&&u.LABEL!==""}function kL(u){return nt0(u)}function nt0(u){let B=u.pattern,E={};if(E.name=u.name,!Zk(B))E.PATTERN=B;if(M3(u,NW4))throw`The parent property is no longer supported.
See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;if(M3(u,F_0))E.CATEGORIES=u[F_0];if(IL([E]),M3(u,U_0))E.LABEL=u[U_0];if(M3(u,z_0))E.GROUP=u[z_0];if(M3(u,f_0))E.POP_MODE=u[f_0];if(M3(u,k_0))E.PUSH_MODE=u[k_0];if(M3(u,l_0))E.LONGER_ALT=u[l_0];if(M3(u,b_0))E.LINE_BREAKS=u[b_0];if(M3(u,M_0))E.START_CHARS_HINT=u[M_0];return E}function QR(u,B,E,A,C,D,F,U){return{image:B,startOffset:E,endOffset:A,startLine:C,endLine:D,startColumn:F,endColumn:U,tokenTypeIdx:u.tokenTypeIdx,tokenType:u}}function _E0(u,B){return OL(u,B)}function pt0(u,B){let E=new aW4(u,B);return E.resolveRefs(),E.errors}function qr(u,B,E=[]){E=k7(E);let A=[],C=0;function D(U){return U.concat(U7(u,C+1))}j(D,"remainingPathWith");function F(U){let z=qr(D(U),B,E);return A.concat(z)}j(F,"getAlternativesForProd");while(E.length<B&&C<u.length){let U=u[C];if(U instanceof q8)return F(U.definition);else if(U instanceof WB)return F(U.definition);else if(U instanceof z7)A=F(U.definition);else if(U instanceof GE){let z=U.definition.concat([new $9({definition:U.definition})]);return F(z)}else if(U instanceof HE){let z=[new q8({definition:U.definition}),new $9({definition:[new g6({terminalType:U.separator})].concat(U.definition)})];return F(z)}else if(U instanceof X8){let z=U.definition.concat([new $9({definition:[new g6({terminalType:U.separator})].concat(U.definition)})]);A=F(z)}else if(U instanceof $9){let z=U.definition.concat([new $9({definition:U.definition})]);A=F(z)}else if(U instanceof x8)return v3(U.definition,(z)=>{if(I6(z.definition)===!1)A=F(z.definition)}),A;else if(U instanceof g6)E.push(U.terminalType);else throw Error("non exhaustive match");C++}return A.push({partialPath:E,suffixDef:U7(u,C)}),A}function nE0(u,B,E,A){let D=["EXIT_NONE_TERMINAL"],F="EXIT_ALTERNATIVE",U=!1,z=B.length,k=z-A-1,f=[],l=[];l.push({idx:-1,def:u,ruleStack:[],occurrenceStack:[]});while(!I6(l)){let b=l.pop();if(b==="EXIT_ALTERNATIVE"){if(U&&zw(l).idx<=k)l.pop();continue}let{def:M,idx:Z,ruleStack:J,occurrenceStack:w}=b;if(I6(M))continue;let K=M[0];if(K==="EXIT_NONE_TERMINAL"){let Q={idx:Z,def:U7(M),ruleStack:yY(J),occurrenceStack:yY(w)};l.push(Q)}else if(K instanceof g6)if(Z<z-1){let Q=Z+1,G=B[Q];if(E(G,K.terminalType)){let L={idx:Q,def:U7(M),ruleStack:J,occurrenceStack:w};l.push(L)}}else if(Z===z-1)f.push({nextTokenType:K.terminalType,nextTokenOccurrence:K.idx,ruleStack:J,occurrenceStack:w}),U=!0;else throw Error("non exhaustive match");else if(K instanceof WB){let Q=k7(J);Q.push(K.nonTerminalName);let G=k7(w);G.push(K.idx);let L={idx:Z,def:K.definition.concat(D,U7(M)),ruleStack:Q,occurrenceStack:G};l.push(L)}else if(K instanceof z7){let Q={idx:Z,def:U7(M),ruleStack:J,occurrenceStack:w};l.push(Q),l.push("EXIT_ALTERNATIVE");let G={idx:Z,def:K.definition.concat(U7(M)),ruleStack:J,occurrenceStack:w};l.push(G)}else if(K instanceof GE){let Q=new $9({definition:K.definition,idx:K.idx}),G=K.definition.concat([Q],U7(M)),L={idx:Z,def:G,ruleStack:J,occurrenceStack:w};l.push(L)}else if(K instanceof HE){let Q=new g6({terminalType:K.separator}),G=new $9({definition:[Q].concat(K.definition),idx:K.idx}),L=K.definition.concat([G],U7(M)),H={idx:Z,def:L,ruleStack:J,occurrenceStack:w};l.push(H)}else if(K instanceof X8){let Q={idx:Z,def:U7(M),ruleStack:J,occurrenceStack:w};l.push(Q),l.push("EXIT_ALTERNATIVE");let G=new g6({terminalType:K.separator}),L=new $9({definition:[G].concat(K.definition),idx:K.idx}),H=K.definition.concat([L],U7(M)),q={idx:Z,def:H,ruleStack:J,occurrenceStack:w};l.push(q)}else if(K instanceof $9){let Q={idx:Z,def:U7(M),ruleStack:J,occurrenceStack:w};l.push(Q),l.push("EXIT_ALTERNATIVE");let G=new $9({definition:K.definition,idx:K.idx}),L=K.definition.concat([G],U7(M)),H={idx:Z,def:L,ruleStack:J,occurrenceStack:w};l.push(H)}else if(K instanceof x8)for(let Q=K.definition.length-1;Q>=0;Q--){let G=K.definition[Q],L={idx:Z,def:G.definition.concat(U7(M)),ruleStack:J,occurrenceStack:w};l.push(L),l.push("EXIT_ALTERNATIVE")}else if(K instanceof q8)l.push({idx:Z,def:K.definition.concat(U7(M)),ruleStack:J,occurrenceStack:w});else if(K instanceof YL)l.push(dt0(K,Z,J,w));else throw Error("non exhaustive match")}return f}function dt0(u,B,E,A){let C=k7(E);C.push(u.name);let D=k7(A);return D.push(1),{idx:B,def:u.definition,ruleStack:C,occurrenceStack:D}}function t$(u){if(u instanceof z7||u==="Option")return L9.OPTION;else if(u instanceof $9||u==="Repetition")return L9.REPETITION;else if(u instanceof GE||u==="RepetitionMandatory")return L9.REPETITION_MANDATORY;else if(u instanceof HE||u==="RepetitionMandatoryWithSeparator")return L9.REPETITION_MANDATORY_WITH_SEPARATOR;else if(u instanceof X8||u==="RepetitionWithSeparator")return L9.REPETITION_WITH_SEPARATOR;else if(u instanceof x8||u==="Alternation")return L9.ALTERNATION;else throw Error("non exhaustive match")}function WB0(u){let{occurrence:B,rule:E,prodType:A,maxLookahead:C}=u,D=t$(A);if(D===L9.ALTERNATION)return GR(B,E,C);else return HR(B,E,D,C)}function st0(u,B,E,A,C,D){let F=GR(u,B,E),U=dE0(F)?gY:OL;return D(F,A,U,C)}function ot0(u,B,E,A,C,D){let F=HR(u,B,C,E),U=dE0(F)?gY:OL;return D(F[0],U,A)}function tt0(u,B,E,A){let C=u.length,D=mC(u,(F)=>{return mC(F,(U)=>{return U.length===1})});if(B)return function(F){let U=n4(F,(z)=>z.GATE);for(let z=0;z<C;z++){let k=u[z],f=k.length,l=U[z];if(l!==void 0&&l.call(this)===!1)continue;u:for(let b=0;b<f;b++){let M=k[b],Z=M.length;for(let J=0;J<Z;J++){let w=this.LA(J+1);if(E(w,M[J])===!1)continue u}return z}}return};else if(D&&!A){let F=n4(u,(z)=>{return hC(z)}),U=QE(F,(z,k,f)=>{return v3(k,(l)=>{if(!M3(z,l.tokenTypeIdx))z[l.tokenTypeIdx]=f;v3(l.categoryMatches,(b)=>{if(!M3(z,b))z[b]=f})}),z},{});return function(){let z=this.LA(1);return U[z.tokenTypeIdx]}}else return function(){for(let F=0;F<C;F++){let U=u[F],z=U.length;u:for(let k=0;k<z;k++){let f=U[k],l=f.length;for(let b=0;b<l;b++){let M=this.LA(b+1);if(E(M,f[b])===!1)continue u}return F}}return}}function et0(u,B,E){let A=mC(u,(D)=>{return D.length===1}),C=u.length;if(A&&!E){let D=hC(u);if(D.length===1&&I6(D[0].categoryMatches)){let U=D[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===U}}else{let F=QE(D,(U,z,k)=>{return U[z.tokenTypeIdx]=!0,v3(z.categoryMatches,(f)=>{U[f]=!0}),U},[]);return function(){let U=this.LA(1);return F[U.tokenTypeIdx]===!0}}}else return function(){u:for(let D=0;D<C;D++){let F=u[D],U=F.length;for(let z=0;z<U;z++){let k=this.LA(z+1);if(B(k,F[z])===!1)continue u}return!0}return!1}}function YB0(u){let B=Array(u);for(let E=0;E<u;E++)B[E]=[];return B}function rm(u){let B=[""];for(let E=0;E<u.length;E++){let A=u[E],C=[];for(let D=0;D<B.length;D++){let F=B[D];C.push(F+"_"+A.tokenTypeIdx);for(let U=0;U<A.categoryMatches.length;U++){let z="_"+A.categoryMatches[U];C.push(F+z)}}B=C}return B}function Be0(u,B,E){for(let A=0;A<u.length;A++){if(A===E)continue;let C=u[A];for(let D=0;D<B.length;D++){let F=B[D];if(C[F]===!0)return!1}}return!0}function pE0(u,B){let E=n4(u,(F)=>qr([F],1)),A=YB0(E.length),C=n4(E,(F)=>{let U={};return v3(F,(z)=>{let k=rm(z.partialPath);v3(k,(f)=>{U[f]=!0})}),U}),D=E;for(let F=1;F<=B;F++){let U=D;D=YB0(U.length);for(let z=0;z<U.length;z++){let k=U[z];for(let f=0;f<k.length;f++){let l=k[f].partialPath,b=k[f].suffixDef,M=rm(l);if(Be0(C,M,z)||I6(b)||l.length===B){let J=A[z];if(Xr(J,l)===!1){J.push(l);for(let w=0;w<M.length;w++){let K=M[w];C[z][K]=!0}}}else{let J=qr(b,F+1,l);D[z]=D[z].concat(J),v3(J,(w)=>{let K=rm(w.partialPath);v3(K,(Q)=>{C[z][Q]=!0})})}}}}return A}function GR(u,B,E,A){let C=new ue0(u,L9.ALTERNATION,A);return B.accept(C),pE0(C.result,E)}function HR(u,B,E,A){let C=new ue0(u,E);B.accept(C);let D=C.result,U=new $W4(B,u,E).startWalking(),z=new q8({definition:D}),k=new q8({definition:U});return pE0([z,k],A)}function Xr(u,B){u:for(let E=0;E<u.length;E++){let A=u[E];if(A.length!==B.length)continue;for(let C=0;C<A.length;C++){let D=B[C],F=A[C];if((D===F||F.categoryMatchesMap[D.tokenTypeIdx]!==void 0)===!1)continue u}return!0}return!1}function Ee0(u,B){return u.length<B.length&&mC(u,(E,A)=>{let C=B[A];return E===C||C.categoryMatchesMap[E.tokenTypeIdx]})}function dE0(u){return mC(u,(B)=>mC(B,(E)=>mC(E,(A)=>I6(A.categoryMatches))))}function Ae0(u){let B=u.lookaheadStrategy.validate({rules:u.rules,tokenTypes:u.tokenTypes,grammarName:u.grammarName});return n4(B,(E)=>Object.assign({type:YB.CUSTOM_LOOKAHEAD_VALIDATION},E))}function Ce0(u,B,E,A){let C=KA(u,(z)=>De0(z,E)),D=Je0(u,B,E),F=KA(u,(z)=>le0(z,E)),U=KA(u,(z)=>Ue0(z,u,A,E));return C.concat(D,F,U)}function De0(u,B){let E=new yW4;u.accept(E);let A=E.allProductions,C=AW4(A,Fe0),D=yC(C,(U)=>{return U.length>1});return n4(B5(D),(U)=>{let z=$C(U),k=B.buildDuplicateFoundError(u,U),f=NC(z),l={message:k,type:YB.DUPLICATE_PRODUCTIONS,ruleName:u.name,dslName:f,occurrence:z.idx},b=sE0(z);if(b)l.parameter=b;return l})}function Fe0(u){return`${NC(u)}_#_${u.idx}_#_${sE0(u)}`}function sE0(u){if(u instanceof g6)return u.terminalType.name;else if(u instanceof WB)return u.nonTerminalName;else return""}function Ue0(u,B,E,A){let C=[];if(QE(B,(F,U)=>{if(U.name===u.name)return F+1;return F},0)>1){let F=A.buildDuplicateRuleNameError({topLevelRule:u,grammarName:E});C.push({message:F,type:YB.DUPLICATE_RULE_NAME,ruleName:u.name})}return C}function ze0(u,B,E){let A=[],C;if(!TB(B,u))C=`Invalid rule override, rule: ->${u}<- cannot be overridden in the grammar: ->${E}<-as it is not defined in any of the super grammars `,A.push({message:C,type:YB.INVALID_RULE_OVERRIDE,ruleName:u});return A}function oE0(u,B,E,A=[]){let C=[],D=vY(B.definition);if(I6(D))return[];else{let F=u.name;if(TB(D,u))C.push({message:E.buildLeftRecursionError({topLevelRule:u,leftRecursionPath:A}),type:YB.LEFT_RECURSION,ruleName:F});let z=n$(D,A.concat([u])),k=KA(z,(f)=>{let l=k7(A);return l.push(f),oE0(u,f,E,l)});return C.concat(k)}}function vY(u){let B=[];if(I6(u))return B;let E=$C(u);if(E instanceof WB)B.push(E.referencedRule);else if(E instanceof q8||E instanceof z7||E instanceof GE||E instanceof HE||E instanceof X8||E instanceof $9)B=B.concat(vY(E.definition));else if(E instanceof x8)B=hC(n4(E.definition,(D)=>vY(D.definition)));else if(E instanceof g6);else throw Error("non exhaustive match");let A=cY(E),C=u.length>1;if(A&&C){let D=U7(u);return B.concat(vY(D))}else return B}function ke0(u,B){let E=new tE0;u.accept(E);let A=E.alternations;return KA(A,(D)=>{let F=yY(D.definition);return KA(F,(U,z)=>{let k=nE0([U],[],OL,1);if(I6(k))return[{message:B.buildEmptyAlternationError({topLevelRule:u,alternation:D,emptyChoiceIdx:z}),type:YB.NONE_LAST_EMPTY_ALT,ruleName:u.name,occurrence:D.idx,alternative:z+1}];else return[]})})}function fe0(u,B,E){let A=new tE0;u.accept(A);let C=A.alternations;return C=p$(C,(F)=>F.ignoreAmbiguities===!0),KA(C,(F)=>{let U=F.idx,z=F.maxLookahead||B,k=GR(U,u,z,F),f=Me0(k,F,u,E),l=Ze0(k,F,u,E);return f.concat(l)})}function le0(u,B){let E=new tE0;u.accept(E);let A=E.alternations;return KA(A,(D)=>{if(D.definition.length>255)return[{message:B.buildTooManyAlternativesError({topLevelRule:u,alternation:D}),type:YB.TOO_MANY_ALTS,ruleName:u.name,occurrence:D.idx}];else return[]})}function be0(u,B,E){let A=[];return v3(u,(C)=>{let D=new cW4;C.accept(D);let F=D.allProductions;v3(F,(U)=>{let z=t$(U),k=U.maxLookahead||B,f=U.idx,b=HR(f,C,z,k)[0];if(I6(hC(b))){let M=E.buildEmptyRepetitionError({topLevelRule:C,repetition:U});A.push({message:M,type:YB.NO_NON_EMPTY_LOOKAHEAD,ruleName:C.name})}})}),A}function Me0(u,B,E,A){let C=[],D=QE(u,(U,z,k)=>{if(B.definition[k].ignoreAmbiguities===!0)return U;return v3(z,(f)=>{let l=[k];if(v3(u,(b,M)=>{if(k!==M&&Xr(b,f)&&B.definition[M].ignoreAmbiguities!==!0)l.push(M)}),l.length>1&&!Xr(C,f))C.push(f),U.push({alts:l,path:f})}),U},[]);return n4(D,(U)=>{let z=n4(U.alts,(f)=>f+1);return{message:A.buildAlternationAmbiguityError({topLevelRule:E,alternation:B,ambiguityIndices:z,prefixPath:U.path}),type:YB.AMBIGUOUS_ALTS,ruleName:E.name,occurrence:B.idx,alternatives:U.alts}})}function Ze0(u,B,E,A){let C=QE(u,(F,U,z)=>{let k=n4(U,(f)=>{return{idx:z,path:f}});return F.concat(k)},[]);return wR(KA(C,(F)=>{if(B.definition[F.idx].ignoreAmbiguities===!0)return[];let{idx:z,path:k}=F,f=LA(C,(b)=>{return B.definition[b.idx].ignoreAmbiguities!==!0&&b.idx<z&&Ee0(b.path,k)});return n4(f,(b)=>{let M=[b.idx+1,z+1],Z=B.idx===0?"":B.idx;return{message:A.buildAlternationPrefixAmbiguityError({topLevelRule:E,alternation:B,ambiguityIndices:M,prefixPath:b.path}),type:YB.AMBIGUOUS_PREFIX_ALTS,ruleName:E.name,occurrence:Z,alternatives:M}})}))}function Je0(u,B,E){let A=[],C=n4(B,(D)=>D.name);return v3(u,(D)=>{let F=D.name;if(TB(C,F)){let U=E.buildNamespaceConflictError(D);A.push({message:U,type:YB.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:F})}}),A}function we0(u){let B=NE0(u,{errMsgProvider:iW4}),E={};return v3(u.rules,(A)=>{E[A.name]=A}),pt0(E,B.errMsgProvider)}function Ke0(u){return u=NE0(u,{errMsgProvider:uw}),Ce0(u.rules,u.tokenTypes,u.errMsgProvider,u.grammarName)}function _Y(u){return TB(qe0,u.name)}function ve0(u,B,E,A,C,D,F){let U=this.getKeyForAutomaticLookahead(A,C),z=this.firstAfterRepMap[U];if(z===void 0){let b=this.getCurrRuleFullName(),M=this.getGAstProductions()[b];z=new D(M,C).startWalking(),this.firstAfterRepMap[U]=z}let{token:k,occurrence:f,isEndOfRule:l}=z;if(this.RULE_STACK.length===1&&l&&k===void 0)k=Zb,f=1;if(k===void 0||f===void 0)return;if(this.shouldInRepetitionRecoveryBeTried(k,f,F))this.tryInRepetitionRecovery(u,B,E,k)}function ym(u,B,E){return E|B|u}function Ye0(u){Zm.reset(),u.accept(Zm);let B=Zm.dslMethods;return Zm.reset(),B}function IB0(u,B){if(isNaN(u.startOffset)===!0)u.startOffset=B.startOffset,u.endOffset=B.endOffset;else if(u.endOffset<B.endOffset===!0)u.endOffset=B.endOffset}function PB0(u,B){if(isNaN(u.startOffset)===!0)u.startOffset=B.startOffset,u.startColumn=B.startColumn,u.startLine=B.startLine,u.endOffset=B.endOffset,u.endColumn=B.endColumn,u.endLine=B.endLine;else if(u.endOffset<B.endOffset===!0)u.endOffset=B.endOffset,u.endColumn=B.endColumn,u.endLine=B.endLine}function Re0(u,B,E){if(u.children[E]===void 0)u.children[E]=[B];else u.children[E].push(B)}function Te0(u,B,E){if(u.children[B]===void 0)u.children[B]=[E];else u.children[B].push(E)}function uA0(u,B){Object.defineProperty(u,uY4,{enumerable:!1,configurable:!0,writable:!1,value:B})}function Oe0(u,B){let E=wE(u),A=E.length;for(let C=0;C<A;C++){let D=E[C],F=u[D],U=F.length;for(let z=0;z<U;z++){let k=F[z];if(k.tokenTypeIdx===void 0)this[k.name](k.children,B)}}}function Ie0(u,B){let E=j(function(){},"derivedConstructor");uA0(E,u+"BaseSemantics");let A={visit:j(function(C,D){if(W1(C))C=C[0];if(Zk(C))return;return this[C.name](C.children,D)},"visit"),validateVisitor:j(function(){let C=je0(this,B);if(!I6(C)){let D=n4(C,(F)=>F.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
${D.join(`
`).replace(/\n/g,`
`)}`)}},"validateVisitor")};return E.prototype=A,E.prototype.constructor=E,E._RULE_NAMES=B,E}function Pe0(u,B,E){let A=j(function(){},"derivedConstructor");uA0(A,u+"BaseSemanticsWithDefaults");let C=Object.create(E.prototype);return v3(B,(D)=>{C[D]=Oe0}),A.prototype=C,A.prototype.constructor=A,A}function je0(u,B){return Ne0(u,B)}function Ne0(u,B){let E=LA(B,(C)=>{return Hk(u[C])===!1}),A=n4(E,(C)=>{return{msg:`Missing visitor method: <${C}> on ${u.constructor.name} CST Visitor.`,type:jB0.MISSING_METHOD,methodName:C}});return wR(A)}function tH(u,B,E,A=!1){nY(E);let C=zw(this.recordingProdStack),D=Hk(B)?B:B.DEF,F=new u({definition:[],idx:E});if(A)F.separator=B.SEP;if(M3(B,"MAX_LOOKAHEAD"))F.maxLookahead=B.MAX_LOOKAHEAD;return this.recordingProdStack.push(F),D.call(this),C.definition.push(F),this.recordingProdStack.pop(),uy}function Ve0(u,B){nY(B);let E=zw(this.recordingProdStack),A=W1(u)===!1,C=A===!1?u:u.DEF,D=new x8({definition:[],idx:B,ignoreAmbiguities:A&&u.IGNORE_AMBIGUITIES===!0});if(M3(u,"MAX_LOOKAHEAD"))D.maxLookahead=u.MAX_LOOKAHEAD;let F=eo0(C,(U)=>Hk(U.GATE));return D.hasPredicates=F,E.definition.push(D),v3(C,(U)=>{let z=new q8({definition:[]});if(D.definition.push(z),M3(U,"IGNORE_AMBIGUITIES"))z.ignoreAmbiguities=U.IGNORE_AMBIGUITIES;else if(M3(U,"GATE"))z.ignoreAmbiguities=!0;this.recordingProdStack.push(z),U.ALT.call(this),this.recordingProdStack.pop()}),uy}function NB0(u){return u===0?"":`${u}`}function nY(u){if(u<0||u>K_0){let B=Error(`Invalid DSL Method idx value: <${u}>
Idx value must be a none negative value smaller than ${K_0+1}`);throw B.KNOWN_RECORDER_ERROR=!0,B}}function he0(u,B){B.forEach((E)=>{let A=E.prototype;Object.getOwnPropertyNames(A).forEach((C)=>{if(C==="constructor")return;let D=Object.getOwnPropertyDescriptor(A,C);if(D&&(D.get||D.set))Object.defineProperty(u.prototype,C,D);else u.prototype[C]=E.prototype[C]})})}function iB0(u=void 0){return function(){return u}}function me0(u,B){var E=-1,A=u==null?0:u.length,C=Array(A);while(++E<A)C[E]=B(u[E],E,u);return C}function $e0(){this.__data__=[],this.size=0}function ye0(u,B){return u===B||u!==u&&B!==B}function ge0(u,B){var E=u.length;while(E--)if(ce0(u[E][0],B))return E;return-1}function _e0(u){var B=this.__data__,E=By(B,u);if(E<0)return!1;var A=B.length-1;if(E==A)B.pop();else MY4.call(B,E,1);return--this.size,!0}function ne0(u){var B=this.__data__,E=By(B,u);return E<0?void 0:B[E][1]}function pe0(u){return By(this.__data__,u)>-1}function de0(u,B){var E=this.__data__,A=By(E,u);if(A<0)++this.size,E.push([u,B]);else E[A][1]=B;return this}function vw(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}function se0(){this.__data__=new Ey,this.size=0}function oe0(u){var B=this.__data__,E=B.delete(u);return this.size=B.size,E}function te0(u){return this.__data__.get(u)}function ee0(u){return this.__data__.has(u)}function E0u(u){var B=SY4.call(u,pW),E=u[pW];try{u[pW]=void 0;var A=!0}catch(D){}var C=WY4.call(u);if(A)if(B)u[pW]=E;else delete u[pW];return C}function A0u(u){return TY4.call(u)}function C0u(u){if(u==null)return u===void 0?PY4:IY4;return Q_0&&Q_0 in Object(u)?YY4(u):OY4(u)}function D0u(u){var B=typeof u;return u!=null&&(B=="object"||B=="function")}function F0u(u){if(!EA0(u))return!1;var B=PL(u);return B==NY4||B==iY4||B==jY4||B==aY4}function z0u(u){return!!G_0&&G_0 in u}function k0u(u){if(u!=null){try{return rY4.call(u)}catch(B){}try{return u+""}catch(B){}}return""}function f0u(u){if(!EA0(u)||hY4(u))return!1;var B=U0u(u)?pY4:yY4;return B.test(Sw(u))}function l0u(u,B){return u==null?void 0:u[B]}function b0u(u,B){var E=sY4(u,B);return dY4(E)?E:void 0}function M0u(){this.__data__=dY?dY(null):{},this.size=0}function Z0u(u){var B=this.has(u)&&delete this.__data__[u];return this.size-=B?1:0,B}function J0u(u){var B=this.__data__;if(dY){var E=B[u];return E===BR4?void 0:E}return AR4.call(B,u)?B[u]:void 0}function w0u(u){var B=this.__data__;return dY?B[u]!==void 0:FR4.call(B,u)}function K0u(u,B){var E=this.__data__;return this.size+=this.has(u)?0:1,E[u]=dY&&B===void 0?zR4:B,this}function Ww(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}function Q0u(){this.size=0,this.__data__={hash:new H_0,map:new(pY||Ey),string:new H_0}}function G0u(u){var B=typeof u;return B=="string"||B=="number"||B=="symbol"||B=="boolean"?u!=="__proto__":u===null}function H0u(u,B){var E=u.__data__;return lR4(B)?E[typeof B=="string"?"string":"hash"]:E.map}function L0u(u){var B=Ay(this,u).delete(u);return this.size-=B?1:0,B}function q0u(u){return Ay(this,u).get(u)}function X0u(u){return Ay(this,u).has(u)}function x0u(u,B){var E=Ay(this,u),A=E.size;return E.set(u,B),this.size+=E.size==A?0:1,this}function Yw(u){var B=-1,E=u==null?0:u.length;this.clear();while(++B<E){var A=u[B];this.set(A[0],A[1])}}function v0u(u,B){var E=this.__data__;if(E instanceof Ey){var A=E.__data__;if(!pY||A.length<wR4-1)return A.push([u,B]),this.size=++E.size,this;E=this.__data__=new Cy(A)}return E.set(u,B),this.size=E.size,this}function Rw(u){var B=this.__data__=new Ey(u);this.size=B.size}function S0u(u){return this.__data__.set(u,QR4),this}function W0u(u){return this.__data__.has(u)}function sY(u){var B=-1,E=u==null?0:u.length;this.__data__=new Cy;while(++B<E)this.add(u[B])}function R0u(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(B(u[E],E,u))return!0;return!1}function T0u(u,B){return u.has(B)}function I0u(u,B,E,A,C,D){var F=E&qR4,U=u.length,z=B.length;if(U!=z&&!(F&&z>U))return!1;var k=D.get(u),f=D.get(B);if(k&&f)return k==B&&f==u;var l=-1,b=!0,M=E&XR4?new Y0u:void 0;D.set(u,B),D.set(B,u);while(++l<U){var Z=u[l],J=B[l];if(A)var w=F?A(J,Z,l,B,u,D):A(Z,J,l,u,B,D);if(w!==void 0){if(w)continue;b=!1;break}if(M){if(!LR4(B,function(K,Q){if(!O0u(M,Q)&&(Z===K||C(Z,K,E,A,D)))return M.push(Q)})){b=!1;break}}else if(!(Z===J||C(Z,J,E,A,D))){b=!1;break}}return D.delete(u),D.delete(B),b}function j0u(u){var B=-1,E=Array(u.size);return u.forEach(function(A,C){E[++B]=[C,A]}),E}function N0u(u){var B=-1,E=Array(u.size);return u.forEach(function(A){E[++B]=A}),E}function i0u(u,B,E,A,C,D,F){switch(E){case VR4:if(u.byteLength!=B.byteLength||u.byteOffset!=B.byteOffset)return!1;u=u.buffer,B=B.buffer;case aR4:if(u.byteLength!=B.byteLength||!D(new L_0(u),new L_0(B)))return!1;return!0;case YR4:case RR4:case IR4:return ce0(+u,+B);case TR4:return u.name==B.name&&u.message==B.message;case PR4:case NR4:return u==B+"";case OR4:var U=vR4;case jR4:var z=A&SR4;if(U||(U=AA0),u.size!=B.size&&!z)return!1;var k=F.get(u);if(k)return k==B;A|=WR4,F.set(u,B);var f=P0u(U(u),U(B),A,C,D,F);return F.delete(u),f;case iR4:if(e50)return e50.call(u)==e50.call(B)}return!1}function a0u(u,B){var E=-1,A=B.length,C=u.length;while(++E<A)u[C+E]=B[E];return u}function h0u(u,B,E){var A=B(u);return RB(u)?A:V0u(A,E(u))}function m0u(u,B){var E=-1,A=u==null?0:u.length,C=0,D=[];while(++E<A){var F=u[E];if(B(F,E,u))D[C++]=F}return D}function $0u(){return[]}function y0u(u,B){var E=-1,A=Array(u);while(++E<u)A[E]=B(E);return A}function c0u(u){return u!=null&&typeof u=="object"}function g0u(u){return XL(u)&&PL(u)==pR4}function n0u(){return!1}function d0u(u,B){var E=typeof u;return B=B==null?ET4:B,!!B&&(E=="number"||E!="symbol"&&AT4.test(u))&&(u>-1&&u%1==0&&u<B)}function o0u(u){return typeof u=="number"&&u>-1&&u%1==0&&u<=CT4}function t0u(u){return XL(u)&&CA0(u.length)&&!!c6[PL(u)]}function e0u(u){return function(B){return u(B)}}function Buu(u,B){var E=RB(u),A=!E&&Dy(u),C=!E&&!A&&Sr(u),D=!E&&!A&&!C&&DA0(u),F=E||A||C||D,U=F?nR4(u.length,String):[],z=U.length;for(var k in u)if((B||NT4.call(u,k))&&!(F&&(k=="length"||C&&(k=="offset"||k=="parent")||D&&(k=="buffer"||k=="byteLength"||k=="byteOffset")||s0u(k,z))))U.push(k);return U}function Euu(u){var B=u&&u.constructor,E=typeof B=="function"&&B.prototype||aT4;return u===E}function Cuu(u,B){return function(E){return u(B(E))}}function Duu(u){if(!Auu(u))return mT4(u);var B=[];for(var E in Object(u))if($T4.call(u,E)&&E!="constructor")B.push(E);return B}function Uuu(u){return u!=null&&CA0(u.length)&&!U0u(u)}function zuu(u){return Fy(u)?iT4(u):Fuu(u)}function kuu(u){return rR4(u,FA0,_R4)}function fuu(u,B,E,A,C,D){var F=E&yT4,U=R_0(u),z=U.length,k=R_0(B),f=k.length;if(z!=f&&!F)return!1;var l=z;while(l--){var b=U[l];if(!(F?b in B:gT4.call(B,b)))return!1}var M=D.get(u),Z=D.get(B);if(M&&Z)return M==B&&Z==u;var J=!0;D.set(u,B),D.set(B,u);var w=F;while(++l<z){b=U[l];var K=u[b],Q=B[b];if(A)var G=F?A(Q,K,b,B,u,D):A(K,Q,b,u,B,D);if(!(G===void 0?K===Q||C(K,Q,E,A,D):G)){J=!1;break}w||(w=b=="constructor")}if(J&&!w){var L=u.constructor,H=B.constructor;if(L!=H&&(("constructor"in u)&&("constructor"in B))&&!(typeof L=="function"&&L instanceof L&&typeof H=="function"&&H instanceof H))J=!1}return D.delete(u),D.delete(B),J}function luu(u,B,E,A,C,D){var F=RB(u),U=RB(B),z=F?i_0:mB0(u),k=U?i_0:mB0(B);z=z==N_0?Jm:z,k=k==N_0?Jm:k;var f=z==Jm,l=k==Jm,b=z==k;if(b&&Sr(u)){if(!Sr(B))return!1;F=!0,f=!1}if(b&&!f)return D||(D=new cm),F||DA0(u)?P0u(u,B,E,A,C,D):hR4(u,B,z,E,A,C,D);if(!(E&AO4)){var M=f&&a_0.call(u,"__wrapped__"),Z=l&&a_0.call(B,"__wrapped__");if(M||Z){var J=M?u.value():u,w=Z?B.value():B;return D||(D=new cm),C(J,w,E,A,D)}}if(!b)return!1;return D||(D=new cm),_T4(u,B,E,A,C,D)}function UA0(u,B,E,A,C){if(u===B)return!0;if(u==null||B==null||!XL(u)&&!XL(B))return u!==u&&B!==B;return DO4(u,B,E,A,UA0,C)}function Muu(u,B,E,A){var C=E.length,D=C,F=!A;if(u==null)return!D;u=Object(u);while(C--){var U=E[C];if(F&&U[2]?U[1]!==u[U[0]]:!(U[0]in u))return!1}while(++C<D){U=E[C];var z=U[0],k=u[z],f=U[1];if(F&&U[2]){if(k===void 0&&!(z in u))return!1}else{var l=new cm;if(A)var b=A(k,f,z,u,B,l);if(!(b===void 0?buu(f,k,FO4|UO4,A,l):b))return!1}}return!0}function Zuu(u){return u===u&&!EA0(u)}function wuu(u){var B=FA0(u),E=B.length;while(E--){var A=B[E],C=u[A];B[E]=[A,C,Juu(C)]}return B}function Kuu(u,B){return function(E){if(E==null)return!1;return E[u]===B&&(B!==void 0||(u in Object(E)))}}function Guu(u){var B=kO4(u);if(B.length==1&&B[0][2])return Quu(B[0][0],B[0][1]);return function(E){return E===u||zO4(E,u,B)}}function Huu(u){return typeof u=="symbol"||XL(u)&&PL(u)==lO4}function Luu(u,B){if(RB(u))return!1;var E=typeof u;if(E=="number"||E=="symbol"||E=="boolean"||u==null||Uy(u))return!0;return MO4.test(u)||!bO4.test(u)||B!=null&&u in Object(B)}function zy(u,B){if(typeof u!="function"||B!=null&&typeof B!="function")throw TypeError(ZO4);var E=j(function(){var A=arguments,C=B?B.apply(this,A):A[0],D=E.cache;if(D.has(C))return D.get(C);var F=u.apply(this,A);return E.cache=D.set(C,F)||D,F},"memoized");return E.cache=new(zy.Cache||Cy),E}function quu(u){var B=JO4(u,function(A){if(E.size===wO4)E.clear();return A}),E=B.cache;return B}function kA0(u){if(typeof u=="string")return u;if(RB(u))return re0(u,kA0)+"";if(Uy(u))return h_0?h_0.call(u):"";var B=u+"";return B=="0"&&1/u==-qO4?"-0":B}function Xuu(u){return u==null?"":XO4(u)}function xuu(u,B){if(RB(u))return u;return zA0(u,B)?[u]:LO4(xO4(u))}function Suu(u){if(typeof u=="string"||Uy(u))return u;var B=u+"";return B=="0"&&1/u==-vO4?"-0":B}function Wuu(u,B){B=vuu(B,u);var E=0,A=B.length;while(u!=null&&E<A)u=u[ky(B[E++])];return E&&E==A?u:void 0}function Ruu(u,B,E){var A=u==null?void 0:Yuu(u,B);return A===void 0?E:A}function Tuu(u,B){return u!=null&&B in Object(u)}function Ouu(u,B,E){B=vuu(B,u);var A=-1,C=B.length,D=!1;while(++A<C){var F=ky(B[A]);if(!(D=u!=null&&E(u,F)))break;u=u[F]}if(D||++A!=C)return D;return C=u==null?0:u.length,!!C&&CA0(C)&&s0u(F,C)&&(RB(u)||Dy(u))}function Iuu(u,B){return u!=null&&YO4(u,B,WO4)}function Puu(u,B){if(zA0(u)&&Juu(B))return Quu(ky(u),B);return function(E){var A=SO4(E,u);return A===void 0&&A===B?RO4(E,u):buu(B,A,TO4|OO4)}}function juu(u){return u}function Nuu(u){return function(B){return B==null?void 0:B[u]}}function iuu(u){return function(B){return Yuu(B,u)}}function auu(u){return zA0(u)?PO4(ky(u)):jO4(u)}function Vuu(u){if(typeof u=="function")return u;if(u==null)return fA0;if(typeof u=="object")return RB(u)?IO4(u[0],u[1]):fO4(u);return NO4(u)}function huu(u){return function(B,E,A){var C=-1,D=Object(B),F=A(B),U=F.length;while(U--){var z=F[u?U:++C];if(E(D[z],z,D)===!1)break}return B}}function muu(u,B){return u&&VO4(u,B,FA0)}function ruu(u,B){return function(E,A){if(E==null)return E;if(!Fy(E))return u(E,A);var C=E.length,D=B?C:-1,F=Object(E);while(B?D--:++D<C)if(A(F[D],D,F)===!1)break;return E}}function $uu(u,B){var E=-1,A=Fy(u)?Array(u.length):[];return ly(u,function(C,D,F){A[++E]=B(C,D,F)}),A}function yuu(u,B){var E=RB(u)?re0:$O4;return E(u,fy(B,3))}function cuu(u,B){var E=[];return ly(u,function(A,C,D){if(B(A,C,D))E.push(A)}),E}function guu(u,B){var E=RB(u)?r0u:yO4;return E(u,fy(B,3))}function fw(u,B,E){return`${u.name}_${B}_${E}`}function suu(u){let B={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};ouu(B,u);let E=u.length;for(let A=0;A<E;A++){let C=u[A],D=Lb(B,C,C);if(D===void 0)continue;z4u(B,C,D)}return B}function ouu(u,B){let E=B.length;for(let A=0;A<E;A++){let C=B[A],D=E5(u,C,void 0,{type:gO4}),F=E5(u,C,void 0,{type:LR});D.stop=F,u.ruleToStartState.set(C,D),u.ruleToStopState.set(C,F)}}function ZA0(u,B,E){if(E instanceof g6)return by(u,B,E.terminalType,E);else if(E instanceof WB)return U4u(u,B,E);else if(E instanceof x8)return E4u(u,B,E);else if(E instanceof z7)return A4u(u,B,E);else if(E instanceof $9)return tuu(u,B,E);else if(E instanceof X8)return euu(u,B,E);else if(E instanceof GE)return u4u(u,B,E);else if(E instanceof HE)return B4u(u,B,E);else return Lb(u,B,E)}function tuu(u,B,E){let A=E5(u,B,E,{type:nuu});qk(u,A);let C=Tw(u,B,A,E,Lb(u,B,E));return wA0(u,B,E,C)}function euu(u,B,E){let A=E5(u,B,E,{type:nuu});qk(u,A);let C=Tw(u,B,A,E,Lb(u,B,E)),D=by(u,B,E.separator,E);return wA0(u,B,E,C,D)}function u4u(u,B,E){let A=E5(u,B,E,{type:_uu});qk(u,A);let C=Tw(u,B,A,E,Lb(u,B,E));return JA0(u,B,E,C)}function B4u(u,B,E){let A=E5(u,B,E,{type:_uu});qk(u,A);let C=Tw(u,B,A,E,Lb(u,B,E)),D=by(u,B,E.separator,E);return JA0(u,B,E,C,D)}function E4u(u,B,E){let A=E5(u,B,E,{type:Jb});qk(u,A);let C=zk(E.definition,(F)=>ZA0(u,B,F));return Tw(u,B,A,E,...C)}function A4u(u,B,E){let A=E5(u,B,E,{type:Jb});qk(u,A);let C=Tw(u,B,A,E,Lb(u,B,E));return C4u(u,B,E,C)}function Lb(u,B,E){let A=cO4(zk(E.definition,(C)=>ZA0(u,B,C)),(C)=>C!==void 0);if(A.length===1)return A[0];else if(A.length===0)return;else return F4u(u,A)}function JA0(u,B,E,A,C){let{left:D,right:F}=A,U=E5(u,B,E,{type:dO4});qk(u,U);let z=E5(u,B,E,{type:puu});if(D.loopback=U,z.loopback=U,u.decisionMap[fw(B,C?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",E.idx)]=U,F2(F,U),C===void 0)F2(U,D),F2(U,z);else F2(U,z),F2(U,C.left),F2(C.right,D);return{left:D,right:z}}function wA0(u,B,E,A,C){let{left:D,right:F}=A,U=E5(u,B,E,{type:pO4});qk(u,U);let z=E5(u,B,E,{type:puu}),k=E5(u,B,E,{type:nO4});if(U.loopback=k,z.loopback=k,F2(U,D),F2(U,z),F2(F,k),C!==void 0)F2(k,z),F2(k,C.left),F2(C.right,D);else F2(k,U);return u.decisionMap[fw(B,C?"RepetitionWithSeparator":"Repetition",E.idx)]=U,{left:U,right:z}}function C4u(u,B,E,A){let{left:C,right:D}=A;return F2(C,D),u.decisionMap[fw(B,"Option",E.idx)]=C,A}function qk(u,B){return u.decisionStates.push(B),B.decision=u.decisionStates.length-1,B.decision}function Tw(u,B,E,A,...C){let D=E5(u,B,A,{type:_O4,start:E});E.end=D;for(let U of C)if(U!==void 0)F2(E,U.left),F2(U.right,D);else F2(E,D);let F={left:E,right:D};return u.decisionMap[fw(B,D4u(A),A.idx)]=E,F}function D4u(u){if(u instanceof x8)return"Alternation";else if(u instanceof z7)return"Option";else if(u instanceof $9)return"Repetition";else if(u instanceof X8)return"RepetitionWithSeparator";else if(u instanceof GE)return"RepetitionMandatory";else if(u instanceof HE)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}function F4u(u,B){let E=B.length;for(let D=0;D<E-1;D++){let F=B[D],U;if(F.left.transitions.length===1)U=F.left.transitions[0];let z=U instanceof MA0,k=U,f=B[D+1].left;if(F.left.type===Jb&&F.right.type===Jb&&U!==void 0&&(z&&k.followState===F.right||U.target===F.right)){if(z)k.followState=f;else U.target=f;k4u(u,F.right)}else F2(F.right,f)}let A=B[0],C=B[E-1];return{left:A.left,right:C.right}}function by(u,B,E,A){let C=E5(u,B,A,{type:Jb}),D=E5(u,B,A,{type:Jb});return My(C,new bA0(D,E)),{left:C,right:D}}function U4u(u,B,E){let A=E.referencedRule,C=u.ruleToStartState.get(A),D=E5(u,B,E,{type:Jb}),F=E5(u,B,E,{type:Jb}),U=new MA0(C,A,F);return My(D,U),{left:D,right:F}}function z4u(u,B,E){let A=u.ruleToStartState.get(B);F2(A,E.left);let C=u.ruleToStopState.get(B);return F2(E.right,C),{left:A,right:C}}function F2(u,B){let E=new duu(B);My(u,E)}function E5(u,B,E,A){let C=Object.assign({atn:u,production:E,epsilonOnlyTransitions:!1,rule:B,transitions:[],nextTokenWithinRule:[],stateNumber:u.states.length},A);return u.states.push(C),C}function My(u,B){if(u.transitions.length===0)u.epsilonOnlyTransitions=B.isEpsilon();u.transitions.push(B)}function k4u(u,B){u.states.splice(u.states.indexOf(B),1)}function KA0(u,B=!0){return`${B?`a${u.alt}`:""}s${u.state.stateNumber}:${u.stack.map((E)=>E.stateNumber.toString()).join("_")}`}function f4u(u,B,E){var A=-1,C=u.length;while(++A<C){var D=u[A],F=B(D);if(F!=null&&(U===void 0?F===F&&!Uy(F):E(F,U)))var U=F,z=D}return z}function l4u(u,B){return u<B}function b4u(u){return u&&u.length?sO4(u,fA0,oO4):void 0}function M4u(u){return RB(u)||Dy(u)||!!(m_0&&u&&u[m_0])}function QA0(u,B,E,A,C){var D=-1,F=u.length;E||(E=eO4),C||(C=[]);while(++D<F){var U=u[D];if(B>0&&E(U))if(B>1)QA0(U,B-1,E,A,C);else V0u(C,U);else if(!A)C[C.length]=U}return C}function J4u(u,B){return Z4u(zk(u,B),1)}function w4u(u,B,E,A){var C=u.length,D=E+(A?1:-1);while(A?D--:++D<C)if(B(u[D],D,u))return D;return-1}function K4u(u){return u!==u}function Q4u(u,B,E){var A=E-1,C=u.length;while(++A<C)if(u[A]===B)return A;return-1}function G4u(u,B,E){return B===B?AI4(u,B,E):BI4(u,EI4,E)}function H4u(u,B){var E=u==null?0:u.length;return!!E&&CI4(u,B,0)>-1}function L4u(u,B,E){var A=-1,C=u==null?0:u.length;while(++A<C)if(E(B,u[A]))return!0;return!1}function q4u(){}function X4u(u,B,E){var A=-1,C=DI4,D=u.length,F=!0,U=[],z=U;if(E)F=!1,C=FI4;else if(D>=lI4){var k=B?null:fI4(u);if(k)return AA0(k);F=!1,C=O0u,z=new Y0u}else z=B?[]:U;u:while(++A<D){var f=u[A],l=B?B(f):f;if(f=E||f!==0?f:0,F&&l===l){var b=z.length;while(b--)if(z[b]===l)continue u;if(B)z.push(l);U.push(f)}else if(!C(z,l,E)){if(z!==U)z.push(l);U.push(f)}}return U}function x4u(u,B){return u&&u.length?bI4(u,fy(B,2)):[]}function v4u(u){var B=u==null?0:u.length;return B?Z4u(u,1):[]}function S4u(u,B){var E=-1,A=u==null?0:u.length;while(++E<A)if(B(u[E],E,u)===!1)break;return u}function W4u(u){return typeof u=="function"?u:fA0}function Y4u(u,B){var E=RB(u)?JI4:ly;return E(u,wI4(B))}function R4u(u){if(u==null)return!0;if(Fy(u)&&(RB(u)||typeof u=="string"||typeof u.splice=="function"||Sr(u)||DA0(u)||Dy(u)))return!u.length;var B=mB0(u);if(B==KI4||B==QI4)return!u.size;if(Auu(u))return!Fuu(u).length;for(var E in u)if(HI4.call(u,E))return!1;return!0}function T4u(u,B,E,A){var C=-1,D=u==null?0:u.length;if(A&&D)E=u[++C];while(++C<D)E=B(E,u[C],C,u);return E}function O4u(u,B,E,A,C){return C(u,function(D,F,U){E=A?(A=!1,D):B(E,D,F,U)}),E}function I4u(u,B,E){var A=RB(u)?qI4:XI4,C=arguments.length<3;return A(u,fy(B,4),E,C,ly)}function P4u(u,B){let E={};return(A)=>{let C=A.toString(),D=E[C];if(D!==void 0)return D;else return D={atnStartState:u,decision:B,states:{}},E[C]=D,D}}function $B0(u,B=!0){let E=new Set;for(let A of u){let C=new Set;for(let D of A){if(D===void 0)if(B)break;else return!1;let F=[D.tokenTypeIdx].concat(D.categoryMatches);for(let U of F)if(E.has(U)){if(!C.has(U))return!1}else E.add(U),C.add(U)}}return!0}function N4u(u){let B=u.decisionStates.length,E=Array(B);for(let A=0;A<B;A++)E[A]=P4u(u.decisionStates[A],A);return E}function gm(u,B,E,A){let C=u[B](E),D=C.start;if(D===void 0){let U=_4u(C.atnStartState);D=HA0(C,GA0(U)),C.start=D}return i4u.apply(this,[C,D,E,A])}function i4u(u,B,E,A){let C=B,D=1,F=[],U=this.LA(D++);while(!0){let z=$4u(C,U);if(z===void 0)z=a4u.apply(this,[u,C,U,D,E,A]);if(z===Wr)return r4u(F,C,U);if(z.isAcceptState===!0)return z.prediction;C=z,F.push(U),U=this.LA(D++)}}function a4u(u,B,E,A,C,D){let F=y4u(B.configs,E,C);if(F.size===0)return yB0(u,B,E,Wr),Wr;let U=GA0(F),z=g4u(F,C);if(z!==void 0)U.isAcceptState=!0,U.prediction=z,U.configs.uniqueAlt=z;else if(s4u(F)){let k=tO4(F.alts);U.isAcceptState=!0,U.prediction=k,U.configs.uniqueAlt=k,V4u.apply(this,[u,A,F.alts,D])}return U=yB0(u,B,E,U),U}function V4u(u,B,E,A){let C=[];for(let k=1;k<=B;k++)C.push(this.LA(k).tokenType);let D=u.atnStartState,F=D.rule,U=D.production,z=h4u({topLevelRule:F,ambiguityIndices:E,production:U,prefixPath:C});A(z)}function h4u(u){let B=zk(u.prefixPath,(C)=>Dw(C)).join(", "),E=u.production.idx===0?"":u.production.idx,A=`Ambiguous Alternatives Detected: <${u.ambiguityIndices.join(", ")}> in <${m4u(u.production)}${E}> inside <${u.topLevelRule.name}> Rule,
<${B}> may appears as a prefix path in all these alternatives.
`;return A=A+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
For Further details.`,A}function m4u(u){if(u instanceof WB)return"SUBRULE";else if(u instanceof z7)return"OPTION";else if(u instanceof x8)return"OR";else if(u instanceof GE)return"AT_LEAST_ONE";else if(u instanceof HE)return"AT_LEAST_ONE_SEP";else if(u instanceof X8)return"MANY_SEP";else if(u instanceof $9)return"MANY";else if(u instanceof g6)return"CONSUME";else throw Error("non exhaustive match")}function r4u(u,B,E){let A=uI4(B.configs.elements,(D)=>D.state.transitions),C=MI4(A.filter((D)=>D instanceof bA0).map((D)=>D.tokenType),(D)=>D.tokenTypeIdx);return{actualToken:E,possibleTokenTypes:C,tokenPath:u}}function $4u(u,B){return u.edges[B.tokenTypeIdx]}function y4u(u,B,E){let A=new rB0,C=[];for(let F of u.elements){if(E.is(F.alt)===!1)continue;if(F.state.type===LR){C.push(F);continue}let U=F.state.transitions.length;for(let z=0;z<U;z++){let k=F.state.transitions[z],f=c4u(k,B);if(f!==void 0)A.add({state:f,alt:F.alt,stack:F.stack})}}let D;if(C.length===0&&A.size===1)D=A;if(D===void 0){D=new rB0;for(let F of A.elements)oY(F,D)}if(C.length>0&&!p4u(D))for(let F of C)D.add(F);return D}function c4u(u,B){if(u instanceof bA0&&_E0(B,u.tokenType))return u.target;return}function g4u(u,B){let E;for(let A of u.elements)if(B.is(A.alt)===!0){if(E===void 0)E=A.alt;else if(E!==A.alt)return}return E}function GA0(u){return{configs:u,edges:{},isAcceptState:!1,prediction:-1}}function yB0(u,B,E,A){return A=HA0(u,A),B.edges[E.tokenTypeIdx]=A,A}function HA0(u,B){if(B===Wr)return B;let E=B.configs.key,A=u.states[E];if(A!==void 0)return A;return B.configs.finalize(),u.states[E]=B,B}function _4u(u){let B=new rB0,E=u.transitions.length;for(let A=0;A<E;A++){let D={state:u.transitions[A].target,alt:A,stack:[]};oY(D,B)}return B}function oY(u,B){let E=u.state;if(E.type===LR){if(u.stack.length>0){let C=[...u.stack],F={state:C.pop(),alt:u.alt,stack:C};oY(F,B)}else B.add(u);return}if(!E.epsilonOnlyTransitions)B.add(u);let A=E.transitions.length;for(let C=0;C<A;C++){let D=E.transitions[C],F=n4u(u,D);if(F!==void 0)oY(F,B)}}function n4u(u,B){if(B instanceof duu)return{state:B.target,alt:u.alt,stack:u.stack};else if(B instanceof MA0){let E=[...u.stack,B.followState];return{state:B.target,alt:u.alt,stack:E}}return}function p4u(u){for(let B of u.elements)if(B.state.type===LR)return!0;return!1}function d4u(u){for(let B of u.elements)if(B.state.type!==LR)return!1;return!0}function s4u(u){if(d4u(u))return!0;let B=o4u(u.elements);return t4u(B)&&!e4u(B)}function o4u(u){let B=new Map;for(let E of u){let A=KA0(E,!1),C=B.get(A);if(C===void 0)C={},B.set(A,C);C[E.alt]=!0}return B}function t4u(u){for(let B of Array.from(u.values()))if(Object.keys(B).length>1)return!0;return!1}function e4u(u){for(let B of Array.from(u.values()))if(Object.keys(B).length===1)return!0;return!1}function _m(u){return u.$type===Rr}function Jy(u,B,E){return F3u({parser:B,tokens:E,ruleNames:new Map},u),B}function F3u(u,B){let E=T$(B,!1),A=F6(B.rules).filter(SB).filter((D)=>E.has(D));for(let D of A){let F={...u,consume:1,optional:1,subrule:1,many:1,or:1};u.parser.rule(D,wb(F,D.definition))}let C=F6(B.rules).filter(QL).filter((D)=>E.has(D));for(let D of C)u.parser.rule(D,U3u(u,D))}function U3u(u,B){let E=B.call.rule.ref;if(!E)throw Error("Could not resolve reference to infix operator rule: "+B.call.rule.$refText);if(HA(E))throw Error("Cannot use terminal rule in infix expression");let A=B.operators.precedences.flatMap((M)=>M.operators),C={$type:"Group",elements:[]},D={$container:C,$type:"Assignment",feature:"parts",operator:"+=",terminal:B.call},F={$container:C,$type:"Group",elements:[],cardinality:"*"};C.elements.push(D,F);let z={$container:F,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:A}},k={...D,$container:F};F.elements.push(z,k);let l=A.map((M)=>u.tokens[M.value]).map((M,Z)=>({ALT:j(()=>u.parser.consume(Z,M,z),"ALT")})),b;return(M)=>{b??(b=wy(u,E)),u.parser.subrule(0,b,!1,D,M),u.parser.many(0,{DEF:j(()=>{u.parser.alternatives(0,l),u.parser.subrule(1,b,!1,k,M)},"DEF")})}}function wb(u,B,E=!1){let A;if(lk(B))A=Z3u(u,B);else if(bb(B))A=z3u(u,B);else if(fk(B))A=wb(u,B.terminal);else if(Jw(B))A=vA0(u,B);else if(bk(B))A=k3u(u,B);else if(L$(B))A=l3u(u,B);else if(v$(B))A=b3u(u,B);else if(ww(B))A=M3u(u,B);else if(Y80(B)){let C=u.consume++;A=j(()=>u.parser.consume(C,Zb,B),"method")}else throw new W$(B.$cstNode,`Unexpected element type: ${B.$type}`);return SA0(u,E?void 0:tY(B),A,B.cardinality)}function z3u(u,B){let E=Uw(B);return()=>u.parser.action(E,B)}function k3u(u,B){let E=B.rule.ref;if(Zw(E)){let A=u.subrule++,C=SB(E)&&E.fragment,D=B.arguments.length>0?f3u(E,B.arguments):()=>({}),F;return(U)=>{F??(F=wy(u,E)),u.parser.subrule(A,F,C,B,D(U))}}else if(HA(E)){let A=u.consume++,C=Tr(u,E.name);return()=>u.parser.consume(A,C,B)}else if(!E)throw new W$(B.$cstNode,`Undefined rule: ${B.rule.$refText}`);else Qb(E)}function f3u(u,B){if(B.some((A)=>A.calledByName)){let A=B.map((C)=>({parameterName:C.parameter?.ref?.name,predicate:iC(C.value)}));return(C)=>{let D={};for(let{parameterName:F,predicate:U}of A)if(F)D[F]=U(C);return D}}else{let A=B.map((C)=>iC(C.value));return(C)=>{let D={};for(let F=0;F<A.length;F++)if(F<u.parameters.length){let U=u.parameters[F].name,z=A[F];D[U]=z(C)}return D}}}function iC(u){if(W80(u)){let B=iC(u.left),E=iC(u.right);return(A)=>B(A)||E(A)}else if(S80(u)){let B=iC(u.left),E=iC(u.right);return(A)=>B(A)&&E(A)}else if(O80(u)){let B=iC(u.value);return(E)=>!B(E)}else if(I80(u)){let B=u.parameter.ref.name;return(E)=>E!==void 0&&E[B]===!0}else if(x80(u)){let B=Boolean(u.true);return()=>B}Qb(u)}function l3u(u,B){if(B.elements.length===1)return wb(u,B.elements[0]);else{let E=[];for(let C of B.elements){let D={ALT:wb(u,C,!0)},F=tY(C);if(F)D.GATE=iC(F);E.push(D)}let A=u.or++;return(C)=>u.parser.alternatives(A,E.map((D)=>{let F={ALT:j(()=>D.ALT(C),"ALT")},U=D.GATE;if(U)F.GATE=()=>U(C);return F}))}}function b3u(u,B){if(B.elements.length===1)return wb(u,B.elements[0]);let E=[];for(let U of B.elements){let z={ALT:wb(u,U,!0)},k=tY(U);if(k)z.GATE=iC(k);E.push(z)}let A=u.or++,C=j((U,z)=>{let k=z.getRuleStack().join("-");return`uGroup_${U}_${k}`},"idFunc"),D=j((U)=>u.parser.alternatives(A,E.map((z,k)=>{let f={ALT:j(()=>!0,"ALT")},l=u.parser;f.ALT=()=>{if(z.ALT(U),!l.isRecording()){let M=C(A,l);if(!l.unorderedGroups.get(M))l.unorderedGroups.set(M,[]);let Z=l.unorderedGroups.get(M);if(typeof Z?.[k]>"u")Z[k]=!0}};let b=z.GATE;if(b)f.GATE=()=>b(U);else f.GATE=()=>{return!l.unorderedGroups.get(C(A,l))?.[k]};return f})),"alternatives"),F=SA0(u,tY(B),D,"*");return(U)=>{if(F(U),!u.parser.isRecording())u.parser.unorderedGroups.delete(C(A,u.parser))}}function M3u(u,B){let E=B.elements.map((A)=>wb(u,A));return(A)=>E.forEach((C)=>C(A))}function tY(u){if(ww(u))return u.guardCondition;return}function vA0(u,B,E=B.terminal){if(!E){if(!B.type.ref)throw Error("Could not resolve reference to type: "+B.type.$refText);let C=j$(B.type.ref)?.terminal;if(!C)throw Error("Could not find name assignment for type: "+Uw(B.type.ref));return vA0(u,B,C)}else if(bk(E)&&SB(E.rule.ref)){let A=E.rule.ref,C=u.subrule++,D;return(F)=>{D??(D=wy(u,A)),u.parser.subrule(C,D,!1,B,F)}}else if(bk(E)&&HA(E.rule.ref)){let A=u.consume++,C=Tr(u,E.rule.ref.name);return()=>u.parser.consume(A,C,B)}else if(lk(E)){let A=u.consume++,C=Tr(u,E.value);return()=>u.parser.consume(A,C,B)}else throw Error("Could not build cross reference parser")}function Z3u(u,B){let E=u.consume++,A=u.tokens[B.value];if(!A)throw Error("Could not find token for keyword: "+B.value);return()=>u.parser.consume(E,A,B)}function SA0(u,B,E,A){let C=B&&iC(B);if(!A)if(C){let D=u.or++;return(F)=>u.parser.alternatives(D,[{ALT:j(()=>E(F),"ALT"),GATE:j(()=>C(F),"GATE")},{ALT:iB0(),GATE:j(()=>!C(F),"GATE")}])}else return E;if(A==="*"){let D=u.many++;return(F)=>u.parser.many(D,{DEF:j(()=>E(F),"DEF"),GATE:C?()=>C(F):void 0})}else if(A==="+"){let D=u.many++;if(C){let F=u.or++;return(U)=>u.parser.alternatives(F,[{ALT:j(()=>u.parser.atLeastOne(D,{DEF:j(()=>E(U),"DEF")}),"ALT"),GATE:j(()=>C(U),"GATE")},{ALT:iB0(),GATE:j(()=>!C(U),"GATE")}])}else return(F)=>u.parser.atLeastOne(D,{DEF:j(()=>E(F),"DEF")})}else if(A==="?"){let D=u.optional++;return(F)=>u.parser.optional(D,{DEF:j(()=>E(F),"DEF"),GATE:C?()=>C(F):void 0})}else Qb(A)}function wy(u,B){let E=J3u(u,B),A=u.parser.getRule(E);if(!A)throw Error(`Rule "${E}" not found."`);return A}function J3u(u,B){if(Zw(B))return B.name;else if(u.ruleNames.has(B))return u.ruleNames.get(B);else{let E=B,A=E.$container,C=B.$type;while(!SB(A)){if(ww(A)||L$(A)||v$(A))C=A.elements.indexOf(E).toString()+":"+C;E=A,A=A.$container}return C=A.name+":"+C,u.ruleNames.set(B,C),C}}function Tr(u,B){let E=u.tokens[B];if(!E)throw Error(`Token "${B}" not found."`);return E}function WA0(u){let B=u.Grammar,E=u.parser.Lexer,A=new C3u(u);return Jy(B,A,E.definition),A.finalize(),A}function YA0(u){let B=RA0(u);return B.finalize(),B}function RA0(u){let B=u.Grammar,E=u.parser.Lexer,A=new E3u(u);return Jy(B,A,E.definition)}function Qy(){return new Promise((u)=>{if(typeof setImmediate>"u")setTimeout(u,0);else setImmediate(u)})}function Gy(){return nm=performance.now(),new O6.CancellationTokenSource}function OA0(u){w3u=u}function Ow(u){return u===eF}async function I5(u){if(u===O6.CancellationToken.None)return;let B=performance.now();if(B-nm>=w3u)nm=B,await Qy(),nm=performance.now();if(u.isCancellationRequested)throw eF}function Ir(u,B){if(u.length<=1)return u;let E=u.length/2|0,A=u.slice(0,E),C=u.slice(E);Ir(A,B),Ir(C,B);let D=0,F=0,U=0;while(D<A.length&&F<C.length)if(B(A[D],C[F])<=0)u[U++]=A[D++];else u[U++]=C[F++];while(D<A.length)u[U++]=A[D++];while(F<C.length)u[U++]=C[F++];return u}function cB0(u,B,E=0){let A=B?[E]:[];for(let C=0;C<u.length;C++){let D=u.charCodeAt(C);if(IA0(D)){if(D===13&&C+1<u.length&&u.charCodeAt(C+1)===10)C++;A.push(E+C+1)}}return A}function IA0(u){return u===13||u===10}function PA0(u){let{start:B,end:E}=u;if(B.line>E.line||B.line===E.line&&B.character>E.character)return{start:E,end:B};return u}function K3u(u){let B=PA0(u.range);if(B!==u.range)return{newText:u.newText,range:B};return u}function NA0(u){return typeof u.name==="string"}function VA0(u){return typeof u.$comment==="string"}function _B0(u){return typeof u==="object"&&!!u&&(("$ref"in u)||("$error"in u))}function Bw(u){return{code:u}}function hA0(u){if(u.range)return u.range;let B;if(typeof u.property==="string")B=O$(u.node.$cstNode,u.property,u.index);else if(typeof u.keyword==="string")B=zE0(u.node.$cstNode,u.keyword,u.index);if(B??(B=u.node.$cstNode),!B)return{start:{line:0,character:0},end:{line:0,character:0}};return B.range}function WY(u){switch(u){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+u)}}function mA0(u){switch(u){case"error":return Bw(wA.LexingError);case"warning":return Bw(wA.LexingWarning);case"info":return Bw(wA.LexingInfo);case"hint":return Bw(wA.LexingHint);default:throw Error("Invalid diagnostic severity: "+u)}}function Xy(u){return Array.isArray(u)&&(u.length===0||("name"in u[0]))}function xy(u){return u&&"modes"in u&&"defaultMode"in u}function Nr(u){return!Xy(u)&&!xy(u)}function yA0(u,B,E){let A,C;if(typeof u==="string")C=B,A=E;else C=u.range.start,A=B;if(!C)C=s1.create(0,0);let D=gA0(u),F=vy(A),U=r3u({lines:D,position:C,options:F});return c3u({index:0,tokens:U,position:C})}function cA0(u,B){let E=vy(B),A=gA0(u);if(A.length===0)return!1;let C=A[0],D=A[A.length-1],F=E.start,U=E.end;return Boolean(F?.exec(C))&&Boolean(U?.exec(D))}function gA0(u){let B="";if(typeof u==="string")B=u;else B=u.text;return B.split(gn0)}function r3u(u){let B=[],E=u.position.line,A=u.position.character;for(let C=0;C<u.lines.length;C++){let D=C===0,F=C===u.lines.length-1,U=u.lines[C],z=0;if(D&&u.options.start){let f=u.options.start?.exec(U);if(f)z=f.index+f[0].length}else{let f=u.options.line?.exec(U);if(f)z=f.index+f[0].length}if(F){let f=u.options.end?.exec(U);if(f)U=U.substring(0,f.index)}if(U=U.substring(0,y3u(U)),ir(U,z)>=U.length){if(B.length>0){let f=s1.create(E,A);B.push({type:"break",content:"",range:l1.create(f,f)})}}else{g_0.lastIndex=z;let f=g_0.exec(U);if(f){let l=f[0],b=f[1],M=s1.create(E,A+z),Z=s1.create(E,A+z+l.length);B.push({type:"tag",content:b,range:l1.create(M,Z)}),z+=l.length,z=ir(U,z)}if(z<U.length){let l=U.substring(z),b=Array.from(l.matchAll(TI4));B.push(...$3u(b,l,E,A+z))}}E++,A=0}if(B.length>0&&B[B.length-1].type==="break")return B.slice(0,-1);return B}function $3u(u,B,E,A){let C=[];if(u.length===0){let D=s1.create(E,A),F=s1.create(E,A+B.length);C.push({type:"text",content:B,range:l1.create(D,F)})}else{let D=0;for(let U of u){let z=U.index,k=B.substring(D,z);if(k.length>0)C.push({type:"text",content:B.substring(D,z),range:l1.create(s1.create(E,D+A),s1.create(E,z+A))});let f=k.length+1,l=U[1];if(C.push({type:"inline-tag",content:l,range:l1.create(s1.create(E,D+f+A),s1.create(E,D+f+l.length+A))}),f+=l.length,U.length===4){f+=U[2].length;let b=U[3];C.push({type:"text",content:b,range:l1.create(s1.create(E,D+f+A),s1.create(E,D+f+b.length+A))})}else C.push({type:"text",content:"",range:l1.create(s1.create(E,D+f+A),s1.create(E,D+f+A))});D=z+U[0].length}let F=B.substring(D);if(F.length>0)C.push({type:"text",content:F,range:l1.create(s1.create(E,D+A),s1.create(E,D+A+F.length))})}return C}function ir(u,B){let E=u.substring(B).match(OI4);if(E)return B+E.index;else return u.length}function y3u(u){let B=u.match(II4);if(B&&typeof B.index==="number")return B.index;return}function c3u(u){let B=s1.create(u.position.line,u.position.character);if(u.tokens.length===0)return new __0([],l1.create(B,B));let E=[];while(u.index<u.tokens.length){let D=g3u(u,E[E.length-1]);if(D)E.push(D)}let A=E[0]?.range.start??B,C=E[E.length-1]?.range.end??B;return new __0(E,l1.create(A,C))}function g3u(u,B){let E=u.tokens[u.index];if(E.type==="tag")return nA0(u,!1);else if(E.type==="text"||E.type==="inline-tag")return _A0(u);else{_3u(E,B),u.index++;return}}function _3u(u,B){if(B){let E=new s3u("",u.range);if("inlines"in B)B.inlines.push(E);else B.content.inlines.push(E)}}function _A0(u){let B=u.tokens[u.index],E=B,A=B,C=[];while(B&&B.type!=="break"&&B.type!=="tag")C.push(n3u(u)),A=B,B=u.tokens[u.index];return new nB0(C,l1.create(E.range.start,A.range.end))}function n3u(u){if(u.tokens[u.index].type==="inline-tag")return nA0(u,!0);else return pA0(u)}function nA0(u,B){let E=u.tokens[u.index++],A=E.content.substring(1);if(u.tokens[u.index]?.type==="text")if(B){let D=pA0(u);return new E70(A,new nB0([D],D.range),B,l1.create(E.range.start,D.range.end))}else{let D=_A0(u);return new E70(A,D,B,l1.create(E.range.start,D.range.end))}else{let D=E.range;return new E70(A,new nB0([],D),B,D)}}function pA0(u){let B=u.tokens[u.index++];return new s3u(B.content,B.range)}function vy(u){if(!u)return vy({start:"/**",end:"*/",line:"*"});let{start:B,end:E,line:A}=u;return{start:pm(B,!0),end:pm(E,!1),line:pm(A,!0)}}function pm(u,B){if(typeof u==="string"||typeof u==="object"){let E=typeof u==="string"?WL(u):u.source;if(B)return new RegExp(`^\\s*${E}`);else return new RegExp(`\\s*${E}\\s*$`)}else return u}function p3u(u,B,E){if(u==="linkplain"||u==="linkcode"||u==="link"){let A=B.indexOf(" "),C=B;if(A>0){let F=ir(B,A);C=B.substring(F),B=B.substring(0,A)}if(u==="linkcode"||u==="link"&&E.link==="code")C=`\`${C}\``;return E.renderLink?.(B,C)??d3u(B,C)}return}function d3u(u,B){try{return JE.parse(u,!0),`[${B}](${u})`}catch{return u}}function pB0(u){if(u.endsWith(`
`))return`
`;else return`
`}function K1(u){return{documentation:{CommentProvider:j((B)=>new t3u(B),"CommentProvider"),DocumentationProvider:j((B)=>new o3u(B),"DocumentationProvider")},parser:{AsyncParser:j((B)=>new e3u(B),"AsyncParser"),GrammarConfig:j((B)=>wE0(B),"GrammarConfig"),LangiumParser:j((B)=>YA0(B),"LangiumParser"),CompletionParser:j((B)=>WA0(B),"CompletionParser"),ValueConverter:j(()=>new TA0,"ValueConverter"),TokenBuilder:j(()=>new Ky,"TokenBuilder"),Lexer:j((B)=>new $A0(B),"Lexer"),ParserErrorMessageProvider:j(()=>new xA0,"ParserErrorMessageProvider"),LexerErrorMessageProvider:j(()=>new m3u,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:j(()=>new N3u,"AstNodeLocator"),AstNodeDescriptionProvider:j((B)=>new P3u(B),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:j((B)=>new j3u(B),"ReferenceDescriptionProvider")},references:{Linker:j((B)=>new L3u(B),"Linker"),NameProvider:j(()=>new q3u,"NameProvider"),ScopeProvider:j((B)=>new W3u(B),"ScopeProvider"),ScopeComputation:j((B)=>new x3u(B),"ScopeComputation"),References:j((B)=>new X3u(B),"References")},serializer:{Hydrator:j((B)=>new B1u(B),"Hydrator"),JsonSerializer:j((B)=>new Y3u(B),"JsonSerializer")},validation:{DocumentValidator:j((B)=>new I3u(B),"DocumentValidator"),ValidationRegistry:j((B)=>new T3u(B),"ValidationRegistry")},shared:j(()=>u.shared,"shared")}}function Q1(u){return{ServiceRegistry:j((B)=>new R3u(B),"ServiceRegistry"),workspace:{LangiumDocuments:j((B)=>new H3u(B),"LangiumDocuments"),LangiumDocumentFactory:j((B)=>new G3u(B),"LangiumDocumentFactory"),DocumentBuilder:j((B)=>new a3u(B),"DocumentBuilder"),IndexManager:j((B)=>new V3u(B),"IndexManager"),WorkspaceManager:j((B)=>new h3u(B),"WorkspaceManager"),FileSystemProvider:j((B)=>u.fileSystemProvider(B),"FileSystemProvider"),WorkspaceLock:j(()=>new u1u,"WorkspaceLock"),ConfigurationProvider:j((B)=>new i3u(B),"ConfigurationProvider")},profilers:{}}}function Q3(u,B,E,A,C,D,F,U,z){let k=[u,B,E,A,C,D,F,U,z].reduce(xL,{});return sA0(k)}function dA0(u){if(u&&u[E1u])for(let B of Object.values(u))dA0(B);return u}function sA0(u,B){let E=new Proxy({},{deleteProperty:j(()=>!1,"deleteProperty"),set:j(()=>{throw Error("Cannot set property on injected service container")},"set"),get:j((A,C)=>{if(C===E1u)return!0;else return sB0(A,C,u,B||E)},"get"),getOwnPropertyDescriptor:j((A,C)=>(sB0(A,C,u,B||E),Object.getOwnPropertyDescriptor(A,C)),"getOwnPropertyDescriptor"),has:j((A,C)=>(C in u),"has"),ownKeys:j(()=>[...Object.getOwnPropertyNames(u)],"ownKeys")});return E}function sB0(u,B,E,A){if(B in u){if(u[B]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+u[B]);if(u[B]===n_0)throw Error('Cycle detected. Please make "'+String(B)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return u[B]}else if(B in E){let C=E[B];u[B]=n_0;try{u[B]=typeof C==="function"?C(A):sA0(C,A)}catch(D){throw u[B]=D instanceof Error?D:void 0,D}return u[B]}else return}function xL(u,B){if(B){for(let[E,A]of Object.entries(B))if(A!==void 0&&A!==null)if(typeof A==="object"){let C=u[E];if(typeof C==="object"&&C!==null)u[E]=xL(C,A);else u[E]=xL({},A)}else u[E]=A}return u}function D1u(){let u=Q3(Q1(Y1),aI4),B=Q3(K1({shared:u}),iI4);return u.ServiceRegistry.register(B),B}function j5(u){let B=D1u(),E=B.serializer.JsonSerializer.deserialize(u);return B.shared.workspace.LangiumDocumentFactory.fromModel(E,JE.parse(`memory:/${E.name??"grammar"}.langium`)),E}function tA0(u){return U2.isInstance(u,JA.$type)}function eA0(u){return U2.isInstance(u,lL.$type)}function uC0(u){return U2.isInstance(u,Ab.$type)}function BC0(u){return U2.isInstance(u,Dk.$type)}function EC0(u){return U2.isInstance(u,bL.$type)}function AC0(u){return U2.isInstance(u,eY.$type)}function CC0(u){return u==="rmo"||u==="readmodel"||u==="ui"||u==="cmd"||u==="command"||u==="evt"||u==="event"||u==="pcr"||u==="processor"}function qR(u){return U2.isInstance(u,ez.$type)}function DC0(u){return U2.isInstance(u,Fk.$type)}function FC0(u){return U2.isInstance(u,Aw.$type)}function UC0(u){return U2.isInstance(u,Cb.$type)}function zC0(u){return U2.isInstance(u,Db.$type)}function kC0(u){return U2.isInstance(u,Fb.$type)}function fC0(u){return U2.isInstance(u,Uk.$type)}function lC0(u){return U2.isInstance(u,ML.$type)}function bC0(u){return U2.isInstance(u,Ub.$type)}function MC0(u){return U2.isInstance(u,zb.$type)}function ZC0(u){return U2.isInstance(u,kb.$type)}function JC0(u){return U2.isInstance(u,fb.$type)}function wC0(u){return U2.isInstance(u,Cw.$type)}function KC0(u){return U2.isInstance(u,lb.$type)}function QC0(u){return U2.isInstance(u,u5.$type)}var qH4,uR,XH4,M80,xH4,vH4,j=(u,B)=>uR(u,"name",{value:B,configurable:!0}),SH4=(u,B)=>function(){return u&&(B=(0,u[M80(u)[0]])(u=0)),B},r3=(u,B)=>function(){return B||(0,u[M80(u)[0]])((B={exports:{}}).exports,B),B.exports},Kb=(u,B)=>{for(var E in B)uR(u,E,{get:B[E],enumerable:!0})},dm=(u,B,E,A)=>{if(B&&typeof B==="object"||typeof B==="function"){for(let C of M80(B))if(!vH4.call(u,C)&&C!==E)uR(u,C,{get:()=>B[C],enumerable:!(A=XH4(B,C))||A.enumerable})}return u},w$=(u,B,E)=>(dm(u,B,"default"),E&&dm(E,B,"default")),Z80=(u,B,E)=>(E=u!=null?qH4(xH4(u)):{},dm(B||!u||!u.__esModule?uR(E,"default",{value:u,enumerable:!0}):E,u)),J80=(u)=>dm(uR({},"__esModule",{value:!0}),u),K$,J70,Rm,w70,BY,s1,l1,EY,K70,Tm,Q70,G70,H70,L70,Om,q70,X70,x70,AY,IJ,pF,PJ,F7,tz,CY,nH,pH,dH,Im,_W,n50,Mn0,v70,S70,DY,W70,Pm,sH,Y70,R70,T70,O70,I70,P70,j70,N70,FY,i70,a70,V70,h70,m70,r70,$70,y70,c70,g70,_70,UY,n70,p70,d70,s70,o70,t70,e70,uB0,BB0,EB0,AB0,CB0,DB0,jm,Nm,FB0,UB0,zB0,kB0,fB0,lB0,bB0,MB0,Zn0,ZB0,qg0,Qu,BR,lw,ER,vL,Q$,Jn0,wn0,WH4,YH4,Kn0,RH4,TH4,OH4,IH4,JB0,PH4,SL,Xg0,q9,w80,jH4,NH4,iH4,aH4,VH4,hH4,mH4,rH4,$H4,yH4,cH4,gH4,_H4,nH4,pH4,dH4,sH4,oH4,tH4,eH4,uL4,BL4,EL4,AL4,CL4,P5,K80,G80,tF,ZL,qB,JL,aY,H80,Hn0,DL4,G8,MY,eH,ZE,pl,ZY,em,ur,dl,Br,sl,ol,JY,tl,wY,Er,uk,Ar,hJ,Cr,dF,KY,Dr,uL,BL,EL,mJ,Fr,Ur,AL,zr,IC,QY,rJ,kr,$J,CL,fr,yJ,H8,cJ,Bk,gJ,GY,_J,nJ,lr,HY,pJ,dJ,DL,r80,f3,oF,g80,s80,W$,t80,Mr,Zr,xg0,FL4,lm,UL4,cn0,Y$,gn0,_n0,zL4,eJ,pn0,JE0,kL4,Up0,fL4,lL4,AU,bL4,QA,zp0,ML4,ZL4,nW,JL4,wL4,KL4,QL4,GL4="[object Null]",HL4="[object Undefined]",vg0,Gb,rC,LL4="[object Symbol]",N$,zR,qL4,W1,XL4=1/0,Sg0,Wg0,xL4,vL4,SL4,WL4,YL4,GA,Yg0=NaN,RL4,TL4,OL4,IL4,PL4,Rg0=1/0,jL4=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,NL4,kR,fR,iL4="[object AsyncFunction]",aL4="[object Function]",VL4="[object GeneratorFunction]",hL4="[object Proxy]",Hk,mL4,p50,Tg0,rL4,$L4,yL4,Qw,cL4,gL4,_L4,nL4,pL4,dL4,sL4,oL4,tL4,Gw,eL4,QB0,Og0,uq4,Bq4,Eq4,O5,Aq4,Cq4=800,Dq4=16,Fq4,Uq4,zq4,kq4,wr,fq4,lq4,bq4,Mq4,jp0,ip0,Zq4,Jq4,QE0,rp0,wq4=9007199254740991,Kq4,i$,GE0,lR,Qq4,Gq4,a$,bR,Ig0,Hq4,HE0,Lq4=9007199254740991,LE0,CU,V$,qq4,Xq4,MR,xq4,vq4="[object Arguments]",Pg0,Ed0,Sq4,Wq4,Yq4,h$,Rq4,Cd0,jg0,Tq4,Ng0,Oq4,Iq4,hY,Pq4="[object Arguments]",jq4="[object Array]",Nq4="[object Boolean]",iq4="[object Date]",aq4="[object Error]",Vq4="[object Function]",hq4="[object Map]",mq4="[object Number]",rq4="[object Object]",$q4="[object RegExp]",yq4="[object Set]",cq4="[object String]",gq4="[object WeakMap]",_q4="[object ArrayBuffer]",nq4="[object DataView]",pq4="[object Float32Array]",dq4="[object Float64Array]",sq4="[object Int8Array]",oq4="[object Int16Array]",tq4="[object Int32Array]",eq4="[object Uint8Array]",uX4="[object Uint8ClampedArray]",BX4="[object Uint16Array]",EX4="[object Uint32Array]",y6,AX4,ZR,Ud0,LY,CX4,d50,DX4,Mb,ig0,FX4,qE0,UX4,zX4,kd0,ld0,kX4,fX4,lX4,bX4,Md0,wE,MX4,ZX4,JX4,KE,wX4,KX4,QX4,GX4,m$,HX4,LX4,XE0,qX4,mY,XX4,xX4,vX4="__lodash_hash_undefined__",SX4,WX4,YX4,RX4,TX4,OX4,IX4="__lodash_hash_undefined__",PX4,ag0,jX4,r$,NX4,iX4,aX4,VX4,hX4,mX4,$$,rX4,rY,$X4,yX4,y$,cX4,gX4,_X4,nX4,c$,pX4="Expected a function",dX4,sX4=500,oX4,tX4,eX4,ux4,Bx4,Ex4,_$,Ax4=1/0,JR,xE0,Cx4,vE0,Vg0,Dx4,WE0,hC,Fx4,_d0,pd0,Ux4,zx4,kx4,fx4,lx4,bx4=200,Mx4,qY,Zx4,Jx4,As0,hg0,wx4,mg0,rg0,Kx4,YE0,Us0,Qx4,Gx4,$g0,Hx4,RE0,Lx4,qx4,Xx4,ks0,xx4,bs0,GB0,Js0,vx4,HB0,Sx4,LB0,Wx4,zL,yg0="[object Map]",Yx4="[object Object]",cg0="[object Promise]",gg0="[object Set]",_g0="[object WeakMap]",ng0="[object DataView]",Rx4,Tx4,Ox4,Ix4,Px4,NJ,LL,jx4,Nx4,ix4,ax4,Kr,TE0,Vx4,hx4,mx4,pg0,dg0,rx4,$x4,yx4="[object Boolean]",cx4="[object Date]",gx4="[object Map]",_x4="[object Number]",nx4="[object RegExp]",px4="[object Set]",dx4="[object String]",sx4="[object Symbol]",ox4="[object ArrayBuffer]",tx4="[object DataView]",ex4="[object Float32Array]",uv4="[object Float64Array]",Bv4="[object Int8Array]",Ev4="[object Int16Array]",Av4="[object Int32Array]",Cv4="[object Uint8Array]",Dv4="[object Uint8ClampedArray]",Fv4="[object Uint16Array]",Uv4="[object Uint32Array]",zv4,kv4,fv4="[object Map]",lv4,sg0,bv4,Mv4,Zv4="[object Set]",Jv4,og0,wv4,Kv4,Qv4=1,Gv4=2,Hv4=4,Ss0="[object Arguments]",Lv4="[object Array]",qv4="[object Boolean]",Xv4="[object Date]",xv4="[object Error]",Ws0="[object Function]",vv4="[object GeneratorFunction]",Sv4="[object Map]",Wv4="[object Number]",Ys0="[object Object]",Yv4="[object RegExp]",Rv4="[object Set]",Tv4="[object String]",Ov4="[object Symbol]",Iv4="[object WeakMap]",Pv4="[object ArrayBuffer]",jv4="[object DataView]",Nv4="[object Float32Array]",iv4="[object Float64Array]",av4="[object Int8Array]",Vv4="[object Int16Array]",hv4="[object Int32Array]",mv4="[object Uint8Array]",rv4="[object Uint8ClampedArray]",$v4="[object Uint16Array]",yv4="[object Uint32Array]",T6,cv4,gv4=4,k7,wR,_v4="__lodash_hash_undefined__",nv4,pv4,OE0,js0,IE0,dv4=1,sv4=2,as0,ov4,PE0,tv4=1,ev4=2,uS4="[object Boolean]",BS4="[object Date]",ES4="[object Error]",AS4="[object Map]",CS4="[object Number]",DS4="[object RegExp]",FS4="[object Set]",US4="[object String]",zS4="[object Symbol]",kS4="[object ArrayBuffer]",fS4="[object DataView]",tg0,s50,lS4,bS4=1,MS4,ZS4,JS4,wS4=1,eg0="[object Arguments]",u_0="[object Array]",bm="[object Object]",KS4,B_0,QS4,ys0,GS4=1,HS4=2,LS4,_s0,qS4,ds0,XS4,xS4,es0,vS4,SS4=1,WS4=2,YS4,RS4,TS4,OS4,DU,IS4,PS4,jS4,NS4,iS4,aS4,VS4,xw,hS4,mS4,bo0,rS4,$S4,NE0,E_0,Jo0,yS4=200,cS4,gS4,n$,zw,U7,yY,_S4,v3,nS4,pS4,mC,So0,LA,dS4,sS4,oS4,tS4,qL,$C,eS4,n4,KA,uW4,BW4,EW4,AW4,CW4,DW4,FW4,M3,UW4="[object String]",L8,zW4,B5,kW4,TB,fW4,A_0,lW4="[object Map]",bW4="[object Set]",MW4,ZW4,I6,JW4="[object RegExp]",wW4,C_0,KW4,Mk,Zk,QW4="Expected a function",GW4,HW4,LW4,yC,qW4,QE,p$,XW4,eo0,xW4=1/0,vW4,SW4,WW4=200,YW4,iE0,FU,WB,YL,q8,z7,GE,HE,$9,X8,x8,g6,RL,d$,ft0="_~IN~_",RW4,Vm,TW4,Zt0="Complement Sets are not supported for first char optimization",Gr=`Unable to use "first char" lexer optimizations:
`,OW4,kw="PATTERN",fY="defaultMode",Mm="modes",IW4,PW4,jW4,lY=256,mm,D_0=1,ht0,SB0,y9,bY,vB,NW4="parent",F_0="categories",U_0="label",z_0="group",k_0="push_mode",f_0="pop_mode",l_0="longer_alt",b_0="line_breaks",M_0="start_chars_hint",Zb,FL,iW4,uw,aW4,VW4,hW4,o$,mW4,Z_0,rW4,J_0,L9,$W4,ue0,yW4,tE0,cW4,Qe0="MismatchedTokenException",Ge0="NoViableAltException",He0="EarlyExitException",Le0="NotAllInputParsedException",qe0,e$,Xe0,gW4,_W4,nW4,o50,xe0="InRuleRecoveryException",pW4,dW4,sW4=4,Hb=8,oW4=8,Se0,We0,RB0,TB0,OB0,$m,W81,eE0,tW4,eW4,Zm,uY4="name",jB0,BY4,EY4,AY4,CY4,DY4,FY4,uy,w_0=!0,K_0,ie0,ae0,UY4,zY4,kY4,xr,wk,vr,YB,BA0,fY4,re0,lY4,ce0,By,bY4,MY4,ZY4,JY4,wY4,KY4,Ey,QY4,GY4,HY4,LY4,qY4,u0u,XY4,xY4,Lk,vY4,EU,B0u,SY4,WY4,pW,YY4,RY4,TY4,OY4,IY4="[object Null]",PY4="[object Undefined]",Q_0,PL,EA0,jY4="[object AsyncFunction]",NY4="[object Function]",iY4="[object GeneratorFunction]",aY4="[object Proxy]",U0u,VY4,t50,G_0,hY4,mY4,rY4,Sw,$Y4,yY4,cY4,gY4,_Y4,nY4,pY4,dY4,sY4,jL,oY4,pY,tY4,dY,eY4,uR4,BR4="__lodash_hash_undefined__",ER4,AR4,CR4,DR4,FR4,UR4,zR4="__lodash_hash_undefined__",kR4,H_0,fR4,lR4,Ay,bR4,MR4,ZR4,JR4,Cy,wR4=200,KR4,cm,QR4="__lodash_hash_undefined__",GR4,HR4,Y0u,LR4,O0u,qR4=1,XR4=2,P0u,xR4,L_0,vR4,AA0,SR4=1,WR4=2,YR4="[object Boolean]",RR4="[object Date]",TR4="[object Error]",OR4="[object Map]",IR4="[object Number]",PR4="[object RegExp]",jR4="[object Set]",NR4="[object String]",iR4="[object Symbol]",aR4="[object ArrayBuffer]",VR4="[object DataView]",q_0,e50,hR4,V0u,mR4,RB,rR4,r0u,$R4,yR4,cR4,X_0,gR4,_R4,nR4,XL,pR4="[object Arguments]",x_0,_0u,dR4,sR4,oR4,Dy,tR4,p0u,v_0,eR4,S_0,uT4,BT4,Sr,ET4=9007199254740991,AT4,s0u,CT4=9007199254740991,CA0,DT4="[object Arguments]",FT4="[object Array]",UT4="[object Boolean]",zT4="[object Date]",kT4="[object Error]",fT4="[object Function]",lT4="[object Map]",bT4="[object Number]",MT4="[object Object]",ZT4="[object RegExp]",JT4="[object Set]",wT4="[object String]",KT4="[object WeakMap]",QT4="[object ArrayBuffer]",GT4="[object DataView]",HT4="[object Float32Array]",LT4="[object Float64Array]",qT4="[object Int8Array]",XT4="[object Int16Array]",xT4="[object Int32Array]",vT4="[object Uint8Array]",ST4="[object Uint8ClampedArray]",WT4="[object Uint16Array]",YT4="[object Uint32Array]",c6,RT4,TT4,uuu,SY,OT4,u70,IT4,W_0,Y_0,PT4,DA0,jT4,NT4,iT4,aT4,Auu,VT4,hT4,mT4,rT4,$T4,Fuu,Fy,FA0,R_0,yT4=1,cT4,gT4,_T4,nT4,aB0,pT4,VB0,dT4,fL,sT4,hB0,T_0="[object Map]",oT4="[object Object]",O_0="[object Promise]",I_0="[object Set]",P_0="[object WeakMap]",j_0="[object DataView]",tT4,eT4,uO4,BO4,EO4,iJ,mB0,AO4=1,N_0="[object Arguments]",i_0="[object Array]",Jm="[object Object]",CO4,a_0,DO4,buu,FO4=1,UO4=2,zO4,Juu,kO4,Quu,fO4,lO4="[object Symbol]",Uy,bO4,MO4,zA0,ZO4="Expected a function",JO4,wO4=500,KO4,QO4,GO4,HO4,LO4,qO4=1/0,V_0,h_0,XO4,xO4,vuu,vO4=1/0,ky,Yuu,SO4,WO4,YO4,RO4,TO4=1,OO4=2,IO4,fA0,PO4,jO4,NO4,fy,iO4,aO4,VO4,hO4,mO4,rO4,ly,$O4,zk,yO4,cO4,Jb=1,gO4=2,_uu=4,nuu=5,LR=7,_O4=8,nO4=9,pO4=10,dO4=11,puu=12,lA0,bA0,duu,MA0,Wr,rB0,sO4,oO4,tO4,m_0,eO4,Z4u,uI4,BI4,EI4,AI4,CI4,DI4,FI4,UI4,zI4=1/0,kI4,fI4,lI4=200,bI4,MI4,ZI4,JI4,wI4,B70,KI4="[object Map]",QI4="[object Set]",GI4,HI4,LI4,qI4,XI4,r_0,j4u,$_0,xI4,u3u,LA0,Yr,Zy,vI4,qA0,Rr,y_0="",B3u,XA0,E3u,A3u,xA0,C3u,SI4,D3u,WI4,Ky,TA0,sF,O6,nm=0,w3u=10,eF,Kk,c_0,Or,Q3u,JE,dW,xB,jA0,E1,G3u,H3u,aJ,L3u,q3u,X3u,Qk,Pr,x3u,gB0,YI4,v3u,RI4,Hy,iA0,Ly,S3u,aA0,W3u,Y3u,R3u,jr,T3u,O3u,I3u,wA,P3u,j3u,N3u,qy,i3u,wm,Fw,a3u,V3u,h3u,m3u,rA0,$A0,g_0,TI4,OI4,II4,__0,E70,nB0,s3u,o3u,t3u,e3u,PI4,jI4,u1u,B1u,dB0,E1u,n_0,oB0,Ew,A1u,NI4,oA0,C1u,Y1,iI4,aI4,VI4,F1u,tB0,eB0,u80,B80,E80,A80,C80,D80,F80,U80,z80,k80,f80,l80,b80,Y81,ar,Vr,YY,hr,mr,rr,el,RY,$r,yr,Km,A70,Qm,sW,C70,JA,Gm,lL,p_0,Hm,D70,Ab,Lm,TJ,qm,Dk,Xm,d_0,gH,bL,eY,cr,gr,_r,nr,pr,dr,sr,sJ,Ek,or,TY,tr,er,OY,u$,B$,nF,ub,Ak,oW,s_0,F70,xm,ez,nl,U70,PC,o_0,vm,z70,Fk,tW,Aw,eW,k70,uY,Sm,OJ,Cb,Wm,f70,Db,Fb,E$,A$,C$,D$,F$,IY,oJ,PY,U$,jY,Uk,ML,l70,Ym,Ck,Ub,zb,z$,kb,jC,k$,f$,l$,fb,NY,b$,M$,Z$,J$,b70,_H,M70,Bb,Cw,lb,Z70,Eb,tJ,u5,U1u,U2,t_0,hI4,e_0,mI4,un0,rI4,Bn0,$I4,En0,yI4,An0,cI4,Cn0,gI4,Dn0,_I4,Fn0,nI4,Un0,pI4,zn0,dI4,kn0,sI4,fn0,oI4,ln0,tI4,bn0,eI4,uP4,BP4,EP4,AP4,CP4,DP4,FP4,UP4,zP4,kP4,fP4,lP4,bP4,MP4,ZP4,m1,Sy,Wy,Yy,Ry,Ty,Oy,Iy,Py,jy,Ny,iy,ay,Vy,hy,my,JP4,wP4,KP4,QP4,z2,v8,o1,z1u;var r1=g(()=>{qH4=Object.create,uR=Object.defineProperty,XH4=Object.getOwnPropertyDescriptor,M80=Object.getOwnPropertyNames,xH4=Object.getPrototypeOf,vH4=Object.prototype.hasOwnProperty,K$={};Kb(K$,{AnnotatedTextEdit:()=>tz,ChangeAnnotation:()=>PJ,ChangeAnnotationIdentifier:()=>F7,CodeAction:()=>p70,CodeActionContext:()=>n70,CodeActionKind:()=>_70,CodeActionTriggerKind:()=>UY,CodeDescription:()=>x70,CodeLens:()=>d70,Color:()=>Tm,ColorInformation:()=>Q70,ColorPresentation:()=>G70,Command:()=>IJ,CompletionItem:()=>j70,CompletionItemKind:()=>Y70,CompletionItemLabelDetails:()=>P70,CompletionItemTag:()=>T70,CompletionList:()=>N70,CreateFile:()=>nH,DeleteFile:()=>dH,Diagnostic:()=>AY,DiagnosticRelatedInformation:()=>Om,DiagnosticSeverity:()=>q70,DiagnosticTag:()=>X70,DocumentHighlight:()=>m70,DocumentHighlightKind:()=>h70,DocumentLink:()=>o70,DocumentSymbol:()=>g70,DocumentUri:()=>J70,EOL:()=>Zn0,FoldingRange:()=>L70,FoldingRangeKind:()=>H70,FormattingOptions:()=>s70,Hover:()=>i70,InlayHint:()=>FB0,InlayHintKind:()=>jm,InlayHintLabelPart:()=>Nm,InlineCompletionContext:()=>bB0,InlineCompletionItem:()=>zB0,InlineCompletionList:()=>kB0,InlineCompletionTriggerKind:()=>fB0,InlineValueContext:()=>DB0,InlineValueEvaluatableExpression:()=>CB0,InlineValueText:()=>EB0,InlineValueVariableLookup:()=>AB0,InsertReplaceEdit:()=>O70,InsertTextFormat:()=>R70,InsertTextMode:()=>I70,Location:()=>EY,LocationLink:()=>K70,MarkedString:()=>FY,MarkupContent:()=>sH,MarkupKind:()=>Pm,OptionalVersionedTextDocumentIdentifier:()=>DY,ParameterInformation:()=>a70,Position:()=>s1,Range:()=>l1,RenameFile:()=>pH,SelectedCompletionInfo:()=>lB0,SelectionRange:()=>t70,SemanticTokenModifiers:()=>uB0,SemanticTokenTypes:()=>e70,SemanticTokens:()=>BB0,SignatureInformation:()=>V70,StringValue:()=>UB0,SymbolInformation:()=>y70,SymbolKind:()=>r70,SymbolTag:()=>$70,TextDocument:()=>ZB0,TextDocumentEdit:()=>CY,TextDocumentIdentifier:()=>v70,TextDocumentItem:()=>W70,TextEdit:()=>pF,URI:()=>Rm,VersionedTextDocumentIdentifier:()=>S70,WorkspaceChange:()=>Mn0,WorkspaceEdit:()=>Im,WorkspaceFolder:()=>MB0,WorkspaceSymbol:()=>c70,integer:()=>w70,uinteger:()=>BY});BR=SH4({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){(function(u){function B(E){return typeof E==="string"}j(B,"is"),u.is=B})(J70||(J70={})),function(u){function B(E){return typeof E==="string"}j(B,"is"),u.is=B}(Rm||(Rm={})),function(u){u.MIN_VALUE=-2147483648,u.MAX_VALUE=2147483647;function B(E){return typeof E==="number"&&u.MIN_VALUE<=E&&E<=u.MAX_VALUE}j(B,"is"),u.is=B}(w70||(w70={})),function(u){u.MIN_VALUE=0,u.MAX_VALUE=2147483647;function B(E){return typeof E==="number"&&u.MIN_VALUE<=E&&E<=u.MAX_VALUE}j(B,"is"),u.is=B}(BY||(BY={})),function(u){function B(A,C){if(A===Number.MAX_VALUE)A=BY.MAX_VALUE;if(C===Number.MAX_VALUE)C=BY.MAX_VALUE;return{line:A,character:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&Qu.uinteger(C.line)&&Qu.uinteger(C.character)}j(E,"is"),u.is=E}(s1||(s1={})),function(u){function B(A,C,D,F){if(Qu.uinteger(A)&&Qu.uinteger(C)&&Qu.uinteger(D)&&Qu.uinteger(F))return{start:s1.create(A,C),end:s1.create(D,F)};else if(s1.is(A)&&s1.is(C))return{start:A,end:C};else throw Error(`Range#create called with invalid arguments[${A}, ${C}, ${D}, ${F}]`)}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&s1.is(C.start)&&s1.is(C.end)}j(E,"is"),u.is=E}(l1||(l1={})),function(u){function B(A,C){return{uri:A,range:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&l1.is(C.range)&&(Qu.string(C.uri)||Qu.undefined(C.uri))}j(E,"is"),u.is=E}(EY||(EY={})),function(u){function B(A,C,D,F){return{targetUri:A,targetRange:C,targetSelectionRange:D,originSelectionRange:F}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&l1.is(C.targetRange)&&Qu.string(C.targetUri)&&l1.is(C.targetSelectionRange)&&(l1.is(C.originSelectionRange)||Qu.undefined(C.originSelectionRange))}j(E,"is"),u.is=E}(K70||(K70={})),function(u){function B(A,C,D,F){return{red:A,green:C,blue:D,alpha:F}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&Qu.numberRange(C.red,0,1)&&Qu.numberRange(C.green,0,1)&&Qu.numberRange(C.blue,0,1)&&Qu.numberRange(C.alpha,0,1)}j(E,"is"),u.is=E}(Tm||(Tm={})),function(u){function B(A,C){return{range:A,color:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&l1.is(C.range)&&Tm.is(C.color)}j(E,"is"),u.is=E}(Q70||(Q70={})),function(u){function B(A,C,D){return{label:A,textEdit:C,additionalTextEdits:D}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&Qu.string(C.label)&&(Qu.undefined(C.textEdit)||pF.is(C))&&(Qu.undefined(C.additionalTextEdits)||Qu.typedArray(C.additionalTextEdits,pF.is))}j(E,"is"),u.is=E}(G70||(G70={})),function(u){u.Comment="comment",u.Imports="imports",u.Region="region"}(H70||(H70={})),function(u){function B(A,C,D,F,U,z){let k={startLine:A,endLine:C};if(Qu.defined(D))k.startCharacter=D;if(Qu.defined(F))k.endCharacter=F;if(Qu.defined(U))k.kind=U;if(Qu.defined(z))k.collapsedText=z;return k}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&Qu.uinteger(C.startLine)&&Qu.uinteger(C.startLine)&&(Qu.undefined(C.startCharacter)||Qu.uinteger(C.startCharacter))&&(Qu.undefined(C.endCharacter)||Qu.uinteger(C.endCharacter))&&(Qu.undefined(C.kind)||Qu.string(C.kind))}j(E,"is"),u.is=E}(L70||(L70={})),function(u){function B(A,C){return{location:A,message:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&EY.is(C.location)&&Qu.string(C.message)}j(E,"is"),u.is=E}(Om||(Om={})),function(u){u.Error=1,u.Warning=2,u.Information=3,u.Hint=4}(q70||(q70={})),function(u){u.Unnecessary=1,u.Deprecated=2}(X70||(X70={})),function(u){function B(E){let A=E;return Qu.objectLiteral(A)&&Qu.string(A.href)}j(B,"is"),u.is=B}(x70||(x70={})),function(u){function B(A,C,D,F,U,z){let k={range:A,message:C};if(Qu.defined(D))k.severity=D;if(Qu.defined(F))k.code=F;if(Qu.defined(U))k.source=U;if(Qu.defined(z))k.relatedInformation=z;return k}j(B,"create"),u.create=B;function E(A){var C;let D=A;return Qu.defined(D)&&l1.is(D.range)&&Qu.string(D.message)&&(Qu.number(D.severity)||Qu.undefined(D.severity))&&(Qu.integer(D.code)||Qu.string(D.code)||Qu.undefined(D.code))&&(Qu.undefined(D.codeDescription)||Qu.string((C=D.codeDescription)===null||C===void 0?void 0:C.href))&&(Qu.string(D.source)||Qu.undefined(D.source))&&(Qu.undefined(D.relatedInformation)||Qu.typedArray(D.relatedInformation,Om.is))}j(E,"is"),u.is=E}(AY||(AY={})),function(u){function B(A,C,...D){let F={title:A,command:C};if(Qu.defined(D)&&D.length>0)F.arguments=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.string(C.title)&&Qu.string(C.command)}j(E,"is"),u.is=E}(IJ||(IJ={})),function(u){function B(D,F){return{range:D,newText:F}}j(B,"replace"),u.replace=B;function E(D,F){return{range:{start:D,end:D},newText:F}}j(E,"insert"),u.insert=E;function A(D){return{range:D,newText:""}}j(A,"del"),u.del=A;function C(D){let F=D;return Qu.objectLiteral(F)&&Qu.string(F.newText)&&l1.is(F.range)}j(C,"is"),u.is=C}(pF||(pF={})),function(u){function B(A,C,D){let F={label:A};if(C!==void 0)F.needsConfirmation=C;if(D!==void 0)F.description=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&Qu.string(C.label)&&(Qu.boolean(C.needsConfirmation)||C.needsConfirmation===void 0)&&(Qu.string(C.description)||C.description===void 0)}j(E,"is"),u.is=E}(PJ||(PJ={})),function(u){function B(E){let A=E;return Qu.string(A)}j(B,"is"),u.is=B}(F7||(F7={})),function(u){function B(D,F,U){return{range:D,newText:F,annotationId:U}}j(B,"replace"),u.replace=B;function E(D,F,U){return{range:{start:D,end:D},newText:F,annotationId:U}}j(E,"insert"),u.insert=E;function A(D,F){return{range:D,newText:"",annotationId:F}}j(A,"del"),u.del=A;function C(D){let F=D;return pF.is(F)&&(PJ.is(F.annotationId)||F7.is(F.annotationId))}j(C,"is"),u.is=C}(tz||(tz={})),function(u){function B(A,C){return{textDocument:A,edits:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&DY.is(C.textDocument)&&Array.isArray(C.edits)}j(E,"is"),u.is=E}(CY||(CY={})),function(u){function B(A,C,D){let F={kind:"create",uri:A};if(C!==void 0&&(C.overwrite!==void 0||C.ignoreIfExists!==void 0))F.options=C;if(D!==void 0)F.annotationId=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return C&&C.kind==="create"&&Qu.string(C.uri)&&(C.options===void 0||(C.options.overwrite===void 0||Qu.boolean(C.options.overwrite))&&(C.options.ignoreIfExists===void 0||Qu.boolean(C.options.ignoreIfExists)))&&(C.annotationId===void 0||F7.is(C.annotationId))}j(E,"is"),u.is=E}(nH||(nH={})),function(u){function B(A,C,D,F){let U={kind:"rename",oldUri:A,newUri:C};if(D!==void 0&&(D.overwrite!==void 0||D.ignoreIfExists!==void 0))U.options=D;if(F!==void 0)U.annotationId=F;return U}j(B,"create"),u.create=B;function E(A){let C=A;return C&&C.kind==="rename"&&Qu.string(C.oldUri)&&Qu.string(C.newUri)&&(C.options===void 0||(C.options.overwrite===void 0||Qu.boolean(C.options.overwrite))&&(C.options.ignoreIfExists===void 0||Qu.boolean(C.options.ignoreIfExists)))&&(C.annotationId===void 0||F7.is(C.annotationId))}j(E,"is"),u.is=E}(pH||(pH={})),function(u){function B(A,C,D){let F={kind:"delete",uri:A};if(C!==void 0&&(C.recursive!==void 0||C.ignoreIfNotExists!==void 0))F.options=C;if(D!==void 0)F.annotationId=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return C&&C.kind==="delete"&&Qu.string(C.uri)&&(C.options===void 0||(C.options.recursive===void 0||Qu.boolean(C.options.recursive))&&(C.options.ignoreIfNotExists===void 0||Qu.boolean(C.options.ignoreIfNotExists)))&&(C.annotationId===void 0||F7.is(C.annotationId))}j(E,"is"),u.is=E}(dH||(dH={})),function(u){function B(E){let A=E;return A&&(A.changes!==void 0||A.documentChanges!==void 0)&&(A.documentChanges===void 0||A.documentChanges.every((C)=>{if(Qu.string(C.kind))return nH.is(C)||pH.is(C)||dH.is(C);else return CY.is(C)}))}j(B,"is"),u.is=B}(Im||(Im={})),_W=class{static{j(this,"TextEditChangeImpl")}constructor(u,B){this.edits=u,this.changeAnnotations=B}insert(u,B,E){let A,C;if(E===void 0)A=pF.insert(u,B);else if(F7.is(E))C=E,A=tz.insert(u,B,E);else this.assertChangeAnnotations(this.changeAnnotations),C=this.changeAnnotations.manage(E),A=tz.insert(u,B,C);if(this.edits.push(A),C!==void 0)return C}replace(u,B,E){let A,C;if(E===void 0)A=pF.replace(u,B);else if(F7.is(E))C=E,A=tz.replace(u,B,E);else this.assertChangeAnnotations(this.changeAnnotations),C=this.changeAnnotations.manage(E),A=tz.replace(u,B,C);if(this.edits.push(A),C!==void 0)return C}delete(u,B){let E,A;if(B===void 0)E=pF.del(u);else if(F7.is(B))A=B,E=tz.del(u,B);else this.assertChangeAnnotations(this.changeAnnotations),A=this.changeAnnotations.manage(B),E=tz.del(u,A);if(this.edits.push(E),A!==void 0)return A}add(u){this.edits.push(u)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(u){if(u===void 0)throw Error("Text edit change is not configured to manage change annotations.")}},n50=class{static{j(this,"ChangeAnnotations")}constructor(u){this._annotations=u===void 0?Object.create(null):u,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(u,B){let E;if(F7.is(u))E=u;else E=this.nextId(),B=u;if(this._annotations[E]!==void 0)throw Error(`Id ${E} is already in use.`);if(B===void 0)throw Error(`No annotation provided for id ${E}`);return this._annotations[E]=B,this._size++,E}nextId(){return this._counter++,this._counter.toString()}},Mn0=class{static{j(this,"WorkspaceChange")}constructor(u){if(this._textEditChanges=Object.create(null),u!==void 0){if(this._workspaceEdit=u,u.documentChanges)this._changeAnnotations=new n50(u.changeAnnotations),u.changeAnnotations=this._changeAnnotations.all(),u.documentChanges.forEach((B)=>{if(CY.is(B)){let E=new _W(B.edits,this._changeAnnotations);this._textEditChanges[B.textDocument.uri]=E}});else if(u.changes)Object.keys(u.changes).forEach((B)=>{let E=new _W(u.changes[B]);this._textEditChanges[B]=E})}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(u){if(DY.is(u)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let B={uri:u.uri,version:u.version},E=this._textEditChanges[B.uri];if(!E){let A=[],C={textDocument:B,edits:A};this._workspaceEdit.documentChanges.push(C),E=new _W(A,this._changeAnnotations),this._textEditChanges[B.uri]=E}return E}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw Error("Workspace edit is not configured for normal text edit changes.");let B=this._textEditChanges[u];if(!B){let E=[];this._workspaceEdit.changes[u]=E,B=new _W(E),this._textEditChanges[u]=B}return B}}initDocumentChanges(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0)this._changeAnnotations=new n50,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(u,B,E){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let A;if(PJ.is(B)||F7.is(B))A=B;else E=B;let C,D;if(A===void 0)C=nH.create(u,E);else D=F7.is(A)?A:this._changeAnnotations.manage(A),C=nH.create(u,E,D);if(this._workspaceEdit.documentChanges.push(C),D!==void 0)return D}renameFile(u,B,E,A){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let C;if(PJ.is(E)||F7.is(E))C=E;else A=E;let D,F;if(C===void 0)D=pH.create(u,B,A);else F=F7.is(C)?C:this._changeAnnotations.manage(C),D=pH.create(u,B,A,F);if(this._workspaceEdit.documentChanges.push(D),F!==void 0)return F}deleteFile(u,B,E){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let A;if(PJ.is(B)||F7.is(B))A=B;else E=B;let C,D;if(A===void 0)C=dH.create(u,E);else D=F7.is(A)?A:this._changeAnnotations.manage(A),C=dH.create(u,E,D);if(this._workspaceEdit.documentChanges.push(C),D!==void 0)return D}},function(u){function B(A){return{uri:A}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.string(C.uri)}j(E,"is"),u.is=E}(v70||(v70={})),function(u){function B(A,C){return{uri:A,version:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.string(C.uri)&&Qu.integer(C.version)}j(E,"is"),u.is=E}(S70||(S70={})),function(u){function B(A,C){return{uri:A,version:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.string(C.uri)&&(C.version===null||Qu.integer(C.version))}j(E,"is"),u.is=E}(DY||(DY={})),function(u){function B(A,C,D,F){return{uri:A,languageId:C,version:D,text:F}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.string(C.uri)&&Qu.string(C.languageId)&&Qu.integer(C.version)&&Qu.string(C.text)}j(E,"is"),u.is=E}(W70||(W70={})),function(u){u.PlainText="plaintext",u.Markdown="markdown";function B(E){let A=E;return A===u.PlainText||A===u.Markdown}j(B,"is"),u.is=B}(Pm||(Pm={})),function(u){function B(E){let A=E;return Qu.objectLiteral(E)&&Pm.is(A.kind)&&Qu.string(A.value)}j(B,"is"),u.is=B}(sH||(sH={})),function(u){u.Text=1,u.Method=2,u.Function=3,u.Constructor=4,u.Field=5,u.Variable=6,u.Class=7,u.Interface=8,u.Module=9,u.Property=10,u.Unit=11,u.Value=12,u.Enum=13,u.Keyword=14,u.Snippet=15,u.Color=16,u.File=17,u.Reference=18,u.Folder=19,u.EnumMember=20,u.Constant=21,u.Struct=22,u.Event=23,u.Operator=24,u.TypeParameter=25}(Y70||(Y70={})),function(u){u.PlainText=1,u.Snippet=2}(R70||(R70={})),function(u){u.Deprecated=1}(T70||(T70={})),function(u){function B(A,C,D){return{newText:A,insert:C,replace:D}}j(B,"create"),u.create=B;function E(A){let C=A;return C&&Qu.string(C.newText)&&l1.is(C.insert)&&l1.is(C.replace)}j(E,"is"),u.is=E}(O70||(O70={})),function(u){u.asIs=1,u.adjustIndentation=2}(I70||(I70={})),function(u){function B(E){let A=E;return A&&(Qu.string(A.detail)||A.detail===void 0)&&(Qu.string(A.description)||A.description===void 0)}j(B,"is"),u.is=B}(P70||(P70={})),function(u){function B(E){return{label:E}}j(B,"create"),u.create=B}(j70||(j70={})),function(u){function B(E,A){return{items:E?E:[],isIncomplete:!!A}}j(B,"create"),u.create=B}(N70||(N70={})),function(u){function B(A){return A.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}j(B,"fromPlainText"),u.fromPlainText=B;function E(A){let C=A;return Qu.string(C)||Qu.objectLiteral(C)&&Qu.string(C.language)&&Qu.string(C.value)}j(E,"is"),u.is=E}(FY||(FY={})),function(u){function B(E){let A=E;return!!A&&Qu.objectLiteral(A)&&(sH.is(A.contents)||FY.is(A.contents)||Qu.typedArray(A.contents,FY.is))&&(E.range===void 0||l1.is(E.range))}j(B,"is"),u.is=B}(i70||(i70={})),function(u){function B(E,A){return A?{label:E,documentation:A}:{label:E}}j(B,"create"),u.create=B}(a70||(a70={})),function(u){function B(E,A,...C){let D={label:E};if(Qu.defined(A))D.documentation=A;if(Qu.defined(C))D.parameters=C;else D.parameters=[];return D}j(B,"create"),u.create=B}(V70||(V70={})),function(u){u.Text=1,u.Read=2,u.Write=3}(h70||(h70={})),function(u){function B(E,A){let C={range:E};if(Qu.number(A))C.kind=A;return C}j(B,"create"),u.create=B}(m70||(m70={})),function(u){u.File=1,u.Module=2,u.Namespace=3,u.Package=4,u.Class=5,u.Method=6,u.Property=7,u.Field=8,u.Constructor=9,u.Enum=10,u.Interface=11,u.Function=12,u.Variable=13,u.Constant=14,u.String=15,u.Number=16,u.Boolean=17,u.Array=18,u.Object=19,u.Key=20,u.Null=21,u.EnumMember=22,u.Struct=23,u.Event=24,u.Operator=25,u.TypeParameter=26}(r70||(r70={})),function(u){u.Deprecated=1}($70||($70={})),function(u){function B(E,A,C,D,F){let U={name:E,kind:A,location:{uri:D,range:C}};if(F)U.containerName=F;return U}j(B,"create"),u.create=B}(y70||(y70={})),function(u){function B(E,A,C,D){return D!==void 0?{name:E,kind:A,location:{uri:C,range:D}}:{name:E,kind:A,location:{uri:C}}}j(B,"create"),u.create=B}(c70||(c70={})),function(u){function B(A,C,D,F,U,z){let k={name:A,detail:C,kind:D,range:F,selectionRange:U};if(z!==void 0)k.children=z;return k}j(B,"create"),u.create=B;function E(A){let C=A;return C&&Qu.string(C.name)&&Qu.number(C.kind)&&l1.is(C.range)&&l1.is(C.selectionRange)&&(C.detail===void 0||Qu.string(C.detail))&&(C.deprecated===void 0||Qu.boolean(C.deprecated))&&(C.children===void 0||Array.isArray(C.children))&&(C.tags===void 0||Array.isArray(C.tags))}j(E,"is"),u.is=E}(g70||(g70={})),function(u){u.Empty="",u.QuickFix="quickfix",u.Refactor="refactor",u.RefactorExtract="refactor.extract",u.RefactorInline="refactor.inline",u.RefactorRewrite="refactor.rewrite",u.Source="source",u.SourceOrganizeImports="source.organizeImports",u.SourceFixAll="source.fixAll"}(_70||(_70={})),function(u){u.Invoked=1,u.Automatic=2}(UY||(UY={})),function(u){function B(A,C,D){let F={diagnostics:A};if(C!==void 0&&C!==null)F.only=C;if(D!==void 0&&D!==null)F.triggerKind=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.typedArray(C.diagnostics,AY.is)&&(C.only===void 0||Qu.typedArray(C.only,Qu.string))&&(C.triggerKind===void 0||C.triggerKind===UY.Invoked||C.triggerKind===UY.Automatic)}j(E,"is"),u.is=E}(n70||(n70={})),function(u){function B(A,C,D){let F={title:A},U=!0;if(typeof C==="string")U=!1,F.kind=C;else if(IJ.is(C))F.command=C;else F.edit=C;if(U&&D!==void 0)F.kind=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return C&&Qu.string(C.title)&&(C.diagnostics===void 0||Qu.typedArray(C.diagnostics,AY.is))&&(C.kind===void 0||Qu.string(C.kind))&&(C.edit!==void 0||C.command!==void 0)&&(C.command===void 0||IJ.is(C.command))&&(C.isPreferred===void 0||Qu.boolean(C.isPreferred))&&(C.edit===void 0||Im.is(C.edit))}j(E,"is"),u.is=E}(p70||(p70={})),function(u){function B(A,C){let D={range:A};if(Qu.defined(C))D.data=C;return D}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&l1.is(C.range)&&(Qu.undefined(C.command)||IJ.is(C.command))}j(E,"is"),u.is=E}(d70||(d70={})),function(u){function B(A,C){return{tabSize:A,insertSpaces:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&Qu.uinteger(C.tabSize)&&Qu.boolean(C.insertSpaces)}j(E,"is"),u.is=E}(s70||(s70={})),function(u){function B(A,C,D){return{range:A,target:C,data:D}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&l1.is(C.range)&&(Qu.undefined(C.target)||Qu.string(C.target))}j(E,"is"),u.is=E}(o70||(o70={})),function(u){function B(A,C){return{range:A,parent:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&l1.is(C.range)&&(C.parent===void 0||u.is(C.parent))}j(E,"is"),u.is=E}(t70||(t70={})),function(u){u.namespace="namespace",u.type="type",u.class="class",u.enum="enum",u.interface="interface",u.struct="struct",u.typeParameter="typeParameter",u.parameter="parameter",u.variable="variable",u.property="property",u.enumMember="enumMember",u.event="event",u.function="function",u.method="method",u.macro="macro",u.keyword="keyword",u.modifier="modifier",u.comment="comment",u.string="string",u.number="number",u.regexp="regexp",u.operator="operator",u.decorator="decorator"}(e70||(e70={})),function(u){u.declaration="declaration",u.definition="definition",u.readonly="readonly",u.static="static",u.deprecated="deprecated",u.abstract="abstract",u.async="async",u.modification="modification",u.documentation="documentation",u.defaultLibrary="defaultLibrary"}(uB0||(uB0={})),function(u){function B(E){let A=E;return Qu.objectLiteral(A)&&(A.resultId===void 0||typeof A.resultId==="string")&&Array.isArray(A.data)&&(A.data.length===0||typeof A.data[0]==="number")}j(B,"is"),u.is=B}(BB0||(BB0={})),function(u){function B(A,C){return{range:A,text:C}}j(B,"create"),u.create=B;function E(A){let C=A;return C!==void 0&&C!==null&&l1.is(C.range)&&Qu.string(C.text)}j(E,"is"),u.is=E}(EB0||(EB0={})),function(u){function B(A,C,D){return{range:A,variableName:C,caseSensitiveLookup:D}}j(B,"create"),u.create=B;function E(A){let C=A;return C!==void 0&&C!==null&&l1.is(C.range)&&Qu.boolean(C.caseSensitiveLookup)&&(Qu.string(C.variableName)||C.variableName===void 0)}j(E,"is"),u.is=E}(AB0||(AB0={})),function(u){function B(A,C){return{range:A,expression:C}}j(B,"create"),u.create=B;function E(A){let C=A;return C!==void 0&&C!==null&&l1.is(C.range)&&(Qu.string(C.expression)||C.expression===void 0)}j(E,"is"),u.is=E}(CB0||(CB0={})),function(u){function B(A,C){return{frameId:A,stoppedLocation:C}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.defined(C)&&l1.is(A.stoppedLocation)}j(E,"is"),u.is=E}(DB0||(DB0={})),function(u){u.Type=1,u.Parameter=2;function B(E){return E===1||E===2}j(B,"is"),u.is=B}(jm||(jm={})),function(u){function B(A){return{value:A}}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&(C.tooltip===void 0||Qu.string(C.tooltip)||sH.is(C.tooltip))&&(C.location===void 0||EY.is(C.location))&&(C.command===void 0||IJ.is(C.command))}j(E,"is"),u.is=E}(Nm||(Nm={})),function(u){function B(A,C,D){let F={position:A,label:C};if(D!==void 0)F.kind=D;return F}j(B,"create"),u.create=B;function E(A){let C=A;return Qu.objectLiteral(C)&&s1.is(C.position)&&(Qu.string(C.label)||Qu.typedArray(C.label,Nm.is))&&(C.kind===void 0||jm.is(C.kind))&&C.textEdits===void 0||Qu.typedArray(C.textEdits,pF.is)&&(C.tooltip===void 0||Qu.string(C.tooltip)||sH.is(C.tooltip))&&(C.paddingLeft===void 0||Qu.boolean(C.paddingLeft))&&(C.paddingRight===void 0||Qu.boolean(C.paddingRight))}j(E,"is"),u.is=E}(FB0||(FB0={})),function(u){function B(E){return{kind:"snippet",value:E}}j(B,"createSnippet"),u.createSnippet=B}(UB0||(UB0={})),function(u){function B(E,A,C,D){return{insertText:E,filterText:A,range:C,command:D}}j(B,"create"),u.create=B}(zB0||(zB0={})),function(u){function B(E){return{items:E}}j(B,"create"),u.create=B}(kB0||(kB0={})),function(u){u.Invoked=0,u.Automatic=1}(fB0||(fB0={})),function(u){function B(E,A){return{range:E,text:A}}j(B,"create"),u.create=B}(lB0||(lB0={})),function(u){function B(E,A){return{triggerKind:E,selectedCompletionInfo:A}}j(B,"create"),u.create=B}(bB0||(bB0={})),function(u){function B(E){let A=E;return Qu.objectLiteral(A)&&Rm.is(A.uri)&&Qu.string(A.name)}j(B,"is"),u.is=B}(MB0||(MB0={})),Zn0=[`
`,`\r
`,"\r"],function(u){function B(D,F,U,z){return new qg0(D,F,U,z)}j(B,"create"),u.create=B;function E(D){let F=D;return Qu.defined(F)&&Qu.string(F.uri)&&(Qu.undefined(F.languageId)||Qu.string(F.languageId))&&Qu.uinteger(F.lineCount)&&Qu.func(F.getText)&&Qu.func(F.positionAt)&&Qu.func(F.offsetAt)?!0:!1}j(E,"is"),u.is=E;function A(D,F){let U=D.getText(),z=C(F,(f,l)=>{let b=f.range.start.line-l.range.start.line;if(b===0)return f.range.start.character-l.range.start.character;return b}),k=U.length;for(let f=z.length-1;f>=0;f--){let l=z[f],b=D.offsetAt(l.range.start),M=D.offsetAt(l.range.end);if(M<=k)U=U.substring(0,b)+l.newText+U.substring(M,U.length);else throw Error("Overlapping edit");k=b}return U}j(A,"applyEdits"),u.applyEdits=A;function C(D,F){if(D.length<=1)return D;let U=D.length/2|0,z=D.slice(0,U),k=D.slice(U);C(z,F),C(k,F);let f=0,l=0,b=0;while(f<z.length&&l<k.length)if(F(z[f],k[l])<=0)D[b++]=z[f++];else D[b++]=k[l++];while(f<z.length)D[b++]=z[f++];while(l<k.length)D[b++]=k[l++];return D}j(C,"mergeSort")}(ZB0||(ZB0={})),qg0=class{static{j(this,"FullTextDocument")}constructor(u,B,E,A){this._uri=u,this._languageId=B,this._version=E,this._content=A,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(u){if(u){let B=this.offsetAt(u.start),E=this.offsetAt(u.end);return this._content.substring(B,E)}return this._content}update(u,B){this._content=u.text,this._version=B,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let u=[],B=this._content,E=!0;for(let A=0;A<B.length;A++){if(E)u.push(A),E=!1;let C=B.charAt(A);if(E=C==="\r"||C===`
`,C==="\r"&&A+1<B.length&&B.charAt(A+1)===`
`)A++}if(E&&B.length>0)u.push(B.length);this._lineOffsets=u}return this._lineOffsets}positionAt(u){u=Math.max(Math.min(u,this._content.length),0);let B=this.getLineOffsets(),E=0,A=B.length;if(A===0)return s1.create(0,u);while(E<A){let D=Math.floor((E+A)/2);if(B[D]>u)A=D;else E=D+1}let C=E-1;return s1.create(C,u-B[C])}offsetAt(u){let B=this.getLineOffsets();if(u.line>=B.length)return this._content.length;else if(u.line<0)return 0;let E=B[u.line],A=u.line+1<B.length?B[u.line+1]:this._content.length;return Math.max(Math.min(E+u.character,A),E)}get lineCount(){return this.getLineOffsets().length}},function(u){let B=Object.prototype.toString;function E(M){return typeof M<"u"}j(E,"defined"),u.defined=E;function A(M){return typeof M>"u"}j(A,"undefined"),u.undefined=A;function C(M){return M===!0||M===!1}j(C,"boolean"),u.boolean=C;function D(M){return B.call(M)==="[object String]"}j(D,"string"),u.string=D;function F(M){return B.call(M)==="[object Number]"}j(F,"number"),u.number=F;function U(M,Z,J){return B.call(M)==="[object Number]"&&Z<=M&&M<=J}j(U,"numberRange"),u.numberRange=U;function z(M){return B.call(M)==="[object Number]"&&-2147483648<=M&&M<=2147483647}j(z,"integer"),u.integer=z;function k(M){return B.call(M)==="[object Number]"&&0<=M&&M<=2147483647}j(k,"uinteger"),u.uinteger=k;function f(M){return B.call(M)==="[object Function]"}j(f,"func"),u.func=f;function l(M){return M!==null&&typeof M==="object"}j(l,"objectLiteral"),u.objectLiteral=l;function b(M,Z){return Array.isArray(M)&&M.every(Z)}j(b,"typedArray"),u.typedArray=b}(Qu||(Qu={}))}}),lw=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(u){Object.defineProperty(u,"__esModule",{value:!0});var B;function E(){if(B===void 0)throw Error("No runtime abstraction layer installed");return B}j(E,"RAL"),function(A){function C(D){if(D===void 0)throw Error("No runtime abstraction layer provided");B=D}j(C,"install"),A.install=C}(E||(E={})),u.default=E}}),ER=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.stringArray=u.array=u.func=u.error=u.number=u.string=u.boolean=void 0;function B(z){return z===!0||z===!1}j(B,"boolean"),u.boolean=B;function E(z){return typeof z==="string"||z instanceof String}j(E,"string"),u.string=E;function A(z){return typeof z==="number"||z instanceof Number}j(A,"number"),u.number=A;function C(z){return z instanceof Error}j(C,"error"),u.error=C;function D(z){return typeof z==="function"}j(D,"func"),u.func=D;function F(z){return Array.isArray(z)}j(F,"array"),u.array=F;function U(z){return F(z)&&z.every((k)=>E(k))}j(U,"stringArray"),u.stringArray=U}}),vL=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.Emitter=u.Event=void 0;var B=lw(),E;(function(D){let F={dispose(){}};D.None=function(){return F}})(E||(u.Event=E={}));var A=class{static{j(this,"CallbackList")}add(D,F=null,U){if(!this._callbacks)this._callbacks=[],this._contexts=[];if(this._callbacks.push(D),this._contexts.push(F),Array.isArray(U))U.push({dispose:j(()=>this.remove(D,F),"dispose")})}remove(D,F=null){if(!this._callbacks)return;let U=!1;for(let z=0,k=this._callbacks.length;z<k;z++)if(this._callbacks[z]===D)if(this._contexts[z]===F){this._callbacks.splice(z,1),this._contexts.splice(z,1);return}else U=!0;if(U)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...D){if(!this._callbacks)return[];let F=[],U=this._callbacks.slice(0),z=this._contexts.slice(0);for(let k=0,f=U.length;k<f;k++)try{F.push(U[k].apply(z[k],D))}catch(l){(0,B.default)().console.error(l)}return F}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},C=class D{static{j(this,"Emitter")}constructor(F){this._options=F}get event(){if(!this._event)this._event=(F,U,z)=>{if(!this._callbacks)this._callbacks=new A;if(this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty())this._options.onFirstListenerAdd(this);this._callbacks.add(F,U);let k={dispose:j(()=>{if(!this._callbacks)return;if(this._callbacks.remove(F,U),k.dispose=D._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty())this._options.onLastListenerRemove(this)},"dispose")};if(Array.isArray(z))z.push(k);return k};return this._event}fire(F){if(this._callbacks)this._callbacks.invoke.call(this._callbacks,F)}dispose(){if(this._callbacks)this._callbacks.dispose(),this._callbacks=void 0}};u.Emitter=C,C._noop=function(){}}}),Q$=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.CancellationTokenSource=u.CancellationToken=void 0;var B=lw(),E=ER(),A=vL(),C;(function(z){z.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:A.Event.None}),z.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:A.Event.None});function k(f){let l=f;return l&&(l===z.None||l===z.Cancelled||E.boolean(l.isCancellationRequested)&&!!l.onCancellationRequested)}j(k,"is"),z.is=k})(C||(u.CancellationToken=C={}));var D=Object.freeze(function(z,k){let f=(0,B.default)().timer.setTimeout(z.bind(k),0);return{dispose(){f.dispose()}}}),F=class{static{j(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 D;if(!this._emitter)this._emitter=new A.Emitter;return this._emitter.event}dispose(){if(this._emitter)this._emitter.dispose(),this._emitter=void 0}},U=class{static{j(this,"CancellationTokenSource")}get token(){if(!this._token)this._token=new F;return this._token}cancel(){if(!this._token)this._token=C.Cancelled;else this._token.cancel()}dispose(){if(!this._token)this._token=C.None;else if(this._token instanceof F)this._token.dispose()}};u.CancellationTokenSource=U}}),Jn0=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.Message=u.NotificationType9=u.NotificationType8=u.NotificationType7=u.NotificationType6=u.NotificationType5=u.NotificationType4=u.NotificationType3=u.NotificationType2=u.NotificationType1=u.NotificationType0=u.NotificationType=u.RequestType9=u.RequestType8=u.RequestType7=u.RequestType6=u.RequestType5=u.RequestType4=u.RequestType3=u.RequestType2=u.RequestType1=u.RequestType=u.RequestType0=u.AbstractMessageSignature=u.ParameterStructures=u.ResponseError=u.ErrorCodes=void 0;var B=ER(),E;(function(Y){Y.ParseError=-32700,Y.InvalidRequest=-32600,Y.MethodNotFound=-32601,Y.InvalidParams=-32602,Y.InternalError=-32603,Y.jsonrpcReservedErrorRangeStart=-32099,Y.serverErrorStart=-32099,Y.MessageWriteError=-32099,Y.MessageReadError=-32098,Y.PendingResponseRejected=-32097,Y.ConnectionInactive=-32096,Y.ServerNotInitialized=-32002,Y.UnknownErrorCode=-32001,Y.jsonrpcReservedErrorRangeEnd=-32000,Y.serverErrorEnd=-32000})(E||(u.ErrorCodes=E={}));var A=class Y extends Error{static{j(this,"ResponseError")}constructor(a,I,O){super(I);this.code=B.number(a)?a:E.UnknownErrorCode,this.data=O,Object.setPrototypeOf(this,Y.prototype)}toJson(){let a={code:this.code,message:this.message};if(this.data!==void 0)a.data=this.data;return a}};u.ResponseError=A;var C=class Y{static{j(this,"ParameterStructures")}constructor(a){this.kind=a}static is(a){return a===Y.auto||a===Y.byName||a===Y.byPosition}toString(){return this.kind}};u.ParameterStructures=C,C.auto=new C("auto"),C.byPosition=new C("byPosition"),C.byName=new C("byName");var D=class{static{j(this,"AbstractMessageSignature")}constructor(Y,a){this.method=Y,this.numberOfParams=a}get parameterStructures(){return C.auto}};u.AbstractMessageSignature=D;var F=class extends D{static{j(this,"RequestType0")}constructor(Y){super(Y,0)}};u.RequestType0=F;var U=class extends D{static{j(this,"RequestType")}constructor(Y,a=C.auto){super(Y,1);this._parameterStructures=a}get parameterStructures(){return this._parameterStructures}};u.RequestType=U;var z=class extends D{static{j(this,"RequestType1")}constructor(Y,a=C.auto){super(Y,1);this._parameterStructures=a}get parameterStructures(){return this._parameterStructures}};u.RequestType1=z;var k=class extends D{static{j(this,"RequestType2")}constructor(Y){super(Y,2)}};u.RequestType2=k;var f=class extends D{static{j(this,"RequestType3")}constructor(Y){super(Y,3)}};u.RequestType3=f;var l=class extends D{static{j(this,"RequestType4")}constructor(Y){super(Y,4)}};u.RequestType4=l;var b=class extends D{static{j(this,"RequestType5")}constructor(Y){super(Y,5)}};u.RequestType5=b;var M=class extends D{static{j(this,"RequestType6")}constructor(Y){super(Y,6)}};u.RequestType6=M;var Z=class extends D{static{j(this,"RequestType7")}constructor(Y){super(Y,7)}};u.RequestType7=Z;var J=class extends D{static{j(this,"RequestType8")}constructor(Y){super(Y,8)}};u.RequestType8=J;var w=class extends D{static{j(this,"RequestType9")}constructor(Y){super(Y,9)}};u.RequestType9=w;var K=class extends D{static{j(this,"NotificationType")}constructor(Y,a=C.auto){super(Y,1);this._parameterStructures=a}get parameterStructures(){return this._parameterStructures}};u.NotificationType=K;var Q=class extends D{static{j(this,"NotificationType0")}constructor(Y){super(Y,0)}};u.NotificationType0=Q;var G=class extends D{static{j(this,"NotificationType1")}constructor(Y,a=C.auto){super(Y,1);this._parameterStructures=a}get parameterStructures(){return this._parameterStructures}};u.NotificationType1=G;var L=class extends D{static{j(this,"NotificationType2")}constructor(Y){super(Y,2)}};u.NotificationType2=L;var H=class extends D{static{j(this,"NotificationType3")}constructor(Y){super(Y,3)}};u.NotificationType3=H;var q=class extends D{static{j(this,"NotificationType4")}constructor(Y){super(Y,4)}};u.NotificationType4=q;var x=class extends D{static{j(this,"NotificationType5")}constructor(Y){super(Y,5)}};u.NotificationType5=x;var v=class extends D{static{j(this,"NotificationType6")}constructor(Y){super(Y,6)}};u.NotificationType6=v;var W=class extends D{static{j(this,"NotificationType7")}constructor(Y){super(Y,7)}};u.NotificationType7=W;var S=class extends D{static{j(this,"NotificationType8")}constructor(Y){super(Y,8)}};u.NotificationType8=S;var T=class extends D{static{j(this,"NotificationType9")}constructor(Y){super(Y,9)}};u.NotificationType9=T;var R;(function(Y){function a(i){let N=i;return N&&B.string(N.method)&&(B.string(N.id)||B.number(N.id))}j(a,"isRequest"),Y.isRequest=a;function I(i){let N=i;return N&&B.string(N.method)&&i.id===void 0}j(I,"isNotification"),Y.isNotification=I;function O(i){let N=i;return N&&(N.result!==void 0||!!N.error)&&(B.string(N.id)||B.number(N.id)||N.id===null)}j(O,"isResponse"),Y.isResponse=O})(R||(u.Message=R={}))}}),wn0=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(u){var B;Object.defineProperty(u,"__esModule",{value:!0}),u.LRUCache=u.LinkedMap=u.Touch=void 0;var E;(function(D){D.None=0,D.First=1,D.AsOld=D.First,D.Last=2,D.AsNew=D.Last})(E||(u.Touch=E={}));var A=class{static{j(this,"LinkedMap")}constructor(){this[B]="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(D){return this._map.has(D)}get(D,F=E.None){let U=this._map.get(D);if(!U)return;if(F!==E.None)this.touch(U,F);return U.value}set(D,F,U=E.None){let z=this._map.get(D);if(z){if(z.value=F,U!==E.None)this.touch(z,U)}else{switch(z={key:D,value:F,next:void 0,previous:void 0},U){case E.None:this.addItemLast(z);break;case E.First:this.addItemFirst(z);break;case E.Last:this.addItemLast(z);break;default:this.addItemLast(z);break}this._map.set(D,z),this._size++}return this}delete(D){return!!this.remove(D)}remove(D){let F=this._map.get(D);if(!F)return;return this._map.delete(D),this.removeItem(F),this._size--,F.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let D=this._head;return this._map.delete(D.key),this.removeItem(D),this._size--,D.value}forEach(D,F){let U=this._state,z=this._head;while(z){if(F)D.bind(F)(z.value,z.key,this);else D(z.value,z.key,this);if(this._state!==U)throw Error("LinkedMap got modified during iteration.");z=z.next}}keys(){let D=this._state,F=this._head,U={[Symbol.iterator]:()=>{return U},next:j(()=>{if(this._state!==D)throw Error("LinkedMap got modified during iteration.");if(F){let z={value:F.key,done:!1};return F=F.next,z}else return{value:void 0,done:!0}},"next")};return U}values(){let D=this._state,F=this._head,U={[Symbol.iterator]:()=>{return U},next:j(()=>{if(this._state!==D)throw Error("LinkedMap got modified during iteration.");if(F){let z={value:F.value,done:!1};return F=F.next,z}else return{value:void 0,done:!0}},"next")};return U}entries(){let D=this._state,F=this._head,U={[Symbol.iterator]:()=>{return U},next:j(()=>{if(this._state!==D)throw Error("LinkedMap got modified during iteration.");if(F){let z={value:[F.key,F.value],done:!1};return F=F.next,z}else return{value:void 0,done:!0}},"next")};return U}[(B=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(D){if(D>=this.size)return;if(D===0){this.clear();return}let F=this._head,U=this.size;while(F&&U>D)this._map.delete(F.key),F=F.next,U--;if(this._head=F,this._size=U,F)F.previous=void 0;this._state++}addItemFirst(D){if(!this._head&&!this._tail)this._tail=D;else if(!this._head)throw Error("Invalid list");else D.next=this._head,this._head.previous=D;this._head=D,this._state++}addItemLast(D){if(!this._head&&!this._tail)this._head=D;else if(!this._tail)throw Error("Invalid list");else D.previous=this._tail,this._tail.next=D;this._tail=D,this._state++}removeItem(D){if(D===this._head&&D===this._tail)this._head=void 0,this._tail=void 0;else if(D===this._head){if(!D.next)throw Error("Invalid list");D.next.previous=void 0,this._head=D.next}else if(D===this._tail){if(!D.previous)throw Error("Invalid list");D.previous.next=void 0,this._tail=D.previous}else{let{next:F,previous:U}=D;if(!F||!U)throw Error("Invalid list");F.previous=U,U.next=F}D.next=void 0,D.previous=void 0,this._state++}touch(D,F){if(!this._head||!this._tail)throw Error("Invalid list");if(F!==E.First&&F!==E.Last)return;if(F===E.First){if(D===this._head)return;let{next:U,previous:z}=D;if(D===this._tail)z.next=void 0,this._tail=z;else U.previous=z,z.next=U;D.previous=void 0,D.next=this._head,this._head.previous=D,this._head=D,this._state++}else if(F===E.Last){if(D===this._tail)return;let{next:U,previous:z}=D;if(D===this._head)U.previous=void 0,this._head=U;else U.previous=z,z.next=U;D.next=void 0,D.previous=this._tail,this._tail.next=D,this._tail=D,this._state++}}toJSON(){let D=[];return this.forEach((F,U)=>{D.push([U,F])}),D}fromJSON(D){this.clear();for(let[F,U]of D)this.set(F,U)}};u.LinkedMap=A;var C=class extends A{static{j(this,"LRUCache")}constructor(D,F=1){super();this._limit=D,this._ratio=Math.min(Math.max(0,F),1)}get limit(){return this._limit}set limit(D){this._limit=D,this.checkTrim()}get ratio(){return this._ratio}set ratio(D){this._ratio=Math.min(Math.max(0,D),1),this.checkTrim()}get(D,F=E.AsNew){return super.get(D,F)}peek(D){return super.get(D,E.None)}set(D,F){return super.set(D,F,E.Last),this.checkTrim(),this}checkTrim(){if(this.size>this._limit)this.trimOld(Math.round(this._limit*this._ratio))}};u.LRUCache=C}}),WH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.Disposable=void 0;var B;(function(E){function A(C){return{dispose:C}}j(A,"create"),E.create=A})(B||(u.Disposable=B={}))}}),YH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.SharedArrayReceiverStrategy=u.SharedArraySenderStrategy=void 0;var B=Q$(),E;(function(U){U.Continue=0,U.Cancelled=1})(E||(E={}));var A=class{static{j(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(U){if(U.id===null)return;let z=new SharedArrayBuffer(4),k=new Int32Array(z,0,1);k[0]=E.Continue,this.buffers.set(U.id,z),U.$cancellationData=z}async sendCancellation(U,z){let k=this.buffers.get(z);if(k===void 0)return;let f=new Int32Array(k,0,1);Atomics.store(f,0,E.Cancelled)}cleanup(U){this.buffers.delete(U)}dispose(){this.buffers.clear()}};u.SharedArraySenderStrategy=A;var C=class{static{j(this,"SharedArrayBufferCancellationToken")}constructor(U){this.data=new Int32Array(U,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===E.Cancelled}get onCancellationRequested(){throw Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},D=class{static{j(this,"SharedArrayBufferCancellationTokenSource")}constructor(U){this.token=new C(U)}cancel(){}dispose(){}},F=class{static{j(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(U){let z=U.$cancellationData;if(z===void 0)return new B.CancellationTokenSource;return new D(z)}};u.SharedArrayReceiverStrategy=F}}),Kn0=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.Semaphore=void 0;var B=lw(),E=class{static{j(this,"Semaphore")}constructor(A=1){if(A<=0)throw Error("Capacity must be greater than 0");this._capacity=A,this._active=0,this._waiting=[]}lock(A){return new Promise((C,D)=>{this._waiting.push({thunk:A,resolve:C,reject:D}),this.runNext()})}get active(){return this._active}runNext(){if(this._waiting.length===0||this._active===this._capacity)return;(0,B.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let A=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error("To many thunks active");try{let C=A.thunk();if(C instanceof Promise)C.then((D)=>{this._active--,A.resolve(D),this.runNext()},(D)=>{this._active--,A.reject(D),this.runNext()});else this._active--,A.resolve(C),this.runNext()}catch(C){this._active--,A.reject(C),this.runNext()}}};u.Semaphore=E}}),RH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ReadableStreamMessageReader=u.AbstractMessageReader=u.MessageReader=void 0;var B=lw(),E=ER(),A=vL(),C=Kn0(),D;(function(k){function f(l){let b=l;return b&&E.func(b.listen)&&E.func(b.dispose)&&E.func(b.onError)&&E.func(b.onClose)&&E.func(b.onPartialMessage)}j(f,"is"),k.is=f})(D||(u.MessageReader=D={}));var F=class{static{j(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new A.Emitter,this.closeEmitter=new A.Emitter,this.partialMessageEmitter=new A.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(k){this.errorEmitter.fire(this.asError(k))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(k){this.partialMessageEmitter.fire(k)}asError(k){if(k instanceof Error)return k;else return Error(`Reader received error. Reason: ${E.string(k.message)?k.message:"unknown"}`)}};u.AbstractMessageReader=F;var U;(function(k){function f(l){let b,M,Z,J=new Map,w,K=new Map;if(l===void 0||typeof l==="string")b=l??"utf-8";else{if(b=l.charset??"utf-8",l.contentDecoder!==void 0)Z=l.contentDecoder,J.set(Z.name,Z);if(l.contentDecoders!==void 0)for(let Q of l.contentDecoders)J.set(Q.name,Q);if(l.contentTypeDecoder!==void 0)w=l.contentTypeDecoder,K.set(w.name,w);if(l.contentTypeDecoders!==void 0)for(let Q of l.contentTypeDecoders)K.set(Q.name,Q)}if(w===void 0)w=(0,B.default)().applicationJson.decoder,K.set(w.name,w);return{charset:b,contentDecoder:Z,contentDecoders:J,contentTypeDecoder:w,contentTypeDecoders:K}}j(f,"fromOptions"),k.fromOptions=f})(U||(U={}));var z=class extends F{static{j(this,"ReadableStreamMessageReader")}constructor(k,f){super();this.readable=k,this.options=U.fromOptions(f),this.buffer=(0,B.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new C.Semaphore(1)}set partialMessageTimeout(k){this._partialMessageTimeout=k}get partialMessageTimeout(){return this._partialMessageTimeout}listen(k){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=k;let f=this.readable.onData((l)=>{this.onData(l)});return this.readable.onError((l)=>this.fireError(l)),this.readable.onClose(()=>this.fireClose()),f}onData(k){try{this.buffer.append(k);while(!0){if(this.nextMessageLength===-1){let l=this.buffer.tryReadHeaders(!0);if(!l)return;let b=l.get("content-length");if(!b){this.fireError(Error(`Header must provide a Content-Length property.
${JSON.stringify(Object.fromEntries(l))}`));return}let M=parseInt(b);if(isNaN(M)){this.fireError(Error(`Content-Length value must be a number. Got ${b}`));return}this.nextMessageLength=M}let f=this.buffer.tryReadBody(this.nextMessageLength);if(f===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let l=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(f):f,b=await this.options.contentTypeDecoder.decode(l,this.options);this.callback(b)}).catch((l)=>{this.fireError(l)})}}catch(f){this.fireError(f)}}clearPartialMessageTimer(){if(this.partialMessageTimer)this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0}setPartialMessageTimer(){if(this.clearPartialMessageTimer(),this._partialMessageTimeout<=0)return;this.partialMessageTimer=(0,B.default)().timer.setTimeout((k,f)=>{if(this.partialMessageTimer=void 0,k===this.messageToken)this.firePartialMessage({messageToken:k,waitingTime:f}),this.setPartialMessageTimer()},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout)}};u.ReadableStreamMessageReader=z}}),TH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.WriteableStreamMessageWriter=u.AbstractMessageWriter=u.MessageWriter=void 0;var B=lw(),E=ER(),A=Kn0(),C=vL(),D="Content-Length: ",F=`\r
`,U;(function(l){function b(M){let Z=M;return Z&&E.func(Z.dispose)&&E.func(Z.onClose)&&E.func(Z.onError)&&E.func(Z.write)}j(b,"is"),l.is=b})(U||(u.MessageWriter=U={}));var z=class{static{j(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new C.Emitter,this.closeEmitter=new C.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(l,b,M){this.errorEmitter.fire([this.asError(l),b,M])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(l){if(l instanceof Error)return l;else return Error(`Writer received error. Reason: ${E.string(l.message)?l.message:"unknown"}`)}};u.AbstractMessageWriter=z;var k;(function(l){function b(M){if(M===void 0||typeof M==="string")return{charset:M??"utf-8",contentTypeEncoder:(0,B.default)().applicationJson.encoder};else return{charset:M.charset??"utf-8",contentEncoder:M.contentEncoder,contentTypeEncoder:M.contentTypeEncoder??(0,B.default)().applicationJson.encoder}}j(b,"fromOptions"),l.fromOptions=b})(k||(k={}));var f=class extends z{static{j(this,"WriteableStreamMessageWriter")}constructor(l,b){super();this.writable=l,this.options=k.fromOptions(b),this.errorCount=0,this.writeSemaphore=new A.Semaphore(1),this.writable.onError((M)=>this.fireError(M)),this.writable.onClose(()=>this.fireClose())}async write(l){return this.writeSemaphore.lock(async()=>{return this.options.contentTypeEncoder.encode(l,this.options).then((M)=>{if(this.options.contentEncoder!==void 0)return this.options.contentEncoder.encode(M);else return M}).then((M)=>{let Z=[];return Z.push(D,M.byteLength.toString(),F),Z.push(F),this.doWrite(l,Z,M)},(M)=>{throw this.fireError(M),M})})}async doWrite(l,b,M){try{return await this.writable.write(b.join(""),"ascii"),this.writable.write(M)}catch(Z){return this.handleError(Z,l),Promise.reject(Z)}}handleError(l,b){this.errorCount++,this.fireError(l,b,this.errorCount)}end(){this.writable.end()}};u.WriteableStreamMessageWriter=f}}),OH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.AbstractMessageBuffer=void 0;var B=13,E=10,A=`\r
`,C=class{static{j(this,"AbstractMessageBuffer")}constructor(D="utf-8"){this._encoding=D,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(D){let F=typeof D==="string"?this.fromString(D,this._encoding):D;this._chunks.push(F),this._totalLength+=F.byteLength}tryReadHeaders(D=!1){if(this._chunks.length===0)return;let F=0,U=0,z=0,k=0;u:while(U<this._chunks.length){let M=this._chunks[U];z=0;B:while(z<M.length){switch(M[z]){case B:switch(F){case 0:F=1;break;case 2:F=3;break;default:F=0}break;case E:switch(F){case 1:F=2;break;case 3:F=4,z++;break u;default:F=0}break;default:F=0}z++}k+=M.byteLength,U++}if(F!==4)return;let f=this._read(k+z),l=new Map,b=this.toString(f,"ascii").split(A);if(b.length<2)return l;for(let M=0;M<b.length-2;M++){let Z=b[M],J=Z.indexOf(":");if(J===-1)throw Error(`Message header must separate key and value using ':'
${Z}`);let w=Z.substr(0,J),K=Z.substr(J+1).trim();l.set(D?w.toLowerCase():w,K)}return l}tryReadBody(D){if(this._totalLength<D)return;return this._read(D)}get numberOfBytes(){return this._totalLength}_read(D){if(D===0)return this.emptyBuffer();if(D>this._totalLength)throw Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===D){let k=this._chunks[0];return this._chunks.shift(),this._totalLength-=D,this.asNative(k)}if(this._chunks[0].byteLength>D){let k=this._chunks[0],f=this.asNative(k,D);return this._chunks[0]=k.slice(D),this._totalLength-=D,f}let F=this.allocNative(D),U=0,z=0;while(D>0){let k=this._chunks[z];if(k.byteLength>D){let f=k.slice(0,D);F.set(f,U),U+=D,this._chunks[z]=k.slice(D),this._totalLength-=D,D-=D}else F.set(k,U),U+=k.byteLength,this._chunks.shift(),this._totalLength-=k.byteLength,D-=k.byteLength}return F}};u.AbstractMessageBuffer=C}}),IH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.createMessageConnection=u.ConnectionOptions=u.MessageStrategy=u.CancellationStrategy=u.CancellationSenderStrategy=u.CancellationReceiverStrategy=u.RequestCancellationReceiverStrategy=u.IdCancellationReceiverStrategy=u.ConnectionStrategy=u.ConnectionError=u.ConnectionErrors=u.LogTraceNotification=u.SetTraceNotification=u.TraceFormat=u.TraceValues=u.Trace=u.NullLogger=u.ProgressType=u.ProgressToken=void 0;var B=lw(),E=ER(),A=Jn0(),C=wn0(),D=vL(),F=Q$(),U;(function(Y){Y.type=new A.NotificationType("$/cancelRequest")})(U||(U={}));var z;(function(Y){function a(I){return typeof I==="string"||typeof I==="number"}j(a,"is"),Y.is=a})(z||(u.ProgressToken=z={}));var k;(function(Y){Y.type=new A.NotificationType("$/progress")})(k||(k={}));var f=class{static{j(this,"ProgressType")}constructor(){}};u.ProgressType=f;var l;(function(Y){function a(I){return E.func(I)}j(a,"is"),Y.is=a})(l||(l={})),u.NullLogger=Object.freeze({error:j(()=>{},"error"),warn:j(()=>{},"warn"),info:j(()=>{},"info"),log:j(()=>{},"log")});var b;(function(Y){Y[Y.Off=0]="Off",Y[Y.Messages=1]="Messages",Y[Y.Compact=2]="Compact",Y[Y.Verbose=3]="Verbose"})(b||(u.Trace=b={}));var M;(function(Y){Y.Off="off",Y.Messages="messages",Y.Compact="compact",Y.Verbose="verbose"})(M||(u.TraceValues=M={})),function(Y){function a(O){if(!E.string(O))return Y.Off;switch(O=O.toLowerCase(),O){case"off":return Y.Off;case"messages":return Y.Messages;case"compact":return Y.Compact;case"verbose":return Y.Verbose;default:return Y.Off}}j(a,"fromString"),Y.fromString=a;function I(O){switch(O){case Y.Off:return"off";case Y.Messages:return"messages";case Y.Compact:return"compact";case Y.Verbose:return"verbose";default:return"off"}}j(I,"toString"),Y.toString=I}(b||(u.Trace=b={}));var Z;(function(Y){Y.Text="text",Y.JSON="json"})(Z||(u.TraceFormat=Z={})),function(Y){function a(I){if(!E.string(I))return Y.Text;if(I=I.toLowerCase(),I==="json")return Y.JSON;else return Y.Text}j(a,"fromString"),Y.fromString=a}(Z||(u.TraceFormat=Z={}));var J;(function(Y){Y.type=new A.NotificationType("$/setTrace")})(J||(u.SetTraceNotification=J={}));var w;(function(Y){Y.type=new A.NotificationType("$/logTrace")})(w||(u.LogTraceNotification=w={}));var K;(function(Y){Y[Y.Closed=1]="Closed",Y[Y.Disposed=2]="Disposed",Y[Y.AlreadyListening=3]="AlreadyListening"})(K||(u.ConnectionErrors=K={}));var Q=class Y extends Error{static{j(this,"ConnectionError")}constructor(a,I){super(I);this.code=a,Object.setPrototypeOf(this,Y.prototype)}};u.ConnectionError=Q;var G;(function(Y){function a(I){let O=I;return O&&E.func(O.cancelUndispatched)}j(a,"is"),Y.is=a})(G||(u.ConnectionStrategy=G={}));var L;(function(Y){function a(I){let O=I;return O&&(O.kind===void 0||O.kind==="id")&&E.func(O.createCancellationTokenSource)&&(O.dispose===void 0||E.func(O.dispose))}j(a,"is"),Y.is=a})(L||(u.IdCancellationReceiverStrategy=L={}));var H;(function(Y){function a(I){let O=I;return O&&O.kind==="request"&&E.func(O.createCancellationTokenSource)&&(O.dispose===void 0||E.func(O.dispose))}j(a,"is"),Y.is=a})(H||(u.RequestCancellationReceiverStrategy=H={}));var q;(function(Y){Y.Message=Object.freeze({createCancellationTokenSource(I){return new F.CancellationTokenSource}});function a(I){return L.is(I)||H.is(I)}j(a,"is"),Y.is=a})(q||(u.CancellationReceiverStrategy=q={}));var x;(function(Y){Y.Message=Object.freeze({sendCancellation(I,O){return I.sendNotification(U.type,{id:O})},cleanup(I){}});function a(I){let O=I;return O&&E.func(O.sendCancellation)&&E.func(O.cleanup)}j(a,"is"),Y.is=a})(x||(u.CancellationSenderStrategy=x={}));var v;(function(Y){Y.Message=Object.freeze({receiver:q.Message,sender:x.Message});function a(I){let O=I;return O&&q.is(O.receiver)&&x.is(O.sender)}j(a,"is"),Y.is=a})(v||(u.CancellationStrategy=v={}));var W;(function(Y){function a(I){let O=I;return O&&E.func(O.handleMessage)}j(a,"is"),Y.is=a})(W||(u.MessageStrategy=W={}));var S;(function(Y){function a(I){let O=I;return O&&(v.is(O.cancellationStrategy)||G.is(O.connectionStrategy)||W.is(O.messageStrategy))}j(a,"is"),Y.is=a})(S||(u.ConnectionOptions=S={}));var T;(function(Y){Y[Y.New=1]="New",Y[Y.Listening=2]="Listening",Y[Y.Closed=3]="Closed",Y[Y.Disposed=4]="Disposed"})(T||(T={}));function R(Y,a,I,O){let i=I!==void 0?I:u.NullLogger,N=0,V=0,h=0,r="2.0",m=void 0,$=new Map,y=void 0,p=new Map,e=new Map,_,b0=new C.LinkedMap,B0=new Map,k0=new Set,f0=new Map,D0=b.Off,P0=Z.Text,q0,m0=T.New,a0=new D.Emitter,_0=new D.Emitter,w0=new D.Emitter,v0=new D.Emitter,T0=new D.Emitter,Z0=O&&O.cancellationStrategy?O.cancellationStrategy:v.Message;function F0(I0){if(I0===null)throw Error("Can't send requests with id null since the response can't be correlated.");return"req-"+I0.toString()}j(F0,"createRequestQueueKey");function u0(I0){if(I0===null)return"res-unknown-"+(++h).toString();else return"res-"+I0.toString()}j(u0,"createResponseQueueKey");function M0(){return"not-"+(++V).toString()}j(M0,"createNotificationQueueKey");function X0(I0,lu){if(A.Message.isRequest(lu))I0.set(F0(lu.id),lu);else if(A.Message.isResponse(lu))I0.set(u0(lu.id),lu);else I0.set(M0(),lu)}j(X0,"addMessageToQueue");function S0(I0){return}j(S0,"cancelUndispatched");function Y0(){return m0===T.Listening}j(Y0,"isListening");function h0(){return m0===T.Closed}j(h0,"isClosed");function J0(){return m0===T.Disposed}j(J0,"isDisposed");function n(){if(m0===T.New||m0===T.Listening)m0=T.Closed,_0.fire(void 0)}j(n,"closeHandler");function d(I0){a0.fire([I0,void 0,void 0])}j(d,"readErrorHandler");function H0(I0){a0.fire(I0)}j(H0,"writeErrorHandler"),Y.onClose(n),Y.onError(d),a.onClose(n),a.onError(H0);function o(){if(_||b0.size===0)return;_=(0,B.default)().timer.setImmediate(()=>{_=void 0,E0()})}j(o,"triggerMessageQueue");function L0(I0){if(A.Message.isRequest(I0))c0(I0);else if(A.Message.isNotification(I0))g0(I0);else if(A.Message.isResponse(I0))p0(I0);else Bu(I0)}j(L0,"handleMessage");function E0(){if(b0.size===0)return;let I0=b0.shift();try{let lu=O?.messageStrategy;if(W.is(lu))lu.handleMessage(I0,L0);else L0(I0)}finally{o()}}j(E0,"processMessageQueue");let r0=j((I0)=>{try{if(A.Message.isNotification(I0)&&I0.method===U.type.method){let lu=I0.params.id,Hu=F0(lu),Ru=b0.get(Hu);if(A.Message.isRequest(Ru)){let ru=O?.connectionStrategy,q4=ru&&ru.cancelUndispatched?ru.cancelUndispatched(Ru,S0):S0(Ru);if(q4&&(q4.error!==void 0||q4.result!==void 0)){b0.delete(Hu),f0.delete(lu),q4.id=Ru.id,zu(q4,I0.method,Date.now()),a.write(q4).catch(()=>i.error("Sending response for canceled message failed."));return}}let W4=f0.get(lu);if(W4!==void 0){W4.cancel(),$u(I0);return}else k0.add(lu)}X0(b0,I0)}finally{o()}},"callback");function c0(I0){if(J0())return;function lu(i4,b4,P4){let bu={jsonrpc:r,id:I0.id};if(i4 instanceof A.ResponseError)bu.error=i4.toJson();else bu.result=i4===void 0?null:i4;zu(bu,b4,P4),a.write(bu).catch(()=>i.error("Sending response failed."))}j(lu,"reply");function Hu(i4,b4,P4){let bu={jsonrpc:r,id:I0.id,error:i4.toJson()};zu(bu,b4,P4),a.write(bu).catch(()=>i.error("Sending response failed."))}j(Hu,"replyError");function Ru(i4,b4,P4){if(i4===void 0)i4=null;let bu={jsonrpc:r,id:I0.id,result:i4};zu(bu,b4,P4),a.write(bu).catch(()=>i.error("Sending response failed."))}j(Ru,"replySuccess"),W0(I0);let W4=$.get(I0.method),ru,q4;if(W4)ru=W4.type,q4=W4.handler;let F3=Date.now();if(q4||m){let i4=I0.id??String(Date.now()),b4=L.is(Z0.receiver)?Z0.receiver.createCancellationTokenSource(i4):Z0.receiver.createCancellationTokenSource(I0);if(I0.id!==null&&k0.has(I0.id))b4.cancel();if(I0.id!==null)f0.set(i4,b4);try{let P4;if(q4)if(I0.params===void 0){if(ru!==void 0&&ru.numberOfParams!==0){Hu(new A.ResponseError(A.ErrorCodes.InvalidParams,`Request ${I0.method} defines ${ru.numberOfParams} params but received none.`),I0.method,F3);return}P4=q4(b4.token)}else if(Array.isArray(I0.params)){if(ru!==void 0&&ru.parameterStructures===A.ParameterStructures.byName){Hu(new A.ResponseError(A.ErrorCodes.InvalidParams,`Request ${I0.method} defines parameters by name but received parameters by position`),I0.method,F3);return}P4=q4(...I0.params,b4.token)}else{if(ru!==void 0&&ru.parameterStructures===A.ParameterStructures.byPosition){Hu(new A.ResponseError(A.ErrorCodes.InvalidParams,`Request ${I0.method} defines parameters by position but received parameters by name`),I0.method,F3);return}P4=q4(I0.params,b4.token)}else if(m)P4=m(I0.method,I0.params,b4.token);let bu=P4;if(!P4)f0.delete(i4),Ru(P4,I0.method,F3);else if(bu.then)bu.then((qu)=>{f0.delete(i4),lu(qu,I0.method,F3)},(qu)=>{if(f0.delete(i4),qu instanceof A.ResponseError)Hu(qu,I0.method,F3);else if(qu&&E.string(qu.message))Hu(new A.ResponseError(A.ErrorCodes.InternalError,`Request ${I0.method} failed with message: ${qu.message}`),I0.method,F3);else Hu(new A.ResponseError(A.ErrorCodes.InternalError,`Request ${I0.method} failed unexpectedly without providing any details.`),I0.method,F3)});else f0.delete(i4),lu(P4,I0.method,F3)}catch(P4){if(f0.delete(i4),P4 instanceof A.ResponseError)lu(P4,I0.method,F3);else if(P4&&E.string(P4.message))Hu(new A.ResponseError(A.ErrorCodes.InternalError,`Request ${I0.method} failed with message: ${P4.message}`),I0.method,F3);else Hu(new A.ResponseError(A.ErrorCodes.InternalError,`Request ${I0.method} failed unexpectedly without providing any details.`),I0.method,F3)}}else Hu(new A.ResponseError(A.ErrorCodes.MethodNotFound,`Unhandled method ${I0.method}`),I0.method,F3)}j(c0,"handleRequest");function p0(I0){if(J0())return;if(I0.id===null)if(I0.error)i.error(`Received response message without id: Error is:
${JSON.stringify(I0.error,void 0,4)}`);else i.error("Received response message without id. No further error information provided.");else{let lu=I0.id,Hu=B0.get(lu);if(i0(I0,Hu),Hu!==void 0){B0.delete(lu);try{if(I0.error){let Ru=I0.error;Hu.reject(new A.ResponseError(Ru.code,Ru.message,Ru.data))}else if(I0.result!==void 0)Hu.resolve(I0.result);else throw Error("Should never happen.")}catch(Ru){if(Ru.message)i.error(`Response handler '${Hu.method}' failed with message: ${Ru.message}`);else i.error(`Response handler '${Hu.method}' failed unexpectedly.`)}}}}j(p0,"handleResponse");function g0(I0){if(J0())return;let lu=void 0,Hu;if(I0.method===U.type.method){let Ru=I0.params.id;k0.delete(Ru),$u(I0);return}else{let Ru=p.get(I0.method);if(Ru)Hu=Ru.handler,lu=Ru.type}if(Hu||y)try{if($u(I0),Hu)if(I0.params===void 0){if(lu!==void 0){if(lu.numberOfParams!==0&&lu.parameterStructures!==A.ParameterStructures.byName)i.error(`Notification ${I0.method} defines ${lu.numberOfParams} params but received none.`)}Hu()}else if(Array.isArray(I0.params)){let Ru=I0.params;if(I0.method===k.type.method&&Ru.length===2&&z.is(Ru[0]))Hu({token:Ru[0],value:Ru[1]});else{if(lu!==void 0){if(lu.parameterStructures===A.ParameterStructures.byName)i.error(`Notification ${I0.method} defines parameters by name but received parameters by position`);if(lu.numberOfParams!==I0.params.length)i.error(`Notification ${I0.method} defines ${lu.numberOfParams} params but received ${Ru.length} arguments`)}Hu(...Ru)}}else{if(lu!==void 0&&lu.parameterStructures===A.ParameterStructures.byPosition)i.error(`Notification ${I0.method} defines parameters by position but received parameters by name`);Hu(I0.params)}else if(y)y(I0.method,I0.params)}catch(Ru){if(Ru.message)i.error(`Notification handler '${I0.method}' failed with message: ${Ru.message}`);else i.error(`Notification handler '${I0.method}' failed unexpectedly.`)}else w0.fire(I0)}j(g0,"handleNotification");function Bu(I0){if(!I0){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message:
${JSON.stringify(I0,null,4)}`);let lu=I0;if(E.string(lu.id)||E.number(lu.id)){let Hu=lu.id,Ru=B0.get(Hu);if(Ru)Ru.reject(Error("The received response has neither a result nor an error property."))}}j(Bu,"handleInvalidMessage");function n0(I0){if(I0===void 0||I0===null)return;switch(D0){case b.Verbose:return JSON.stringify(I0,null,4);case b.Compact:return JSON.stringify(I0);default:return}}j(n0,"stringifyTrace");function e0(I0){if(D0===b.Off||!q0)return;if(P0===Z.Text){let lu=void 0;if((D0===b.Verbose||D0===b.Compact)&&I0.params)lu=`Params: ${n0(I0.params)}
`;q0.log(`Sending request '${I0.method} - (${I0.id})'.`,lu)}else vu("send-request",I0)}j(e0,"traceSendingRequest");function t0(I0){if(D0===b.Off||!q0)return;if(P0===Z.Text){let lu=void 0;if(D0===b.Verbose||D0===b.Compact)if(I0.params)lu=`Params: ${n0(I0.params)}
`;else lu=`No parameters provided.
`;q0.log(`Sending notification '${I0.method}'.`,lu)}else vu("send-notification",I0)}j(t0,"traceSendingNotification");function zu(I0,lu,Hu){if(D0===b.Off||!q0)return;if(P0===Z.Text){let Ru=void 0;if(D0===b.Verbose||D0===b.Compact){if(I0.error&&I0.error.data)Ru=`Error data: ${n0(I0.error.data)}
`;else if(I0.result)Ru=`Result: ${n0(I0.result)}
`;else if(I0.error===void 0)Ru=`No result returned.
`}q0.log(`Sending response '${lu} - (${I0.id})'. Processing request took ${Date.now()-Hu}ms`,Ru)}else vu("send-response",I0)}j(zu,"traceSendingResponse");function W0(I0){if(D0===b.Off||!q0)return;if(P0===Z.Text){let lu=void 0;if((D0===b.Verbose||D0===b.Compact)&&I0.params)lu=`Params: ${n0(I0.params)}
`;q0.log(`Received request '${I0.method} - (${I0.id})'.`,lu)}else vu("receive-request",I0)}j(W0,"traceReceivedRequest");function $u(I0){if(D0===b.Off||!q0||I0.method===w.type.method)return;if(P0===Z.Text){let lu=void 0;if(D0===b.Verbose||D0===b.Compact)if(I0.params)lu=`Params: ${n0(I0.params)}
`;else lu=`No parameters provided.
`;q0.log(`Received notification '${I0.method}'.`,lu)}else vu("receive-notification",I0)}j($u,"traceReceivedNotification");function i0(I0,lu){if(D0===b.Off||!q0)return;if(P0===Z.Text){let Hu=void 0;if(D0===b.Verbose||D0===b.Compact){if(I0.error&&I0.error.data)Hu=`Error data: ${n0(I0.error.data)}
`;else if(I0.result)Hu=`Result: ${n0(I0.result)}
`;else if(I0.error===void 0)Hu=`No result returned.
`}if(lu){let Ru=I0.error?` Request failed: ${I0.error.message} (${I0.error.code}).`:"";q0.log(`Received response '${lu.method} - (${I0.id})' in ${Date.now()-lu.timerStart}ms.${Ru}`,Hu)}else q0.log(`Received response ${I0.id} without active response promise.`,Hu)}else vu("receive-response",I0)}j(i0,"traceReceivedResponse");function vu(I0,lu){if(!q0||D0===b.Off)return;let Hu={isLSPMessage:!0,type:I0,message:lu,timestamp:Date.now()};q0.log(Hu)}j(vu,"logLSPMessage");function cu(){if(h0())throw new Q(K.Closed,"Connection is closed.");if(J0())throw new Q(K.Disposed,"Connection is disposed.")}j(cu,"throwIfClosedOrDisposed");function Du(){if(Y0())throw new Q(K.AlreadyListening,"Connection is already listening")}j(Du,"throwIfListening");function Nu(){if(!Y0())throw Error("Call listen() first.")}j(Nu,"throwIfNotListening");function du(I0){if(I0===void 0)return null;else return I0}j(du,"undefinedToNull");function Iu(I0){if(I0===null)return;else return I0}j(Iu,"nullToUndefined");function x0(I0){return I0!==void 0&&I0!==null&&!Array.isArray(I0)&&typeof I0==="object"}j(x0,"isNamedParam");function Tu(I0,lu){switch(I0){case A.ParameterStructures.auto:if(x0(lu))return Iu(lu);else return[du(lu)];case A.ParameterStructures.byName:if(!x0(lu))throw Error("Received parameters by name but param is not an object literal.");return Iu(lu);case A.ParameterStructures.byPosition:return[du(lu)];default:throw Error(`Unknown parameter structure ${I0.toString()}`)}}j(Tu,"computeSingleParam");function Vu(I0,lu){let Hu,Ru=I0.numberOfParams;switch(Ru){case 0:Hu=void 0;break;case 1:Hu=Tu(I0.parameterStructures,lu[0]);break;default:Hu=[];for(let W4=0;W4<lu.length&&W4<Ru;W4++)Hu.push(du(lu[W4]));if(lu.length<Ru)for(let W4=lu.length;W4<Ru;W4++)Hu.push(null);break}return Hu}j(Vu,"computeMessageParams");let Zu={sendNotification:j((I0,...lu)=>{cu();let Hu,Ru;if(E.string(I0)){Hu=I0;let ru=lu[0],q4=0,F3=A.ParameterStructures.auto;if(A.ParameterStructures.is(ru))q4=1,F3=ru;let i4=lu.length,b4=i4-q4;switch(b4){case 0:Ru=void 0;break;case 1:Ru=Tu(F3,lu[q4]);break;default:if(F3===A.ParameterStructures.byName)throw Error(`Received ${b4} parameters for 'by Name' notification parameter structure.`);Ru=lu.slice(q4,i4).map((P4)=>du(P4));break}}else{let ru=lu;Hu=I0.method,Ru=Vu(I0,ru)}let W4={jsonrpc:r,method:Hu,params:Ru};return t0(W4),a.write(W4).catch((ru)=>{throw i.error("Sending notification failed."),ru})},"sendNotification"),onNotification:j((I0,lu)=>{cu();let Hu;if(E.func(I0))y=I0;else if(lu)if(E.string(I0))Hu=I0,p.set(I0,{type:void 0,handler:lu});else Hu=I0.method,p.set(I0.method,{type:I0,handler:lu});return{dispose:j(()=>{if(Hu!==void 0)p.delete(Hu);else y=void 0},"dispose")}},"onNotification"),onProgress:j((I0,lu,Hu)=>{if(e.has(lu))throw Error(`Progress handler for token ${lu} already registered`);return e.set(lu,Hu),{dispose:j(()=>{e.delete(lu)},"dispose")}},"onProgress"),sendProgress:j((I0,lu,Hu)=>{return Zu.sendNotification(k.type,{token:lu,value:Hu})},"sendProgress"),onUnhandledProgress:v0.event,sendRequest:j((I0,...lu)=>{cu(),Nu();let Hu,Ru,W4=void 0;if(E.string(I0)){Hu=I0;let i4=lu[0],b4=lu[lu.length-1],P4=0,bu=A.ParameterStructures.auto;if(A.ParameterStructures.is(i4))P4=1,bu=i4;let qu=lu.length;if(F.CancellationToken.is(b4))qu=qu-1,W4=b4;let nu=qu-P4;switch(nu){case 0:Ru=void 0;break;case 1:Ru=Tu(bu,lu[P4]);break;default:if(bu===A.ParameterStructures.byName)throw Error(`Received ${nu} parameters for 'by Name' request parameter structure.`);Ru=lu.slice(P4,qu).map((c4)=>du(c4));break}}else{let i4=lu;Hu=I0.method,Ru=Vu(I0,i4);let b4=I0.numberOfParams;W4=F.CancellationToken.is(i4[b4])?i4[b4]:void 0}let ru=N++,q4;if(W4)q4=W4.onCancellationRequested(()=>{let i4=Z0.sender.sendCancellation(Zu,ru);if(i4===void 0)return i.log(`Received no promise from cancellation strategy when cancelling id ${ru}`),Promise.resolve();else return i4.catch(()=>{i.log(`Sending cancellation messages for id ${ru} failed`)})});let F3={jsonrpc:r,id:ru,method:Hu,params:Ru};if(e0(F3),typeof Z0.sender.enableCancellation==="function")Z0.sender.enableCancellation(F3);return new Promise(async(i4,b4)=>{let P4=j((nu)=>{i4(nu),Z0.sender.cleanup(ru),q4?.dispose()},"resolveWithCleanup"),bu=j((nu)=>{b4(nu),Z0.sender.cleanup(ru),q4?.dispose()},"rejectWithCleanup"),qu={method:Hu,timerStart:Date.now(),resolve:P4,reject:bu};try{await a.write(F3),B0.set(ru,qu)}catch(nu){throw i.error("Sending request failed."),qu.reject(new A.ResponseError(A.ErrorCodes.MessageWriteError,nu.message?nu.message:"Unknown reason")),nu}})},"sendRequest"),onRequest:j((I0,lu)=>{cu();let Hu=null;if(l.is(I0))Hu=void 0,m=I0;else if(E.string(I0)){if(Hu=null,lu!==void 0)Hu=I0,$.set(I0,{handler:lu,type:void 0})}else if(lu!==void 0)Hu=I0.method,$.set(I0.method,{type:I0,handler:lu});return{dispose:j(()=>{if(Hu===null)return;if(Hu!==void 0)$.delete(Hu);else m=void 0},"dispose")}},"onRequest"),hasPendingResponse:j(()=>{return B0.size>0},"hasPendingResponse"),trace:j(async(I0,lu,Hu)=>{let Ru=!1,W4=Z.Text;if(Hu!==void 0)if(E.boolean(Hu))Ru=Hu;else Ru=Hu.sendNotification||!1,W4=Hu.traceFormat||Z.Text;if(D0=I0,P0=W4,D0===b.Off)q0=void 0;else q0=lu;if(Ru&&!h0()&&!J0())await Zu.sendNotification(J.type,{value:b.toString(I0)})},"trace"),onError:a0.event,onClose:_0.event,onUnhandledNotification:w0.event,onDispose:T0.event,end:j(()=>{a.end()},"end"),dispose:j(()=>{if(J0())return;m0=T.Disposed,T0.fire(void 0);let I0=new A.ResponseError(A.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let lu of B0.values())lu.reject(I0);if(B0=new Map,f0=new Map,k0=new Set,b0=new C.LinkedMap,E.func(a.dispose))a.dispose();if(E.func(Y.dispose))Y.dispose()},"dispose"),listen:j(()=>{cu(),Du(),m0=T.Listening,Y.listen(r0)},"listen"),inspect:j(()=>{(0,B.default)().console.log("inspect")},"inspect")};return Zu.onNotification(w.type,(I0)=>{if(D0===b.Off||!q0)return;let lu=D0===b.Verbose||D0===b.Compact;q0.log(I0.message,lu?I0.verbose:void 0)}),Zu.onNotification(k.type,(I0)=>{let lu=e.get(I0.token);if(lu)lu(I0.value);else v0.fire(I0)}),Zu}j(R,"createMessageConnection"),u.createMessageConnection=R}}),JB0=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ProgressType=u.ProgressToken=u.createMessageConnection=u.NullLogger=u.ConnectionOptions=u.ConnectionStrategy=u.AbstractMessageBuffer=u.WriteableStreamMessageWriter=u.AbstractMessageWriter=u.MessageWriter=u.ReadableStreamMessageReader=u.AbstractMessageReader=u.MessageReader=u.SharedArrayReceiverStrategy=u.SharedArraySenderStrategy=u.CancellationToken=u.CancellationTokenSource=u.Emitter=u.Event=u.Disposable=u.LRUCache=u.Touch=u.LinkedMap=u.ParameterStructures=u.NotificationType9=u.NotificationType8=u.NotificationType7=u.NotificationType6=u.NotificationType5=u.NotificationType4=u.NotificationType3=u.NotificationType2=u.NotificationType1=u.NotificationType0=u.NotificationType=u.ErrorCodes=u.ResponseError=u.RequestType9=u.RequestType8=u.RequestType7=u.RequestType6=u.RequestType5=u.RequestType4=u.RequestType3=u.RequestType2=u.RequestType1=u.RequestType0=u.RequestType=u.Message=u.RAL=void 0,u.MessageStrategy=u.CancellationStrategy=u.CancellationSenderStrategy=u.CancellationReceiverStrategy=u.ConnectionError=u.ConnectionErrors=u.LogTraceNotification=u.SetTraceNotification=u.TraceFormat=u.TraceValues=u.Trace=void 0;var B=Jn0();Object.defineProperty(u,"Message",{enumerable:!0,get:j(function(){return B.Message},"get")}),Object.defineProperty(u,"RequestType",{enumerable:!0,get:j(function(){return B.RequestType},"get")}),Object.defineProperty(u,"RequestType0",{enumerable:!0,get:j(function(){return B.RequestType0},"get")}),Object.defineProperty(u,"RequestType1",{enumerable:!0,get:j(function(){return B.RequestType1},"get")}),Object.defineProperty(u,"RequestType2",{enumerable:!0,get:j(function(){return B.RequestType2},"get")}),Object.defineProperty(u,"RequestType3",{enumerable:!0,get:j(function(){return B.RequestType3},"get")}),Object.defineProperty(u,"RequestType4",{enumerable:!0,get:j(function(){return B.RequestType4},"get")}),Object.defineProperty(u,"RequestType5",{enumerable:!0,get:j(function(){return B.RequestType5},"get")}),Object.defineProperty(u,"RequestType6",{enumerable:!0,get:j(function(){return B.RequestType6},"get")}),Object.defineProperty(u,"RequestType7",{enumerable:!0,get:j(function(){return B.RequestType7},"get")}),Object.defineProperty(u,"RequestType8",{enumerable:!0,get:j(function(){return B.RequestType8},"get")}),Object.defineProperty(u,"RequestType9",{enumerable:!0,get:j(function(){return B.RequestType9},"get")}),Object.defineProperty(u,"ResponseError",{enumerable:!0,get:j(function(){return B.ResponseError},"get")}),Object.defineProperty(u,"ErrorCodes",{enumerable:!0,get:j(function(){return B.ErrorCodes},"get")}),Object.defineProperty(u,"NotificationType",{enumerable:!0,get:j(function(){return B.NotificationType},"get")}),Object.defineProperty(u,"NotificationType0",{enumerable:!0,get:j(function(){return B.NotificationType0},"get")}),Object.defineProperty(u,"NotificationType1",{enumerable:!0,get:j(function(){return B.NotificationType1},"get")}),Object.defineProperty(u,"NotificationType2",{enumerable:!0,get:j(function(){return B.NotificationType2},"get")}),Object.defineProperty(u,"NotificationType3",{enumerable:!0,get:j(function(){return B.NotificationType3},"get")}),Object.defineProperty(u,"NotificationType4",{enumerable:!0,get:j(function(){return B.NotificationType4},"get")}),Object.defineProperty(u,"NotificationType5",{enumerable:!0,get:j(function(){return B.NotificationType5},"get")}),Object.defineProperty(u,"NotificationType6",{enumerable:!0,get:j(function(){return B.NotificationType6},"get")}),Object.defineProperty(u,"NotificationType7",{enumerable:!0,get:j(function(){return B.NotificationType7},"get")}),Object.defineProperty(u,"NotificationType8",{enumerable:!0,get:j(function(){return B.NotificationType8},"get")}),Object.defineProperty(u,"NotificationType9",{enumerable:!0,get:j(function(){return B.NotificationType9},"get")}),Object.defineProperty(u,"ParameterStructures",{enumerable:!0,get:j(function(){return B.ParameterStructures},"get")});var E=wn0();Object.defineProperty(u,"LinkedMap",{enumerable:!0,get:j(function(){return E.LinkedMap},"get")}),Object.defineProperty(u,"LRUCache",{enumerable:!0,get:j(function(){return E.LRUCache},"get")}),Object.defineProperty(u,"Touch",{enumerable:!0,get:j(function(){return E.Touch},"get")});var A=WH4();Object.defineProperty(u,"Disposable",{enumerable:!0,get:j(function(){return A.Disposable},"get")});var C=vL();Object.defineProperty(u,"Event",{enumerable:!0,get:j(function(){return C.Event},"get")}),Object.defineProperty(u,"Emitter",{enumerable:!0,get:j(function(){return C.Emitter},"get")});var D=Q$();Object.defineProperty(u,"CancellationTokenSource",{enumerable:!0,get:j(function(){return D.CancellationTokenSource},"get")}),Object.defineProperty(u,"CancellationToken",{enumerable:!0,get:j(function(){return D.CancellationToken},"get")});var F=YH4();Object.defineProperty(u,"SharedArraySenderStrategy",{enumerable:!0,get:j(function(){return F.SharedArraySenderStrategy},"get")}),Object.defineProperty(u,"SharedArrayReceiverStrategy",{enumerable:!0,get:j(function(){return F.SharedArrayReceiverStrategy},"get")});var U=RH4();Object.defineProperty(u,"MessageReader",{enumerable:!0,get:j(function(){return U.MessageReader},"get")}),Object.defineProperty(u,"AbstractMessageReader",{enumerable:!0,get:j(function(){return U.AbstractMessageReader},"get")}),Object.defineProperty(u,"ReadableStreamMessageReader",{enumerable:!0,get:j(function(){return U.ReadableStreamMessageReader},"get")});var z=TH4();Object.defineProperty(u,"MessageWriter",{enumerable:!0,get:j(function(){return z.MessageWriter},"get")}),Object.defineProperty(u,"AbstractMessageWriter",{enumerable:!0,get:j(function(){return z.AbstractMessageWriter},"get")}),Object.defineProperty(u,"WriteableStreamMessageWriter",{enumerable:!0,get:j(function(){return z.WriteableStreamMessageWriter},"get")});var k=OH4();Object.defineProperty(u,"AbstractMessageBuffer",{enumerable:!0,get:j(function(){return k.AbstractMessageBuffer},"get")});var f=IH4();Object.defineProperty(u,"ConnectionStrategy",{enumerable:!0,get:j(function(){return f.ConnectionStrategy},"get")}),Object.defineProperty(u,"ConnectionOptions",{enumerable:!0,get:j(function(){return f.ConnectionOptions},"get")}),Object.defineProperty(u,"NullLogger",{enumerable:!0,get:j(function(){return f.NullLogger},"get")}),Object.defineProperty(u,"createMessageConnection",{enumerable:!0,get:j(function(){return f.createMessageConnection},"get")}),Object.defineProperty(u,"ProgressToken",{enumerable:!0,get:j(function(){return f.ProgressToken},"get")}),Object.defineProperty(u,"ProgressType",{enumerable:!0,get:j(function(){return f.ProgressType},"get")}),Object.defineProperty(u,"Trace",{enumerable:!0,get:j(function(){return f.Trace},"get")}),Object.defineProperty(u,"TraceValues",{enumerable:!0,get:j(function(){return f.TraceValues},"get")}),Object.defineProperty(u,"TraceFormat",{enumerable:!0,get:j(function(){return f.TraceFormat},"get")}),Object.defineProperty(u,"SetTraceNotification",{enumerable:!0,get:j(function(){return f.SetTraceNotification},"get")}),Object.defineProperty(u,"LogTraceNotification",{enumerable:!0,get:j(function(){return f.LogTraceNotification},"get")}),Object.defineProperty(u,"ConnectionErrors",{enumerable:!0,get:j(function(){return f.ConnectionErrors},"get")}),Object.defineProperty(u,"ConnectionError",{enumerable:!0,get:j(function(){return f.ConnectionError},"get")}),Object.defineProperty(u,"CancellationReceiverStrategy",{enumerable:!0,get:j(function(){return f.CancellationReceiverStrategy},"get")}),Object.defineProperty(u,"CancellationSenderStrategy",{enumerable:!0,get:j(function(){return f.CancellationSenderStrategy},"get")}),Object.defineProperty(u,"CancellationStrategy",{enumerable:!0,get:j(function(){return f.CancellationStrategy},"get")}),Object.defineProperty(u,"MessageStrategy",{enumerable:!0,get:j(function(){return f.MessageStrategy},"get")});var l=lw();u.RAL=l.default}}),PH4=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(u){Object.defineProperty(u,"__esModule",{value:!0});var B=JB0(),E=class z extends B.AbstractMessageBuffer{static{j(this,"MessageBuffer")}constructor(k="utf-8"){super(k);this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return z.emptyBuffer}fromString(k,f){return new TextEncoder().encode(k)}toString(k,f){if(f==="ascii")return this.asciiDecoder.decode(k);else return new TextDecoder(f).decode(k)}asNative(k,f){if(f===void 0)return k;else return k.slice(0,f)}allocNative(k){return new Uint8Array(k)}};E.emptyBuffer=new Uint8Array(0);var A=class{static{j(this,"ReadableStreamWrapper")}constructor(z){this.socket=z,this._onData=new B.Emitter,this._messageListener=(k)=>{k.data.arrayBuffer().then((l)=>{this._onData.fire(new Uint8Array(l))},()=>{(0,B.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(z){return this.socket.addEventListener("close",z),B.Disposable.create(()=>this.socket.removeEventListener("close",z))}onError(z){return this.socket.addEventListener("error",z),B.Disposable.create(()=>this.socket.removeEventListener("error",z))}onEnd(z){return this.socket.addEventListener("end",z),B.Disposable.create(()=>this.socket.removeEventListener("end",z))}onData(z){return this._onData.event(z)}},C=class{static{j(this,"WritableStreamWrapper")}constructor(z){this.socket=z}onClose(z){return this.socket.addEventListener("close",z),B.Disposable.create(()=>this.socket.removeEventListener("close",z))}onError(z){return this.socket.addEventListener("error",z),B.Disposable.create(()=>this.socket.removeEventListener("error",z))}onEnd(z){return this.socket.addEventListener("end",z),B.Disposable.create(()=>this.socket.removeEventListener("end",z))}write(z,k){if(typeof z==="string"){if(k!==void 0&&k!=="utf-8")throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${k}`);this.socket.send(z)}else this.socket.send(z);return Promise.resolve()}end(){this.socket.close()}},D=new TextEncoder,F=Object.freeze({messageBuffer:Object.freeze({create:j((z)=>new E(z),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:j((z,k)=>{if(k.charset!=="utf-8")throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${k.charset}`);return Promise.resolve(D.encode(JSON.stringify(z,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:j((z,k)=>{if(!(z instanceof Uint8Array))throw Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(k.charset).decode(z)))},"decode")})}),stream:Object.freeze({asReadableStream:j((z)=>new A(z),"asReadableStream"),asWritableStream:j((z)=>new C(z),"asWritableStream")}),console,timer:Object.freeze({setTimeout(z,k,...f){let l=setTimeout(z,k,...f);return{dispose:j(()=>clearTimeout(l),"dispose")}},setImmediate(z,...k){let f=setTimeout(z,0,...k);return{dispose:j(()=>clearTimeout(f),"dispose")}},setInterval(z,k,...f){let l=setInterval(z,k,...f);return{dispose:j(()=>clearInterval(l),"dispose")}}})});function U(){return F}j(U,"RIL"),function(z){function k(){B.RAL.install(F)}j(k,"install"),z.install=k}(U||(U={})),u.default=U}}),SL=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(u){var B=u&&u.__createBinding||(Object.create?function(z,k,f,l){if(l===void 0)l=f;var b=Object.getOwnPropertyDescriptor(k,f);if(!b||("get"in b?!k.__esModule:b.writable||b.configurable))b={enumerable:!0,get:j(function(){return k[f]},"get")};Object.defineProperty(z,l,b)}:function(z,k,f,l){if(l===void 0)l=f;z[l]=k[f]}),E=u&&u.__exportStar||function(z,k){for(var f in z)if(f!=="default"&&!Object.prototype.hasOwnProperty.call(k,f))B(k,z,f)};Object.defineProperty(u,"__esModule",{value:!0}),u.createMessageConnection=u.BrowserMessageWriter=u.BrowserMessageReader=void 0;var A=PH4();A.default.install();var C=JB0();E(JB0(),u);var D=class extends C.AbstractMessageReader{static{j(this,"BrowserMessageReader")}constructor(z){super();this._onData=new C.Emitter,this._messageListener=(k)=>{this._onData.fire(k.data)},z.addEventListener("error",(k)=>this.fireError(k)),z.onmessage=this._messageListener}listen(z){return this._onData.event(z)}};u.BrowserMessageReader=D;var F=class extends C.AbstractMessageWriter{static{j(this,"BrowserMessageWriter")}constructor(z){super();this.port=z,this.errorCount=0,z.addEventListener("error",(k)=>this.fireError(k))}write(z){try{return this.port.postMessage(z),Promise.resolve()}catch(k){return this.handleError(k,z),Promise.reject(k)}}handleError(z,k){this.errorCount++,this.fireError(z,k,this.errorCount)}end(){}};u.BrowserMessageWriter=F;function U(z,k,f,l){if(f===void 0)f=C.NullLogger;if(C.ConnectionStrategy.is(l))l={connectionStrategy:l};return(0,C.createMessageConnection)(z,k,f,l)}j(U,"createMessageConnection"),u.createMessageConnection=U}}),Xg0=r3({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(u,B){B.exports=SL()}}),q9=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ProtocolNotificationType=u.ProtocolNotificationType0=u.ProtocolRequestType=u.ProtocolRequestType0=u.RegistrationType=u.MessageDirection=void 0;var B=SL(),E;(function(z){z.clientToServer="clientToServer",z.serverToClient="serverToClient",z.both="both"})(E||(u.MessageDirection=E={}));var A=class{static{j(this,"RegistrationType")}constructor(z){this.method=z}};u.RegistrationType=A;var C=class extends B.RequestType0{static{j(this,"ProtocolRequestType0")}constructor(z){super(z)}};u.ProtocolRequestType0=C;var D=class extends B.RequestType{static{j(this,"ProtocolRequestType")}constructor(z){super(z,B.ParameterStructures.byName)}};u.ProtocolRequestType=D;var F=class extends B.NotificationType0{static{j(this,"ProtocolNotificationType0")}constructor(z){super(z)}};u.ProtocolNotificationType0=F;var U=class extends B.NotificationType{static{j(this,"ProtocolNotificationType")}constructor(z){super(z,B.ParameterStructures.byName)}};u.ProtocolNotificationType=U}}),w80=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.objectLiteral=u.typedArray=u.stringArray=u.array=u.func=u.error=u.number=u.string=u.boolean=void 0;function B(f){return f===!0||f===!1}j(B,"boolean"),u.boolean=B;function E(f){return typeof f==="string"||f instanceof String}j(E,"string"),u.string=E;function A(f){return typeof f==="number"||f instanceof Number}j(A,"number"),u.number=A;function C(f){return f instanceof Error}j(C,"error"),u.error=C;function D(f){return typeof f==="function"}j(D,"func"),u.func=D;function F(f){return Array.isArray(f)}j(F,"array"),u.array=F;function U(f){return F(f)&&f.every((l)=>E(l))}j(U,"stringArray"),u.stringArray=U;function z(f,l){return Array.isArray(f)&&f.every(l)}j(z,"typedArray"),u.typedArray=z;function k(f){return f!==null&&typeof f==="object"}j(k,"objectLiteral"),u.objectLiteral=k}}),jH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ImplementationRequest=void 0;var B=q9(),E;(function(A){A.method="textDocument/implementation",A.messageDirection=B.MessageDirection.clientToServer,A.type=new B.ProtocolRequestType(A.method)})(E||(u.ImplementationRequest=E={}))}}),NH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.TypeDefinitionRequest=void 0;var B=q9(),E;(function(A){A.method="textDocument/typeDefinition",A.messageDirection=B.MessageDirection.clientToServer,A.type=new B.ProtocolRequestType(A.method)})(E||(u.TypeDefinitionRequest=E={}))}}),iH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.DidChangeWorkspaceFoldersNotification=u.WorkspaceFoldersRequest=void 0;var B=q9(),E;(function(C){C.method="workspace/workspaceFolders",C.messageDirection=B.MessageDirection.serverToClient,C.type=new B.ProtocolRequestType0(C.method)})(E||(u.WorkspaceFoldersRequest=E={}));var A;(function(C){C.method="workspace/didChangeWorkspaceFolders",C.messageDirection=B.MessageDirection.clientToServer,C.type=new B.ProtocolNotificationType(C.method)})(A||(u.DidChangeWorkspaceFoldersNotification=A={}))}}),aH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ConfigurationRequest=void 0;var B=q9(),E;(function(A){A.method="workspace/configuration",A.messageDirection=B.MessageDirection.serverToClient,A.type=new B.ProtocolRequestType(A.method)})(E||(u.ConfigurationRequest=E={}))}}),VH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ColorPresentationRequest=u.DocumentColorRequest=void 0;var B=q9(),E;(function(C){C.method="textDocument/documentColor",C.messageDirection=B.MessageDirection.clientToServer,C.type=new B.ProtocolRequestType(C.method)})(E||(u.DocumentColorRequest=E={}));var A;(function(C){C.method="textDocument/colorPresentation",C.messageDirection=B.MessageDirection.clientToServer,C.type=new B.ProtocolRequestType(C.method)})(A||(u.ColorPresentationRequest=A={}))}}),hH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.FoldingRangeRefreshRequest=u.FoldingRangeRequest=void 0;var B=q9(),E;(function(C){C.method="textDocument/foldingRange",C.messageDirection=B.MessageDirection.clientToServer,C.type=new B.ProtocolRequestType(C.method)})(E||(u.FoldingRangeRequest=E={}));var A;(function(C){C.method="workspace/foldingRange/refresh",C.messageDirection=B.MessageDirection.serverToClient,C.type=new B.ProtocolRequestType0(C.method)})(A||(u.FoldingRangeRefreshRequest=A={}))}}),mH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.DeclarationRequest=void 0;var B=q9(),E;(function(A){A.method="textDocument/declaration",A.messageDirection=B.MessageDirection.clientToServer,A.type=new B.ProtocolRequestType(A.method)})(E||(u.DeclarationRequest=E={}))}}),rH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.SelectionRangeRequest=void 0;var B=q9(),E;(function(A){A.method="textDocument/selectionRange",A.messageDirection=B.MessageDirection.clientToServer,A.type=new B.ProtocolRequestType(A.method)})(E||(u.SelectionRangeRequest=E={}))}}),$H4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.WorkDoneProgressCancelNotification=u.WorkDoneProgressCreateRequest=u.WorkDoneProgress=void 0;var B=SL(),E=q9(),A;(function(F){F.type=new B.ProgressType;function U(z){return z===F.type}j(U,"is"),F.is=U})(A||(u.WorkDoneProgress=A={}));var C;(function(F){F.method="window/workDoneProgress/create",F.messageDirection=E.MessageDirection.serverToClient,F.type=new E.ProtocolRequestType(F.method)})(C||(u.WorkDoneProgressCreateRequest=C={}));var D;(function(F){F.method="window/workDoneProgress/cancel",F.messageDirection=E.MessageDirection.clientToServer,F.type=new E.ProtocolNotificationType(F.method)})(D||(u.WorkDoneProgressCancelNotification=D={}))}}),yH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.CallHierarchyOutgoingCallsRequest=u.CallHierarchyIncomingCallsRequest=u.CallHierarchyPrepareRequest=void 0;var B=q9(),E;(function(D){D.method="textDocument/prepareCallHierarchy",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(E||(u.CallHierarchyPrepareRequest=E={}));var A;(function(D){D.method="callHierarchy/incomingCalls",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(A||(u.CallHierarchyIncomingCallsRequest=A={}));var C;(function(D){D.method="callHierarchy/outgoingCalls",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(C||(u.CallHierarchyOutgoingCallsRequest=C={}))}}),cH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.SemanticTokensRefreshRequest=u.SemanticTokensRangeRequest=u.SemanticTokensDeltaRequest=u.SemanticTokensRequest=u.SemanticTokensRegistrationType=u.TokenFormat=void 0;var B=q9(),E;(function(z){z.Relative="relative"})(E||(u.TokenFormat=E={}));var A;(function(z){z.method="textDocument/semanticTokens",z.type=new B.RegistrationType(z.method)})(A||(u.SemanticTokensRegistrationType=A={}));var C;(function(z){z.method="textDocument/semanticTokens/full",z.messageDirection=B.MessageDirection.clientToServer,z.type=new B.ProtocolRequestType(z.method),z.registrationMethod=A.method})(C||(u.SemanticTokensRequest=C={}));var D;(function(z){z.method="textDocument/semanticTokens/full/delta",z.messageDirection=B.MessageDirection.clientToServer,z.type=new B.ProtocolRequestType(z.method),z.registrationMethod=A.method})(D||(u.SemanticTokensDeltaRequest=D={}));var F;(function(z){z.method="textDocument/semanticTokens/range",z.messageDirection=B.MessageDirection.clientToServer,z.type=new B.ProtocolRequestType(z.method),z.registrationMethod=A.method})(F||(u.SemanticTokensRangeRequest=F={}));var U;(function(z){z.method="workspace/semanticTokens/refresh",z.messageDirection=B.MessageDirection.serverToClient,z.type=new B.ProtocolRequestType0(z.method)})(U||(u.SemanticTokensRefreshRequest=U={}))}}),gH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.ShowDocumentRequest=void 0;var B=q9(),E;(function(A){A.method="window/showDocument",A.messageDirection=B.MessageDirection.serverToClient,A.type=new B.ProtocolRequestType(A.method)})(E||(u.ShowDocumentRequest=E={}))}}),_H4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.LinkedEditingRangeRequest=void 0;var B=q9(),E;(function(A){A.method="textDocument/linkedEditingRange",A.messageDirection=B.MessageDirection.clientToServer,A.type=new B.ProtocolRequestType(A.method)})(E||(u.LinkedEditingRangeRequest=E={}))}}),nH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.WillDeleteFilesRequest=u.DidDeleteFilesNotification=u.DidRenameFilesNotification=u.WillRenameFilesRequest=u.DidCreateFilesNotification=u.WillCreateFilesRequest=u.FileOperationPatternKind=void 0;var B=q9(),E;(function(k){k.file="file",k.folder="folder"})(E||(u.FileOperationPatternKind=E={}));var A;(function(k){k.method="workspace/willCreateFiles",k.messageDirection=B.MessageDirection.clientToServer,k.type=new B.ProtocolRequestType(k.method)})(A||(u.WillCreateFilesRequest=A={}));var C;(function(k){k.method="workspace/didCreateFiles",k.messageDirection=B.MessageDirection.clientToServer,k.type=new B.ProtocolNotificationType(k.method)})(C||(u.DidCreateFilesNotification=C={}));var D;(function(k){k.method="workspace/willRenameFiles",k.messageDirection=B.MessageDirection.clientToServer,k.type=new B.ProtocolRequestType(k.method)})(D||(u.WillRenameFilesRequest=D={}));var F;(function(k){k.method="workspace/didRenameFiles",k.messageDirection=B.MessageDirection.clientToServer,k.type=new B.ProtocolNotificationType(k.method)})(F||(u.DidRenameFilesNotification=F={}));var U;(function(k){k.method="workspace/didDeleteFiles",k.messageDirection=B.MessageDirection.clientToServer,k.type=new B.ProtocolNotificationType(k.method)})(U||(u.DidDeleteFilesNotification=U={}));var z;(function(k){k.method="workspace/willDeleteFiles",k.messageDirection=B.MessageDirection.clientToServer,k.type=new B.ProtocolRequestType(k.method)})(z||(u.WillDeleteFilesRequest=z={}))}}),pH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.MonikerRequest=u.MonikerKind=u.UniquenessLevel=void 0;var B=q9(),E;(function(D){D.document="document",D.project="project",D.group="group",D.scheme="scheme",D.global="global"})(E||(u.UniquenessLevel=E={}));var A;(function(D){D.$import="import",D.$export="export",D.local="local"})(A||(u.MonikerKind=A={}));var C;(function(D){D.method="textDocument/moniker",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(C||(u.MonikerRequest=C={}))}}),dH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.TypeHierarchySubtypesRequest=u.TypeHierarchySupertypesRequest=u.TypeHierarchyPrepareRequest=void 0;var B=q9(),E;(function(D){D.method="textDocument/prepareTypeHierarchy",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(E||(u.TypeHierarchyPrepareRequest=E={}));var A;(function(D){D.method="typeHierarchy/supertypes",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(A||(u.TypeHierarchySupertypesRequest=A={}));var C;(function(D){D.method="typeHierarchy/subtypes",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(C||(u.TypeHierarchySubtypesRequest=C={}))}}),sH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.InlineValueRefreshRequest=u.InlineValueRequest=void 0;var B=q9(),E;(function(C){C.method="textDocument/inlineValue",C.messageDirection=B.MessageDirection.clientToServer,C.type=new B.ProtocolRequestType(C.method)})(E||(u.InlineValueRequest=E={}));var A;(function(C){C.method="workspace/inlineValue/refresh",C.messageDirection=B.MessageDirection.serverToClient,C.type=new B.ProtocolRequestType0(C.method)})(A||(u.InlineValueRefreshRequest=A={}))}}),oH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.InlayHintRefreshRequest=u.InlayHintResolveRequest=u.InlayHintRequest=void 0;var B=q9(),E;(function(D){D.method="textDocument/inlayHint",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(E||(u.InlayHintRequest=E={}));var A;(function(D){D.method="inlayHint/resolve",D.messageDirection=B.MessageDirection.clientToServer,D.type=new B.ProtocolRequestType(D.method)})(A||(u.InlayHintResolveRequest=A={}));var C;(function(D){D.method="workspace/inlayHint/refresh",D.messageDirection=B.MessageDirection.serverToClient,D.type=new B.ProtocolRequestType0(D.method)})(C||(u.InlayHintRefreshRequest=C={}))}}),tH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.DiagnosticRefreshRequest=u.WorkspaceDiagnosticRequest=u.DocumentDiagnosticRequest=u.DocumentDiagnosticReportKind=u.DiagnosticServerCancellationData=void 0;var B=SL(),E=w80(),A=q9(),C;(function(k){function f(l){let b=l;return b&&E.boolean(b.retriggerRequest)}j(f,"is"),k.is=f})(C||(u.DiagnosticServerCancellationData=C={}));var D;(function(k){k.Full="full",k.Unchanged="unchanged"})(D||(u.DocumentDiagnosticReportKind=D={}));var F;(function(k){k.method="textDocument/diagnostic",k.messageDirection=A.MessageDirection.clientToServer,k.type=new A.ProtocolRequestType(k.method),k.partialResult=new B.ProgressType})(F||(u.DocumentDiagnosticRequest=F={}));var U;(function(k){k.method="workspace/diagnostic",k.messageDirection=A.MessageDirection.clientToServer,k.type=new A.ProtocolRequestType(k.method),k.partialResult=new B.ProgressType})(U||(u.WorkspaceDiagnosticRequest=U={}));var z;(function(k){k.method="workspace/diagnostic/refresh",k.messageDirection=A.MessageDirection.serverToClient,k.type=new A.ProtocolRequestType0(k.method)})(z||(u.DiagnosticRefreshRequest=z={}))}}),eH4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.DidCloseNotebookDocumentNotification=u.DidSaveNotebookDocumentNotification=u.DidChangeNotebookDocumentNotification=u.NotebookCellArrayChange=u.DidOpenNotebookDocumentNotification=u.NotebookDocumentSyncRegistrationType=u.NotebookDocument=u.NotebookCell=u.ExecutionSummary=u.NotebookCellKind=void 0;var B=(BR(),J80(K$)),E=w80(),A=q9(),C;(function(Z){Z.Markup=1,Z.Code=2;function J(w){return w===1||w===2}j(J,"is"),Z.is=J})(C||(u.NotebookCellKind=C={}));var D;(function(Z){function J(Q,G){let L={executionOrder:Q};if(G===!0||G===!1)L.success=G;return L}j(J,"create"),Z.create=J;function w(Q){let G=Q;return E.objectLiteral(G)&&B.uinteger.is(G.executionOrder)&&(G.success===void 0||E.boolean(G.success))}j(w,"is"),Z.is=w;function K(Q,G){if(Q===G)return!0;if(Q===null||Q===void 0||G===null||G===void 0)return!1;return Q.executionOrder===G.executionOrder&&Q.success===G.success}j(K,"equals"),Z.equals=K})(D||(u.ExecutionSummary=D={}));var F;(function(Z){function J(G,L){return{kind:G,document:L}}j(J,"create"),Z.create=J;function w(G){let L=G;return E.objectLiteral(L)&&C.is(L.kind)&&B.DocumentUri.is(L.document)&&(L.metadata===void 0||E.objectLiteral(L.metadata))}j(w,"is"),Z.is=w;function K(G,L){let H=new Set;if(G.document!==L.document)H.add("document");if(G.kind!==L.kind)H.add("kind");if(G.executionSummary!==L.executionSummary)H.add("executionSummary");if((G.metadata!==void 0||L.metadata!==void 0)&&!Q(G.metadata,L.metadata))H.add("metadata");if((G.executionSummary!==void 0||L.executionSummary!==void 0)&&!D.equals(G.executionSummary,L.executionSummary))H.add("executionSummary");return H}j(K,"diff"),Z.diff=K;function Q(G,L){if(G===L)return!0;if(G===null||G===void 0||L===null||L===void 0)return!1;if(typeof G!==typeof L)return!1;if(typeof G!=="object")return!1;let H=Array.isArray(G),q=Array.isArray(L);if(H!==q)return!1;if(H&&q){if(G.length!==L.length)return!1;for(let x=0;x<G.length;x++)if(!Q(G[x],L[x]))return!1}if(E.objectLiteral(G)&&E.objectLiteral(L)){let x=Object.keys(G),v=Object.keys(L);if(x.length!==v.length)return!1;if(x.sort(),v.sort(),!Q(x,v))return!1;for(let W=0;W<x.length;W++){let S=x[W];if(!Q(G[S],L[S]))return!1}}return!0}j(Q,"equalsMetadata")})(F||(u.NotebookCell=F={}));var U;(function(Z){function J(K,Q,G,L){return{uri:K,notebookType:Q,version:G,cells:L}}j(J,"create"),Z.create=J;function w(K){let Q=K;return E.objectLiteral(Q)&&E.string(Q.uri)&&B.integer.is(Q.version)&&E.typedArray(Q.cells,F.is)}j(w,"is"),Z.is=w})(U||(u.NotebookDocument=U={}));var z;(function(Z){Z.method="notebookDocument/sync",Z.messageDirection=A.MessageDirection.clientToServer,Z.type=new A.RegistrationType(Z.method)})(z||(u.NotebookDocumentSyncRegistrationType=z={}));var k;(function(Z){Z.method="notebookDocument/didOpen",Z.messageDirection=A.MessageDirection.clientToServer,Z.type=new A.ProtocolNotificationType(Z.method),Z.registrationMethod=z.method})(k||(u.DidOpenNotebookDocumentNotification=k={}));var f;(function(Z){function J(K){let Q=K;return E.objectLiteral(Q)&&B.uinteger.is(Q.start)&&B.uinteger.is(Q.deleteCount)&&(Q.cells===void 0||E.typedArray(Q.cells,F.is))}j(J,"is"),Z.is=J;function w(K,Q,G){let L={start:K,deleteCount:Q};if(G!==void 0)L.cells=G;return L}j(w,"create"),Z.create=w})(f||(u.NotebookCellArrayChange=f={}));var l;(function(Z){Z.method="notebookDocument/didChange",Z.messageDirection=A.MessageDirection.clientToServer,Z.type=new A.ProtocolNotificationType(Z.method),Z.registrationMethod=z.method})(l||(u.DidChangeNotebookDocumentNotification=l={}));var b;(function(Z){Z.method="notebookDocument/didSave",Z.messageDirection=A.MessageDirection.clientToServer,Z.type=new A.ProtocolNotificationType(Z.method),Z.registrationMethod=z.method})(b||(u.DidSaveNotebookDocumentNotification=b={}));var M;(function(Z){Z.method="notebookDocument/didClose",Z.messageDirection=A.MessageDirection.clientToServer,Z.type=new A.ProtocolNotificationType(Z.method),Z.registrationMethod=z.method})(M||(u.DidCloseNotebookDocumentNotification=M={}))}}),uL4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.InlineCompletionRequest=void 0;var B=q9(),E;(function(A){A.method="textDocument/inlineCompletion",A.messageDirection=B.MessageDirection.clientToServer,A.type=new B.ProtocolRequestType(A.method)})(E||(u.InlineCompletionRequest=E={}))}}),BL4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.WorkspaceSymbolRequest=u.CodeActionResolveRequest=u.CodeActionRequest=u.DocumentSymbolRequest=u.DocumentHighlightRequest=u.ReferencesRequest=u.DefinitionRequest=u.SignatureHelpRequest=u.SignatureHelpTriggerKind=u.HoverRequest=u.CompletionResolveRequest=u.CompletionRequest=u.CompletionTriggerKind=u.PublishDiagnosticsNotification=u.WatchKind=u.RelativePattern=u.FileChangeType=u.DidChangeWatchedFilesNotification=u.WillSaveTextDocumentWaitUntilRequest=u.WillSaveTextDocumentNotification=u.TextDocumentSaveReason=u.DidSaveTextDocumentNotification=u.DidCloseTextDocumentNotification=u.DidChangeTextDocumentNotification=u.TextDocumentContentChangeEvent=u.DidOpenTextDocumentNotification=u.TextDocumentSyncKind=u.TelemetryEventNotification=u.LogMessageNotification=u.ShowMessageRequest=u.ShowMessageNotification=u.MessageType=u.DidChangeConfigurationNotification=u.ExitNotification=u.ShutdownRequest=u.InitializedNotification=u.InitializeErrorCodes=u.InitializeRequest=u.WorkDoneProgressOptions=u.TextDocumentRegistrationOptions=u.StaticRegistrationOptions=u.PositionEncodingKind=u.FailureHandlingKind=u.ResourceOperationKind=u.UnregistrationRequest=u.RegistrationRequest=u.DocumentSelector=u.NotebookCellTextDocumentFilter=u.NotebookDocumentFilter=u.TextDocumentFilter=void 0,u.MonikerRequest=u.MonikerKind=u.UniquenessLevel=u.WillDeleteFilesRequest=u.DidDeleteFilesNotification=u.WillRenameFilesRequest=u.DidRenameFilesNotification=u.WillCreateFilesRequest=u.DidCreateFilesNotification=u.FileOperationPatternKind=u.LinkedEditingRangeRequest=u.ShowDocumentRequest=u.SemanticTokensRegistrationType=u.SemanticTokensRefreshRequest=u.SemanticTokensRangeRequest=u.SemanticTokensDeltaRequest=u.SemanticTokensRequest=u.TokenFormat=u.CallHierarchyPrepareRequest=u.CallHierarchyOutgoingCallsRequest=u.CallHierarchyIncomingCallsRequest=u.WorkDoneProgressCancelNotification=u.WorkDoneProgressCreateRequest=u.WorkDoneProgress=u.SelectionRangeRequest=u.DeclarationRequest=u.FoldingRangeRefreshRequest=u.FoldingRangeRequest=u.ColorPresentationRequest=u.DocumentColorRequest=u.ConfigurationRequest=u.DidChangeWorkspaceFoldersNotification=u.WorkspaceFoldersRequest=u.TypeDefinitionRequest=u.ImplementationRequest=u.ApplyWorkspaceEditRequest=u.ExecuteCommandRequest=u.PrepareRenameRequest=u.RenameRequest=u.PrepareSupportDefaultBehavior=u.DocumentOnTypeFormattingRequest=u.DocumentRangesFormattingRequest=u.DocumentRangeFormattingRequest=u.DocumentFormattingRequest=u.DocumentLinkResolveRequest=u.DocumentLinkRequest=u.CodeLensRefreshRequest=u.CodeLensResolveRequest=u.CodeLensRequest=u.WorkspaceSymbolResolveRequest=void 0,u.InlineCompletionRequest=u.DidCloseNotebookDocumentNotification=u.DidSaveNotebookDocumentNotification=u.DidChangeNotebookDocumentNotification=u.NotebookCellArrayChange=u.DidOpenNotebookDocumentNotification=u.NotebookDocumentSyncRegistrationType=u.NotebookDocument=u.NotebookCell=u.ExecutionSummary=u.NotebookCellKind=u.DiagnosticRefreshRequest=u.WorkspaceDiagnosticRequest=u.DocumentDiagnosticRequest=u.DocumentDiagnosticReportKind=u.DiagnosticServerCancellationData=u.InlayHintRefreshRequest=u.InlayHintResolveRequest=u.InlayHintRequest=u.InlineValueRefreshRequest=u.InlineValueRequest=u.TypeHierarchySupertypesRequest=u.TypeHierarchySubtypesRequest=u.TypeHierarchyPrepareRequest=void 0;var B=q9(),E=(BR(),J80(K$)),A=w80(),C=jH4();Object.defineProperty(u,"ImplementationRequest",{enumerable:!0,get:j(function(){return C.ImplementationRequest},"get")});var D=NH4();Object.defineProperty(u,"TypeDefinitionRequest",{enumerable:!0,get:j(function(){return D.TypeDefinitionRequest},"get")});var F=iH4();Object.defineProperty(u,"WorkspaceFoldersRequest",{enumerable:!0,get:j(function(){return F.WorkspaceFoldersRequest},"get")}),Object.defineProperty(u,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:j(function(){return F.DidChangeWorkspaceFoldersNotification},"get")});var U=aH4();Object.defineProperty(u,"ConfigurationRequest",{enumerable:!0,get:j(function(){return U.ConfigurationRequest},"get")});var z=VH4();Object.defineProperty(u,"DocumentColorRequest",{enumerable:!0,get:j(function(){return z.DocumentColorRequest},"get")}),Object.defineProperty(u,"ColorPresentationRequest",{enumerable:!0,get:j(function(){return z.ColorPresentationRequest},"get")});var k=hH4();Object.defineProperty(u,"FoldingRangeRequest",{enumerable:!0,get:j(function(){return k.FoldingRangeRequest},"get")}),Object.defineProperty(u,"FoldingRangeRefreshRequest",{enumerable:!0,get:j(function(){return k.FoldingRangeRefreshRequest},"get")});var f=mH4();Object.defineProperty(u,"DeclarationRequest",{enumerable:!0,get:j(function(){return f.DeclarationRequest},"get")});var l=rH4();Object.defineProperty(u,"SelectionRangeRequest",{enumerable:!0,get:j(function(){return l.SelectionRangeRequest},"get")});var b=$H4();Object.defineProperty(u,"WorkDoneProgress",{enumerable:!0,get:j(function(){return b.WorkDoneProgress},"get")}),Object.defineProperty(u,"WorkDoneProgressCreateRequest",{enumerable:!0,get:j(function(){return b.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(u,"WorkDoneProgressCancelNotification",{enumerable:!0,get:j(function(){return b.WorkDoneProgressCancelNotification},"get")});var M=yH4();Object.defineProperty(u,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:j(function(){return M.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(u,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:j(function(){return M.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(u,"CallHierarchyPrepareRequest",{enumerable:!0,get:j(function(){return M.CallHierarchyPrepareRequest},"get")});var Z=cH4();Object.defineProperty(u,"TokenFormat",{enumerable:!0,get:j(function(){return Z.TokenFormat},"get")}),Object.defineProperty(u,"SemanticTokensRequest",{enumerable:!0,get:j(function(){return Z.SemanticTokensRequest},"get")}),Object.defineProperty(u,"SemanticTokensDeltaRequest",{enumerable:!0,get:j(function(){return Z.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(u,"SemanticTokensRangeRequest",{enumerable:!0,get:j(function(){return Z.SemanticTokensRangeRequest},"get")}),Object.defineProperty(u,"SemanticTokensRefreshRequest",{enumerable:!0,get:j(function(){return Z.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(u,"SemanticTokensRegistrationType",{enumerable:!0,get:j(function(){return Z.SemanticTokensRegistrationType},"get")});var J=gH4();Object.defineProperty(u,"ShowDocumentRequest",{enumerable:!0,get:j(function(){return J.ShowDocumentRequest},"get")});var w=_H4();Object.defineProperty(u,"LinkedEditingRangeRequest",{enumerable:!0,get:j(function(){return w.LinkedEditingRangeRequest},"get")});var K=nH4();Object.defineProperty(u,"FileOperationPatternKind",{enumerable:!0,get:j(function(){return K.FileOperationPatternKind},"get")}),Object.defineProperty(u,"DidCreateFilesNotification",{enumerable:!0,get:j(function(){return K.DidCreateFilesNotification},"get")}),Object.defineProperty(u,"WillCreateFilesRequest",{enumerable:!0,get:j(function(){return K.WillCreateFilesRequest},"get")}),Object.defineProperty(u,"DidRenameFilesNotification",{enumerable:!0,get:j(function(){return K.DidRenameFilesNotification},"get")}),Object.defineProperty(u,"WillRenameFilesRequest",{enumerable:!0,get:j(function(){return K.WillRenameFilesRequest},"get")}),Object.defineProperty(u,"DidDeleteFilesNotification",{enumerable:!0,get:j(function(){return K.DidDeleteFilesNotification},"get")}),Object.defineProperty(u,"WillDeleteFilesRequest",{enumerable:!0,get:j(function(){return K.WillDeleteFilesRequest},"get")});var Q=pH4();Object.defineProperty(u,"UniquenessLevel",{enumerable:!0,get:j(function(){return Q.UniquenessLevel},"get")}),Object.defineProperty(u,"MonikerKind",{enumerable:!0,get:j(function(){return Q.MonikerKind},"get")}),Object.defineProperty(u,"MonikerRequest",{enumerable:!0,get:j(function(){return Q.MonikerRequest},"get")});var G=dH4();Object.defineProperty(u,"TypeHierarchyPrepareRequest",{enumerable:!0,get:j(function(){return G.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(u,"TypeHierarchySubtypesRequest",{enumerable:!0,get:j(function(){return G.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(u,"TypeHierarchySupertypesRequest",{enumerable:!0,get:j(function(){return G.TypeHierarchySupertypesRequest},"get")});var L=sH4();Object.defineProperty(u,"InlineValueRequest",{enumerable:!0,get:j(function(){return L.InlineValueRequest},"get")}),Object.defineProperty(u,"InlineValueRefreshRequest",{enumerable:!0,get:j(function(){return L.InlineValueRefreshRequest},"get")});var H=oH4();Object.defineProperty(u,"InlayHintRequest",{enumerable:!0,get:j(function(){return H.InlayHintRequest},"get")}),Object.defineProperty(u,"InlayHintResolveRequest",{enumerable:!0,get:j(function(){return H.InlayHintResolveRequest},"get")}),Object.defineProperty(u,"InlayHintRefreshRequest",{enumerable:!0,get:j(function(){return H.InlayHintRefreshRequest},"get")});var q=tH4();Object.defineProperty(u,"DiagnosticServerCancellationData",{enumerable:!0,get:j(function(){return q.DiagnosticServerCancellationData},"get")}),Object.defineProperty(u,"DocumentDiagnosticReportKind",{enumerable:!0,get:j(function(){return q.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(u,"DocumentDiagnosticRequest",{enumerable:!0,get:j(function(){return q.DocumentDiagnosticRequest},"get")}),Object.defineProperty(u,"WorkspaceDiagnosticRequest",{enumerable:!0,get:j(function(){return q.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(u,"DiagnosticRefreshRequest",{enumerable:!0,get:j(function(){return q.DiagnosticRefreshRequest},"get")});var x=eH4();Object.defineProperty(u,"NotebookCellKind",{enumerable:!0,get:j(function(){return x.NotebookCellKind},"get")}),Object.defineProperty(u,"ExecutionSummary",{enumerable:!0,get:j(function(){return x.ExecutionSummary},"get")}),Object.defineProperty(u,"NotebookCell",{enumerable:!0,get:j(function(){return x.NotebookCell},"get")}),Object.defineProperty(u,"NotebookDocument",{enumerable:!0,get:j(function(){return x.NotebookDocument},"get")}),Object.defineProperty(u,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:j(function(){return x.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(u,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:j(function(){return x.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(u,"NotebookCellArrayChange",{enumerable:!0,get:j(function(){return x.NotebookCellArrayChange},"get")}),Object.defineProperty(u,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:j(function(){return x.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(u,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:j(function(){return x.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(u,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:j(function(){return x.DidCloseNotebookDocumentNotification},"get")});var v=uL4();Object.defineProperty(u,"InlineCompletionRequest",{enumerable:!0,get:j(function(){return v.InlineCompletionRequest},"get")});var W;(function(x0){function Tu(Vu){let Zu=Vu;return A.string(Zu)||(A.string(Zu.language)||A.string(Zu.scheme)||A.string(Zu.pattern))}j(Tu,"is"),x0.is=Tu})(W||(u.TextDocumentFilter=W={}));var S;(function(x0){function Tu(Vu){let Zu=Vu;return A.objectLiteral(Zu)&&(A.string(Zu.notebookType)||A.string(Zu.scheme)||A.string(Zu.pattern))}j(Tu,"is"),x0.is=Tu})(S||(u.NotebookDocumentFilter=S={}));var T;(function(x0){function Tu(Vu){let Zu=Vu;return A.objectLiteral(Zu)&&(A.string(Zu.notebook)||S.is(Zu.notebook))&&(Zu.language===void 0||A.string(Zu.language))}j(Tu,"is"),x0.is=Tu})(T||(u.NotebookCellTextDocumentFilter=T={}));var R;(function(x0){function Tu(Vu){if(!Array.isArray(Vu))return!1;for(let Zu of Vu)if(!A.string(Zu)&&!W.is(Zu)&&!T.is(Zu))return!1;return!0}j(Tu,"is"),x0.is=Tu})(R||(u.DocumentSelector=R={}));var Y;(function(x0){x0.method="client/registerCapability",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolRequestType(x0.method)})(Y||(u.RegistrationRequest=Y={}));var a;(function(x0){x0.method="client/unregisterCapability",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolRequestType(x0.method)})(a||(u.UnregistrationRequest=a={}));var I;(function(x0){x0.Create="create",x0.Rename="rename",x0.Delete="delete"})(I||(u.ResourceOperationKind=I={}));var O;(function(x0){x0.Abort="abort",x0.Transactional="transactional",x0.TextOnlyTransactional="textOnlyTransactional",x0.Undo="undo"})(O||(u.FailureHandlingKind=O={}));var i;(function(x0){x0.UTF8="utf-8",x0.UTF16="utf-16",x0.UTF32="utf-32"})(i||(u.PositionEncodingKind=i={}));var N;(function(x0){function Tu(Vu){let Zu=Vu;return Zu&&A.string(Zu.id)&&Zu.id.length>0}j(Tu,"hasId"),x0.hasId=Tu})(N||(u.StaticRegistrationOptions=N={}));var V;(function(x0){function Tu(Vu){let Zu=Vu;return Zu&&(Zu.documentSelector===null||R.is(Zu.documentSelector))}j(Tu,"is"),x0.is=Tu})(V||(u.TextDocumentRegistrationOptions=V={}));var h;(function(x0){function Tu(Zu){let I0=Zu;return A.objectLiteral(I0)&&(I0.workDoneProgress===void 0||A.boolean(I0.workDoneProgress))}j(Tu,"is"),x0.is=Tu;function Vu(Zu){let I0=Zu;return I0&&A.boolean(I0.workDoneProgress)}j(Vu,"hasWorkDoneProgress"),x0.hasWorkDoneProgress=Vu})(h||(u.WorkDoneProgressOptions=h={}));var r;(function(x0){x0.method="initialize",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(r||(u.InitializeRequest=r={}));var m;(function(x0){x0.unknownProtocolVersion=1})(m||(u.InitializeErrorCodes=m={}));var $;(function(x0){x0.method="initialized",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})($||(u.InitializedNotification=$={}));var y;(function(x0){x0.method="shutdown",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType0(x0.method)})(y||(u.ShutdownRequest=y={}));var p;(function(x0){x0.method="exit",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType0(x0.method)})(p||(u.ExitNotification=p={}));var e;(function(x0){x0.method="workspace/didChangeConfiguration",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(e||(u.DidChangeConfigurationNotification=e={}));var _;(function(x0){x0.Error=1,x0.Warning=2,x0.Info=3,x0.Log=4,x0.Debug=5})(_||(u.MessageType=_={}));var b0;(function(x0){x0.method="window/showMessage",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolNotificationType(x0.method)})(b0||(u.ShowMessageNotification=b0={}));var B0;(function(x0){x0.method="window/showMessageRequest",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolRequestType(x0.method)})(B0||(u.ShowMessageRequest=B0={}));var k0;(function(x0){x0.method="window/logMessage",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolNotificationType(x0.method)})(k0||(u.LogMessageNotification=k0={}));var f0;(function(x0){x0.method="telemetry/event",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolNotificationType(x0.method)})(f0||(u.TelemetryEventNotification=f0={}));var D0;(function(x0){x0.None=0,x0.Full=1,x0.Incremental=2})(D0||(u.TextDocumentSyncKind=D0={}));var P0;(function(x0){x0.method="textDocument/didOpen",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(P0||(u.DidOpenTextDocumentNotification=P0={}));var q0;(function(x0){function Tu(Zu){let I0=Zu;return I0!==void 0&&I0!==null&&typeof I0.text==="string"&&I0.range!==void 0&&(I0.rangeLength===void 0||typeof I0.rangeLength==="number")}j(Tu,"isIncremental"),x0.isIncremental=Tu;function Vu(Zu){let I0=Zu;return I0!==void 0&&I0!==null&&typeof I0.text==="string"&&I0.range===void 0&&I0.rangeLength===void 0}j(Vu,"isFull"),x0.isFull=Vu})(q0||(u.TextDocumentContentChangeEvent=q0={}));var m0;(function(x0){x0.method="textDocument/didChange",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(m0||(u.DidChangeTextDocumentNotification=m0={}));var a0;(function(x0){x0.method="textDocument/didClose",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(a0||(u.DidCloseTextDocumentNotification=a0={}));var _0;(function(x0){x0.method="textDocument/didSave",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(_0||(u.DidSaveTextDocumentNotification=_0={}));var w0;(function(x0){x0.Manual=1,x0.AfterDelay=2,x0.FocusOut=3})(w0||(u.TextDocumentSaveReason=w0={}));var v0;(function(x0){x0.method="textDocument/willSave",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(v0||(u.WillSaveTextDocumentNotification=v0={}));var T0;(function(x0){x0.method="textDocument/willSaveWaitUntil",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(T0||(u.WillSaveTextDocumentWaitUntilRequest=T0={}));var Z0;(function(x0){x0.method="workspace/didChangeWatchedFiles",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolNotificationType(x0.method)})(Z0||(u.DidChangeWatchedFilesNotification=Z0={}));var F0;(function(x0){x0.Created=1,x0.Changed=2,x0.Deleted=3})(F0||(u.FileChangeType=F0={}));var u0;(function(x0){function Tu(Vu){let Zu=Vu;return A.objectLiteral(Zu)&&(E.URI.is(Zu.baseUri)||E.WorkspaceFolder.is(Zu.baseUri))&&A.string(Zu.pattern)}j(Tu,"is"),x0.is=Tu})(u0||(u.RelativePattern=u0={}));var M0;(function(x0){x0.Create=1,x0.Change=2,x0.Delete=4})(M0||(u.WatchKind=M0={}));var X0;(function(x0){x0.method="textDocument/publishDiagnostics",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolNotificationType(x0.method)})(X0||(u.PublishDiagnosticsNotification=X0={}));var S0;(function(x0){x0.Invoked=1,x0.TriggerCharacter=2,x0.TriggerForIncompleteCompletions=3})(S0||(u.CompletionTriggerKind=S0={}));var Y0;(function(x0){x0.method="textDocument/completion",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(Y0||(u.CompletionRequest=Y0={}));var h0;(function(x0){x0.method="completionItem/resolve",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(h0||(u.CompletionResolveRequest=h0={}));var J0;(function(x0){x0.method="textDocument/hover",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(J0||(u.HoverRequest=J0={}));var n;(function(x0){x0.Invoked=1,x0.TriggerCharacter=2,x0.ContentChange=3})(n||(u.SignatureHelpTriggerKind=n={}));var d;(function(x0){x0.method="textDocument/signatureHelp",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(d||(u.SignatureHelpRequest=d={}));var H0;(function(x0){x0.method="textDocument/definition",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(H0||(u.DefinitionRequest=H0={}));var o;(function(x0){x0.method="textDocument/references",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(o||(u.ReferencesRequest=o={}));var L0;(function(x0){x0.method="textDocument/documentHighlight",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(L0||(u.DocumentHighlightRequest=L0={}));var E0;(function(x0){x0.method="textDocument/documentSymbol",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(E0||(u.DocumentSymbolRequest=E0={}));var r0;(function(x0){x0.method="textDocument/codeAction",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(r0||(u.CodeActionRequest=r0={}));var c0;(function(x0){x0.method="codeAction/resolve",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(c0||(u.CodeActionResolveRequest=c0={}));var p0;(function(x0){x0.method="workspace/symbol",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(p0||(u.WorkspaceSymbolRequest=p0={}));var g0;(function(x0){x0.method="workspaceSymbol/resolve",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(g0||(u.WorkspaceSymbolResolveRequest=g0={}));var Bu;(function(x0){x0.method="textDocument/codeLens",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(Bu||(u.CodeLensRequest=Bu={}));var n0;(function(x0){x0.method="codeLens/resolve",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(n0||(u.CodeLensResolveRequest=n0={}));var e0;(function(x0){x0.method="workspace/codeLens/refresh",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolRequestType0(x0.method)})(e0||(u.CodeLensRefreshRequest=e0={}));var t0;(function(x0){x0.method="textDocument/documentLink",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(t0||(u.DocumentLinkRequest=t0={}));var zu;(function(x0){x0.method="documentLink/resolve",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(zu||(u.DocumentLinkResolveRequest=zu={}));var W0;(function(x0){x0.method="textDocument/formatting",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(W0||(u.DocumentFormattingRequest=W0={}));var $u;(function(x0){x0.method="textDocument/rangeFormatting",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})($u||(u.DocumentRangeFormattingRequest=$u={}));var i0;(function(x0){x0.method="textDocument/rangesFormatting",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(i0||(u.DocumentRangesFormattingRequest=i0={}));var vu;(function(x0){x0.method="textDocument/onTypeFormatting",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(vu||(u.DocumentOnTypeFormattingRequest=vu={}));var cu;(function(x0){x0.Identifier=1})(cu||(u.PrepareSupportDefaultBehavior=cu={}));var Du;(function(x0){x0.method="textDocument/rename",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(Du||(u.RenameRequest=Du={}));var Nu;(function(x0){x0.method="textDocument/prepareRename",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(Nu||(u.PrepareRenameRequest=Nu={}));var du;(function(x0){x0.method="workspace/executeCommand",x0.messageDirection=B.MessageDirection.clientToServer,x0.type=new B.ProtocolRequestType(x0.method)})(du||(u.ExecuteCommandRequest=du={}));var Iu;(function(x0){x0.method="workspace/applyEdit",x0.messageDirection=B.MessageDirection.serverToClient,x0.type=new B.ProtocolRequestType("workspace/applyEdit")})(Iu||(u.ApplyWorkspaceEditRequest=Iu={}))}}),EL4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(u){Object.defineProperty(u,"__esModule",{value:!0}),u.createProtocolConnection=void 0;var B=SL();function E(A,C,D,F){if(B.ConnectionStrategy.is(F))F={connectionStrategy:F};return(0,B.createMessageConnection)(A,C,D,F)}j(E,"createProtocolConnection"),u.createProtocolConnection=E}}),AL4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(u){var B=u&&u.__createBinding||(Object.create?function(D,F,U,z){if(z===void 0)z=U;var k=Object.getOwnPropertyDescriptor(F,U);if(!k||("get"in k?!F.__esModule:k.writable||k.configurable))k={enumerable:!0,get:j(function(){return F[U]},"get")};Object.defineProperty(D,z,k)}:function(D,F,U,z){if(z===void 0)z=U;D[z]=F[U]}),E=u&&u.__exportStar||function(D,F){for(var U in D)if(U!=="default"&&!Object.prototype.hasOwnProperty.call(F,U))B(F,D,U)};Object.defineProperty(u,"__esModule",{value:!0}),u.LSPErrorCodes=u.createProtocolConnection=void 0,E(SL(),u),E((BR(),J80(K$)),u),E(q9(),u),E(BL4(),u);var A=EL4();Object.defineProperty(u,"createProtocolConnection",{enumerable:!0,get:j(function(){return A.createProtocolConnection},"get")});var C;(function(D){D.lspReservedErrorRangeStart=-32899,D.RequestFailed=-32803,D.ServerCancelled=-32802,D.ContentModified=-32801,D.RequestCancelled=-32800,D.lspReservedErrorRangeEnd=-32800})(C||(u.LSPErrorCodes=C={}))}}),CL4=r3({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(u){var B=u&&u.__createBinding||(Object.create?function(D,F,U,z){if(z===void 0)z=U;var k=Object.getOwnPropertyDescriptor(F,U);if(!k||("get"in k?!F.__esModule:k.writable||k.configurable))k={enumerable:!0,get:j(function(){return F[U]},"get")};Object.defineProperty(D,z,k)}:function(D,F,U,z){if(z===void 0)z=U;D[z]=F[U]}),E=u&&u.__exportStar||function(D,F){for(var U in D)if(U!=="default"&&!Object.prototype.hasOwnProperty.call(F,U))B(F,D,U)};Object.defineProperty(u,"__esModule",{value:!0}),u.createProtocolConnection=void 0;var A=Xg0();E(Xg0(),u),E(AL4(),u);function C(D,F,U,z){return(0,A.createMessageConnection)(D,F,U,z)}j(C,"createProtocolConnection"),u.createProtocolConnection=C}}),P5={};Kb(P5,{AbstractAstReflection:()=>G80,AbstractCstNode:()=>LA0,AbstractLangiumParser:()=>XA0,AbstractParserErrorMessageProvider:()=>A3u,AbstractThreadedAsyncParser:()=>PI4,AstUtils:()=>H80,BiMap:()=>Pr,Cancellation:()=>O6,CompositeCstNodeImpl:()=>Zy,ContextCache:()=>Ly,CstNodeBuilder:()=>u3u,CstUtils:()=>K80,DEFAULT_TOKENIZE_OPTIONS:()=>rA0,DONE_RESULT:()=>qB,DatatypeSymbol:()=>Rr,DefaultAstNodeDescriptionProvider:()=>P3u,DefaultAstNodeLocator:()=>N3u,DefaultAsyncParser:()=>e3u,DefaultCommentProvider:()=>t3u,DefaultConfigurationProvider:()=>i3u,DefaultDocumentBuilder:()=>a3u,DefaultDocumentValidator:()=>I3u,DefaultHydrator:()=>B1u,DefaultIndexManager:()=>V3u,DefaultJsonSerializer:()=>Y3u,DefaultLangiumDocumentFactory:()=>G3u,DefaultLangiumDocuments:()=>H3u,DefaultLangiumProfiler:()=>VI4,DefaultLexer:()=>$A0,DefaultLexerErrorMessageProvider:()=>m3u,DefaultLinker:()=>L3u,DefaultNameProvider:()=>q3u,DefaultReferenceDescriptionProvider:()=>j3u,DefaultReferences:()=>X3u,DefaultScopeComputation:()=>x3u,DefaultScopeProvider:()=>W3u,DefaultServiceRegistry:()=>R3u,DefaultTokenBuilder:()=>Ky,DefaultValueConverter:()=>TA0,DefaultWorkspaceLock:()=>u1u,DefaultWorkspaceManager:()=>h3u,Deferred:()=>Kk,Disposable:()=>Fw,DisposableCache:()=>Hy,DocumentCache:()=>S3u,DocumentState:()=>E1,DocumentValidator:()=>wA,EMPTY_SCOPE:()=>RI4,EMPTY_STREAM:()=>ZL,EmptyFileSystem:()=>Y1,EmptyFileSystemProvider:()=>C1u,ErrorWithLocation:()=>W$,GrammarAST:()=>Hn0,GrammarUtils:()=>s80,IndentationAwareLexer:()=>NI4,IndentationAwareTokenBuilder:()=>A1u,JSDocDocumentationProvider:()=>o3u,LangiumCompletionParser:()=>C3u,LangiumParser:()=>E3u,LangiumParserErrorMessageProvider:()=>xA0,LeafCstNodeImpl:()=>Yr,LexingMode:()=>Ew,MapScope:()=>YI4,Module:()=>dB0,MultiMap:()=>Qk,MultiMapScope:()=>v3u,OperationCancelled:()=>eF,ParserWorker:()=>jI4,ProfilingTask:()=>F1u,Reduction:()=>aY,RefResolving:()=>aJ,RegExpUtils:()=>t80,RootCstNodeImpl:()=>qA0,SimpleCache:()=>iA0,StreamImpl:()=>tF,StreamScope:()=>gB0,TextDocument:()=>Or,TreeStreamImpl:()=>JL,URI:()=>JE,UriTrie:()=>jA0,UriUtils:()=>xB,VALIDATE_EACH_NODE:()=>O3u,ValidationCategory:()=>jr,ValidationRegistry:()=>T3u,ValueConverter:()=>sF,WorkspaceCache:()=>aA0,assertCondition:()=>o80,assertUnreachable:()=>Qb,createCompletionParser:()=>WA0,createDefaultCoreModule:()=>K1,createDefaultSharedCoreModule:()=>Q1,createGrammarConfig:()=>wE0,createLangiumParser:()=>YA0,createParser:()=>Jy,delayNextTick:()=>Qy,diagnosticData:()=>Bw,eagerLoad:()=>dA0,getDiagnosticRange:()=>hA0,indentationBuilderDefaultOptions:()=>oB0,inject:()=>Q3,interruptAndCheck:()=>I5,isAstNode:()=>R2,isAstNodeDescription:()=>Q80,isAstNodeWithComment:()=>VA0,isCompositeCstNode:()=>kk,isIMultiModeLexerDefinition:()=>xy,isJSDoc:()=>cA0,isLeafCstNode:()=>bw,isLinkingError:()=>VJ,isMultiReference:()=>uU,isNamed:()=>NA0,isOperationCancelled:()=>Ow,isReference:()=>XB,isRootCstNode:()=>G$,isTokenTypeArray:()=>Xy,isTokenTypeDictionary:()=>Nr,loadGrammarFromJson:()=>j5,parseJSDoc:()=>yA0,prepareLangiumParser:()=>RA0,setInterruptionPeriod:()=>OA0,startCancelableOperation:()=>Gy,stream:()=>F6,toDiagnosticData:()=>mA0,toDiagnosticSeverity:()=>WY});K80={};Kb(K80,{DefaultNameRegexp:()=>g80,RangeComparison:()=>oF,compareRange:()=>y80,findCommentNode:()=>_80,findDeclarationNodeAtOffset:()=>hn0,findLeafNodeAtOffset:()=>S$,findLeafNodeBeforeOffset:()=>n80,flattenCst:()=>Vn0,getDatatypeNode:()=>an0,getInteriorNodes:()=>$n0,getNextNode:()=>mn0,getPreviousNode:()=>d80,getStartlineNode:()=>rn0,inRange:()=>c80,isChildNode:()=>$80,isCommentNode:()=>br,streamCst:()=>GL,toDocumentSegment:()=>HL,tokenToRange:()=>VY});j(R2,"isAstNode");j(XB,"isReference");j(uU,"isMultiReference");j(Q80,"isAstNodeDescription");j(VJ,"isLinkingError");G80=class{static{j(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(u){let B=this.types[u.container.$type];if(!B)throw Error(`Type ${u.container.$type||"undefined"} not found.`);let E=B.properties[u.property]?.referenceType;if(!E)throw Error(`Property ${u.property||"undefined"} of type ${u.container.$type} is not a reference.`);return E}getTypeMetaData(u){let B=this.types[u];if(!B)return{name:u,properties:{},superTypes:[]};return B}isInstance(u,B){return R2(u)&&this.isSubtype(u.$type,B)}isSubtype(u,B){if(u===B)return!0;let E=this.subtypes[u];if(!E)E=this.subtypes[u]={};let A=E[B];if(A!==void 0)return A;else{let C=this.types[u],D=C?C.superTypes.some((F)=>this.isSubtype(F,B)):!1;return E[B]=D,D}}getAllSubTypes(u){let B=this.allSubtypes[u];if(B)return B;else{let E=this.getAllTypes(),A=[];for(let C of E)if(this.isSubtype(C,u))A.push(C);return this.allSubtypes[u]=A,A}}};j(kk,"isCompositeCstNode");j(bw,"isLeafCstNode");j(G$,"isRootCstNode");tF=class u{static{j(this,"StreamImpl")}constructor(B,E){this.startFn=B,this.nextFn=E}iterator(){let B={state:this.startFn(),next:j(()=>this.nextFn(B.state),"next"),[Symbol.iterator]:()=>B};return B}[Symbol.iterator](){return this.iterator()}isEmpty(){let B=this.iterator();return Boolean(B.next().done)}count(){let B=this.iterator(),E=0,A=B.next();while(!A.done)E++,A=B.next();return E}toArray(){let B=[],E=this.iterator(),A;do if(A=E.next(),A.value!==void 0)B.push(A.value);while(!A.done);return B}toSet(){return new Set(this)}toMap(B,E){let A=this.map((C)=>[B?B(C):C,E?E(C):C]);return new Map(A)}toString(){return this.join()}concat(B){return new u(()=>({first:this.startFn(),firstDone:!1,iterator:B[Symbol.iterator]()}),(E)=>{let A;if(!E.firstDone){do if(A=this.nextFn(E.first),!A.done)return A;while(!A.done);E.firstDone=!0}do if(A=E.iterator.next(),!A.done)return A;while(!A.done);return qB})}join(B=","){let E=this.iterator(),A="",C,D=!1;do{if(C=E.next(),!C.done){if(D)A+=B;A+=Qn0(C.value)}D=!0}while(!C.done);return A}indexOf(B,E=0){let A=this.iterator(),C=0,D=A.next();while(!D.done){if(C>=E&&D.value===B)return C;D=A.next(),C++}return-1}every(B){let E=this.iterator(),A=E.next();while(!A.done){if(!B(A.value))return!1;A=E.next()}return!0}some(B){let E=this.iterator(),A=E.next();while(!A.done){if(B(A.value))return!0;A=E.next()}return!1}forEach(B){let E=this.iterator(),A=0,C=E.next();while(!C.done)B(C.value,A),C=E.next(),A++}map(B){return new u(this.startFn,(E)=>{let{done:A,value:C}=this.nextFn(E);if(A)return qB;else return{done:!1,value:B(C)}})}filter(B){return new u(this.startFn,(E)=>{let A;do if(A=this.nextFn(E),!A.done&&B(A.value))return A;while(!A.done);return qB})}nonNullable(){return this.filter((B)=>B!==void 0&&B!==null)}reduce(B,E){let A=this.iterator(),C=E,D=A.next();while(!D.done){if(C===void 0)C=D.value;else C=B(C,D.value);D=A.next()}return C}reduceRight(B,E){return this.recursiveReduce(this.iterator(),B,E)}recursiveReduce(B,E,A){let C=B.next();if(C.done)return A;let D=this.recursiveReduce(B,E,A);if(D===void 0)return C.value;return E(D,C.value)}find(B){let E=this.iterator(),A=E.next();while(!A.done){if(B(A.value))return A.value;A=E.next()}return}findIndex(B){let E=this.iterator(),A=0,C=E.next();while(!C.done){if(B(C.value))return A;C=E.next(),A++}return-1}includes(B){let E=this.iterator(),A=E.next();while(!A.done){if(A.value===B)return!0;A=E.next()}return!1}flatMap(B){return new u(()=>({this:this.startFn()}),(E)=>{do{if(E.iterator){let D=E.iterator.next();if(D.done)E.iterator=void 0;else return D}let{done:A,value:C}=this.nextFn(E.this);if(!A){let D=B(C);if(iY(D))E.iterator=D[Symbol.iterator]();else return{done:!1,value:D}}}while(E.iterator);return qB})}flat(B){if(B===void 0)B=1;if(B<=0)return this;let E=B>1?this.flat(B-1):this;return new u(()=>({this:E.startFn()}),(A)=>{do{if(A.iterator){let F=A.iterator.next();if(F.done)A.iterator=void 0;else return F}let{done:C,value:D}=E.nextFn(A.this);if(!C)if(iY(D))A.iterator=D[Symbol.iterator]();else return{done:!1,value:D}}while(A.iterator);return qB})}head(){let E=this.iterator().next();if(E.done)return;return E.value}tail(B=1){return new u(()=>{let E=this.startFn();for(let A=0;A<B;A++)if(this.nextFn(E).done)return E;return E},this.nextFn)}limit(B){return new u(()=>({size:0,state:this.startFn()}),(E)=>{if(E.size++,E.size>B)return qB;return this.nextFn(E.state)})}distinct(B){return new u(()=>({set:new Set,internalState:this.startFn()}),(E)=>{let A;do if(A=this.nextFn(E.internalState),!A.done){let C=B?B(A.value):A.value;if(!E.set.has(C))return E.set.add(C),A}while(!A.done);return qB})}exclude(B,E){let A=new Set;for(let C of B){let D=E?E(C):C;A.add(D)}return this.filter((C)=>{let D=E?E(C):C;return!A.has(D)})}};j(Qn0,"toString");j(iY,"isIterable");ZL=new tF(()=>{return},()=>qB),qB=Object.freeze({done:!0,value:void 0});j(F6,"stream");JL=class extends tF{static{j(this,"TreeStreamImpl")}constructor(u,B,E){super(()=>({iterators:E?.includeRoot?[[u][Symbol.iterator]()]:[B(u)[Symbol.iterator]()],pruned:!1}),(A)=>{if(A.pruned)A.iterators.pop(),A.pruned=!1;while(A.iterators.length>0){let D=A.iterators[A.iterators.length-1].next();if(D.done)A.iterators.pop();else return A.iterators.push(B(D.value)[Symbol.iterator]()),D}return qB})}iterator(){let u={state:this.startFn(),next:j(()=>this.nextFn(u.state),"next"),prune:j(()=>{u.state.pruned=!0},"prune"),[Symbol.iterator]:()=>u};return u}};(function(u){function B(D){return D.reduce((F,U)=>F+U,0)}j(B,"sum"),u.sum=B;function E(D){return D.reduce((F,U)=>F*U,0)}j(E,"product"),u.product=E;function A(D){return D.reduce((F,U)=>Math.min(F,U))}j(A,"min"),u.min=A;function C(D){return D.reduce((F,U)=>Math.max(F,U))}j(C,"max"),u.max=C})(aY||(aY={}));H80={};Kb(H80,{assignMandatoryProperties:()=>L80,copyAstNode:()=>tm,findRootNode:()=>UL,getContainerOfType:()=>Mw,getDocument:()=>aC,getReferenceNodes:()=>sm,hasContainerOfType:()=>Gn0,linkContentToContainer:()=>wL,streamAllContents:()=>Gk,streamAst:()=>VC,streamContents:()=>AR,streamReferences:()=>KL});j(wL,"linkContentToContainer");j(Mw,"getContainerOfType");j(Gn0,"hasContainerOfType");j(aC,"getDocument");j(UL,"findRootNode");j(sm,"getReferenceNodes");j(AR,"streamContents");j(Gk,"streamAllContents");j(VC,"streamAst");j(om,"isAstNodeInRange");j(KL,"streamReferences");j(L80,"assignMandatoryProperties");j(q80,"copyDefaultValue");j(tm,"copyAstNode");Hn0={};Kb(Hn0,{AbstractElement:()=>G8,AbstractParserRule:()=>MY,AbstractRule:()=>eH,AbstractType:()=>ZE,Action:()=>pl,Alternatives:()=>ZY,ArrayLiteral:()=>em,ArrayType:()=>ur,Assignment:()=>dl,BooleanLiteral:()=>Br,CharacterRange:()=>sl,Condition:()=>ol,Conjunction:()=>JY,CrossReference:()=>tl,Disjunction:()=>wY,EndOfFile:()=>Er,Grammar:()=>uk,GrammarImport:()=>Ar,Group:()=>hJ,InferredType:()=>Cr,InfixRule:()=>dF,InfixRuleOperatorList:()=>KY,InfixRuleOperators:()=>Dr,Interface:()=>uL,Keyword:()=>BL,LangiumGrammarAstReflection:()=>r80,LangiumGrammarTerminals:()=>DL4,NamedArgument:()=>EL,NegatedToken:()=>mJ,Negation:()=>Fr,NumberLiteral:()=>Ur,Parameter:()=>AL,ParameterReference:()=>zr,ParserRule:()=>IC,ReferenceType:()=>QY,RegexToken:()=>rJ,ReturnType:()=>kr,RuleCall:()=>$J,SimpleType:()=>CL,StringLiteral:()=>fr,TerminalAlternatives:()=>yJ,TerminalElement:()=>H8,TerminalGroup:()=>cJ,TerminalRule:()=>Bk,TerminalRuleCall:()=>gJ,Type:()=>GY,TypeAttribute:()=>_J,TypeDefinition:()=>nJ,UnionType:()=>lr,UnorderedGroup:()=>HY,UntilToken:()=>pJ,ValueLiteral:()=>dJ,Wildcard:()=>DL,isAbstractElement:()=>H$,isAbstractParserRule:()=>Zw,isAbstractRule:()=>Ln0,isAbstractType:()=>qn0,isAction:()=>bb,isAlternatives:()=>L$,isArrayLiteral:()=>Xn0,isArrayType:()=>X80,isAssignment:()=>fk,isBooleanLiteral:()=>x80,isCharacterRange:()=>v80,isCondition:()=>xn0,isConjunction:()=>S80,isCrossReference:()=>Jw,isDisjunction:()=>W80,isEndOfFile:()=>Y80,isGrammar:()=>vn0,isGrammarImport:()=>Sn0,isGroup:()=>ww,isInferredType:()=>CR,isInfixRule:()=>QL,isInfixRuleOperatorList:()=>Wn0,isInfixRuleOperators:()=>Yn0,isInterface:()=>R80,isKeyword:()=>lk,isNamedArgument:()=>Rn0,isNegatedToken:()=>T80,isNegation:()=>O80,isNumberLiteral:()=>Tn0,isParameter:()=>On0,isParameterReference:()=>I80,isParserRule:()=>SB,isReferenceType:()=>P80,isRegexToken:()=>j80,isReturnType:()=>N80,isRuleCall:()=>bk,isSimpleType:()=>q$,isStringLiteral:()=>In0,isTerminalAlternatives:()=>i80,isTerminalElement:()=>Pn0,isTerminalGroup:()=>a80,isTerminalRule:()=>HA,isTerminalRuleCall:()=>X$,isType:()=>x$,isTypeAttribute:()=>jn0,isTypeDefinition:()=>Nn0,isUnionType:()=>V80,isUnorderedGroup:()=>v$,isUntilToken:()=>h80,isValueLiteral:()=>in0,isWildcard:()=>m80,reflection:()=>f3});DL4={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]*/},G8={$type:"AbstractElement",cardinality:"cardinality"};j(H$,"isAbstractElement");MY={$type:"AbstractParserRule"};j(Zw,"isAbstractParserRule");eH={$type:"AbstractRule"};j(Ln0,"isAbstractRule");ZE={$type:"AbstractType"};j(qn0,"isAbstractType");pl={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};j(bb,"isAction");ZY={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};j(L$,"isAlternatives");em={$type:"ArrayLiteral",elements:"elements"};j(Xn0,"isArrayLiteral");ur={$type:"ArrayType",elementType:"elementType"};j(X80,"isArrayType");dl={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};j(fk,"isAssignment");Br={$type:"BooleanLiteral",true:"true"};j(x80,"isBooleanLiteral");sl={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};j(v80,"isCharacterRange");ol={$type:"Condition"};j(xn0,"isCondition");JY={$type:"Conjunction",left:"left",right:"right"};j(S80,"isConjunction");tl={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};j(Jw,"isCrossReference");wY={$type:"Disjunction",left:"left",right:"right"};j(W80,"isDisjunction");Er={$type:"EndOfFile",cardinality:"cardinality"};j(Y80,"isEndOfFile");uk={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};j(vn0,"isGrammar");Ar={$type:"GrammarImport",path:"path"};j(Sn0,"isGrammarImport");hJ={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};j(ww,"isGroup");Cr={$type:"InferredType",name:"name"};j(CR,"isInferredType");dF={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};j(QL,"isInfixRule");KY={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};j(Wn0,"isInfixRuleOperatorList");Dr={$type:"InfixRuleOperators",precedences:"precedences"};j(Yn0,"isInfixRuleOperators");uL={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};j(R80,"isInterface");BL={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};j(lk,"isKeyword");EL={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};j(Rn0,"isNamedArgument");mJ={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};j(T80,"isNegatedToken");Fr={$type:"Negation",value:"value"};j(O80,"isNegation");Ur={$type:"NumberLiteral",value:"value"};j(Tn0,"isNumberLiteral");AL={$type:"Parameter",name:"name"};j(On0,"isParameter");zr={$type:"ParameterReference",parameter:"parameter"};j(I80,"isParameterReference");IC={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};j(SB,"isParserRule");QY={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};j(P80,"isReferenceType");rJ={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};j(j80,"isRegexToken");kr={$type:"ReturnType",name:"name"};j(N80,"isReturnType");$J={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};j(bk,"isRuleCall");CL={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};j(q$,"isSimpleType");fr={$type:"StringLiteral",value:"value"};j(In0,"isStringLiteral");yJ={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};j(i80,"isTerminalAlternatives");H8={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};j(Pn0,"isTerminalElement");cJ={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};j(a80,"isTerminalGroup");Bk={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};j(HA,"isTerminalRule");gJ={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};j(X$,"isTerminalRuleCall");GY={$type:"Type",name:"name",type:"type"};j(x$,"isType");_J={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};j(jn0,"isTypeAttribute");nJ={$type:"TypeDefinition"};j(Nn0,"isTypeDefinition");lr={$type:"UnionType",types:"types"};j(V80,"isUnionType");HY={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};j(v$,"isUnorderedGroup");pJ={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};j(h80,"isUntilToken");dJ={$type:"ValueLiteral"};j(in0,"isValueLiteral");DL={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};j(m80,"isWildcard");r80=class extends G80{static{j(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments);this.types={AbstractElement:{name:G8.$type,properties:{cardinality:{name:G8.cardinality}},superTypes:[]},AbstractParserRule:{name:MY.$type,properties:{},superTypes:[eH.$type,ZE.$type]},AbstractRule:{name:eH.$type,properties:{},superTypes:[]},AbstractType:{name:ZE.$type,properties:{},superTypes:[]},Action:{name:pl.$type,properties:{cardinality:{name:pl.cardinality},feature:{name:pl.feature},inferredType:{name:pl.inferredType},operator:{name:pl.operator},type:{name:pl.type,referenceType:ZE.$type}},superTypes:[G8.$type]},Alternatives:{name:ZY.$type,properties:{cardinality:{name:ZY.cardinality},elements:{name:ZY.elements,defaultValue:[]}},superTypes:[G8.$type]},ArrayLiteral:{name:em.$type,properties:{elements:{name:em.elements,defaultValue:[]}},superTypes:[dJ.$type]},ArrayType:{name:ur.$type,properties:{elementType:{name:ur.elementType}},superTypes:[nJ.$type]},Assignment:{name:dl.$type,properties:{cardinality:{name:dl.cardinality},feature:{name:dl.feature},operator:{name:dl.operator},predicate:{name:dl.predicate},terminal:{name:dl.terminal}},superTypes:[G8.$type]},BooleanLiteral:{name:Br.$type,properties:{true:{name:Br.true,defaultValue:!1}},superTypes:[ol.$type,dJ.$type]},CharacterRange:{name:sl.$type,properties:{cardinality:{name:sl.cardinality},left:{name:sl.left},lookahead:{name:sl.lookahead},parenthesized:{name:sl.parenthesized,defaultValue:!1},right:{name:sl.right}},superTypes:[H8.$type]},Condition:{name:ol.$type,properties:{},superTypes:[]},Conjunction:{name:JY.$type,properties:{left:{name:JY.left},right:{name:JY.right}},superTypes:[ol.$type]},CrossReference:{name:tl.$type,properties:{cardinality:{name:tl.cardinality},deprecatedSyntax:{name:tl.deprecatedSyntax,defaultValue:!1},isMulti:{name:tl.isMulti,defaultValue:!1},terminal:{name:tl.terminal},type:{name:tl.type,referenceType:ZE.$type}},superTypes:[G8.$type]},Disjunction:{name:wY.$type,properties:{left:{name:wY.left},right:{name:wY.right}},superTypes:[ol.$type]},EndOfFile:{name:Er.$type,properties:{cardinality:{name:Er.cardinality}},superTypes:[G8.$type]},Grammar:{name:uk.$type,properties:{imports:{name:uk.imports,defaultValue:[]},interfaces:{name:uk.interfaces,defaultValue:[]},isDeclared:{name:uk.isDeclared,defaultValue:!1},name:{name:uk.name},rules:{name:uk.rules,defaultValue:[]},types:{name:uk.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:Ar.$type,properties:{path:{name:Ar.path}},superTypes:[]},Group:{name:hJ.$type,properties:{cardinality:{name:hJ.cardinality},elements:{name:hJ.elements,defaultValue:[]},guardCondition:{name:hJ.guardCondition},predicate:{name:hJ.predicate}},superTypes:[G8.$type]},InferredType:{name:Cr.$type,properties:{name:{name:Cr.name}},superTypes:[ZE.$type]},InfixRule:{name:dF.$type,properties:{call:{name:dF.call},dataType:{name:dF.dataType},inferredType:{name:dF.inferredType},name:{name:dF.name},operators:{name:dF.operators},parameters:{name:dF.parameters,defaultValue:[]},returnType:{name:dF.returnType,referenceType:ZE.$type}},superTypes:[MY.$type]},InfixRuleOperatorList:{name:KY.$type,properties:{associativity:{name:KY.associativity},operators:{name:KY.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:Dr.$type,properties:{precedences:{name:Dr.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:uL.$type,properties:{attributes:{name:uL.attributes,defaultValue:[]},name:{name:uL.name},superTypes:{name:uL.superTypes,defaultValue:[],referenceType:ZE.$type}},superTypes:[ZE.$type]},Keyword:{name:BL.$type,properties:{cardinality:{name:BL.cardinality},predicate:{name:BL.predicate},value:{name:BL.value}},superTypes:[G8.$type]},NamedArgument:{name:EL.$type,properties:{calledByName:{name:EL.calledByName,defaultValue:!1},parameter:{name:EL.parameter,referenceType:AL.$type},value:{name:EL.value}},superTypes:[]},NegatedToken:{name:mJ.$type,properties:{cardinality:{name:mJ.cardinality},lookahead:{name:mJ.lookahead},parenthesized:{name:mJ.parenthesized,defaultValue:!1},terminal:{name:mJ.terminal}},superTypes:[H8.$type]},Negation:{name:Fr.$type,properties:{value:{name:Fr.value}},superTypes:[ol.$type]},NumberLiteral:{name:Ur.$type,properties:{value:{name:Ur.value}},superTypes:[dJ.$type]},Parameter:{name:AL.$type,properties:{name:{name:AL.name}},superTypes:[]},ParameterReference:{name:zr.$type,properties:{parameter:{name:zr.parameter,referenceType:AL.$type}},superTypes:[ol.$type]},ParserRule:{name:IC.$type,properties:{dataType:{name:IC.dataType},definition:{name:IC.definition},entry:{name:IC.entry,defaultValue:!1},fragment:{name:IC.fragment,defaultValue:!1},inferredType:{name:IC.inferredType},name:{name:IC.name},parameters:{name:IC.parameters,defaultValue:[]},returnType:{name:IC.returnType,referenceType:ZE.$type}},superTypes:[MY.$type]},ReferenceType:{name:QY.$type,properties:{isMulti:{name:QY.isMulti,defaultValue:!1},referenceType:{name:QY.referenceType}},superTypes:[nJ.$type]},RegexToken:{name:rJ.$type,properties:{cardinality:{name:rJ.cardinality},lookahead:{name:rJ.lookahead},parenthesized:{name:rJ.parenthesized,defaultValue:!1},regex:{name:rJ.regex}},superTypes:[H8.$type]},ReturnType:{name:kr.$type,properties:{name:{name:kr.name}},superTypes:[]},RuleCall:{name:$J.$type,properties:{arguments:{name:$J.arguments,defaultValue:[]},cardinality:{name:$J.cardinality},predicate:{name:$J.predicate},rule:{name:$J.rule,referenceType:eH.$type}},superTypes:[G8.$type]},SimpleType:{name:CL.$type,properties:{primitiveType:{name:CL.primitiveType},stringType:{name:CL.stringType},typeRef:{name:CL.typeRef,referenceType:ZE.$type}},superTypes:[nJ.$type]},StringLiteral:{name:fr.$type,properties:{value:{name:fr.value}},superTypes:[dJ.$type]},TerminalAlternatives:{name:yJ.$type,properties:{cardinality:{name:yJ.cardinality},elements:{name:yJ.elements,defaultValue:[]},lookahead:{name:yJ.lookahead},parenthesized:{name:yJ.parenthesized,defaultValue:!1}},superTypes:[H8.$type]},TerminalElement:{name:H8.$type,properties:{cardinality:{name:H8.cardinality},lookahead:{name:H8.lookahead},parenthesized:{name:H8.parenthesized,defaultValue:!1}},superTypes:[G8.$type]},TerminalGroup:{name:cJ.$type,properties:{cardinality:{name:cJ.cardinality},elements:{name:cJ.elements,defaultValue:[]},lookahead:{name:cJ.lookahead},parenthesized:{name:cJ.parenthesized,defaultValue:!1}},superTypes:[H8.$type]},TerminalRule:{name:Bk.$type,properties:{definition:{name:Bk.definition},fragment:{name:Bk.fragment,defaultValue:!1},hidden:{name:Bk.hidden,defaultValue:!1},name:{name:Bk.name},type:{name:Bk.type}},superTypes:[eH.$type]},TerminalRuleCall:{name:gJ.$type,properties:{cardinality:{name:gJ.cardinality},lookahead:{name:gJ.lookahead},parenthesized:{name:gJ.parenthesized,defaultValue:!1},rule:{name:gJ.rule,referenceType:Bk.$type}},superTypes:[H8.$type]},Type:{name:GY.$type,properties:{name:{name:GY.name},type:{name:GY.type}},superTypes:[ZE.$type]},TypeAttribute:{name:_J.$type,properties:{defaultValue:{name:_J.defaultValue},isOptional:{name:_J.isOptional,defaultValue:!1},name:{name:_J.name},type:{name:_J.type}},superTypes:[]},TypeDefinition:{name:nJ.$type,properties:{},superTypes:[]},UnionType:{name:lr.$type,properties:{types:{name:lr.types,defaultValue:[]}},superTypes:[nJ.$type]},UnorderedGroup:{name:HY.$type,properties:{cardinality:{name:HY.cardinality},elements:{name:HY.elements,defaultValue:[]}},superTypes:[G8.$type]},UntilToken:{name:pJ.$type,properties:{cardinality:{name:pJ.cardinality},lookahead:{name:pJ.lookahead},parenthesized:{name:pJ.parenthesized,defaultValue:!1},terminal:{name:pJ.terminal}},superTypes:[H8.$type]},ValueLiteral:{name:dJ.$type,properties:{},superTypes:[]},Wildcard:{name:DL.$type,properties:{cardinality:{name:DL.cardinality},lookahead:{name:DL.lookahead},parenthesized:{name:DL.parenthesized,defaultValue:!1}},superTypes:[H8.$type]}}}},f3=new r80;j(an0,"getDatatypeNode");j(GL,"streamCst");j(Vn0,"flattenCst");j($80,"isChildNode");j(VY,"tokenToRange");j(HL,"toDocumentSegment");(function(u){u[u.Before=0]="Before",u[u.After=1]="After",u[u.OverlapFront=2]="OverlapFront",u[u.OverlapBack=3]="OverlapBack",u[u.Inside=4]="Inside",u[u.Outside=5]="Outside"})(oF||(oF={}));j(y80,"compareRange");j(c80,"inRange");g80=/^[\w\p{L}]$/u;j(hn0,"findDeclarationNodeAtOffset");j(_80,"findCommentNode");j(br,"isCommentNode");j(S$,"findLeafNodeAtOffset");j(n80,"findLeafNodeBeforeOffset");j(p80,"binarySearch");j(d80,"getPreviousNode");j(mn0,"getNextNode");j(rn0,"getStartlineNode");j($n0,"getInteriorNodes");j(yn0,"getCommonParent");j(wB0,"getParentChain");s80={};Kb(s80,{findAssignment:()=>kE0,findNameAssignment:()=>j$,findNodeForKeyword:()=>zE0,findNodeForProperty:()=>O$,findNodesForKeyword:()=>sn0,findNodesForKeywordInternal:()=>P$,findNodesForProperty:()=>UE0,getActionAtElement:()=>lE0,getActionType:()=>ME0,getAllReachableRules:()=>T$,getAllRulesUsedForCrossReferences:()=>dn0,getCrossReferenceTerminal:()=>DE0,getEntryRule:()=>EE0,getExplicitRuleType:()=>FR,getHiddenRules:()=>AE0,getRuleType:()=>ZE0,getRuleTypeName:()=>Bp0,getTypeName:()=>Uw,isArrayCardinality:()=>tn0,isArrayOperator:()=>en0,isCommentTerminal:()=>FE0,isDataType:()=>up0,isDataTypeRule:()=>DR,isOptionalCardinality:()=>on0,terminalRegex:()=>UR});W$=class extends Error{static{j(this,"ErrorWithLocation")}constructor(u,B){super(u?`${B} at ${u.range.start.line}:${u.range.start.character}`:B)}};j(Qb,"assertUnreachable");j(o80,"assertCondition");t80={};Kb(t80,{NEWLINE_REGEXP:()=>gn0,escapeRegExp:()=>WL,getTerminalParts:()=>nn0,isMultilineComment:()=>e80,isWhitespace:()=>R$,partialMatches:()=>uE0,partialRegExp:()=>BE0,whitespaceCharacters:()=>pn0});j(x3,"cc");j(im,"insertToSet");j(oH,"addFlag");j(jJ,"ASSERT_EXISTS");j(zY,"ASSERT_NEVER_REACH_HERE");j(KB0,"isCharacter");Mr=[];for(let u=x3("0");u<=x3("9");u++)Mr.push(u);Zr=[x3("_")].concat(Mr);for(let u=x3("a");u<=x3("z");u++)Zr.push(u);for(let u=x3("A");u<=x3("Z");u++)Zr.push(u);xg0=[x3(" "),x3("\f"),x3(`
`),x3("\r"),x3("\t"),x3("\v"),x3("\t"),x3(" "),x3(""),x3(" "),x3(""),x3(""),x3(""),x3(""),x3(""),x3(""),x3(""),x3(""),x3(""),x3(""),x3("\u2028"),x3("\u2029"),x3(""),x3(""),x3(" "),x3("\uFEFF")],FL4=/[0-9a-fA-F]/,lm=/[0-9]/,UL4=/[1-9]/,cn0=class{static{j(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(u){this.idx=u.idx,this.input=u.input,this.groupIdx=u.groupIdx}pattern(u){this.idx=0,this.input=u,this.groupIdx=0,this.consumeChar("/");let B=this.disjunction();this.consumeChar("/");let E={type:"Flags",loc:{begin:this.idx,end:u.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};while(this.isRegExpFlag())switch(this.popChar()){case"g":oH(E,"global");break;case"i":oH(E,"ignoreCase");break;case"m":oH(E,"multiLine");break;case"u":oH(E,"unicode");break;case"y":oH(E,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:E,value:B,loc:this.loc(0)}}disjunction(){let u=[],B=this.idx;u.push(this.alternative());while(this.peekChar()==="|")this.consumeChar("|"),u.push(this.alternative());return{type:"Disjunction",value:u,loc:this.loc(B)}}alternative(){let u=[],B=this.idx;while(this.isTerm())u.push(this.term());return{type:"Alternative",value:u,loc:this.loc(B)}}term(){if(this.isAssertion())return this.assertion();else return this.atom()}assertion(){let u=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(u)};case"$":return{type:"EndAnchor",loc:this.loc(u)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(u)};case"B":return{type:"NonWordBoundary",loc:this.loc(u)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let B;switch(this.popChar()){case"=":B="Lookahead";break;case"!":B="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":B="Lookbehind";break;case"!":B="NegativeLookbehind"}break}}jJ(B);let E=this.disjunction();return this.consumeChar(")"),{type:B,value:E,loc:this.loc(u)}}return zY()}quantifier(u=!1){let B=void 0,E=this.idx;switch(this.popChar()){case"*":B={atLeast:0,atMost:1/0};break;case"+":B={atLeast:1,atMost:1/0};break;case"?":B={atLeast:0,atMost:1};break;case"{":let A=this.integerIncludingZero();switch(this.popChar()){case"}":B={atLeast:A,atMost:A};break;case",":let C;if(this.isDigit())C=this.integerIncludingZero(),B={atLeast:A,atMost:C};else B={atLeast:A,atMost:1/0};this.consumeChar("}");break}if(u===!0&&B===void 0)return;jJ(B);break}if(u===!0&&B===void 0)return;if(jJ(B)){if(this.peekChar(0)==="?")this.consumeChar("?"),B.greedy=!1;else B.greedy=!0;return B.type="Quantifier",B.loc=this.loc(E),B}}atom(){let u,B=this.idx;switch(this.peekChar()){case".":u=this.dotAll();break;case"\\":u=this.atomEscape();break;case"[":u=this.characterClass();break;case"(":u=this.group();break}if(u===void 0&&this.isPatternCharacter())u=this.patternCharacter();if(jJ(u)){if(u.loc=this.loc(B),this.isQuantifier())u.quantifier=this.quantifier();return u}return zY()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[x3(`
`),x3("\r"),x3("\u2028"),x3("\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 u,B=!1;switch(this.popChar()){case"d":u=Mr;break;case"D":u=Mr,B=!0;break;case"s":u=xg0;break;case"S":u=xg0,B=!0;break;case"w":u=Zr;break;case"W":u=Zr,B=!0;break}if(jJ(u))return{type:"Set",value:u,complement:B};return zY()}controlEscapeAtom(){let u;switch(this.popChar()){case"f":u=x3("\f");break;case"n":u=x3(`
`);break;case"r":u=x3("\r");break;case"t":u=x3("\t");break;case"v":u=x3("\v");break}if(jJ(u))return{type:"Character",value:u};return zY()}controlLetterEscapeAtom(){this.consumeChar("c");let u=this.popChar();if(/[a-zA-Z]/.test(u)===!1)throw Error("Invalid ");return{type:"Character",value:u.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:x3("\x00")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let u=this.popChar();return{type:"Character",value:x3(u)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let u=this.popChar();return{type:"Character",value:x3(u)}}}characterClass(){let u=[],B=!1;if(this.consumeChar("["),this.peekChar(0)==="^")this.consumeChar("^"),B=!0;while(this.isClassAtom()){let E=this.classAtom(),A=E.type==="Character";if(KB0(E)&&this.isRangeDash()){this.consumeChar("-");let C=this.classAtom(),D=C.type==="Character";if(KB0(C)){if(C.value<E.value)throw Error("Range out of order in character class");u.push({from:E.value,to:C.value})}else im(E.value,u),u.push(x3("-")),im(C.value,u)}else im(E.value,u)}return this.consumeChar("]"),{type:"Set",complement:B,value:u}}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:x3("\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 u=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),u=!1;break;default:this.groupIdx++;break}let B=this.disjunction();this.consumeChar(")");let E={type:"Group",capturing:u,value:B};if(u)E.idx=this.groupIdx;return E}positiveInteger(){let u=this.popChar();if(UL4.test(u)===!1)throw Error("Expecting a positive integer");while(lm.test(this.peekChar(0)))u+=this.popChar();return parseInt(u,10)}integerIncludingZero(){let u=this.popChar();if(lm.test(u)===!1)throw Error("Expecting an integer");while(lm.test(this.peekChar(0)))u+=this.popChar();return parseInt(u,10)}patternCharacter(){let u=this.popChar();switch(u){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:x3(u)}}}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 lm.test(this.peekChar(0))}isClassAtom(u=0){switch(this.peekChar(u)){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 u=this.saveState();try{return this.quantifier(!0)!==void 0}catch(B){return!1}finally{this.restoreState(u)}}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(u){let B="";for(let A=0;A<u;A++){let C=this.popChar();if(FL4.test(C)===!1)throw Error("Expecting a HexDecimal digits");B+=C}return{type:"Character",value:parseInt(B,16)}}peekChar(u=0){return this.input[this.idx+u]}popChar(){let u=this.peekChar(0);return this.consumeChar(void 0),u}consumeChar(u){if(u!==void 0&&this.input[this.idx]!==u)throw Error("Expected: '"+u+"' 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(u){return{begin:u,end:this.idx}}},Y$=class{static{j(this,"BaseRegExpVisitor")}visitChildren(u){for(let B in u){let E=u[B];if(u.hasOwnProperty(B)){if(E.type!==void 0)this.visit(E);else if(Array.isArray(E))E.forEach((A)=>{this.visit(A)},this)}}}visit(u){switch(u.type){case"Pattern":this.visitPattern(u);break;case"Flags":this.visitFlags(u);break;case"Disjunction":this.visitDisjunction(u);break;case"Alternative":this.visitAlternative(u);break;case"StartAnchor":this.visitStartAnchor(u);break;case"EndAnchor":this.visitEndAnchor(u);break;case"WordBoundary":this.visitWordBoundary(u);break;case"NonWordBoundary":this.visitNonWordBoundary(u);break;case"Lookahead":this.visitLookahead(u);break;case"NegativeLookahead":this.visitNegativeLookahead(u);break;case"Lookbehind":this.visitLookbehind(u);break;case"NegativeLookbehind":this.visitNegativeLookbehind(u);break;case"Character":this.visitCharacter(u);break;case"Set":this.visitSet(u);break;case"Group":this.visitGroup(u);break;case"GroupBackReference":this.visitGroupBackReference(u);break;case"Quantifier":this.visitQuantifier(u);break}this.visitChildren(u)}visitPattern(u){}visitFlags(u){}visitDisjunction(u){}visitAlternative(u){}visitStartAnchor(u){}visitEndAnchor(u){}visitWordBoundary(u){}visitNonWordBoundary(u){}visitLookahead(u){}visitNegativeLookahead(u){}visitLookbehind(u){}visitNegativeLookbehind(u){}visitCharacter(u){}visitSet(u){}visitGroup(u){}visitGroupBackReference(u){}visitQuantifier(u){}},gn0=/\r?\n/gm,_n0=new cn0,zL4=class extends Y${static{j(this,"TerminalRegExpVisitor")}constructor(){super(...arguments);this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(u){this.multiline=!1,this.regex=u,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(u){if(u.quantifier)this.isStarting=!1,this.endRegexpStack=[]}visitCharacter(u){let B=String.fromCharCode(u.value);if(!this.multiline&&B===`
`)this.multiline=!0;if(u.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let E=WL(B);if(this.endRegexpStack.push(E),this.isStarting)this.startRegexp+=E}}visitSet(u){if(!this.multiline){let B=this.regex.substring(u.loc.begin,u.loc.end),E=new RegExp(B);this.multiline=Boolean(`
`.match(E))}if(u.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let B=this.regex.substring(u.loc.begin,u.loc.end);if(this.endRegexpStack.push(B),this.isStarting)this.startRegexp+=B}}visitChildren(u){if(u.type==="Group"){if(u.quantifier)return}super.visitChildren(u)}},eJ=new zL4;j(nn0,"getTerminalParts");j(e80,"isMultilineComment");pn0=`\f
\r \v   \u2028\u2029 \uFEFF`.split("");j(R$,"isWhitespace");j(WL,"escapeRegExp");j(uE0,"partialMatches");j(BE0,"partialRegExp");j(EE0,"getEntryRule");j(AE0,"getHiddenRules");j(T$,"getAllReachableRules");j(CE0,"ruleDfs");j(dn0,"getAllRulesUsedForCrossReferences");j(DE0,"getCrossReferenceTerminal");j(FE0,"isCommentTerminal");j(UE0,"findNodesForProperty");j(O$,"findNodeForProperty");j(I$,"findNodesForPropertyInternal");j(sn0,"findNodesForKeyword");j(zE0,"findNodeForKeyword");j(P$,"findNodesForKeywordInternal");j(kE0,"findAssignment");j(j$,"findNameAssignment");j(fE0,"findNameAssignmentInternal");j(lE0,"getActionAtElement");j(on0,"isOptionalCardinality");j(tn0,"isArrayCardinality");j(en0,"isArrayOperator");j(DR,"isDataTypeRule");j(bE0,"isDataTypeRuleInternal");j(up0,"isDataType");j(Jr,"isDataTypeInternal");j(FR,"getExplicitRuleType");j(Uw,"getTypeName");j(ME0,"getActionType");j(Bp0,"getRuleTypeName");j(ZE0,"getRuleType");j(UR,"terminalRegex");JE0=/[\s\S]/.source;j(Kw,"abstractElementToRegex");j(Ep0,"terminalAlternativesToRegex");j(Ap0,"terminalGroupToRegex");j(Cp0,"untilTokenToRegex");j(Dp0,"negateTokenToRegex");j(Fp0,"characterRangeToRegex");j(am,"keywordToRegex");j(BU,"withCardinality");j(wE0,"createGrammarConfig");kL4=typeof global=="object"&&global&&global.Object===Object&&global,Up0=kL4,fL4=typeof self=="object"&&self&&self.Object===Object&&self,lL4=Up0||fL4||Function("return this")(),AU=lL4,bL4=AU.Symbol,QA=bL4,zp0=Object.prototype,ML4=zp0.hasOwnProperty,ZL4=zp0.toString,nW=QA?QA.toStringTag:void 0;j(kp0,"getRawTag");JL4=kp0,wL4=Object.prototype,KL4=wL4.toString;j(fp0,"objectToString");QL4=fp0,vg0=QA?QA.toStringTag:void 0;j(lp0,"baseGetTag");Gb=lp0;j(bp0,"isObjectLike");rC=bp0;j(Mp0,"isSymbol");N$=Mp0;j(Zp0,"arrayMap");zR=Zp0,qL4=Array.isArray,W1=qL4,Sg0=QA?QA.prototype:void 0,Wg0=Sg0?Sg0.toString:void 0;j(KE0,"baseToString");xL4=KE0,vL4=/\s/;j(Jp0,"trimmedEndIndex");SL4=Jp0,WL4=/^\s+/;j(wp0,"baseTrim");YL4=wp0;j(Kp0,"isObject");GA=Kp0,RL4=/^[-+]0x[0-9a-f]+$/i,TL4=/^0b[01]+$/i,OL4=/^0o[0-7]+$/i,IL4=parseInt;j(Qp0,"toNumber");PL4=Qp0;j(Gp0,"toFinite");NL4=Gp0;j(Hp0,"toInteger");kR=Hp0;j(Lp0,"identity");fR=Lp0;j(qp0,"isFunction");Hk=qp0,mL4=AU["__core-js_shared__"],p50=mL4,Tg0=function(){var u=/[^.]+$/.exec(p50&&p50.keys&&p50.keys.IE_PROTO||"");return u?"Symbol(src)_1."+u:""}();j(Xp0,"isMasked");rL4=Xp0,$L4=Function.prototype,yL4=$L4.toString;j(xp0,"toSource");Qw=xp0,cL4=/[\\^$.*+?()[\]{}|]/g,gL4=/^\[object .+?Constructor\]$/,_L4=Function.prototype,nL4=Object.prototype,pL4=_L4.toString,dL4=nL4.hasOwnProperty,sL4=RegExp("^"+pL4.call(dL4).replace(cL4,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");j(vp0,"baseIsNative");oL4=vp0;j(Sp0,"getValue");tL4=Sp0;j(Wp0,"getNative");Gw=Wp0,eL4=Gw(AU,"WeakMap"),QB0=eL4,Og0=Object.create,uq4=function(){function u(){}return j(u,"object"),function(B){if(!GA(B))return{};if(Og0)return Og0(B);u.prototype=B;var E=new u;return u.prototype=void 0,E}}(),Bq4=uq4;j(Yp0,"apply");Eq4=Yp0;j(Rp0,"noop");O5=Rp0;j(Tp0,"copyArray");Aq4=Tp0,Fq4=Date.now;j(Op0,"shortOut");Uq4=Op0;j(Ip0,"constant");zq4=Ip0,kq4=function(){try{var u=Gw(Object,"defineProperty");return u({},"",{}),u}catch(B){}}(),wr=kq4,fq4=!wr?fR:function(u,B){return wr(u,"toString",{configurable:!0,enumerable:!1,value:zq4(B),writable:!0})},lq4=fq4,bq4=Uq4(lq4),Mq4=bq4;j(Pp0,"arrayEach");jp0=Pp0;j(Np0,"baseFindIndex");ip0=Np0;j(ap0,"baseIsNaN");Zq4=ap0;j(Vp0,"strictIndexOf");Jq4=Vp0;j(hp0,"baseIndexOf");QE0=hp0;j(mp0,"arrayIncludes");rp0=mp0,Kq4=/^(?:0|[1-9]\d*)$/;j($p0,"isIndex");i$=$p0;j(yp0,"baseAssignValue");GE0=yp0;j(cp0,"eq");lR=cp0,Qq4=Object.prototype,Gq4=Qq4.hasOwnProperty;j(gp0,"assignValue");a$=gp0;j(_p0,"copyObject");bR=_p0,Ig0=Math.max;j(np0,"overRest");Hq4=np0;j(pp0,"baseRest");HE0=pp0;j(dp0,"isLength");LE0=dp0;j(sp0,"isArrayLike");CU=sp0;j(op0,"isIterateeCall");V$=op0;j(tp0,"createAssigner");qq4=tp0,Xq4=Object.prototype;j(ep0,"isPrototype");MR=ep0;j(ud0,"baseTimes");xq4=ud0;j(Bd0,"baseIsArguments");Pg0=Bd0,Ed0=Object.prototype,Sq4=Ed0.hasOwnProperty,Wq4=Ed0.propertyIsEnumerable,Yq4=Pg0(function(){return arguments}())?Pg0:function(u){return rC(u)&&Sq4.call(u,"callee")&&!Wq4.call(u,"callee")},h$=Yq4;j(Ad0,"stubFalse");Rq4=Ad0,Cd0=typeof i7=="object"&&i7&&!i7.nodeType&&i7,jg0=Cd0&&typeof T2=="object"&&T2&&!T2.nodeType&&T2,Tq4=jg0&&jg0.exports===Cd0,Ng0=Tq4?AU.Buffer:void 0,Oq4=Ng0?Ng0.isBuffer:void 0,Iq4=Oq4||Rq4,hY=Iq4,y6={};y6[pq4]=y6[dq4]=y6[sq4]=y6[oq4]=y6[tq4]=y6[eq4]=y6[uX4]=y6[BX4]=y6[EX4]=!0;y6[Pq4]=y6[jq4]=y6[_q4]=y6[Nq4]=y6[nq4]=y6[iq4]=y6[aq4]=y6[Vq4]=y6[hq4]=y6[mq4]=y6[rq4]=y6[$q4]=y6[yq4]=y6[cq4]=y6[gq4]=!1;j(Dd0,"baseIsTypedArray");AX4=Dd0;j(Fd0,"baseUnary");ZR=Fd0,Ud0=typeof i7=="object"&&i7&&!i7.nodeType&&i7,LY=Ud0&&typeof T2=="object"&&T2&&!T2.nodeType&&T2,CX4=LY&&LY.exports===Ud0,d50=CX4&&Up0.process,DX4=function(){try{var u=LY&&LY.require&&LY.require("util").types;if(u)return u;return d50&&d50.binding&&d50.binding("util")}catch(B){}}(),Mb=DX4,ig0=Mb&&Mb.isTypedArray,FX4=ig0?ZR(ig0):AX4,qE0=FX4,UX4=Object.prototype,zX4=UX4.hasOwnProperty;j(zd0,"arrayLikeKeys");kd0=zd0;j(fd0,"overArg");ld0=fd0,kX4=ld0(Object.keys,Object),fX4=kX4,lX4=Object.prototype,bX4=lX4.hasOwnProperty;j(bd0,"baseKeys");Md0=bd0;j(Zd0,"keys");wE=Zd0,MX4=Object.prototype,ZX4=MX4.hasOwnProperty,JX4=qq4(function(u,B){if(MR(B)||CU(B)){bR(B,wE(B),u);return}for(var E in B)if(ZX4.call(B,E))a$(u,E,B[E])}),KE=JX4;j(Jd0,"nativeKeysIn");wX4=Jd0,KX4=Object.prototype,QX4=KX4.hasOwnProperty;j(wd0,"baseKeysIn");GX4=wd0;j(Kd0,"keysIn");m$=Kd0,HX4=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,LX4=/^\w*$/;j(Qd0,"isKey");XE0=Qd0,qX4=Gw(Object,"create"),mY=qX4;j(Gd0,"hashClear");XX4=Gd0;j(Hd0,"hashDelete");xX4=Hd0,SX4=Object.prototype,WX4=SX4.hasOwnProperty;j(Ld0,"hashGet");YX4=Ld0,RX4=Object.prototype,TX4=RX4.hasOwnProperty;j(qd0,"hashHas");OX4=qd0;j(Xd0,"hashSet");PX4=Xd0;j(Hw,"Hash");Hw.prototype.clear=XX4;Hw.prototype.delete=xX4;Hw.prototype.get=YX4;Hw.prototype.has=OX4;Hw.prototype.set=PX4;ag0=Hw;j(xd0,"listCacheClear");jX4=xd0;j(vd0,"assocIndexOf");r$=vd0,NX4=Array.prototype,iX4=NX4.splice;j(Sd0,"listCacheDelete");aX4=Sd0;j(Wd0,"listCacheGet");VX4=Wd0;j(Yd0,"listCacheHas");hX4=Yd0;j(Rd0,"listCacheSet");mX4=Rd0;j(Lw,"ListCache");Lw.prototype.clear=jX4;Lw.prototype.delete=aX4;Lw.prototype.get=VX4;Lw.prototype.has=hX4;Lw.prototype.set=mX4;$$=Lw,rX4=Gw(AU,"Map"),rY=rX4;j(Td0,"mapCacheClear");$X4=Td0;j(Od0,"isKeyable");yX4=Od0;j(Id0,"getMapData");y$=Id0;j(Pd0,"mapCacheDelete");cX4=Pd0;j(jd0,"mapCacheGet");gX4=jd0;j(Nd0,"mapCacheHas");_X4=Nd0;j(id0,"mapCacheSet");nX4=id0;j(qw,"MapCache");qw.prototype.clear=$X4;qw.prototype.delete=cX4;qw.prototype.get=gX4;qw.prototype.has=_X4;qw.prototype.set=nX4;c$=qw;j(g$,"memoize");g$.Cache=c$;dX4=g$;j(ad0,"memoizeCapped");oX4=ad0,tX4=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,eX4=/\\(\\)?/g,ux4=oX4(function(u){var B=[];if(u.charCodeAt(0)===46)B.push("");return u.replace(tX4,function(E,A,C,D){B.push(C?D.replace(eX4,"$1"):A||E)}),B}),Bx4=ux4;j(Vd0,"toString");Ex4=Vd0;j(hd0,"castPath");_$=hd0;j(md0,"toKey");JR=md0;j(rd0,"baseGet");xE0=rd0;j($d0,"get");Cx4=$d0;j(yd0,"arrayPush");vE0=yd0,Vg0=QA?QA.isConcatSpreadable:void 0;j(cd0,"isFlattenable");Dx4=cd0;j(SE0,"baseFlatten");WE0=SE0;j(gd0,"flatten");hC=gd0,Fx4=ld0(Object.getPrototypeOf,Object),_d0=Fx4;j(nd0,"baseSlice");pd0=nd0;j(dd0,"arrayReduce");Ux4=dd0;j(sd0,"stackClear");zx4=sd0;j(od0,"stackDelete");kx4=od0;j(td0,"stackGet");fx4=td0;j(ed0,"stackHas");lx4=ed0;j(us0,"stackSet");Mx4=us0;j(Xw,"Stack");Xw.prototype.clear=zx4;Xw.prototype.delete=kx4;Xw.prototype.get=fx4;Xw.prototype.has=lx4;Xw.prototype.set=Mx4;qY=Xw;j(Bs0,"baseAssign");Zx4=Bs0;j(Es0,"baseAssignIn");Jx4=Es0,As0=typeof i7=="object"&&i7&&!i7.nodeType&&i7,hg0=As0&&typeof T2=="object"&&T2&&!T2.nodeType&&T2,wx4=hg0&&hg0.exports===As0,mg0=wx4?AU.Buffer:void 0,rg0=mg0?mg0.allocUnsafe:void 0;j(Cs0,"cloneBuffer");Kx4=Cs0;j(Ds0,"arrayFilter");YE0=Ds0;j(Fs0,"stubArray");Us0=Fs0,Qx4=Object.prototype,Gx4=Qx4.propertyIsEnumerable,$g0=Object.getOwnPropertySymbols,Hx4=!$g0?Us0:function(u){if(u==null)return[];return u=Object(u),YE0($g0(u),function(B){return Gx4.call(u,B)})},RE0=Hx4;j(zs0,"copySymbols");Lx4=zs0,qx4=Object.getOwnPropertySymbols,Xx4=!qx4?Us0:function(u){var B=[];while(u)vE0(B,RE0(u)),u=_d0(u);return B},ks0=Xx4;j(fs0,"copySymbolsIn");xx4=fs0;j(ls0,"baseGetAllKeys");bs0=ls0;j(Ms0,"getAllKeys");GB0=Ms0;j(Zs0,"getAllKeysIn");Js0=Zs0,vx4=Gw(AU,"DataView"),HB0=vx4,Sx4=Gw(AU,"Promise"),LB0=Sx4,Wx4=Gw(AU,"Set"),zL=Wx4,Rx4=Qw(HB0),Tx4=Qw(rY),Ox4=Qw(LB0),Ix4=Qw(zL),Px4=Qw(QB0),NJ=Gb;if(HB0&&NJ(new HB0(new ArrayBuffer(1)))!=ng0||rY&&NJ(new rY)!=yg0||LB0&&NJ(LB0.resolve())!=cg0||zL&&NJ(new zL)!=gg0||QB0&&NJ(new QB0)!=_g0)NJ=j(function(u){var B=Gb(u),E=B==Yx4?u.constructor:void 0,A=E?Qw(E):"";if(A)switch(A){case Rx4:return ng0;case Tx4:return yg0;case Ox4:return cg0;case Ix4:return gg0;case Px4:return _g0}return B},"getTag");LL=NJ,jx4=Object.prototype,Nx4=jx4.hasOwnProperty;j(ws0,"initCloneArray");ix4=ws0,ax4=AU.Uint8Array,Kr=ax4;j(Ks0,"cloneArrayBuffer");TE0=Ks0;j(Qs0,"cloneDataView");Vx4=Qs0,hx4=/\w*$/;j(Gs0,"cloneRegExp");mx4=Gs0,pg0=QA?QA.prototype:void 0,dg0=pg0?pg0.valueOf:void 0;j(Hs0,"cloneSymbol");rx4=Hs0;j(Ls0,"cloneTypedArray");$x4=Ls0;j(qs0,"initCloneByTag");zv4=qs0;j(Xs0,"initCloneObject");kv4=Xs0;j(xs0,"baseIsMap");lv4=xs0,sg0=Mb&&Mb.isMap,bv4=sg0?ZR(sg0):lv4,Mv4=bv4;j(vs0,"baseIsSet");Jv4=vs0,og0=Mb&&Mb.isSet,wv4=og0?ZR(og0):Jv4,Kv4=wv4,T6={};T6[Ss0]=T6[Lv4]=T6[Pv4]=T6[jv4]=T6[qv4]=T6[Xv4]=T6[Nv4]=T6[iv4]=T6[av4]=T6[Vv4]=T6[hv4]=T6[Sv4]=T6[Wv4]=T6[Ys0]=T6[Yv4]=T6[Rv4]=T6[Tv4]=T6[Ov4]=T6[mv4]=T6[rv4]=T6[$v4]=T6[yv4]=!0;T6[xv4]=T6[Ws0]=T6[Iv4]=!1;j(XY,"baseClone");cv4=XY;j(Rs0,"clone");k7=Rs0;j(Ts0,"compact");wR=Ts0;j(Os0,"setCacheAdd");nv4=Os0;j(Is0,"setCacheHas");pv4=Is0;j($Y,"SetCache");$Y.prototype.add=$Y.prototype.push=nv4;$Y.prototype.has=pv4;OE0=$Y;j(Ps0,"arraySome");js0=Ps0;j(Ns0,"cacheHas");IE0=Ns0;j(is0,"equalArrays");as0=is0;j(Vs0,"mapToArray");ov4=Vs0;j(hs0,"setToArray");PE0=hs0,tg0=QA?QA.prototype:void 0,s50=tg0?tg0.valueOf:void 0;j(ms0,"equalByTag");lS4=ms0,MS4=Object.prototype,ZS4=MS4.hasOwnProperty;j(rs0,"equalObjects");JS4=rs0,KS4=Object.prototype,B_0=KS4.hasOwnProperty;j($s0,"baseIsEqualDeep");QS4=$s0;j(jE0,"baseIsEqual");ys0=jE0;j(cs0,"baseIsMatch");LS4=cs0;j(gs0,"isStrictComparable");_s0=gs0;j(ns0,"getMatchData");qS4=ns0;j(ps0,"matchesStrictComparable");ds0=ps0;j(ss0,"baseMatches");XS4=ss0;j(os0,"baseHasIn");xS4=os0;j(ts0,"hasPath");es0=ts0;j(uo0,"hasIn");vS4=uo0;j(Bo0,"baseMatchesProperty");YS4=Bo0;j(Eo0,"baseProperty");RS4=Eo0;j(Ao0,"basePropertyDeep");TS4=Ao0;j(Co0,"property");OS4=Co0;j(Do0,"baseIteratee");DU=Do0;j(Fo0,"arrayAggregator");IS4=Fo0;j(Uo0,"createBaseFor");PS4=Uo0,jS4=PS4(),NS4=jS4;j(zo0,"baseForOwn");iS4=zo0;j(ko0,"createBaseEach");aS4=ko0,VS4=aS4(iS4),xw=VS4;j(fo0,"baseAggregator");hS4=fo0;j(lo0,"createAggregator");mS4=lo0,bo0=Object.prototype,rS4=bo0.hasOwnProperty,$S4=HE0(function(u,B){u=Object(u);var E=-1,A=B.length,C=A>2?B[2]:void 0;if(C&&V$(B[0],B[1],C))A=1;while(++E<A){var D=B[E],F=m$(D),U=-1,z=F.length;while(++U<z){var k=F[U],f=u[k];if(f===void 0||lR(f,bo0[k])&&!rS4.call(u,k))u[k]=D[k]}}return u}),NE0=$S4;j(Mo0,"isArrayLikeObject");E_0=Mo0;j(Zo0,"arrayIncludesWith");Jo0=Zo0;j(wo0,"baseDifference");cS4=wo0,gS4=HE0(function(u,B){return E_0(u)?cS4(u,WE0(B,1,E_0,!0)):[]}),n$=gS4;j(Ko0,"last");zw=Ko0;j(Qo0,"drop");U7=Qo0;j(Go0,"dropRight");yY=Go0;j(Ho0,"castFunction");_S4=Ho0;j(Lo0,"forEach");v3=Lo0;j(qo0,"arrayEvery");nS4=qo0;j(Xo0,"baseEvery");pS4=Xo0;j(xo0,"every");mC=xo0;j(vo0,"baseFilter");So0=vo0;j(Wo0,"filter");LA=Wo0;j(Yo0,"createFind");dS4=Yo0,sS4=Math.max;j(Ro0,"findIndex");oS4=Ro0,tS4=dS4(oS4),qL=tS4;j(To0,"head");$C=To0;j(Oo0,"baseMap");eS4=Oo0;j(Io0,"map");n4=Io0;j(Po0,"flatMap");KA=Po0,uW4=Object.prototype,BW4=uW4.hasOwnProperty,EW4=mS4(function(u,B,E){if(BW4.call(u,E))u[E].push(B);else GE0(u,E,[B])}),AW4=EW4,CW4=Object.prototype,DW4=CW4.hasOwnProperty;j(jo0,"baseHas");FW4=jo0;j(No0,"has");M3=No0;j(io0,"isString");L8=io0;j(ao0,"baseValues");zW4=ao0;j(Vo0,"values");B5=Vo0,kW4=Math.max;j(ho0,"includes");TB=ho0,fW4=Math.max;j(mo0,"indexOf");A_0=mo0,MW4=Object.prototype,ZW4=MW4.hasOwnProperty;j(ro0,"isEmpty");I6=ro0;j($o0,"baseIsRegExp");wW4=$o0,C_0=Mb&&Mb.isRegExp,KW4=C_0?ZR(C_0):wW4,Mk=KW4;j(yo0,"isUndefined");Zk=yo0;j(co0,"negate");GW4=co0;j(go0,"baseSet");HW4=go0;j(_o0,"basePickBy");LW4=_o0;j(no0,"pickBy");yC=no0;j(po0,"baseReduce");qW4=po0;j(do0,"reduce");QE=do0;j(so0,"reject");p$=so0;j(oo0,"baseSome");XW4=oo0;j(to0,"some");eo0=to0,vW4=!(zL&&1/PE0(new zL([,-0]))[1]==xW4)?O5:function(u){return new zL(u)},SW4=vW4;j(ut0,"baseUniq");YW4=ut0;j(Bt0,"uniq");iE0=Bt0;j(Qr,"PRINT_ERROR");j(aE0,"PRINT_WARNING");j(VE0,"timer");j(hE0,"toFastProperties");j(Et0,"tokenLabel");j(At0,"hasTokenLabel");FU=class{static{j(this,"AbstractProduction")}get definition(){return this._definition}set definition(u){this._definition=u}constructor(u){this._definition=u}accept(u){u.visit(this),v3(this.definition,(B)=>{B.accept(u)})}},WB=class extends FU{static{j(this,"NonTerminal")}constructor(u){super([]);this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}set definition(u){}get definition(){if(this.referencedRule!==void 0)return this.referencedRule.definition;return[]}accept(u){u.visit(this)}},YL=class extends FU{static{j(this,"Rule")}constructor(u){super(u.definition);this.orgText="",KE(this,yC(u,(B)=>B!==void 0))}},q8=class extends FU{static{j(this,"Alternative")}constructor(u){super(u.definition);this.ignoreAmbiguities=!1,KE(this,yC(u,(B)=>B!==void 0))}},z7=class extends FU{static{j(this,"Option")}constructor(u){super(u.definition);this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}},GE=class extends FU{static{j(this,"RepetitionMandatory")}constructor(u){super(u.definition);this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}},HE=class extends FU{static{j(this,"RepetitionMandatoryWithSeparator")}constructor(u){super(u.definition);this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}},$9=class extends FU{static{j(this,"Repetition")}constructor(u){super(u.definition);this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}},X8=class extends FU{static{j(this,"RepetitionWithSeparator")}constructor(u){super(u.definition);this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}},x8=class extends FU{static{j(this,"Alternation")}get definition(){return this._definition}set definition(u){this._definition=u}constructor(u){super(u.definition);this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,KE(this,yC(u,(B)=>B!==void 0))}},g6=class{static{j(this,"Terminal")}constructor(u){this.idx=1,KE(this,yC(u,(B)=>B!==void 0))}accept(u){u.visit(this)}};j(Ct0,"serializeGrammar");j(xY,"serializeProduction");RL=class{static{j(this,"GAstVisitor")}visit(u){let B=u;switch(B.constructor){case WB:return this.visitNonTerminal(B);case q8:return this.visitAlternative(B);case z7:return this.visitOption(B);case GE:return this.visitRepetitionMandatory(B);case HE:return this.visitRepetitionMandatoryWithSeparator(B);case X8:return this.visitRepetitionWithSeparator(B);case $9:return this.visitRepetition(B);case x8:return this.visitAlternation(B);case g6:return this.visitTerminal(B);case YL:return this.visitRule(B);default:throw Error("non exhaustive match")}}visitNonTerminal(u){}visitAlternative(u){}visitOption(u){}visitRepetition(u){}visitRepetitionMandatory(u){}visitRepetitionMandatoryWithSeparator(u){}visitRepetitionWithSeparator(u){}visitAlternation(u){}visitTerminal(u){}visitRule(u){}};j(Dt0,"isSequenceProd");j(cY,"isOptionalProd");j(Ft0,"isBranchingProd");j(NC,"getProductionDslName");d$=class{static{j(this,"RestWalker")}walk(u,B=[]){v3(u.definition,(E,A)=>{let C=U7(u.definition,A+1);if(E instanceof WB)this.walkProdRef(E,C,B);else if(E instanceof g6)this.walkTerminal(E,C,B);else if(E instanceof q8)this.walkFlat(E,C,B);else if(E instanceof z7)this.walkOption(E,C,B);else if(E instanceof GE)this.walkAtLeastOne(E,C,B);else if(E instanceof HE)this.walkAtLeastOneSep(E,C,B);else if(E instanceof X8)this.walkManySep(E,C,B);else if(E instanceof $9)this.walkMany(E,C,B);else if(E instanceof x8)this.walkOr(E,C,B);else throw Error("non exhaustive match")})}walkTerminal(u,B,E){}walkProdRef(u,B,E){}walkFlat(u,B,E){let A=B.concat(E);this.walk(u,A)}walkOption(u,B,E){let A=B.concat(E);this.walk(u,A)}walkAtLeastOne(u,B,E){let A=[new z7({definition:u.definition})].concat(B,E);this.walk(u,A)}walkAtLeastOneSep(u,B,E){let A=qB0(u,B,E);this.walk(u,A)}walkMany(u,B,E){let A=[new z7({definition:u.definition})].concat(B,E);this.walk(u,A)}walkManySep(u,B,E){let A=qB0(u,B,E);this.walk(u,A)}walkOr(u,B,E){let A=B.concat(E);v3(u.definition,(C)=>{let D=new q8({definition:[C]});this.walk(D,A)})}};j(qB0,"restForRepetitionWithSeparator");j(TL,"first");j(Ut0,"firstForSequence");j(zt0,"firstForBranching");j(kt0,"firstForTerminal");RW4=class extends d${static{j(this,"ResyncFollowsWalker")}constructor(u){super();this.topProd=u,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(u,B,E){}walkProdRef(u,B,E){let A=bt0(u.referencedRule,u.idx)+this.topProd.name,C=B.concat(E),D=new q8({definition:C}),F=TL(D);this.follows[A]=F}};j(lt0,"computeAllProdsFollows");j(bt0,"buildBetweenProdsFollowPrefix");Vm={},TW4=new cn0;j(KR,"getRegExpAst");j(Mt0,"clearRegExpParserCache");j(Jt0,"getOptimizedStartCodesIndices");j(Hr,"firstCharOptimizedIndices");j(kY,"addOptimizedIdxToResult");j(wt0,"handleIgnoreCase");j(XB0,"findCode");j(Lr,"isWholeOptional");OW4=class extends Y${static{j(this,"CharCodeFinder")}constructor(u){super();this.targetCharCodes=u,this.found=!1}visitChildren(u){if(this.found===!0)return;switch(u.type){case"Lookahead":this.visitLookahead(u);return;case"NegativeLookahead":this.visitNegativeLookahead(u);return;case"Lookbehind":this.visitLookbehind(u);return;case"NegativeLookbehind":this.visitNegativeLookbehind(u);return}super.visitChildren(u)}visitCharacter(u){if(TB(this.targetCharCodes,u.value))this.found=!0}visitSet(u){if(u.complement){if(XB0(u,this.targetCharCodes)===void 0)this.found=!0}else if(XB0(u,this.targetCharCodes)!==void 0)this.found=!0}};j(s$,"canMatchCharCode");j(Kt0,"analyzeTokenTypes");j(Qt0,"validatePatterns");j(Gt0,"validateRegExpPattern");j(Ht0,"findMissingPatterns");j(Lt0,"findInvalidPatterns");IW4=/[^\\][$]/;j(qt0,"findEndOfInputAnchor");j(Xt0,"findEmptyMatchRegExps");PW4=/[^\\[][\^]|^\^/;j(xt0,"findStartOfInputAnchor");j(vt0,"findUnsupportedFlags");j(St0,"findDuplicatePatterns");j(Wt0,"findInvalidGroupType");j(Yt0,"findModesThatDoNotExist");j(Rt0,"findUnreachablePatterns");j(Tt0,"tryToMatchStrToPattern");j(Ot0,"noMetaChar");j(It0,"usesLookAheadOrBehind");j(xB0,"addStickyFlag");j(Pt0,"performRuntimeChecks");j(jt0,"performWarningRuntimeChecks");j(Nt0,"cloneEmptyGroups");j(mE0,"isCustomPattern");j(it0,"isShortPattern");jW4={test:j(function(u){let B=u.length;for(let E=this.lastIndex;E<B;E++){let A=u.charCodeAt(E);if(A===10)return this.lastIndex=E+1,!0;else if(A===13){if(u.charCodeAt(E+1)===10)this.lastIndex=E+2;else this.lastIndex=E+1;return!0}}return!1},"test"),lastIndex:0};j(rE0,"checkLineBreaksIssues");j(at0,"buildLineBreakIssueMessage");j($E0,"getCharCodes");j(hm,"addToMapOfArrays");mm=[];j(Jk,"charCodeToOptimizedIndex");j(Vt0,"initCharCodeToOptimizedIndexMap");j(OL,"tokenStructuredMatcher");j(gY,"tokenStructuredMatcherNoCategories");ht0={};j(IL,"augmentTokenTypes");j(mt0,"expandCategories");j(rt0,"assignTokenDefaultProps");j($t0,"assignCategoriesTokensProp");j(yt0,"assignCategoriesMapProp");j(yE0,"singleAssignCategoriesToksMap");j(cE0,"hasShortKeyProperty");j(vB0,"hasCategoriesProperty");j(ct0,"hasExtendingTokensTypesProperty");j(gt0,"hasExtendingTokensTypesMapProperty");j(_t0,"isTokenType");SB0={buildUnableToPopLexerModeMessage(u){return`Unable to pop Lexer Mode after encountering Token ->${u.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(u,B,E,A,C,D){return`unexpected character: ->${u.charAt(B)}<- at offset: ${B}, skipped ${E} characters.`}};(function(u){u[u.MISSING_PATTERN=0]="MISSING_PATTERN",u[u.INVALID_PATTERN=1]="INVALID_PATTERN",u[u.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",u[u.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",u[u.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",u[u.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",u[u.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",u[u.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",u[u.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",u[u.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",u[u.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",u[u.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",u[u.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",u[u.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",u[u.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",u[u.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",u[u.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",u[u.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(y9||(y9={}));bY={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:SB0,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(bY);vB=class{static{j(this,"Lexer")}constructor(u,B=bY){if(this.lexerDefinition=u,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=(A,C)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let D=Array(this.traceInitIndent+1).join("\t");if(this.traceInitIndent<this.traceInitMaxIdent)console.log(`${D}--> <${A}>`);let{time:F,value:U}=VE0(C),z=F>10?console.warn:console.log;if(this.traceInitIndent<this.traceInitMaxIdent)z(`${D}<-- <${A}> time: ${F}ms`);return this.traceInitIndent--,U}else return C()},typeof B==="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=KE({},bY,B);let E=this.config.traceInitPerf;if(E===!0)this.traceInitMaxIdent=1/0,this.traceInitPerf=!0;else if(typeof E==="number")this.traceInitMaxIdent=E,this.traceInitPerf=!0;this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let A,C=!0;if(this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===bY.lineTerminatorsPattern)this.config.lineTerminatorsPattern=jW4;else if(this.config.lineTerminatorCharacters===bY.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(B.safeMode&&B.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),W1(u))A={modes:{defaultMode:k7(u)},defaultMode:fY};else C=!1,A=k7(u)}),this.config.skipValidations===!1)this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Pt0(A,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(jt0(A,this.trackStartLines,this.config.lineTerminatorCharacters))});A.modes=A.modes?A.modes:{},v3(A.modes,(F,U)=>{A.modes[U]=p$(F,(z)=>Zk(z))});let D=wE(A.modes);if(v3(A.modes,(F,U)=>{this.TRACE_INIT(`Mode: <${U}> processing`,()=>{if(this.modes.push(U),this.config.skipValidations===!1)this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Qt0(F,D))});if(I6(this.lexerDefinitionErrors)){IL(F);let z;this.TRACE_INIT("analyzeTokenTypes",()=>{z=Kt0(F,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:B.positionTracking,ensureOptimizations:B.ensureOptimizations,safeMode:B.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[U]=z.patternIdxToConfig,this.charCodeToPatternIdxToConfig[U]=z.charCodeToPatternIdxToConfig,this.emptyGroups=KE({},this.emptyGroups,z.emptyGroups),this.hasCustom=z.hasCustom||this.hasCustom,this.canModeBeOptimized[U]=z.canBeOptimized}})}),this.defaultMode=A.defaultMode,!I6(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let U=n4(this.lexerDefinitionErrors,(z)=>{return z.message}).join(`-----------------------
`);throw Error(`Errors detected in definition of Lexer:
`+U)}v3(this.lexerDefinitionWarning,(F)=>{aE0(F.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(C)this.handleModes=O5;if(this.trackStartLines===!1)this.computeNewColumn=fR;if(this.trackEndLines===!1)this.updateTokenEndLineColumnLocation=O5;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 F=QE(this.canModeBeOptimized,(U,z,k)=>{if(z===!1)U.push(k);return U},[]);if(B.ensureOptimizations&&!I6(F))throw Error(`Lexer Modes: < ${F.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",()=>{Mt0()}),this.TRACE_INIT("toFastProperties",()=>{hE0(this)})})}tokenize(u,B=this.defaultMode){if(!I6(this.lexerDefinitionErrors)){let A=n4(this.lexerDefinitionErrors,(C)=>{return C.message}).join(`-----------------------
`);throw Error(`Unable to Tokenize because Errors detected in definition of Lexer:
`+A)}return this.tokenizeInternal(u,B)}tokenizeInternal(u,B){let E,A,C,D,F,U,z,k,f,l,b,M,Z,J,w,K=u,Q=K.length,G=0,L=0,H=this.hasCustom?0:Math.floor(u.length/10),q=Array(H),x=[],v=this.trackStartLines?1:void 0,W=this.trackStartLines?1:void 0,S=Nt0(this.emptyGroups),T=this.trackStartLines,R=this.config.lineTerminatorsPattern,Y=0,a=[],I=[],O=[],i=[];Object.freeze(i);let N=!1,V=j(($)=>{if(O.length===1&&$.tokenType.PUSH_MODE===void 0){let y=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage($);x.push({offset:$.startOffset,line:$.startLine,column:$.startColumn,length:$.image.length,message:y})}else{O.pop();let y=zw(O);a=this.patternIdxToConfig[y],I=this.charCodeToPatternIdxToConfig[y],Y=a.length;let p=this.canModeBeOptimized[y]&&this.config.safeMode===!1;if(I&&p)N=!0;else N=!1}},"pop_mode");function h($){O.push($),I=this.charCodeToPatternIdxToConfig[$],a=this.patternIdxToConfig[$],Y=a.length,Y=a.length;let y=this.canModeBeOptimized[$]&&this.config.safeMode===!1;if(I&&y)N=!0;else N=!1}j(h,"push_mode"),h.call(this,B);let r,m=this.config.recoveryEnabled;while(G<Q){U=null,f=-1;let $=K.charCodeAt(G),y;if(N){let e=Jk($),_=I[e];y=_!==void 0?_:i}else y=a;let p=y.length;for(E=0;E<p;E++){r=y[E];let e=r.pattern;z=null;let _=r.short;if(_!==!1){if($===_)f=1,U=e}else if(r.isCustom===!0)if(w=e.exec(K,G,q,S),w!==null){if(U=w[0],f=U.length,w.payload!==void 0)z=w.payload}else U=null;else e.lastIndex=G,f=this.matchLength(e,u,G);if(f!==-1){if(F=r.longerAlt,F!==void 0){U=u.substring(G,G+f);let b0=F.length;for(C=0;C<b0;C++){let B0=a[F[C]],k0=B0.pattern;if(k=null,B0.isCustom===!0)if(w=k0.exec(K,G,q,S),w!==null){if(D=w[0],w.payload!==void 0)k=w.payload}else D=null;else k0.lastIndex=G,D=this.match(k0,u,G);if(D&&D.length>U.length){U=D,f=D.length,z=k,r=B0;break}}}break}}if(f!==-1){if(l=r.group,l!==void 0)if(U=U!==null?U:u.substring(G,G+f),b=r.tokenTypeIdx,M=this.createTokenInstance(U,G,b,r.tokenType,v,W,f),this.handlePayload(M,z),l===!1)L=this.addToken(q,L,M);else S[l].push(M);if(T===!0&&r.canLineTerminator===!0){let e=0,_,b0;R.lastIndex=0;do if(U=U!==null?U:u.substring(G,G+f),_=R.test(U),_===!0)b0=R.lastIndex-1,e++;while(_===!0);if(e!==0)v=v+e,W=f-b0,this.updateTokenEndLineColumnLocation(M,l,b0,e,v,W,f);else W=this.computeNewColumn(W,f)}else W=this.computeNewColumn(W,f);G=G+f,this.handleModes(r,V,h,M)}else{let e=G,_=v,b0=W,B0=m===!1;while(B0===!1&&G<Q){G++;for(A=0;A<Y;A++){let k0=a[A],f0=k0.pattern,D0=k0.short;if(D0!==!1){if(K.charCodeAt(G)===D0)B0=!0}else if(k0.isCustom===!0)B0=f0.exec(K,G,q,S)!==null;else f0.lastIndex=G,B0=f0.exec(u)!==null;if(B0===!0)break}}if(Z=G-e,W=this.computeNewColumn(W,Z),J=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(K,e,Z,_,b0,zw(O)),x.push({offset:e,line:_,column:b0,length:Z,message:J}),m===!1)break}}if(!this.hasCustom)q.length=L;return{tokens:q,groups:S,errors:x}}handleModes(u,B,E,A){if(u.pop===!0){let C=u.push;if(B(A),C!==void 0)E.call(this,C)}else if(u.push!==void 0)E.call(this,u.push)}updateTokenEndLineColumnLocation(u,B,E,A,C,D,F){let U,z;if(B!==void 0){if(U=E===F-1,z=U?-1:0,!(A===1&&U===!0))u.endLine=C+z,u.endColumn=D-1+-z}}computeNewColumn(u,B){return u+B}createOffsetOnlyToken(u,B,E,A){return{image:u,startOffset:B,tokenTypeIdx:E,tokenType:A}}createStartOnlyToken(u,B,E,A,C,D){return{image:u,startOffset:B,startLine:C,startColumn:D,tokenTypeIdx:E,tokenType:A}}createFullToken(u,B,E,A,C,D,F){return{image:u,startOffset:B,endOffset:B+F-1,startLine:C,endLine:C,startColumn:D,endColumn:D+F-1,tokenTypeIdx:E,tokenType:A}}addTokenUsingPush(u,B,E){return u.push(E),B}addTokenUsingMemberAccess(u,B,E){return u[B]=E,B++,B}handlePayloadNoCustom(u,B){}handlePayloadWithCustom(u,B){if(B!==null)u.payload=B}match(u,B,E){if(u.test(B)===!0)return B.substring(E,u.lastIndex);return null}matchLength(u,B,E){if(u.test(B)===!0)return u.lastIndex-E;return-1}};vB.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.";vB.NA=/NOT_APPLICABLE/;j(Dw,"tokenLabel");j(gE0,"hasTokenLabel");j(kL,"createToken");j(nt0,"createTokenInternal");Zb=kL({name:"EOF",pattern:vB.NA});IL([Zb]);j(QR,"createTokenInstance");j(_E0,"tokenMatcher");FL={buildMismatchTokenMessage({expected:u,actual:B,previous:E,ruleName:A}){return`Expecting ${gE0(u)?`--> ${Dw(u)} <--`:`token of type --> ${u.name} <--`} but found --> '${B.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:u,ruleName:B}){return"Redundant input, expecting EOF but found: "+u.image},buildNoViableAltMessage({expectedPathsPerAlt:u,actual:B,previous:E,customUserDescription:A,ruleName:C}){let U=`
but found: '`+$C(B).image+"'";if(A)return"Expecting: "+A+U;else{let z=QE(u,(b,M)=>b.concat(M),[]),k=n4(z,(b)=>`[${n4(b,(M)=>Dw(M)).join(", ")}]`);return`Expecting: one of these possible Token sequences:
${n4(k,(b,M)=>` ${M+1}. ${b}`).join(`
`)}`+U}},buildEarlyExitMessage({expectedIterationPaths:u,actual:B,customUserDescription:E,ruleName:A}){let F=`
but found: '`+$C(B).image+"'";if(E)return"Expecting: "+E+F;else return`Expecting: expecting at least one iteration which starts with one of these possible Token sequences::
<${n4(u,(k)=>`[${n4(k,(f)=>Dw(f)).join(",")}]`).join(" ,")}>`+F}};Object.freeze(FL);iW4={buildRuleNotFoundError(u,B){return"Invalid grammar, reference to a rule which is not defined: ->"+B.nonTerminalName+`<-
inside top level rule: ->`+u.name+"<-"}},uw={buildDuplicateFoundError(u,B){function E(f){if(f instanceof g6)return f.terminalType.name;else if(f instanceof WB)return f.nonTerminalName;else return""}j(E,"getExtraProductionArgument");let A=u.name,C=$C(B),D=C.idx,F=NC(C),U=E(C),z=D>0,k=`->${F}${z?D:""}<- ${U?`with argument: ->${U}<-`:""}
appears more than once (${B.length} times) in the top level rule: ->${A}<-.
For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
`;return k=k.replace(/[ \t]+/g," "),k=k.replace(/\s\s+/g,`
`),k},buildNamespaceConflictError(u){return`Namespace conflict found in grammar.
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${u.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(u){let B=n4(u.prefixPath,(C)=>Dw(C)).join(", "),E=u.alternation.idx===0?"":u.alternation.idx;return`Ambiguous alternatives: <${u.ambiguityIndices.join(" ,")}> due to common lookahead prefix
in <OR${E}> inside <${u.topLevelRule.name}> Rule,
<${B}> 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(u){let B=u.alternation.idx===0?"":u.alternation.idx,E=u.prefixPath.length===0,A=`Ambiguous Alternatives Detected: <${u.ambiguityIndices.join(" ,")}> in <OR${B}> inside <${u.topLevelRule.name}> Rule,
`;if(E)A+=`These alternatives are all empty (match no tokens), making them indistinguishable.
Only the last alternative may be empty.
`;else{let C=n4(u.prefixPath,(D)=>Dw(D)).join(", ");A+=`<${C}> may appears as a prefix path in all these alternatives.
`}return A+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
For Further details.`,A},buildEmptyRepetitionError(u){let B=NC(u.repetition);if(u.repetition.idx!==0)B+=u.repetition.idx;return`The repetition <${B}> within Rule <${u.topLevelRule.name}> can never consume any tokens.
This could lead to an infinite loop.`},buildTokenNameError(u){return"deprecated"},buildEmptyAlternationError(u){return`Ambiguous empty alternative: <${u.emptyChoiceIdx+1}> in <OR${u.alternation.idx}> inside <${u.topLevelRule.name}> Rule.
Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(u){return`An Alternation cannot have more than 256 alternatives:
<OR${u.alternation.idx}> inside <${u.topLevelRule.name}> Rule.
has ${u.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(u){let B=u.topLevelRule.name,E=n4(u.leftRecursionPath,(D)=>D.name),A=`${B} --> ${E.concat([B]).join(" --> ")}`;return`Left Recursion found in grammar.
rule: <${B}> can be invoked from itself (directly or indirectly)
without consuming any Tokens. The grammar path that causes this is:
${A}
To fix this refactor your grammar to remove the left recursion.
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(u){return"deprecated"},buildDuplicateRuleNameError(u){let B;if(u.topLevelRule instanceof YL)B=u.topLevelRule.name;else B=u.topLevelRule;return`Duplicate definition, rule: ->${B}<- is already defined in the grammar: ->${u.grammarName}<-`}};j(pt0,"resolveGrammar");aW4=class extends RL{static{j(this,"GastRefResolverVisitor")}constructor(u,B){super();this.nameToTopRule=u,this.errMsgProvider=B,this.errors=[]}resolveRefs(){v3(B5(this.nameToTopRule),(u)=>{this.currTopLevel=u,u.accept(this)})}visitNonTerminal(u){let B=this.nameToTopRule[u.nonTerminalName];if(!B){let E=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,u);this.errors.push({message:E,type:YB.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:u.nonTerminalName})}else u.referencedRule=B}},VW4=class extends d${static{j(this,"AbstractNextPossibleTokensWalker")}constructor(u,B){super();this.topProd=u,this.path=B,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=k7(this.path.ruleStack).reverse(),this.occurrenceStack=k7(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(u,B=[]){if(!this.found)super.walk(u,B)}walkProdRef(u,B,E){if(u.referencedRule.name===this.nextProductionName&&u.idx===this.nextProductionOccurrence){let A=B.concat(E);this.updateExpectedNext(),this.walk(u.referencedRule,A)}}updateExpectedNext(){if(I6(this.ruleStack))this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0;else this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop()}},hW4=class extends VW4{static{j(this,"NextAfterTokenWalker")}constructor(u,B){super(u,B);this.path=B,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(u,B,E){if(this.isAtEndOfPath&&u.terminalType.name===this.nextTerminalName&&u.idx===this.nextTerminalOccurrence&&!this.found){let A=B.concat(E),C=new q8({definition:A});this.possibleTokTypes=TL(C),this.found=!0}}},o$=class extends d${static{j(this,"AbstractNextTerminalAfterProductionWalker")}constructor(u,B){super();this.topRule=u,this.occurrence=B,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},mW4=class extends o${static{j(this,"NextTerminalAfterManyWalker")}walkMany(u,B,E){if(u.idx===this.occurrence){let A=$C(B.concat(E));if(this.result.isEndOfRule=A===void 0,A instanceof g6)this.result.token=A.terminalType,this.result.occurrence=A.idx}else super.walkMany(u,B,E)}},Z_0=class extends o${static{j(this,"NextTerminalAfterManySepWalker")}walkManySep(u,B,E){if(u.idx===this.occurrence){let A=$C(B.concat(E));if(this.result.isEndOfRule=A===void 0,A instanceof g6)this.result.token=A.terminalType,this.result.occurrence=A.idx}else super.walkManySep(u,B,E)}},rW4=class extends o${static{j(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(u,B,E){if(u.idx===this.occurrence){let A=$C(B.concat(E));if(this.result.isEndOfRule=A===void 0,A instanceof g6)this.result.token=A.terminalType,this.result.occurrence=A.idx}else super.walkAtLeastOne(u,B,E)}},J_0=class extends o${static{j(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(u,B,E){if(u.idx===this.occurrence){let A=$C(B.concat(E));if(this.result.isEndOfRule=A===void 0,A instanceof g6)this.result.token=A.terminalType,this.result.occurrence=A.idx}else super.walkAtLeastOneSep(u,B,E)}};j(qr,"possiblePathsFrom");j(nE0,"nextPossibleTokensAfter");j(dt0,"expandTopLevelRule");(function(u){u[u.OPTION=0]="OPTION",u[u.REPETITION=1]="REPETITION",u[u.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",u[u.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",u[u.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",u[u.ALTERNATION=5]="ALTERNATION"})(L9||(L9={}));j(t$,"getProdType");j(WB0,"getLookaheadPaths");j(st0,"buildLookaheadFuncForOr");j(ot0,"buildLookaheadFuncForOptionalProd");j(tt0,"buildAlternativesLookAheadFunc");j(et0,"buildSingleAlternativeLookaheadFunction");$W4=class extends d${static{j(this,"RestDefinitionFinderWalker")}constructor(u,B,E){super();this.topProd=u,this.targetOccurrence=B,this.targetProdType=E}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(u,B,E,A){if(u.idx===this.targetOccurrence&&this.targetProdType===B)return this.restDef=E.concat(A),!0;return!1}walkOption(u,B,E){if(!this.checkIsTarget(u,L9.OPTION,B,E))super.walkOption(u,B,E)}walkAtLeastOne(u,B,E){if(!this.checkIsTarget(u,L9.REPETITION_MANDATORY,B,E))super.walkOption(u,B,E)}walkAtLeastOneSep(u,B,E){if(!this.checkIsTarget(u,L9.REPETITION_MANDATORY_WITH_SEPARATOR,B,E))super.walkOption(u,B,E)}walkMany(u,B,E){if(!this.checkIsTarget(u,L9.REPETITION,B,E))super.walkOption(u,B,E)}walkManySep(u,B,E){if(!this.checkIsTarget(u,L9.REPETITION_WITH_SEPARATOR,B,E))super.walkOption(u,B,E)}},ue0=class extends RL{static{j(this,"InsideDefinitionFinderVisitor")}constructor(u,B,E){super();this.targetOccurrence=u,this.targetProdType=B,this.targetRef=E,this.result=[]}checkIsTarget(u,B){if(u.idx===this.targetOccurrence&&this.targetProdType===B&&(this.targetRef===void 0||u===this.targetRef))this.result=u.definition}visitOption(u){this.checkIsTarget(u,L9.OPTION)}visitRepetition(u){this.checkIsTarget(u,L9.REPETITION)}visitRepetitionMandatory(u){this.checkIsTarget(u,L9.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(u){this.checkIsTarget(u,L9.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(u){this.checkIsTarget(u,L9.REPETITION_WITH_SEPARATOR)}visitAlternation(u){this.checkIsTarget(u,L9.ALTERNATION)}};j(YB0,"initializeArrayOfArrays");j(rm,"pathToHashKeys");j(Be0,"isUniquePrefixHash");j(pE0,"lookAheadSequenceFromAlternatives");j(GR,"getLookaheadPathsForOr");j(HR,"getLookaheadPathsForOptionalProd");j(Xr,"containsPath");j(Ee0,"isStrictPrefixOfPath");j(dE0,"areTokenCategoriesNotUsed");j(Ae0,"validateLookahead");j(Ce0,"validateGrammar");j(De0,"validateDuplicateProductions");j(Fe0,"identifyProductionForDuplicates");j(sE0,"getExtraProductionArgument");yW4=class extends RL{static{j(this,"OccurrenceValidationCollector")}constructor(){super(...arguments);this.allProductions=[]}visitNonTerminal(u){this.allProductions.push(u)}visitOption(u){this.allProductions.push(u)}visitRepetitionWithSeparator(u){this.allProductions.push(u)}visitRepetitionMandatory(u){this.allProductions.push(u)}visitRepetitionMandatoryWithSeparator(u){this.allProductions.push(u)}visitRepetition(u){this.allProductions.push(u)}visitAlternation(u){this.allProductions.push(u)}visitTerminal(u){this.allProductions.push(u)}};j(Ue0,"validateRuleDoesNotAlreadyExist");j(ze0,"validateRuleIsOverridden");j(oE0,"validateNoLeftRecursion");j(vY,"getFirstNoneTerminal");tE0=class extends RL{static{j(this,"OrCollector")}constructor(){super(...arguments);this.alternations=[]}visitAlternation(u){this.alternations.push(u)}};j(ke0,"validateEmptyOrAlternative");j(fe0,"validateAmbiguousAlternationAlternatives");cW4=class extends RL{static{j(this,"RepetitionCollector")}constructor(){super(...arguments);this.allProductions=[]}visitRepetitionWithSeparator(u){this.allProductions.push(u)}visitRepetitionMandatory(u){this.allProductions.push(u)}visitRepetitionMandatoryWithSeparator(u){this.allProductions.push(u)}visitRepetition(u){this.allProductions.push(u)}};j(le0,"validateTooManyAlts");j(be0,"validateSomeNonEmptyLookaheadPath");j(Me0,"checkAlternativesAmbiguities");j(Ze0,"checkPrefixAlternativesAmbiguities");j(Je0,"checkTerminalAndNoneTerminalsNameSpace");j(we0,"resolveGrammar");j(Ke0,"validateGrammar");qe0=[Qe0,Ge0,He0,Le0];Object.freeze(qe0);j(_Y,"isRecognitionException");e$=class extends Error{static{j(this,"RecognitionException")}constructor(u,B){super(u);if(this.token=B,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}},Xe0=class extends e${static{j(this,"MismatchedTokenException")}constructor(u,B,E){super(u,B);this.previousToken=E,this.name=Qe0}},gW4=class extends e${static{j(this,"NoViableAltException")}constructor(u,B,E){super(u,B);this.previousToken=E,this.name=Ge0}},_W4=class extends e${static{j(this,"NotAllInputParsedException")}constructor(u,B){super(u,B);this.name=Le0}},nW4=class extends e${static{j(this,"EarlyExitException")}constructor(u,B,E){super(u,B);this.previousToken=E,this.name=He0}},o50={},pW4=class extends Error{static{j(this,"InRuleRecoveryException")}constructor(u){super(u);this.name=xe0}},dW4=class{static{j(this,"Recoverable")}initRecoverable(u){if(this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=M3(u,"recoveryEnabled")?u.recoveryEnabled:wk.recoveryEnabled,this.recoveryEnabled)this.attemptInRepetitionRecovery=ve0}getTokenToInsert(u){let B=QR(u,"",NaN,NaN,NaN,NaN,NaN,NaN);return B.isInsertedInRecovery=!0,B}canTokenTypeBeInsertedInRecovery(u){return!0}canTokenTypeBeDeletedInRecovery(u){return!0}tryInRepetitionRecovery(u,B,E,A){let C=this.findReSyncTokenType(),D=this.exportLexerState(),F=[],U=!1,z=this.LA(1),k=this.LA(1),f=j(()=>{let l=this.LA(0),b=this.errorMessageProvider.buildMismatchTokenMessage({expected:A,actual:z,previous:l,ruleName:this.getCurrRuleFullName()}),M=new Xe0(b,z,this.LA(0));M.resyncedTokens=yY(F),this.SAVE_ERROR(M)},"generateErrorMessage");while(!U)if(this.tokenMatcher(k,A)){f();return}else if(E.call(this)){f(),u.apply(this,B);return}else if(this.tokenMatcher(k,C))U=!0;else k=this.SKIP_TOKEN(),this.addToResyncTokens(k,F);this.importLexerState(D)}shouldInRepetitionRecoveryBeTried(u,B,E){if(E===!1)return!1;if(this.tokenMatcher(this.LA(1),u))return!1;if(this.isBackTracking())return!1;if(this.canPerformInRuleRecovery(u,this.getFollowsForInRuleRecovery(u,B)))return!1;return!0}getFollowsForInRuleRecovery(u,B){let E=this.getCurrentGrammarPath(u,B);return this.getNextPossibleTokenTypes(E)}tryInRuleRecovery(u,B){if(this.canRecoverWithSingleTokenInsertion(u,B))return this.getTokenToInsert(u);if(this.canRecoverWithSingleTokenDeletion(u)){let E=this.SKIP_TOKEN();return this.consumeToken(),E}throw new pW4("sad sad panda")}canPerformInRuleRecovery(u,B){return this.canRecoverWithSingleTokenInsertion(u,B)||this.canRecoverWithSingleTokenDeletion(u)}canRecoverWithSingleTokenInsertion(u,B){if(!this.canTokenTypeBeInsertedInRecovery(u))return!1;if(I6(B))return!1;let E=this.LA(1);return qL(B,(C)=>{return this.tokenMatcher(E,C)})!==void 0}canRecoverWithSingleTokenDeletion(u){if(!this.canTokenTypeBeDeletedInRecovery(u))return!1;return this.tokenMatcher(this.LA(2),u)}isInCurrentRuleReSyncSet(u){let B=this.getCurrFollowKey(),E=this.getFollowSetFromFollowKey(B);return TB(E,u)}findReSyncTokenType(){let u=this.flattenFollowSet(),B=this.LA(1),E=2;while(!0){let A=qL(u,(C)=>{return _E0(B,C)});if(A!==void 0)return A;B=this.LA(E),E++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return o50;let u=this.getLastExplicitRuleShortName(),B=this.getLastExplicitRuleOccurrenceIndex(),E=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(u),idxInCallingRule:B,inRule:this.shortRuleNameToFullName(E)}}buildFullFollowKeyStack(){let u=this.RULE_STACK,B=this.RULE_OCCURRENCE_STACK;return n4(u,(E,A)=>{if(A===0)return o50;return{ruleName:this.shortRuleNameToFullName(E),idxInCallingRule:B[A],inRule:this.shortRuleNameToFullName(u[A-1])}})}flattenFollowSet(){let u=n4(this.buildFullFollowKeyStack(),(B)=>{return this.getFollowSetFromFollowKey(B)});return hC(u)}getFollowSetFromFollowKey(u){if(u===o50)return[Zb];let B=u.ruleName+u.idxInCallingRule+ft0+u.inRule;return this.resyncFollows[B]}addToResyncTokens(u,B){if(!this.tokenMatcher(u,Zb))B.push(u);return B}reSyncTo(u){let B=[],E=this.LA(1);while(this.tokenMatcher(E,u)===!1)E=this.SKIP_TOKEN(),this.addToResyncTokens(E,B);return yY(B)}attemptInRepetitionRecovery(u,B,E,A,C,D,F){}getCurrentGrammarPath(u,B){let E=this.getHumanReadableRuleStack(),A=k7(this.RULE_OCCURRENCE_STACK);return{ruleStack:E,occurrenceStack:A,lastTok:u,lastTokOccurrence:B}}getHumanReadableRuleStack(){return n4(this.RULE_STACK,(u)=>this.shortRuleNameToFullName(u))}};j(ve0,"attemptInRepetitionRecovery");Se0=1<<Hb,We0=2<<Hb,RB0=3<<Hb,TB0=4<<Hb,OB0=5<<Hb,$m=6<<Hb;j(ym,"getKeyForAutomaticLookahead");W81=32-oW4,eE0=class{static{j(this,"LLkLookaheadStrategy")}constructor(u){var B;this.maxLookahead=(B=u===null||u===void 0?void 0:u.maxLookahead)!==null&&B!==void 0?B:wk.maxLookahead}validate(u){let B=this.validateNoLeftRecursion(u.rules);if(I6(B)){let E=this.validateEmptyOrAlternatives(u.rules),A=this.validateAmbiguousAlternationAlternatives(u.rules,this.maxLookahead),C=this.validateSomeNonEmptyLookaheadPath(u.rules,this.maxLookahead);return[...B,...E,...A,...C]}return B}validateNoLeftRecursion(u){return KA(u,(B)=>oE0(B,B,uw))}validateEmptyOrAlternatives(u){return KA(u,(B)=>ke0(B,uw))}validateAmbiguousAlternationAlternatives(u,B){return KA(u,(E)=>fe0(E,B,uw))}validateSomeNonEmptyLookaheadPath(u,B){return be0(u,B,uw)}buildLookaheadForAlternation(u){return st0(u.prodOccurrence,u.rule,u.maxLookahead,u.hasPredicates,u.dynamicTokensEnabled,tt0)}buildLookaheadForOptional(u){return ot0(u.prodOccurrence,u.rule,u.maxLookahead,u.dynamicTokensEnabled,t$(u.prodType),et0)}},tW4=class{static{j(this,"LooksAhead")}initLooksAhead(u){this.dynamicTokensEnabled=M3(u,"dynamicTokensEnabled")?u.dynamicTokensEnabled:wk.dynamicTokensEnabled,this.maxLookahead=M3(u,"maxLookahead")?u.maxLookahead:wk.maxLookahead,this.lookaheadStrategy=M3(u,"lookaheadStrategy")?u.lookaheadStrategy:new eE0({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(u){v3(u,(B)=>{this.TRACE_INIT(`${B.name} Rule Lookahead`,()=>{let{alternation:E,repetition:A,option:C,repetitionMandatory:D,repetitionMandatoryWithSeparator:F,repetitionWithSeparator:U}=Ye0(B);v3(E,(z)=>{let k=z.idx===0?"":z.idx;this.TRACE_INIT(`${NC(z)}${k}`,()=>{let f=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:z.idx,rule:B,maxLookahead:z.maxLookahead||this.maxLookahead,hasPredicates:z.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),l=ym(this.fullRuleNameToShort[B.name],Se0,z.idx);this.setLaFuncCache(l,f)})}),v3(A,(z)=>{this.computeLookaheadFunc(B,z.idx,RB0,"Repetition",z.maxLookahead,NC(z))}),v3(C,(z)=>{this.computeLookaheadFunc(B,z.idx,We0,"Option",z.maxLookahead,NC(z))}),v3(D,(z)=>{this.computeLookaheadFunc(B,z.idx,TB0,"RepetitionMandatory",z.maxLookahead,NC(z))}),v3(F,(z)=>{this.computeLookaheadFunc(B,z.idx,$m,"RepetitionMandatoryWithSeparator",z.maxLookahead,NC(z))}),v3(U,(z)=>{this.computeLookaheadFunc(B,z.idx,OB0,"RepetitionWithSeparator",z.maxLookahead,NC(z))})})})}computeLookaheadFunc(u,B,E,A,C,D){this.TRACE_INIT(`${D}${B===0?"":B}`,()=>{let F=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:B,rule:u,maxLookahead:C||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:A}),U=ym(this.fullRuleNameToShort[u.name],E,B);this.setLaFuncCache(U,F)})}getKeyForAutomaticLookahead(u,B){let E=this.getLastExplicitRuleShortName();return ym(E,u,B)}getLaFuncFromCache(u){return this.lookAheadFuncsCache.get(u)}setLaFuncCache(u,B){this.lookAheadFuncsCache.set(u,B)}},eW4=class extends RL{static{j(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments);this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(u){this.dslMethods.option.push(u)}visitRepetitionWithSeparator(u){this.dslMethods.repetitionWithSeparator.push(u)}visitRepetitionMandatory(u){this.dslMethods.repetitionMandatory.push(u)}visitRepetitionMandatoryWithSeparator(u){this.dslMethods.repetitionMandatoryWithSeparator.push(u)}visitRepetition(u){this.dslMethods.repetition.push(u)}visitAlternation(u){this.dslMethods.alternation.push(u)}},Zm=new eW4;j(Ye0,"collectMethods");j(IB0,"setNodeLocationOnlyOffset");j(PB0,"setNodeLocationFull");j(Re0,"addTerminalToCst");j(Te0,"addNoneTerminalToCst");j(uA0,"defineNameProp");j(Oe0,"defaultVisit");j(Ie0,"createBaseSemanticVisitorConstructor");j(Pe0,"createBaseVisitorConstructorWithDefaults");(function(u){u[u.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",u[u.MISSING_METHOD=1]="MISSING_METHOD"})(jB0||(jB0={}));j(je0,"validateVisitor");j(Ne0,"validateMissingCstMethods");BY4=class{static{j(this,"TreeBuilder")}initTreeBuilder(u){if(this.CST_STACK=[],this.outputCst=u.outputCst,this.nodeLocationTracking=M3(u,"nodeLocationTracking")?u.nodeLocationTracking:wk.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=O5,this.cstFinallyStateUpdate=O5,this.cstPostTerminal=O5,this.cstPostNonTerminal=O5,this.cstPostRule=O5;else if(/full/i.test(this.nodeLocationTracking))if(this.recoveryEnabled)this.setNodeLocationFromToken=PB0,this.setNodeLocationFromNode=PB0,this.cstPostRule=O5,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery;else this.setNodeLocationFromToken=O5,this.setNodeLocationFromNode=O5,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular;else if(/onlyOffset/i.test(this.nodeLocationTracking))if(this.recoveryEnabled)this.setNodeLocationFromToken=IB0,this.setNodeLocationFromNode=IB0,this.cstPostRule=O5,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery;else this.setNodeLocationFromToken=O5,this.setNodeLocationFromNode=O5,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular;else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=O5,this.setNodeLocationFromNode=O5,this.cstPostRule=O5,this.setInitialNodeLocation=O5;else throw Error(`Invalid <nodeLocationTracking> config option: "${u.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(u){u.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(u){u.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(u){u.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(u){let B=this.LA(1);u.location={startOffset:B.startOffset,startLine:B.startLine,startColumn:B.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(u){let B={name:u,children:Object.create(null)};this.setInitialNodeLocation(B),this.CST_STACK.push(B)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(u){let B=this.LA(0),E=u.location;if(E.startOffset<=B.startOffset===!0)E.endOffset=B.endOffset,E.endLine=B.endLine,E.endColumn=B.endColumn;else E.startOffset=NaN,E.startLine=NaN,E.startColumn=NaN}cstPostRuleOnlyOffset(u){let B=this.LA(0),E=u.location;if(E.startOffset<=B.startOffset===!0)E.endOffset=B.endOffset;else E.startOffset=NaN}cstPostTerminal(u,B){let E=this.CST_STACK[this.CST_STACK.length-1];Re0(E,B,u),this.setNodeLocationFromToken(E.location,B)}cstPostNonTerminal(u,B){let E=this.CST_STACK[this.CST_STACK.length-1];Te0(E,B,u),this.setNodeLocationFromNode(E.location,u.location)}getBaseCstVisitorConstructor(){if(Zk(this.baseCstVisitorConstructor)){let u=Ie0(this.className,wE(this.gastProductionsCache));return this.baseCstVisitorConstructor=u,u}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(Zk(this.baseCstVisitorWithDefaultsConstructor)){let u=Pe0(this.className,wE(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=u,u}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let u=this.RULE_STACK;return u[u.length-1]}getPreviousExplicitRuleShortName(){let u=this.RULE_STACK;return u[u.length-2]}getLastExplicitRuleOccurrenceIndex(){let u=this.RULE_OCCURRENCE_STACK;return u[u.length-1]}},EY4=class{static{j(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(u){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=u,this.tokVectorLength=u.length}get input(){return this.tokVector}SKIP_TOKEN(){if(this.currIdx<=this.tokVector.length-2)return this.consumeToken(),this.LA(1);else return xr}LA(u){let B=this.currIdx+u;if(B<0||this.tokVectorLength<=B)return xr;else return this.tokVector[B]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(u){this.currIdx=u}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},AY4=class{static{j(this,"RecognizerApi")}ACTION(u){return u.call(this)}consume(u,B,E){return this.consumeInternal(B,u,E)}subrule(u,B,E){return this.subruleInternal(B,u,E)}option(u,B){return this.optionInternal(B,u)}or(u,B){return this.orInternal(B,u)}many(u,B){return this.manyInternal(u,B)}atLeastOne(u,B){return this.atLeastOneInternal(u,B)}CONSUME(u,B){return this.consumeInternal(u,0,B)}CONSUME1(u,B){return this.consumeInternal(u,1,B)}CONSUME2(u,B){return this.consumeInternal(u,2,B)}CONSUME3(u,B){return this.consumeInternal(u,3,B)}CONSUME4(u,B){return this.consumeInternal(u,4,B)}CONSUME5(u,B){return this.consumeInternal(u,5,B)}CONSUME6(u,B){return this.consumeInternal(u,6,B)}CONSUME7(u,B){return this.consumeInternal(u,7,B)}CONSUME8(u,B){return this.consumeInternal(u,8,B)}CONSUME9(u,B){return this.consumeInternal(u,9,B)}SUBRULE(u,B){return this.subruleInternal(u,0,B)}SUBRULE1(u,B){return this.subruleInternal(u,1,B)}SUBRULE2(u,B){return this.subruleInternal(u,2,B)}SUBRULE3(u,B){return this.subruleInternal(u,3,B)}SUBRULE4(u,B){return this.subruleInternal(u,4,B)}SUBRULE5(u,B){return this.subruleInternal(u,5,B)}SUBRULE6(u,B){return this.subruleInternal(u,6,B)}SUBRULE7(u,B){return this.subruleInternal(u,7,B)}SUBRULE8(u,B){return this.subruleInternal(u,8,B)}SUBRULE9(u,B){return this.subruleInternal(u,9,B)}OPTION(u){return this.optionInternal(u,0)}OPTION1(u){return this.optionInternal(u,1)}OPTION2(u){return this.optionInternal(u,2)}OPTION3(u){return this.optionInternal(u,3)}OPTION4(u){return this.optionInternal(u,4)}OPTION5(u){return this.optionInternal(u,5)}OPTION6(u){return this.optionInternal(u,6)}OPTION7(u){return this.optionInternal(u,7)}OPTION8(u){return this.optionInternal(u,8)}OPTION9(u){return this.optionInternal(u,9)}OR(u){return this.orInternal(u,0)}OR1(u){return this.orInternal(u,1)}OR2(u){return this.orInternal(u,2)}OR3(u){return this.orInternal(u,3)}OR4(u){return this.orInternal(u,4)}OR5(u){return this.orInternal(u,5)}OR6(u){return this.orInternal(u,6)}OR7(u){return this.orInternal(u,7)}OR8(u){return this.orInternal(u,8)}OR9(u){return this.orInternal(u,9)}MANY(u){this.manyInternal(0,u)}MANY1(u){this.manyInternal(1,u)}MANY2(u){this.manyInternal(2,u)}MANY3(u){this.manyInternal(3,u)}MANY4(u){this.manyInternal(4,u)}MANY5(u){this.manyInternal(5,u)}MANY6(u){this.manyInternal(6,u)}MANY7(u){this.manyInternal(7,u)}MANY8(u){this.manyInternal(8,u)}MANY9(u){this.manyInternal(9,u)}MANY_SEP(u){this.manySepFirstInternal(0,u)}MANY_SEP1(u){this.manySepFirstInternal(1,u)}MANY_SEP2(u){this.manySepFirstInternal(2,u)}MANY_SEP3(u){this.manySepFirstInternal(3,u)}MANY_SEP4(u){this.manySepFirstInternal(4,u)}MANY_SEP5(u){this.manySepFirstInternal(5,u)}MANY_SEP6(u){this.manySepFirstInternal(6,u)}MANY_SEP7(u){this.manySepFirstInternal(7,u)}MANY_SEP8(u){this.manySepFirstInternal(8,u)}MANY_SEP9(u){this.manySepFirstInternal(9,u)}AT_LEAST_ONE(u){this.atLeastOneInternal(0,u)}AT_LEAST_ONE1(u){return this.atLeastOneInternal(1,u)}AT_LEAST_ONE2(u){this.atLeastOneInternal(2,u)}AT_LEAST_ONE3(u){this.atLeastOneInternal(3,u)}AT_LEAST_ONE4(u){this.atLeastOneInternal(4,u)}AT_LEAST_ONE5(u){this.atLeastOneInternal(5,u)}AT_LEAST_ONE6(u){this.atLeastOneInternal(6,u)}AT_LEAST_ONE7(u){this.atLeastOneInternal(7,u)}AT_LEAST_ONE8(u){this.atLeastOneInternal(8,u)}AT_LEAST_ONE9(u){this.atLeastOneInternal(9,u)}AT_LEAST_ONE_SEP(u){this.atLeastOneSepFirstInternal(0,u)}AT_LEAST_ONE_SEP1(u){this.atLeastOneSepFirstInternal(1,u)}AT_LEAST_ONE_SEP2(u){this.atLeastOneSepFirstInternal(2,u)}AT_LEAST_ONE_SEP3(u){this.atLeastOneSepFirstInternal(3,u)}AT_LEAST_ONE_SEP4(u){this.atLeastOneSepFirstInternal(4,u)}AT_LEAST_ONE_SEP5(u){this.atLeastOneSepFirstInternal(5,u)}AT_LEAST_ONE_SEP6(u){this.atLeastOneSepFirstInternal(6,u)}AT_LEAST_ONE_SEP7(u){this.atLeastOneSepFirstInternal(7,u)}AT_LEAST_ONE_SEP8(u){this.atLeastOneSepFirstInternal(8,u)}AT_LEAST_ONE_SEP9(u){this.atLeastOneSepFirstInternal(9,u)}RULE(u,B,E=vr){if(TB(this.definedRulesNames,u)){let D={message:uw.buildDuplicateRuleNameError({topLevelRule:u,grammarName:this.className}),type:YB.DUPLICATE_RULE_NAME,ruleName:u};this.definitionErrors.push(D)}this.definedRulesNames.push(u);let A=this.defineRule(u,B,E);return this[u]=A,A}OVERRIDE_RULE(u,B,E=vr){let A=ze0(u,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(A);let C=this.defineRule(u,B,E);return this[u]=C,C}BACKTRACK(u,B){return function(){this.isBackTrackingStack.push(1);let E=this.saveRecogState();try{return u.apply(this,B),!0}catch(A){if(_Y(A))return!1;else throw A}finally{this.reloadRecogState(E),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Ct0(B5(this.gastProductionsCache))}},CY4=class{static{j(this,"RecognizerEngine")}initRecognizerEngine(u,B){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=gY,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},M3(B,"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(W1(u)){if(I6(u))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 u[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(W1(u))this.tokensMap=QE(u,(C,D)=>{return C[D.name]=D,C},{});else if(M3(u,"modes")&&mC(hC(B5(u.modes)),_t0)){let C=hC(B5(u.modes)),D=iE0(C);this.tokensMap=QE(D,(F,U)=>{return F[U.name]=U,F},{})}else if(GA(u))this.tokensMap=k7(u);else throw Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=Zb;let E=M3(u,"modes")?hC(B5(u.modes)):B5(u),A=mC(E,(C)=>I6(C.categoryMatches));this.tokenMatcher=A?gY:OL,IL(B5(this.tokensMap))}defineRule(u,B,E){if(this.selfAnalysisDone)throw Error(`Grammar rule <${u}> 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 A=M3(E,"resyncEnabled")?E.resyncEnabled:vr.resyncEnabled,C=M3(E,"recoveryValueFunc")?E.recoveryValueFunc:vr.recoveryValueFunc,D=this.ruleShortNameIdx<<sW4+Hb;this.ruleShortNameIdx++,this.shortRuleNameToFull[D]=u,this.fullRuleNameToShort[u]=D;let F;if(this.outputCst===!0)F=j(function(...k){try{this.ruleInvocationStateUpdate(D,u,this.subruleIdx),B.apply(this,k);let f=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(f),f}catch(f){return this.invokeRuleCatch(f,A,C)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry");else F=j(function(...k){try{return this.ruleInvocationStateUpdate(D,u,this.subruleIdx),B.apply(this,k)}catch(f){return this.invokeRuleCatch(f,A,C)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst");return Object.assign(F,{ruleName:u,originalGrammarAction:B})}invokeRuleCatch(u,B,E){let A=this.RULE_STACK.length===1,C=B&&!this.isBackTracking()&&this.recoveryEnabled;if(_Y(u)){let D=u;if(C){let F=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(F))if(D.resyncedTokens=this.reSyncTo(F),this.outputCst){let U=this.CST_STACK[this.CST_STACK.length-1];return U.recoveredNode=!0,U}else return E(u);else{if(this.outputCst){let U=this.CST_STACK[this.CST_STACK.length-1];U.recoveredNode=!0,D.partialCstResult=U}throw D}}else if(A)return this.moveToTerminatedState(),E(u);else throw D}else throw u}optionInternal(u,B){let E=this.getKeyForAutomaticLookahead(We0,B);return this.optionInternalLogic(u,B,E)}optionInternalLogic(u,B,E){let A=this.getLaFuncFromCache(E),C;if(typeof u!=="function"){C=u.DEF;let D=u.GATE;if(D!==void 0){let F=A;A=j(()=>{return D.call(this)&&F.call(this)},"lookAheadFunc")}}else C=u;if(A.call(this)===!0)return C.call(this);return}atLeastOneInternal(u,B){let E=this.getKeyForAutomaticLookahead(TB0,u);return this.atLeastOneInternalLogic(u,B,E)}atLeastOneInternalLogic(u,B,E){let A=this.getLaFuncFromCache(E),C;if(typeof B!=="function"){C=B.DEF;let D=B.GATE;if(D!==void 0){let F=A;A=j(()=>{return D.call(this)&&F.call(this)},"lookAheadFunc")}}else C=B;if(A.call(this)===!0){let D=this.doSingleRepetition(C);while(A.call(this)===!0&&D===!0)D=this.doSingleRepetition(C)}else throw this.raiseEarlyExitException(u,L9.REPETITION_MANDATORY,B.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[u,B],A,TB0,u,rW4)}atLeastOneSepFirstInternal(u,B){let E=this.getKeyForAutomaticLookahead($m,u);this.atLeastOneSepFirstInternalLogic(u,B,E)}atLeastOneSepFirstInternalLogic(u,B,E){let{DEF:A,SEP:C}=B;if(this.getLaFuncFromCache(E).call(this)===!0){A.call(this);let F=j(()=>{return this.tokenMatcher(this.LA(1),C)},"separatorLookAheadFunc");while(this.tokenMatcher(this.LA(1),C)===!0)this.CONSUME(C),A.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[u,C,F,A,J_0],F,$m,u,J_0)}else throw this.raiseEarlyExitException(u,L9.REPETITION_MANDATORY_WITH_SEPARATOR,B.ERR_MSG)}manyInternal(u,B){let E=this.getKeyForAutomaticLookahead(RB0,u);return this.manyInternalLogic(u,B,E)}manyInternalLogic(u,B,E){let A=this.getLaFuncFromCache(E),C;if(typeof B!=="function"){C=B.DEF;let F=B.GATE;if(F!==void 0){let U=A;A=j(()=>{return F.call(this)&&U.call(this)},"lookaheadFunction")}}else C=B;let D=!0;while(A.call(this)===!0&&D===!0)D=this.doSingleRepetition(C);this.attemptInRepetitionRecovery(this.manyInternal,[u,B],A,RB0,u,mW4,D)}manySepFirstInternal(u,B){let E=this.getKeyForAutomaticLookahead(OB0,u);this.manySepFirstInternalLogic(u,B,E)}manySepFirstInternalLogic(u,B,E){let{DEF:A,SEP:C}=B;if(this.getLaFuncFromCache(E).call(this)===!0){A.call(this);let F=j(()=>{return this.tokenMatcher(this.LA(1),C)},"separatorLookAheadFunc");while(this.tokenMatcher(this.LA(1),C)===!0)this.CONSUME(C),A.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[u,C,F,A,Z_0],F,OB0,u,Z_0)}}repetitionSepSecondInternal(u,B,E,A,C){while(E())this.CONSUME(B),A.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[u,B,E,A,C],E,$m,u,C)}doSingleRepetition(u){let B=this.getLexerPosition();return u.call(this),this.getLexerPosition()>B}orInternal(u,B){let E=this.getKeyForAutomaticLookahead(Se0,B),A=W1(u)?u:u.DEF,D=this.getLaFuncFromCache(E).call(this,A);if(D!==void 0)return A[D].ALT.call(this);this.raiseNoAltException(B,u.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let u=this.LA(1),B=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:u,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new _W4(B,u))}}subruleInternal(u,B,E){let A;try{let C=E!==void 0?E.ARGS:void 0;return this.subruleIdx=B,A=u.apply(this,C),this.cstPostNonTerminal(A,E!==void 0&&E.LABEL!==void 0?E.LABEL:u.ruleName),A}catch(C){throw this.subruleInternalError(C,E,u.ruleName)}}subruleInternalError(u,B,E){if(_Y(u)&&u.partialCstResult!==void 0)this.cstPostNonTerminal(u.partialCstResult,B!==void 0&&B.LABEL!==void 0?B.LABEL:E),delete u.partialCstResult;throw u}consumeInternal(u,B,E){let A;try{let C=this.LA(1);if(this.tokenMatcher(C,u)===!0)this.consumeToken(),A=C;else this.consumeInternalError(u,C,E)}catch(C){A=this.consumeInternalRecovery(u,B,C)}return this.cstPostTerminal(E!==void 0&&E.LABEL!==void 0?E.LABEL:u.name,A),A}consumeInternalError(u,B,E){let A,C=this.LA(0);if(E!==void 0&&E.ERR_MSG)A=E.ERR_MSG;else A=this.errorMessageProvider.buildMismatchTokenMessage({expected:u,actual:B,previous:C,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Xe0(A,B,C))}consumeInternalRecovery(u,B,E){if(this.recoveryEnabled&&E.name==="MismatchedTokenException"&&!this.isBackTracking()){let A=this.getFollowsForInRuleRecovery(u,B);try{return this.tryInRuleRecovery(u,A)}catch(C){if(C.name===xe0)throw E;else throw C}}else throw E}saveRecogState(){let u=this.errors,B=k7(this.RULE_STACK);return{errors:u,lexerState:this.exportLexerState(),RULE_STACK:B,CST_STACK:this.CST_STACK}}reloadRecogState(u){this.errors=u.errors,this.importLexerState(u.lexerState),this.RULE_STACK=u.RULE_STACK}ruleInvocationStateUpdate(u,B,E){this.RULE_OCCURRENCE_STACK.push(E),this.RULE_STACK.push(u),this.cstInvocationStateUpdate(B)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let u=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[u]}shortRuleNameToFullName(u){return this.shortRuleNameToFull[u]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Zb)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},DY4=class{static{j(this,"ErrorHandler")}initErrorHandler(u){this._errors=[],this.errorMessageProvider=M3(u,"errorMessageProvider")?u.errorMessageProvider:wk.errorMessageProvider}SAVE_ERROR(u){if(_Y(u))return u.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:k7(this.RULE_OCCURRENCE_STACK)},this._errors.push(u),u;else throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return k7(this._errors)}set errors(u){this._errors=u}raiseEarlyExitException(u,B,E){let A=this.getCurrRuleFullName(),C=this.getGAstProductions()[A],F=HR(u,C,B,this.maxLookahead)[0],U=[];for(let k=1;k<=this.maxLookahead;k++)U.push(this.LA(k));let z=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:F,actual:U,previous:this.LA(0),customUserDescription:E,ruleName:A});throw this.SAVE_ERROR(new nW4(z,this.LA(1),this.LA(0)))}raiseNoAltException(u,B){let E=this.getCurrRuleFullName(),A=this.getGAstProductions()[E],C=GR(u,A,this.maxLookahead),D=[];for(let z=1;z<=this.maxLookahead;z++)D.push(this.LA(z));let F=this.LA(0),U=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:C,actual:D,previous:F,customUserDescription:B,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new gW4(U,this.LA(1),F))}},FY4=class{static{j(this,"ContentAssist")}initContentAssist(){}computeContentAssist(u,B){let E=this.gastProductionsCache[u];if(Zk(E))throw Error(`Rule ->${u}<- does not exist in this grammar.`);return nE0([E],B,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(u){let B=$C(u.ruleStack),A=this.getGAstProductions()[B];return new hW4(A,u).startWalking()}},uy={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(uy);K_0=Math.pow(2,Hb)-1,ie0=kL({name:"RECORDING_PHASE_TOKEN",pattern:vB.NA});IL([ie0]);ae0=QR(ie0,`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(ae0);UY4={name:`This CSTNode indicates the Parser is in Recording Phase
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},zY4=class{static{j(this,"GastRecorder")}initGastRecorder(u){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let u=0;u<10;u++){let B=u>0?u:"";this[`CONSUME${B}`]=function(E,A){return this.consumeInternalRecord(E,u,A)},this[`SUBRULE${B}`]=function(E,A){return this.subruleInternalRecord(E,u,A)},this[`OPTION${B}`]=function(E){return this.optionInternalRecord(E,u)},this[`OR${B}`]=function(E){return this.orInternalRecord(E,u)},this[`MANY${B}`]=function(E){this.manyInternalRecord(u,E)},this[`MANY_SEP${B}`]=function(E){this.manySepFirstInternalRecord(u,E)},this[`AT_LEAST_ONE${B}`]=function(E){this.atLeastOneInternalRecord(u,E)},this[`AT_LEAST_ONE_SEP${B}`]=function(E){this.atLeastOneSepFirstInternalRecord(u,E)}}this.consume=function(u,B,E){return this.consumeInternalRecord(B,u,E)},this.subrule=function(u,B,E){return this.subruleInternalRecord(B,u,E)},this.option=function(u,B){return this.optionInternalRecord(B,u)},this.or=function(u,B){return this.orInternalRecord(B,u)},this.many=function(u,B){this.manyInternalRecord(u,B)},this.atLeastOne=function(u,B){this.atLeastOneInternalRecord(u,B)},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 u=this;for(let B=0;B<10;B++){let E=B>0?B:"";delete u[`CONSUME${E}`],delete u[`SUBRULE${E}`],delete u[`OPTION${E}`],delete u[`OR${E}`],delete u[`MANY${E}`],delete u[`MANY_SEP${E}`],delete u[`AT_LEAST_ONE${E}`],delete u[`AT_LEAST_ONE_SEP${E}`]}delete u.consume,delete u.subrule,delete u.option,delete u.or,delete u.many,delete u.atLeastOne,delete u.ACTION,delete u.BACKTRACK,delete u.LA})}ACTION_RECORD(u){}BACKTRACK_RECORD(u,B){return()=>!0}LA_RECORD(u){return xr}topLevelRuleRecord(u,B){try{let E=new YL({definition:[],name:u});return E.name=u,this.recordingProdStack.push(E),B.call(this),this.recordingProdStack.pop(),E}catch(E){if(E.KNOWN_RECORDER_ERROR!==!0)try{E.message=E.message+`
This error was thrown during the "grammar recording phase" For more info see:
https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(A){throw E}throw E}}optionInternalRecord(u,B){return tH.call(this,z7,u,B)}atLeastOneInternalRecord(u,B){tH.call(this,GE,B,u)}atLeastOneSepFirstInternalRecord(u,B){tH.call(this,HE,B,u,w_0)}manyInternalRecord(u,B){tH.call(this,$9,B,u)}manySepFirstInternalRecord(u,B){tH.call(this,X8,B,u,w_0)}orInternalRecord(u,B){return Ve0.call(this,u,B)}subruleInternalRecord(u,B,E){if(nY(B),!u||M3(u,"ruleName")===!1){let F=Error(`<SUBRULE${NB0(B)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(u)}>
inside top level rule: <${this.recordingProdStack[0].name}>`);throw F.KNOWN_RECORDER_ERROR=!0,F}let A=zw(this.recordingProdStack),C=u.ruleName,D=new WB({idx:B,nonTerminalName:C,label:E===null||E===void 0?void 0:E.LABEL,referencedRule:void 0});return A.definition.push(D),this.outputCst?UY4:uy}consumeInternalRecord(u,B,E){if(nY(B),!cE0(u)){let D=Error(`<CONSUME${NB0(B)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(u)}>
inside top level rule: <${this.recordingProdStack[0].name}>`);throw D.KNOWN_RECORDER_ERROR=!0,D}let A=zw(this.recordingProdStack),C=new g6({idx:B,terminalType:u,label:E===null||E===void 0?void 0:E.LABEL});return A.definition.push(C),ae0}};j(tH,"recordProd");j(Ve0,"recordOrProd");j(NB0,"getIdxSuffix");j(nY,"assertMethodIdxIsValid");kY4=class{static{j(this,"PerformanceTracer")}initPerformanceTracer(u){if(M3(u,"traceInitPerf")){let B=u.traceInitPerf,E=typeof B==="number";this.traceInitMaxIdent=E?B:1/0,this.traceInitPerf=E?B>0:B}else this.traceInitMaxIdent=0,this.traceInitPerf=wk.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(u,B){if(this.traceInitPerf===!0){this.traceInitIndent++;let E=Array(this.traceInitIndent+1).join("\t");if(this.traceInitIndent<this.traceInitMaxIdent)console.log(`${E}--> <${u}>`);let{time:A,value:C}=VE0(B),D=A>10?console.warn:console.log;if(this.traceInitIndent<this.traceInitMaxIdent)D(`${E}<-- <${u}> time: ${A}ms`);return this.traceInitIndent--,C}else return B()}};j(he0,"applyMixins");xr=QR(Zb,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(xr);wk=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:FL,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),vr=Object.freeze({recoveryValueFunc:j(()=>{return},"recoveryValueFunc"),resyncEnabled:!0});(function(u){u[u.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",u[u.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",u[u.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",u[u.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",u[u.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",u[u.LEFT_RECURSION=5]="LEFT_RECURSION",u[u.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",u[u.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",u[u.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",u[u.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",u[u.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",u[u.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",u[u.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",u[u.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(YB||(YB={}));j(iB0,"EMPTY_ALT");BA0=class u{static{j(this,"Parser")}static performSelfAnalysis(B){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 B;this.selfAnalysisDone=!0;let E=this.className;this.TRACE_INIT("toFastProps",()=>{hE0(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),v3(this.definedRulesNames,(C)=>{let F=this[C].originalGrammarAction,U;this.TRACE_INIT(`${C} Rule`,()=>{U=this.topLevelRuleRecord(C,F)}),this.gastProductionsCache[C]=U})}finally{this.disableRecording()}});let A=[];if(this.TRACE_INIT("Grammar Resolving",()=>{A=we0({rules:B5(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(A)}),this.TRACE_INIT("Grammar Validations",()=>{if(I6(A)&&this.skipValidations===!1){let C=Ke0({rules:B5(this.gastProductionsCache),tokenTypes:B5(this.tokensMap),errMsgProvider:uw,grammarName:E}),D=Ae0({lookaheadStrategy:this.lookaheadStrategy,rules:B5(this.gastProductionsCache),tokenTypes:B5(this.tokensMap),grammarName:E});this.definitionErrors=this.definitionErrors.concat(C,D)}}),I6(this.definitionErrors)){if(this.recoveryEnabled)this.TRACE_INIT("computeAllProdsFollows",()=>{let C=lt0(B5(this.gastProductionsCache));this.resyncFollows=C});this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var C,D;(D=(C=this.lookaheadStrategy).initialize)===null||D===void 0||D.call(C,{rules:B5(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(B5(this.gastProductionsCache))})}if(!u.DEFER_DEFINITION_ERRORS_HANDLING&&!I6(this.definitionErrors))throw B=n4(this.definitionErrors,(C)=>C.message),Error(`Parser Definition Errors detected:
${B.join(`
-------------------------------
`)}`)})}constructor(B,E){this.definitionErrors=[],this.selfAnalysisDone=!1;let A=this;if(A.initErrorHandler(E),A.initLexerAdapter(),A.initLooksAhead(E),A.initRecognizerEngine(B,E),A.initRecoverable(E),A.initTreeBuilder(E),A.initContentAssist(),A.initGastRecorder(E),A.initPerformanceTracer(E),M3(E,"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=M3(E,"skipValidations")?E.skipValidations:wk.skipValidations}};BA0.DEFER_DEFINITION_ERRORS_HANDLING=!1;he0(BA0,[dW4,tW4,BY4,EY4,CY4,AY4,DY4,FY4,zY4,kY4]);fY4=class extends BA0{static{j(this,"EmbeddedActionsParser")}constructor(u,B=wk){let E=k7(B);E.outputCst=!1;super(u,E)}};j(me0,"arrayMap");re0=me0;j($e0,"listCacheClear");lY4=$e0;j(ye0,"eq");ce0=ye0;j(ge0,"assocIndexOf");By=ge0,bY4=Array.prototype,MY4=bY4.splice;j(_e0,"listCacheDelete");ZY4=_e0;j(ne0,"listCacheGet");JY4=ne0;j(pe0,"listCacheHas");wY4=pe0;j(de0,"listCacheSet");KY4=de0;j(vw,"ListCache");vw.prototype.clear=lY4;vw.prototype.delete=ZY4;vw.prototype.get=JY4;vw.prototype.has=wY4;vw.prototype.set=KY4;Ey=vw;j(se0,"stackClear");QY4=se0;j(oe0,"stackDelete");GY4=oe0;j(te0,"stackGet");HY4=te0;j(ee0,"stackHas");LY4=ee0,qY4=typeof global=="object"&&global&&global.Object===Object&&global,u0u=qY4,XY4=typeof self=="object"&&self&&self.Object===Object&&self,xY4=u0u||XY4||Function("return this")(),Lk=xY4,vY4=Lk.Symbol,EU=vY4,B0u=Object.prototype,SY4=B0u.hasOwnProperty,WY4=B0u.toString,pW=EU?EU.toStringTag:void 0;j(E0u,"getRawTag");YY4=E0u,RY4=Object.prototype,TY4=RY4.toString;j(A0u,"objectToString");OY4=A0u,Q_0=EU?EU.toStringTag:void 0;j(C0u,"baseGetTag");PL=C0u;j(D0u,"isObject");EA0=D0u;j(F0u,"isFunction");U0u=F0u,VY4=Lk["__core-js_shared__"],t50=VY4,G_0=function(){var u=/[^.]+$/.exec(t50&&t50.keys&&t50.keys.IE_PROTO||"");return u?"Symbol(src)_1."+u:""}();j(z0u,"isMasked");hY4=z0u,mY4=Function.prototype,rY4=mY4.toString;j(k0u,"toSource");Sw=k0u,$Y4=/[\\^$.*+?()[\]{}|]/g,yY4=/^\[object .+?Constructor\]$/,cY4=Function.prototype,gY4=Object.prototype,_Y4=cY4.toString,nY4=gY4.hasOwnProperty,pY4=RegExp("^"+_Y4.call(nY4).replace($Y4,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");j(f0u,"baseIsNative");dY4=f0u;j(l0u,"getValue");sY4=l0u;j(b0u,"getNative");jL=b0u,oY4=jL(Lk,"Map"),pY=oY4,tY4=jL(Object,"create"),dY=tY4;j(M0u,"hashClear");eY4=M0u;j(Z0u,"hashDelete");uR4=Z0u,ER4=Object.prototype,AR4=ER4.hasOwnProperty;j(J0u,"hashGet");CR4=J0u,DR4=Object.prototype,FR4=DR4.hasOwnProperty;j(w0u,"hashHas");UR4=w0u;j(K0u,"hashSet");kR4=K0u;j(Ww,"Hash");Ww.prototype.clear=eY4;Ww.prototype.delete=uR4;Ww.prototype.get=CR4;Ww.prototype.has=UR4;Ww.prototype.set=kR4;H_0=Ww;j(Q0u,"mapCacheClear");fR4=Q0u;j(G0u,"isKeyable");lR4=G0u;j(H0u,"getMapData");Ay=H0u;j(L0u,"mapCacheDelete");bR4=L0u;j(q0u,"mapCacheGet");MR4=q0u;j(X0u,"mapCacheHas");ZR4=X0u;j(x0u,"mapCacheSet");JR4=x0u;j(Yw,"MapCache");Yw.prototype.clear=fR4;Yw.prototype.delete=bR4;Yw.prototype.get=MR4;Yw.prototype.has=ZR4;Yw.prototype.set=JR4;Cy=Yw;j(v0u,"stackSet");KR4=v0u;j(Rw,"Stack");Rw.prototype.clear=QY4;Rw.prototype.delete=GY4;Rw.prototype.get=HY4;Rw.prototype.has=LY4;Rw.prototype.set=KR4;cm=Rw;j(S0u,"setCacheAdd");GR4=S0u;j(W0u,"setCacheHas");HR4=W0u;j(sY,"SetCache");sY.prototype.add=sY.prototype.push=GR4;sY.prototype.has=HR4;Y0u=sY;j(R0u,"arraySome");LR4=R0u;j(T0u,"cacheHas");O0u=T0u;j(I0u,"equalArrays");P0u=I0u,xR4=Lk.Uint8Array,L_0=xR4;j(j0u,"mapToArray");vR4=j0u;j(N0u,"setToArray");AA0=N0u,q_0=EU?EU.prototype:void 0,e50=q_0?q_0.valueOf:void 0;j(i0u,"equalByTag");hR4=i0u;j(a0u,"arrayPush");V0u=a0u,mR4=Array.isArray,RB=mR4;j(h0u,"baseGetAllKeys");rR4=h0u;j(m0u,"arrayFilter");r0u=m0u;j($0u,"stubArray");$R4=$0u,yR4=Object.prototype,cR4=yR4.propertyIsEnumerable,X_0=Object.getOwnPropertySymbols,gR4=!X_0?$R4:function(u){if(u==null)return[];return u=Object(u),r0u(X_0(u),function(B){return cR4.call(u,B)})},_R4=gR4;j(y0u,"baseTimes");nR4=y0u;j(c0u,"isObjectLike");XL=c0u;j(g0u,"baseIsArguments");x_0=g0u,_0u=Object.prototype,dR4=_0u.hasOwnProperty,sR4=_0u.propertyIsEnumerable,oR4=x_0(function(){return arguments}())?x_0:function(u){return XL(u)&&dR4.call(u,"callee")&&!sR4.call(u,"callee")},Dy=oR4;j(n0u,"stubFalse");tR4=n0u,p0u=typeof i7=="object"&&i7&&!i7.nodeType&&i7,v_0=p0u&&typeof T2=="object"&&T2&&!T2.nodeType&&T2,eR4=v_0&&v_0.exports===p0u,S_0=eR4?Lk.Buffer:void 0,uT4=S_0?S_0.isBuffer:void 0,BT4=uT4||tR4,Sr=BT4,AT4=/^(?:0|[1-9]\d*)$/;j(d0u,"isIndex");s0u=d0u;j(o0u,"isLength");CA0=o0u,c6={};c6[HT4]=c6[LT4]=c6[qT4]=c6[XT4]=c6[xT4]=c6[vT4]=c6[ST4]=c6[WT4]=c6[YT4]=!0;c6[DT4]=c6[FT4]=c6[QT4]=c6[UT4]=c6[GT4]=c6[zT4]=c6[kT4]=c6[fT4]=c6[lT4]=c6[bT4]=c6[MT4]=c6[ZT4]=c6[JT4]=c6[wT4]=c6[KT4]=!1;j(t0u,"baseIsTypedArray");RT4=t0u;j(e0u,"baseUnary");TT4=e0u,uuu=typeof i7=="object"&&i7&&!i7.nodeType&&i7,SY=uuu&&typeof T2=="object"&&T2&&!T2.nodeType&&T2,OT4=SY&&SY.exports===uuu,u70=OT4&&u0u.process,IT4=function(){try{var u=SY&&SY.require&&SY.require("util").types;if(u)return u;return u70&&u70.binding&&u70.binding("util")}catch(B){}}(),W_0=IT4,Y_0=W_0&&W_0.isTypedArray,PT4=Y_0?TT4(Y_0):RT4,DA0=PT4,jT4=Object.prototype,NT4=jT4.hasOwnProperty;j(Buu,"arrayLikeKeys");iT4=Buu,aT4=Object.prototype;j(Euu,"isPrototype");Auu=Euu;j(Cuu,"overArg");VT4=Cuu,hT4=VT4(Object.keys,Object),mT4=hT4,rT4=Object.prototype,$T4=rT4.hasOwnProperty;j(Duu,"baseKeys");Fuu=Duu;j(Uuu,"isArrayLike");Fy=Uuu;j(zuu,"keys");FA0=zuu;j(kuu,"getAllKeys");R_0=kuu,cT4=Object.prototype,gT4=cT4.hasOwnProperty;j(fuu,"equalObjects");_T4=fuu,nT4=jL(Lk,"DataView"),aB0=nT4,pT4=jL(Lk,"Promise"),VB0=pT4,dT4=jL(Lk,"Set"),fL=dT4,sT4=jL(Lk,"WeakMap"),hB0=sT4,tT4=Sw(aB0),eT4=Sw(pY),uO4=Sw(VB0),BO4=Sw(fL),EO4=Sw(hB0),iJ=PL;if(aB0&&iJ(new aB0(new ArrayBuffer(1)))!=j_0||pY&&iJ(new pY)!=T_0||VB0&&iJ(VB0.resolve())!=O_0||fL&&iJ(new fL)!=I_0||hB0&&iJ(new hB0)!=P_0)iJ=j(function(u){var B=PL(u),E=B==oT4?u.constructor:void 0,A=E?Sw(E):"";if(A)switch(A){case tT4:return j_0;case eT4:return T_0;case uO4:return O_0;case BO4:return I_0;case EO4:return P_0}return B},"getTag");mB0=iJ,CO4=Object.prototype,a_0=CO4.hasOwnProperty;j(luu,"baseIsEqualDeep");DO4=luu;j(UA0,"baseIsEqual");buu=UA0;j(Muu,"baseIsMatch");zO4=Muu;j(Zuu,"isStrictComparable");Juu=Zuu;j(wuu,"getMatchData");kO4=wuu;j(Kuu,"matchesStrictComparable");Quu=Kuu;j(Guu,"baseMatches");fO4=Guu;j(Huu,"isSymbol");Uy=Huu,bO4=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,MO4=/^\w*$/;j(Luu,"isKey");zA0=Luu;j(zy,"memoize");zy.Cache=Cy;JO4=zy;j(quu,"memoizeCapped");KO4=quu,QO4=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,GO4=/\\(\\)?/g,HO4=KO4(function(u){var B=[];if(u.charCodeAt(0)===46)B.push("");return u.replace(QO4,function(E,A,C,D){B.push(C?D.replace(GO4,"$1"):A||E)}),B}),LO4=HO4,V_0=EU?EU.prototype:void 0,h_0=V_0?V_0.toString:void 0;j(kA0,"baseToString");XO4=kA0;j(Xuu,"toString");xO4=Xuu;j(xuu,"castPath");vuu=xuu;j(Suu,"toKey");ky=Suu;j(Wuu,"baseGet");Yuu=Wuu;j(Ruu,"get");SO4=Ruu;j(Tuu,"baseHasIn");WO4=Tuu;j(Ouu,"hasPath");YO4=Ouu;j(Iuu,"hasIn");RO4=Iuu;j(Puu,"baseMatchesProperty");IO4=Puu;j(juu,"identity");fA0=juu;j(Nuu,"baseProperty");PO4=Nuu;j(iuu,"basePropertyDeep");jO4=iuu;j(auu,"property");NO4=auu;j(Vuu,"baseIteratee");fy=Vuu;j(huu,"createBaseFor");iO4=huu,aO4=iO4(),VO4=aO4;j(muu,"baseForOwn");hO4=muu;j(ruu,"createBaseEach");mO4=ruu,rO4=mO4(hO4),ly=rO4;j($uu,"baseMap");$O4=$uu;j(yuu,"map");zk=yuu;j(cuu,"baseFilter");yO4=cuu;j(guu,"filter");cO4=guu;j(fw,"buildATNKey");lA0=class{static{j(this,"AbstractTransition")}constructor(u){this.target=u}isEpsilon(){return!1}},bA0=class extends lA0{static{j(this,"AtomTransition")}constructor(u,B){super(u);this.tokenType=B}},duu=class extends lA0{static{j(this,"EpsilonTransition")}constructor(u){super(u)}isEpsilon(){return!0}},MA0=class extends lA0{static{j(this,"RuleTransition")}constructor(u,B,E){super(u);this.rule=B,this.followState=E}isEpsilon(){return!0}};j(suu,"createATN");j(ouu,"createRuleStartAndStopATNStates");j(ZA0,"atom");j(tuu,"repetition");j(euu,"repetitionSep");j(u4u,"repetitionMandatory");j(B4u,"repetitionMandatorySep");j(E4u,"alternation");j(A4u,"option");j(Lb,"block");j(JA0,"plus");j(wA0,"star");j(C4u,"optional");j(qk,"defineDecisionState");j(Tw,"makeAlts");j(D4u,"getProdType");j(F4u,"makeBlock");j(by,"tokenRef");j(U4u,"ruleRef");j(z4u,"buildRuleHandle");j(F2,"epsilon");j(E5,"newState");j(My,"addTransition");j(k4u,"removeState");Wr={},rB0=class{static{j(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(u){let B=KA0(u);if(!(B in this.map))this.map[B]=this.configs.length,this.configs.push(u)}get elements(){return this.configs}get alts(){return zk(this.configs,(u)=>u.alt)}get key(){let u="";for(let B in this.map)u+=B+":";return u}};j(KA0,"getATNConfigKey");j(f4u,"baseExtremum");sO4=f4u;j(l4u,"baseLt");oO4=l4u;j(b4u,"min");tO4=b4u,m_0=EU?EU.isConcatSpreadable:void 0;j(M4u,"isFlattenable");eO4=M4u;j(QA0,"baseFlatten");Z4u=QA0;j(J4u,"flatMap");uI4=J4u;j(w4u,"baseFindIndex");BI4=w4u;j(K4u,"baseIsNaN");EI4=K4u;j(Q4u,"strictIndexOf");AI4=Q4u;j(G4u,"baseIndexOf");CI4=G4u;j(H4u,"arrayIncludes");DI4=H4u;j(L4u,"arrayIncludesWith");FI4=L4u;j(q4u,"noop");UI4=q4u,kI4=!(fL&&1/AA0(new fL([,-0]))[1]==zI4)?UI4:function(u){return new fL(u)},fI4=kI4;j(X4u,"baseUniq");bI4=X4u;j(x4u,"uniqBy");MI4=x4u;j(v4u,"flatten");ZI4=v4u;j(S4u,"arrayEach");JI4=S4u;j(W4u,"castFunction");wI4=W4u;j(Y4u,"forEach");B70=Y4u,GI4=Object.prototype,HI4=GI4.hasOwnProperty;j(R4u,"isEmpty");LI4=R4u;j(T4u,"arrayReduce");qI4=T4u;j(O4u,"baseReduce");XI4=O4u;j(I4u,"reduce");r_0=I4u;j(P4u,"createDFACache");j4u=class{static{j(this,"PredicateSet")}constructor(){this.predicates=[]}is(u){return u>=this.predicates.length||this.predicates[u]}set(u,B){this.predicates[u]=B}toString(){let u="",B=this.predicates.length;for(let E=0;E<B;E++)u+=this.predicates[E]===!0?"1":"0";return u}},$_0=new j4u,xI4=class extends eE0{static{j(this,"LLStarLookaheadStrategy")}constructor(u){var B;super();this.logging=(B=u===null||u===void 0?void 0:u.logging)!==null&&B!==void 0?B:(E)=>console.log(E)}initialize(u){this.atn=suu(u.rules),this.dfas=N4u(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(u){let{prodOccurrence:B,rule:E,hasPredicates:A,dynamicTokensEnabled:C}=u,D=this.dfas,F=this.logging,U=fw(E,"Alternation",B),k=this.atn.decisionMap[U].decision,f=zk(WB0({maxLookahead:1,occurrence:B,prodType:"Alternation",rule:E}),(l)=>zk(l,(b)=>b[0]));if($B0(f,!1)&&!C){let l=r_0(f,(b,M,Z)=>{return B70(M,(J)=>{if(J)b[J.tokenTypeIdx]=Z,B70(J.categoryMatches,(w)=>{b[w]=Z})}),b},{});if(A)return function(b){var M;let Z=this.LA(1),J=l[Z.tokenTypeIdx];if(b!==void 0&&J!==void 0){let w=(M=b[J])===null||M===void 0?void 0:M.GATE;if(w!==void 0&&w.call(this)===!1)return}return J};else return function(){let b=this.LA(1);return l[b.tokenTypeIdx]}}else if(A)return function(l){let b=new j4u,M=l===void 0?0:l.length;for(let J=0;J<M;J++){let w=l===null||l===void 0?void 0:l[J].GATE;b.set(J,w===void 0||w.call(this))}let Z=gm.call(this,D,k,b,F);return typeof Z==="number"?Z:void 0};else return function(){let l=gm.call(this,D,k,$_0,F);return typeof l==="number"?l:void 0}}buildLookaheadForOptional(u){let{prodOccurrence:B,rule:E,prodType:A,dynamicTokensEnabled:C}=u,D=this.dfas,F=this.logging,U=fw(E,A,B),k=this.atn.decisionMap[U].decision,f=zk(WB0({maxLookahead:1,occurrence:B,prodType:A,rule:E}),(l)=>{return zk(l,(b)=>b[0])});if($B0(f)&&f[0][0]&&!C){let l=f[0],b=ZI4(l);if(b.length===1&&LI4(b[0].categoryMatches)){let Z=b[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===Z}}else{let M=r_0(b,(Z,J)=>{if(J!==void 0)Z[J.tokenTypeIdx]=!0,B70(J.categoryMatches,(w)=>{Z[w]=!0});return Z},{});return function(){let Z=this.LA(1);return M[Z.tokenTypeIdx]===!0}}}return function(){let l=gm.call(this,D,k,$_0,F);return typeof l==="object"?!1:l===0}}};j($B0,"isLL1Sequence");j(N4u,"initATNSimulator");j(gm,"adaptivePredict");j(i4u,"performLookahead");j(a4u,"computeLookaheadTarget");j(V4u,"reportLookaheadAmbiguity");j(h4u,"buildAmbiguityError");j(m4u,"getProductionDslName");j(r4u,"buildAdaptivePredictError");j($4u,"getExistingTargetState");j(y4u,"computeReachSet");j(c4u,"getReachableTarget");j(g4u,"getUniqueAlt");j(GA0,"newDFAState");j(yB0,"addDFAEdge");j(HA0,"addDFAState");j(_4u,"computeStartState");j(oY,"closure");j(n4u,"getEpsilonTarget");j(p4u,"hasConfigInRuleStopState");j(d4u,"allConfigsInRuleStopStates");j(s4u,"hasConflictTerminatingPrediction");j(o4u,"getConflictingAltSets");j(t4u,"hasConflictingAltSet");j(e4u,"hasStateAssociatedWithOneAlt");BR();u3u=class{static{j(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(u){return this.rootNode=new qA0(u),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(u){let B=new Zy;return B.grammarSource=u,B.root=this.rootNode,this.current.content.push(B),this.nodeStack.push(B),B}buildLeafNode(u,B){let E=new Yr(u.startOffset,u.image.length,VY(u),u.tokenType,!B);return E.grammarSource=B,E.root=this.rootNode,this.current.content.push(E),E}removeNode(u){let B=u.container;if(B){let E=B.content.indexOf(u);if(E>=0)B.content.splice(E,1)}}addHiddenNodes(u){let B=[];for(let C of u){let D=new Yr(C.startOffset,C.image.length,VY(C),C.tokenType,!0);D.root=this.rootNode,B.push(D)}let E=this.current,A=!1;if(E.content.length>0){E.content.push(...B);return}while(E.container){let C=E.container.content.indexOf(E);if(C>0){E.container.content.splice(C,0,...B),A=!0;break}E=E.container}if(!A)this.rootNode.content.unshift(...B)}construct(u){let B=this.current;if(typeof u.$type==="string"&&!u.$infixName)this.current.astNode=u;u.$cstNode=B;let E=this.nodeStack.pop();if(E?.content.length===0)this.removeNode(E)}},LA0=class{static{j(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let u=typeof this._astNode?.$type==="string"?this._astNode:this.container?.astNode;if(!u)throw Error("This node has no associated AST element");return u}set astNode(u){this._astNode=u}get text(){return this.root.fullText.substring(this.offset,this.end)}},Yr=class extends LA0{static{j(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(u,B,E,A,C=!1){super();this._hidden=C,this._offset=u,this._tokenType=A,this._length=B,this._range=E}},Zy=class extends LA0{static{j(this,"CompositeCstNodeImpl")}constructor(){super(...arguments);this.content=new vI4(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 u=this.firstNonHiddenNode,B=this.lastNonHiddenNode;if(u&&B){if(this._rangeCache===void 0){let{range:E}=u,{range:A}=B;this._rangeCache={start:E.start,end:A.end.line<E.start.line?E.start:A.end}}return this._rangeCache}else return{start:s1.create(0,0),end:s1.create(0,0)}}get firstNonHiddenNode(){for(let u of this.content)if(!u.hidden)return u;return this.content[0]}get lastNonHiddenNode(){for(let u=this.content.length-1;u>=0;u--){let B=this.content[u];if(!B.hidden)return B}return this.content[this.content.length-1]}},vI4=class u extends Array{static{j(this,"CstNodeContainer")}constructor(B){super();this.parent=B,Object.setPrototypeOf(this,u.prototype)}push(...B){return this.addParents(B),super.push(...B)}unshift(...B){return this.addParents(B),super.unshift(...B)}splice(B,E,...A){return this.addParents(A),super.splice(B,E,...A)}addParents(B){for(let E of B)E.container=this.parent}},qA0=class extends Zy{static{j(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(u){super();this._text="",this._text=u??""}},Rr=Symbol("Datatype");j(_m,"isDataTypeNode");B3u=j((u)=>u.endsWith(y_0)?u:u+y_0,"withRuleSuffix"),XA0=class{static{j(this,"AbstractLangiumParser")}constructor(u){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=u.parser.Lexer;let B=this.lexer.definition,E=u.LanguageMetaData.mode==="production";if(u.shared.profilers.LangiumProfiler?.isActive("parsing"))this.wrapper=new WI4(B,{...u.parser.ParserConfig,skipValidations:E,errorMessageProvider:u.parser.ParserErrorMessageProvider},u.shared.profilers.LangiumProfiler.createTask("parsing",u.LanguageMetaData.languageId));else this.wrapper=new D3u(B,{...u.parser.ParserConfig,skipValidations:E,errorMessageProvider:u.parser.ParserErrorMessageProvider})}alternatives(u,B){this.wrapper.wrapOr(u,B)}optional(u,B){this.wrapper.wrapOption(u,B)}many(u,B){this.wrapper.wrapMany(u,B)}atLeastOne(u,B){this.wrapper.wrapAtLeastOne(u,B)}getRule(u){return this.allRules.get(u)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},E3u=class extends XA0{static{j(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(u){super(u);this.nodeBuilder=new u3u,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=u.references.Linker,this.converter=u.parser.ValueConverter,this.astReflection=u.shared.AstReflection}rule(u,B){let E=this.computeRuleType(u),A=void 0;if(QL(u))A=u.name,this.registerPrecedenceMap(u);let C=this.wrapper.DEFINE_RULE(B3u(u.name),this.startImplementation(E,A,B).bind(this));if(this.allRules.set(u.name,C),SB(u)&&u.entry)this.mainRule=C;return C}registerPrecedenceMap(u){let B=u.name,E=new Map;for(let A=0;A<u.operators.precedences.length;A++){let C=u.operators.precedences[A];for(let D of C.operators)E.set(D.value,{precedence:A,rightAssoc:C.associativity==="right"})}this.operatorPrecedence.set(B,E)}computeRuleType(u){if(QL(u))return Uw(u);else if(u.fragment)return;else if(DR(u))return Rr;else return Uw(u)}parse(u,B={}){this.nodeBuilder.buildRootNode(u);let E=this.lexerResult=this.lexer.tokenize(u);this.wrapper.input=E.tokens;let A=B.rule?this.allRules.get(B.rule):this.mainRule;if(!A)throw Error(B.rule?`No rule found with name '${B.rule}'`:"No main rule available.");let C=this.doParse(A);return this.nodeBuilder.addHiddenNodes(E.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,wL(C,{deep:!0}),{value:C,lexerErrors:E.errors,lexerReport:E.report,parserErrors:this.wrapper.errors}}doParse(u){let B=this.wrapper.rule(u);if(this.stack.length>0)B=this.construct();if(B===void 0)throw Error("No result from parser");else if(this.stack.length>0)throw Error("Parser stack is not empty after parsing");return B}startImplementation(u,B,E){return(A)=>{let C=!this.isRecording()&&u!==void 0;if(C){let D={$type:u};if(this.stack.push(D),u===Rr)D.value="";else if(B!==void 0)D.$infixName=B}return E(A),C?this.construct():void 0}}extractHiddenTokens(u){let B=this.lexerResult.hidden;if(!B.length)return[];let E=u.startOffset;for(let A=0;A<B.length;A++)if(B[A].startOffset>E)return B.splice(0,A);return B.splice(0,B.length)}consume(u,B,E){let A=this.wrapper.wrapConsume(u,B);if(!this.isRecording()&&this.isValidToken(A)){let C=this.extractHiddenTokens(A);this.nodeBuilder.addHiddenNodes(C);let D=this.nodeBuilder.buildLeafNode(A,E),{assignment:F,crossRef:U}=this.getAssignment(E),z=this.current;if(F){let k=lk(E)?A.image:this.converter.convert(A.image,D);this.assign(F.operator,F.feature,k,D,U)}else if(_m(z)){let k=A.image;if(!lk(E))k=this.converter.convert(k,D).toString();z.value+=k}}}isValidToken(u){return!u.isInsertedInRecovery&&!isNaN(u.startOffset)&&typeof u.endOffset==="number"&&!isNaN(u.endOffset)}subrule(u,B,E,A,C){let D;if(!this.isRecording()&&!E)D=this.nodeBuilder.buildCompositeNode(A);let F;try{F=this.wrapper.wrapSubrule(u,B,C)}finally{if(!this.isRecording()){if(F===void 0&&!E)F=this.construct();if(F!==void 0&&D&&D.length>0)this.performSubruleAssignment(F,A,D)}}}performSubruleAssignment(u,B,E){let{assignment:A,crossRef:C}=this.getAssignment(B);if(A)this.assign(A.operator,A.feature,u,E,C);else if(!A){let D=this.current;if(_m(D))D.value+=u.toString();else if(typeof u==="object"&&u){let U=this.assignWithoutOverride(u,D);this.stack.pop(),this.stack.push(U)}}}action(u,B){if(!this.isRecording()){let E=this.current;if(B.feature&&B.operator){E=this.construct(),this.nodeBuilder.removeNode(E.$cstNode),this.nodeBuilder.buildCompositeNode(B).content.push(E.$cstNode);let C={$type:u};this.stack.push(C),this.assign(B.operator,B.feature,E,E.$cstNode)}else E.$type=u}}construct(){if(this.isRecording())return;let u=this.stack.pop();if(this.nodeBuilder.construct(u),"$infixName"in u)return this.constructInfix(u,this.operatorPrecedence.get(u.$infixName));else if(_m(u))return this.converter.convert(u.value,u.$cstNode);else L80(this.astReflection,u);return u}constructInfix(u,B){let E=u.parts;if(!Array.isArray(E)||E.length===0)return;let A=u.operators;if(!Array.isArray(A)||E.length<2)return E[0];let C=0,D=-1;for(let Z=0;Z<A.length;Z++){let J=A[Z],w=B.get(J)??{precedence:1/0,rightAssoc:!1};if(w.precedence>D)D=w.precedence,C=Z;else if(w.precedence===D){if(!w.rightAssoc)C=Z}}let F=A.slice(0,C),U=A.slice(C+1),z=E.slice(0,C+1),k=E.slice(C+1),f={$infixName:u.$infixName,$type:u.$type,$cstNode:u.$cstNode,parts:z,operators:F},l={$infixName:u.$infixName,$type:u.$type,$cstNode:u.$cstNode,parts:k,operators:U},b=this.constructInfix(f,B),M=this.constructInfix(l,B);return{$type:u.$type,$cstNode:u.$cstNode,left:b,operator:A[C],right:M}}getAssignment(u){if(!this.assignmentMap.has(u)){let B=Mw(u,fk);this.assignmentMap.set(u,{assignment:B,crossRef:B&&Jw(B.terminal)?B.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(u)}assign(u,B,E,A,C){let D=this.current,F;if(C==="single"&&typeof E==="string")F=this.linker.buildReference(D,B,A,E);else if(C==="multi"&&typeof E==="string")F=this.linker.buildMultiReference(D,B,A,E);else F=E;switch(u){case"=":{D[B]=F;break}case"?=":{D[B]=!0;break}case"+=":{if(!Array.isArray(D[B]))D[B]=[];D[B].push(F)}}}assignWithoutOverride(u,B){for(let[A,C]of Object.entries(B)){let D=u[A];if(D===void 0)u[A]=C;else if(Array.isArray(D)&&Array.isArray(C))C.push(...D),u[A]=C}let E=u.$cstNode;if(E)E.astNode=void 0,u.$cstNode=void 0;return u}get definitionErrors(){return this.wrapper.definitionErrors}},A3u=class{static{j(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(u){return FL.buildMismatchTokenMessage(u)}buildNotAllInputParsedMessage(u){return FL.buildNotAllInputParsedMessage(u)}buildNoViableAltMessage(u){return FL.buildNoViableAltMessage(u)}buildEarlyExitMessage(u){return FL.buildEarlyExitMessage(u)}},xA0=class extends A3u{static{j(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:u,actual:B}){return`Expecting ${u.LABEL?"`"+u.LABEL+"`":u.name.endsWith(":KW")?`keyword '${u.name.substring(0,u.name.length-3)}'`:`token of type '${u.name}'`} but found \`${B.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:u}){return`Expecting end of file but found \`${u.image}\`.`}},C3u=class extends XA0{static{j(this,"LangiumCompletionParser")}constructor(){super(...arguments);this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){return}parse(u){this.resetState();let B=this.lexer.tokenize(u,{mode:"partial"});return this.tokens=B.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(u,B){let E=this.wrapper.DEFINE_RULE(B3u(u.name),this.startImplementation(B).bind(this));if(this.allRules.set(u.name,E),u.entry)this.mainRule=E;return E}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(u){return(B)=>{let E=this.keepStackSize();try{u(B)}finally{this.resetStackSize(E)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let u=this.elementStack.length;return this.stackSize=u,u}resetStackSize(u){this.removeUnexpectedElements(),this.stackSize=u}consume(u,B,E){if(this.wrapper.wrapConsume(u,B),!this.isRecording())this.lastElementStack=[...this.elementStack,E],this.nextTokenIndex=this.currIdx+1}subrule(u,B,E,A,C){this.before(A),this.wrapper.wrapSubrule(u,B,C),this.after(A)}before(u){if(!this.isRecording())this.elementStack.push(u)}after(u){if(!this.isRecording()){let B=this.elementStack.lastIndexOf(u);if(B>=0)this.elementStack.splice(B)}}get currIdx(){return this.wrapper.currIdx}},SI4={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new xA0},D3u=class extends fY4{static{j(this,"ChevrotainWrapper")}constructor(u,B){let E=B&&"maxLookahead"in B;super(u,{...SI4,lookaheadStrategy:E?new eE0({maxLookahead:B.maxLookahead}):new xI4({logging:B.skipValidations?()=>{}:void 0}),...B})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(u,B,E){return this.RULE(u,B,E)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(u,B){return this.consume(u,B,void 0)}wrapSubrule(u,B,E){return this.subrule(u,B,{ARGS:[E]})}wrapOr(u,B){this.or(u,B)}wrapOption(u,B){this.option(u,B)}wrapMany(u,B){this.many(u,B)}wrapAtLeastOne(u,B){this.atLeastOne(u,B)}rule(u){return u.call(this,{})}},WI4=class extends D3u{static{j(this,"ProfilerWrapper")}constructor(u,B,E){super(u,B);this.task=E}rule(u){this.task.start(),this.task.startSubTask(this.ruleName(u));try{return super.rule(u)}finally{this.task.stopSubTask(this.ruleName(u)),this.task.stop()}}ruleName(u){return u.ruleName}subrule(u,B,E){this.task.startSubTask(this.ruleName(B));try{return super.subrule(u,B,E)}finally{this.task.stopSubTask(this.ruleName(B))}}};j(Jy,"createParser");j(F3u,"buildRules");j(U3u,"buildInfixRule");j(wb,"buildElement");j(z3u,"buildAction");j(k3u,"buildRuleCall");j(f3u,"buildRuleCallPredicate");j(iC,"buildPredicate");j(l3u,"buildAlternatives");j(b3u,"buildUnorderedGroup");j(M3u,"buildGroup");j(tY,"getGuardCondition");j(vA0,"buildCrossReference");j(Z3u,"buildKeyword");j(SA0,"wrap");j(wy,"getRule");j(J3u,"getRuleName");j(Tr,"getToken");j(WA0,"createCompletionParser");j(YA0,"createLangiumParser");j(RA0,"prepareLangiumParser");Ky=class{static{j(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(u,B){let E=F6(T$(u,!1)),A=this.buildTerminalTokens(E),C=this.buildKeywordTokens(E,A,B);return C.push(...A),C}flushLexingReport(u){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let u=[...this.diagnostics];return this.diagnostics=[],u}buildTerminalTokens(u){return u.filter(HA).filter((B)=>!B.fragment).map((B)=>this.buildTerminalToken(B)).toArray()}buildTerminalToken(u){let B=UR(u),E=this.requiresCustomPattern(B)?this.regexPatternFunction(B):B,A={name:u.name,PATTERN:E};if(typeof E==="function")A.LINE_BREAKS=!0;if(u.hidden)A.GROUP=R$(B)?vB.SKIPPED:"hidden";return A}requiresCustomPattern(u){if(u.flags.includes("u")||u.flags.includes("s"))return!0;else return!1}regexPatternFunction(u){let B=new RegExp(u,u.flags+"y");return(E,A)=>{return B.lastIndex=A,B.exec(E)}}buildKeywordTokens(u,B,E){return u.filter(Zw).flatMap((A)=>Gk(A).filter(lk)).distinct((A)=>A.value).toArray().sort((A,C)=>C.value.length-A.value.length).map((A)=>this.buildKeywordToken(A,B,Boolean(E?.caseInsensitive)))}buildKeywordToken(u,B,E){let A=this.buildKeywordPattern(u,E),C={name:u.value,PATTERN:A,LONGER_ALT:this.findLongerAlt(u,B)};if(typeof A==="function")C.LINE_BREAKS=!0;return C}buildKeywordPattern(u,B){return B?new RegExp(WL(u.value),"i"):u.value}findLongerAlt(u,B){return B.reduce((E,A)=>{let C=A?.PATTERN;if(C?.source&&uE0("^"+C.source+"$",u.value))E.push(A);return E},[])}},TA0=class{static{j(this,"DefaultValueConverter")}convert(u,B){let E=B.grammarSource;if(Jw(E))E=DE0(E);if(bk(E)){let A=E.rule.ref;if(!A)throw Error("This cst node was not parsed by a rule.");return this.runConverter(A,u,B)}return u}runConverter(u,B,E){switch(u.name.toUpperCase()){case"INT":return sF.convertInt(B);case"STRING":return sF.convertString(B);case"ID":return sF.convertID(B)}switch(ZE0(u)?.toLowerCase()){case"number":return sF.convertNumber(B);case"boolean":return sF.convertBoolean(B);case"bigint":return sF.convertBigint(B);case"date":return sF.convertDate(B);default:return B}}};(function(u){function B(k){let f="";for(let l=1;l<k.length-1;l++){let b=k.charAt(l);if(b==="\\"){let M=k.charAt(++l);f+=E(M)}else f+=b}return f}j(B,"convertString"),u.convertString=B;function E(k){switch(k){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 k}}j(E,"convertEscapeCharacter");function A(k){if(k.charAt(0)==="^")return k.substring(1);else return k}j(A,"convertID"),u.convertID=A;function C(k){return parseInt(k)}j(C,"convertInt"),u.convertInt=C;function D(k){return BigInt(k)}j(D,"convertBigint"),u.convertBigint=D;function F(k){return new Date(k)}j(F,"convertDate"),u.convertDate=F;function U(k){return Number(k)}j(U,"convertNumber"),u.convertNumber=U;function z(k){return k.toLowerCase()==="true"}j(z,"convertBoolean"),u.convertBoolean=z})(sF||(sF={}));O6={};w$(O6,Z80(Q$(),1));j(Qy,"delayNextTick");j(Gy,"startCancelableOperation");j(OA0,"setInterruptionPeriod");eF=Symbol("OperationCancelled");j(Ow,"isOperationCancelled");j(I5,"interruptAndCheck");Kk=class{static{j(this,"Deferred")}constructor(){this.promise=new Promise((u,B)=>{this.resolve=(E)=>{return u(E),this},this.reject=(E)=>{return B(E),this}})}},c_0=class u{static{j(this,"FullTextDocument")}constructor(B,E,A,C){this._uri=B,this._languageId=E,this._version=A,this._content=C,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(B){if(B){let E=this.offsetAt(B.start),A=this.offsetAt(B.end);return this._content.substring(E,A)}return this._content}update(B,E){for(let A of B)if(u.isIncremental(A)){let C=PA0(A.range),D=this.offsetAt(C.start),F=this.offsetAt(C.end);this._content=this._content.substring(0,D)+A.text+this._content.substring(F,this._content.length);let U=Math.max(C.start.line,0),z=Math.max(C.end.line,0),k=this._lineOffsets,f=cB0(A.text,!1,D);if(z-U===f.length)for(let b=0,M=f.length;b<M;b++)k[b+U+1]=f[b];else if(f.length<1e4)k.splice(U+1,z-U,...f);else this._lineOffsets=k=k.slice(0,U+1).concat(f,k.slice(z+1));let l=A.text.length-(F-D);if(l!==0)for(let b=U+1+f.length,M=k.length;b<M;b++)k[b]=k[b]+l}else if(u.isFull(A))this._content=A.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=E}getLineOffsets(){if(this._lineOffsets===void 0)this._lineOffsets=cB0(this._content,!0);return this._lineOffsets}positionAt(B){B=Math.max(Math.min(B,this._content.length),0);let E=this.getLineOffsets(),A=0,C=E.length;if(C===0)return{line:0,character:B};while(A<C){let F=Math.floor((A+C)/2);if(E[F]>B)C=F;else A=F+1}let D=A-1;return B=this.ensureBeforeEOL(B,E[D]),{line:D,character:B-E[D]}}offsetAt(B){let E=this.getLineOffsets();if(B.line>=E.length)return this._content.length;else if(B.line<0)return 0;let A=E[B.line];if(B.character<=0)return A;let C=B.line+1<E.length?E[B.line+1]:this._content.length,D=Math.min(A+B.character,C);return this.ensureBeforeEOL(D,A)}ensureBeforeEOL(B,E){while(B>E&&IA0(this._content.charCodeAt(B-1)))B--;return B}get lineCount(){return this.getLineOffsets().length}static isIncremental(B){let E=B;return E!==void 0&&E!==null&&typeof E.text==="string"&&E.range!==void 0&&(E.rangeLength===void 0||typeof E.rangeLength==="number")}static isFull(B){let E=B;return E!==void 0&&E!==null&&typeof E.text==="string"&&E.range===void 0&&E.rangeLength===void 0}};(function(u){function B(C,D,F,U){return new c_0(C,D,F,U)}j(B,"create"),u.create=B;function E(C,D,F){if(C instanceof c_0)return C.update(D,F),C;else throw Error("TextDocument.update: document must be created by TextDocument.create")}j(E,"update"),u.update=E;function A(C,D){let F=C.getText(),U=Ir(D.map(K3u),(f,l)=>{let b=f.range.start.line-l.range.start.line;if(b===0)return f.range.start.character-l.range.start.character;return b}),z=0,k=[];for(let f of U){let l=C.offsetAt(f.range.start);if(l<z)throw Error("Overlapping edit");else if(l>z)k.push(F.substring(z,l));if(f.newText.length)k.push(f.newText);z=C.offsetAt(f.range.end)}return k.push(F.substr(z)),k.join("")}j(A,"applyEdits"),u.applyEdits=A})(Or||(Or={}));j(Ir,"mergeSort");j(cB0,"computeLineOffsets");j(IA0,"isEOL");j(PA0,"getWellformedRange");j(K3u,"getWellformedEdit");(()=>{var u={975:(T)=>{function R(I){if(typeof I!="string")throw TypeError("Path must be a string. Received "+JSON.stringify(I))}j(R,"e");function Y(I,O){for(var i,N="",V=0,h=-1,r=0,m=0;m<=I.length;++m){if(m<I.length)i=I.charCodeAt(m);else{if(i===47)break;i=47}if(i===47){if(h===m-1||r===1);else if(h!==m-1&&r===2){if(N.length<2||V!==2||N.charCodeAt(N.length-1)!==46||N.charCodeAt(N.length-2)!==46){if(N.length>2){var $=N.lastIndexOf("/");if($!==N.length-1){$===-1?(N="",V=0):V=(N=N.slice(0,$)).length-1-N.lastIndexOf("/"),h=m,r=0;continue}}else if(N.length===2||N.length===1){N="",V=0,h=m,r=0;continue}}O&&(N.length>0?N+="/..":N="..",V=2)}else N.length>0?N+="/"+I.slice(h+1,m):N=I.slice(h+1,m),V=m-h-1;h=m,r=0}else i===46&&r!==-1?++r:r=-1}return N}j(Y,"r");var a={resolve:j(function(){for(var I,O="",i=!1,N=arguments.length-1;N>=-1&&!i;N--){var V;N>=0?V=arguments[N]:(I===void 0&&(I=process.cwd()),V=I),R(V),V.length!==0&&(O=V+"/"+O,i=V.charCodeAt(0)===47)}return O=Y(O,!i),i?O.length>0?"/"+O:"/":O.length>0?O:"."},"resolve"),normalize:j(function(I){if(R(I),I.length===0)return".";var O=I.charCodeAt(0)===47,i=I.charCodeAt(I.length-1)===47;return(I=Y(I,!O)).length!==0||O||(I="."),I.length>0&&i&&(I+="/"),O?"/"+I:I},"normalize"),isAbsolute:j(function(I){return R(I),I.length>0&&I.charCodeAt(0)===47},"isAbsolute"),join:j(function(){if(arguments.length===0)return".";for(var I,O=0;O<arguments.length;++O){var i=arguments[O];R(i),i.length>0&&(I===void 0?I=i:I+="/"+i)}return I===void 0?".":a.normalize(I)},"join"),relative:j(function(I,O){if(R(I),R(O),I===O)return"";if((I=a.resolve(I))===(O=a.resolve(O)))return"";for(var i=1;i<I.length&&I.charCodeAt(i)===47;++i);for(var N=I.length,V=N-i,h=1;h<O.length&&O.charCodeAt(h)===47;++h);for(var r=O.length-h,m=V<r?V:r,$=-1,y=0;y<=m;++y){if(y===m){if(r>m){if(O.charCodeAt(h+y)===47)return O.slice(h+y+1);if(y===0)return O.slice(h+y)}else V>m&&(I.charCodeAt(i+y)===47?$=y:y===0&&($=0));break}var p=I.charCodeAt(i+y);if(p!==O.charCodeAt(h+y))break;p===47&&($=y)}var e="";for(y=i+$+1;y<=N;++y)y!==N&&I.charCodeAt(y)!==47||(e.length===0?e+="..":e+="/..");return e.length>0?e+O.slice(h+$):(h+=$,O.charCodeAt(h)===47&&++h,O.slice(h))},"relative"),_makeLong:j(function(I){return I},"_makeLong"),dirname:j(function(I){if(R(I),I.length===0)return".";for(var O=I.charCodeAt(0),i=O===47,N=-1,V=!0,h=I.length-1;h>=1;--h)if((O=I.charCodeAt(h))===47){if(!V){N=h;break}}else V=!1;return N===-1?i?"/":".":i&&N===1?"//":I.slice(0,N)},"dirname"),basename:j(function(I,O){if(O!==void 0&&typeof O!="string")throw TypeError('"ext" argument must be a string');R(I);var i,N=0,V=-1,h=!0;if(O!==void 0&&O.length>0&&O.length<=I.length){if(O.length===I.length&&O===I)return"";var r=O.length-1,m=-1;for(i=I.length-1;i>=0;--i){var $=I.charCodeAt(i);if($===47){if(!h){N=i+1;break}}else m===-1&&(h=!1,m=i+1),r>=0&&($===O.charCodeAt(r)?--r==-1&&(V=i):(r=-1,V=m))}return N===V?V=m:V===-1&&(V=I.length),I.slice(N,V)}for(i=I.length-1;i>=0;--i)if(I.charCodeAt(i)===47){if(!h){N=i+1;break}}else V===-1&&(h=!1,V=i+1);return V===-1?"":I.slice(N,V)},"basename"),extname:j(function(I){R(I);for(var O=-1,i=0,N=-1,V=!0,h=0,r=I.length-1;r>=0;--r){var m=I.charCodeAt(r);if(m!==47)N===-1&&(V=!1,N=r+1),m===46?O===-1?O=r:h!==1&&(h=1):O!==-1&&(h=-1);else if(!V){i=r+1;break}}return O===-1||N===-1||h===0||h===1&&O===N-1&&O===i+1?"":I.slice(O,N)},"extname"),format:j(function(I){if(I===null||typeof I!="object")throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof I);return function(O,i){var N=i.dir||i.root,V=i.base||(i.name||"")+(i.ext||"");return N?N===i.root?N+V:N+"/"+V:V}(0,I)},"format"),parse:j(function(I){R(I);var O={root:"",dir:"",base:"",ext:"",name:""};if(I.length===0)return O;var i,N=I.charCodeAt(0),V=N===47;V?(O.root="/",i=1):i=0;for(var h=-1,r=0,m=-1,$=!0,y=I.length-1,p=0;y>=i;--y)if((N=I.charCodeAt(y))!==47)m===-1&&($=!1,m=y+1),N===46?h===-1?h=y:p!==1&&(p=1):h!==-1&&(p=-1);else if(!$){r=y+1;break}return h===-1||m===-1||p===0||p===1&&h===m-1&&h===r+1?m!==-1&&(O.base=O.name=r===0&&V?I.slice(1,m):I.slice(r,m)):(r===0&&V?(O.name=I.slice(1,h),O.base=I.slice(1,m)):(O.name=I.slice(r,h),O.base=I.slice(r,m)),O.ext=I.slice(h,m)),r>0?O.dir=I.slice(0,r-1):V&&(O.dir="/"),O},"parse"),sep:"/",delimiter:":",win32:null,posix:null};a.posix=a,T.exports=a}},B={};function E(T){var R=B[T];if(R!==void 0)return R.exports;var Y=B[T]={exports:{}};return u[T](Y,Y.exports,E),Y.exports}j(E,"r"),E.d=(T,R)=>{for(var Y in R)E.o(R,Y)&&!E.o(T,Y)&&Object.defineProperty(T,Y,{enumerable:!0,get:R[Y]})},E.o=(T,R)=>Object.prototype.hasOwnProperty.call(T,R),E.r=(T)=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(T,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(T,"__esModule",{value:!0})};var A={};let C;if(E.r(A),E.d(A,{URI:j(()=>b,"URI"),Utils:j(()=>S,"Utils")}),typeof process=="object")C=process.platform==="win32";else if(typeof navigator=="object")C=navigator.userAgent.indexOf("Windows")>=0;let D=/^\w[\w\d+.-]*$/,F=/^\//,U=/^\/\//;function z(T,R){if(!T.scheme&&R)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${T.authority}", path: "${T.path}", query: "${T.query}", fragment: "${T.fragment}"}`);if(T.scheme&&!D.test(T.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(T.path){if(T.authority){if(!F.test(T.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(U.test(T.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}j(z,"a");let k="",f="/",l=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class b{static{j(this,"l")}static isUri(T){return T instanceof b||!!T&&typeof T.authority=="string"&&typeof T.fragment=="string"&&typeof T.path=="string"&&typeof T.query=="string"&&typeof T.scheme=="string"&&typeof T.fsPath=="string"&&typeof T.with=="function"&&typeof T.toString=="function"}scheme;authority;path;query;fragment;constructor(T,R,Y,a,I,O=!1){typeof T=="object"?(this.scheme=T.scheme||k,this.authority=T.authority||k,this.path=T.path||k,this.query=T.query||k,this.fragment=T.fragment||k):(this.scheme=function(i,N){return i||N?i:"file"}(T,O),this.authority=R||k,this.path=function(i,N){switch(i){case"https":case"http":case"file":N?N[0]!==f&&(N=f+N):N=f}return N}(this.scheme,Y||k),this.query=a||k,this.fragment=I||k,z(this,O))}get fsPath(){return Q(this,!1)}with(T){if(!T)return this;let{scheme:R,authority:Y,path:a,query:I,fragment:O}=T;return R===void 0?R=this.scheme:R===null&&(R=k),Y===void 0?Y=this.authority:Y===null&&(Y=k),a===void 0?a=this.path:a===null&&(a=k),I===void 0?I=this.query:I===null&&(I=k),O===void 0?O=this.fragment:O===null&&(O=k),R===this.scheme&&Y===this.authority&&a===this.path&&I===this.query&&O===this.fragment?this:new Z(R,Y,a,I,O)}static parse(T,R=!1){let Y=l.exec(T);return Y?new Z(Y[2]||k,q(Y[4]||k),q(Y[5]||k),q(Y[7]||k),q(Y[9]||k),R):new Z(k,k,k,k,k)}static file(T){let R=k;if(C&&(T=T.replace(/\\/g,f)),T[0]===f&&T[1]===f){let Y=T.indexOf(f,2);Y===-1?(R=T.substring(2),T=f):(R=T.substring(2,Y),T=T.substring(Y)||f)}return new Z("file",R,T,k,k)}static from(T){let R=new Z(T.scheme,T.authority,T.path,T.query,T.fragment);return z(R,!0),R}toString(T=!1){return G(this,T)}toJSON(){return this}static revive(T){if(T){if(T instanceof b)return T;{let R=new Z(T);return R._formatted=T.external,R._fsPath=T._sep===M?T.fsPath:null,R}}return T}}let M=C?1:void 0;class Z extends b{static{j(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=Q(this,!1)),this._fsPath}toString(T=!1){return T?G(this,!0):(this._formatted||(this._formatted=G(this,!1)),this._formatted)}toJSON(){let T={$mid:1};return this._fsPath&&(T.fsPath=this._fsPath,T._sep=M),this._formatted&&(T.external=this._formatted),this.path&&(T.path=this.path),this.scheme&&(T.scheme=this.scheme),this.authority&&(T.authority=this.authority),this.query&&(T.query=this.query),this.fragment&&(T.fragment=this.fragment),T}}let J={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 w(T,R,Y){let a,I=-1;for(let O=0;O<T.length;O++){let i=T.charCodeAt(O);if(i>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57||i===45||i===46||i===95||i===126||R&&i===47||Y&&i===91||Y&&i===93||Y&&i===58)I!==-1&&(a+=encodeURIComponent(T.substring(I,O)),I=-1),a!==void 0&&(a+=T.charAt(O));else{a===void 0&&(a=T.substr(0,O));let N=J[i];N!==void 0?(I!==-1&&(a+=encodeURIComponent(T.substring(I,O)),I=-1),a+=N):I===-1&&(I=O)}}return I!==-1&&(a+=encodeURIComponent(T.substring(I))),a!==void 0?a:T}j(w,"m");function K(T){let R;for(let Y=0;Y<T.length;Y++){let a=T.charCodeAt(Y);a===35||a===63?(R===void 0&&(R=T.substr(0,Y)),R+=J[a]):R!==void 0&&(R+=T[Y])}return R!==void 0?R:T}j(K,"y");function Q(T,R){let Y;return Y=T.authority&&T.path.length>1&&T.scheme==="file"?`//${T.authority}${T.path}`:T.path.charCodeAt(0)===47&&(T.path.charCodeAt(1)>=65&&T.path.charCodeAt(1)<=90||T.path.charCodeAt(1)>=97&&T.path.charCodeAt(1)<=122)&&T.path.charCodeAt(2)===58?R?T.path.substr(1):T.path[1].toLowerCase()+T.path.substr(2):T.path,C&&(Y=Y.replace(/\//g,"\\")),Y}j(Q,"v");function G(T,R){let Y=R?K:w,a="",{scheme:I,authority:O,path:i,query:N,fragment:V}=T;if(I&&(a+=I,a+=":"),(O||I==="file")&&(a+=f,a+=f),O){let h=O.indexOf("@");if(h!==-1){let r=O.substr(0,h);O=O.substr(h+1),h=r.lastIndexOf(":"),h===-1?a+=Y(r,!1,!1):(a+=Y(r.substr(0,h),!1,!1),a+=":",a+=Y(r.substr(h+1),!1,!0)),a+="@"}O=O.toLowerCase(),h=O.lastIndexOf(":"),h===-1?a+=Y(O,!1,!0):(a+=Y(O.substr(0,h),!1,!0),a+=O.substr(h))}if(i){if(i.length>=3&&i.charCodeAt(0)===47&&i.charCodeAt(2)===58){let h=i.charCodeAt(1);h>=65&&h<=90&&(i=`/${String.fromCharCode(h+32)}:${i.substr(3)}`)}else if(i.length>=2&&i.charCodeAt(1)===58){let h=i.charCodeAt(0);h>=65&&h<=90&&(i=`${String.fromCharCode(h+32)}:${i.substr(2)}`)}a+=Y(i,!0,!1)}return N&&(a+="?",a+=Y(N,!1,!1)),V&&(a+="#",a+=R?V:w(V,!1,!1)),a}j(G,"b");function L(T){try{return decodeURIComponent(T)}catch{return T.length>3?T.substr(0,3)+L(T.substr(3)):T}}j(L,"C");let H=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function q(T){return T.match(H)?T.replace(H,(R)=>L(R)):T}j(q,"w");var x=E(975);let v=x.posix||x,W="/";var S;(function(T){T.joinPath=function(R,...Y){return R.with({path:v.join(R.path,...Y)})},T.resolvePath=function(R,...Y){let a=R.path,I=!1;a[0]!==W&&(a=W+a,I=!0);let O=v.resolve(a,...Y);return I&&O[0]===W&&!R.authority&&(O=O.substring(1)),R.with({path:O})},T.dirname=function(R){if(R.path.length===0||R.path===W)return R;let Y=v.dirname(R.path);return Y.length===1&&Y.charCodeAt(0)===46&&(Y=""),R.with({path:Y})},T.basename=function(R){return v.basename(R.path)},T.extname=function(R){return v.extname(R.path)}})(S||(S={})),Q3u=A})();({URI:JE,Utils:dW}=Q3u);(function(u){u.basename=dW.basename,u.dirname=dW.dirname,u.extname=dW.extname,u.joinPath=dW.joinPath,u.resolvePath=dW.resolvePath;let B=typeof process==="object"&&process?.platform==="win32";function E(F,U){return F?.toString()===U?.toString()}j(E,"equals"),u.equals=E;function A(F,U){let z=typeof F==="string"?JE.parse(F).path:F.path,k=typeof U==="string"?JE.parse(U).path:U.path,f=z.split("/").filter((J)=>J.length>0),l=k.split("/").filter((J)=>J.length>0);if(B){let J=/^[A-Z]:$/;if(f[0]&&J.test(f[0]))f[0]=f[0].toLowerCase();if(l[0]&&J.test(l[0]))l[0]=l[0].toLowerCase();if(f[0]!==l[0])return k.substring(1)}let b=0;for(;b<f.length;b++)if(f[b]!==l[b])break;let M="../".repeat(f.length-b),Z=l.slice(b).join("/");return M+Z}j(A,"relative"),u.relative=A;function C(F){return JE.parse(F.toString()).toString()}j(C,"normalize"),u.normalize=C;function D(F,U){let z=typeof F==="string"?F:F.path,k=typeof U==="string"?U:U.path;if(k.charAt(k.length-1)==="/")k=k.slice(0,-1);if(z.charAt(z.length-1)==="/")z=z.slice(0,-1);if(k===z)return!0;if(k.length<z.length)return!1;if(k.charAt(z.length)!=="/")return!1;return k.startsWith(z)}j(D,"contains"),u.contains=D})(xB||(xB={}));jA0=class{static{j(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(u){return xB.normalize(u)}clear(){this.root.children.clear()}insert(u,B){let E=this.getNode(this.normalizeUri(u),!0);E.element=B}delete(u){let B=this.getNode(this.normalizeUri(u),!1);if(B?.parent)B.parent.children.delete(B.name)}has(u){return this.getNode(this.normalizeUri(u),!1)?.element!==void 0}hasNode(u){return this.getNode(this.normalizeUri(u),!1)!==void 0}find(u){return this.getNode(this.normalizeUri(u),!1)?.element}findNode(u){let B=this.normalizeUri(u),E=this.getNode(B,!1);if(!E)return;return{name:E.name,uri:xB.joinPath(JE.parse(B),E.name).toString(),element:E.element}}findChildren(u){let B=this.normalizeUri(u),E=this.getNode(B,!1);if(!E)return[];return Array.from(E.children.values()).map((A)=>({name:A.name,uri:xB.joinPath(JE.parse(B),A.name).toString(),element:A.element}))}all(){return this.collectValues(this.root)}findAll(u){let B=this.getNode(xB.normalize(u),!1);if(!B)return[];return this.collectValues(B)}getNode(u,B){let E=u.split("/");if(u.charAt(u.length-1)==="/")E.pop();let A=this.root;for(let C of E){let D=A.children.get(C);if(!D)if(B)D={name:C,children:new Map,parent:A},A.children.set(C,D);else return;A=D}return A}collectValues(u){let B=[];if(u.element)B.push(u.element);for(let E of u.children.values())B.push(...this.collectValues(E));return B}};(function(u){u[u.Changed=0]="Changed",u[u.Parsed=1]="Parsed",u[u.IndexedContent=2]="IndexedContent",u[u.ComputedScopes=3]="ComputedScopes",u[u.Linked=4]="Linked",u[u.IndexedReferences=5]="IndexedReferences",u[u.Validated=6]="Validated"})(E1||(E1={}));G3u=class{static{j(this,"DefaultLangiumDocumentFactory")}constructor(u){this.serviceRegistry=u.ServiceRegistry,this.textDocuments=u.workspace.TextDocuments,this.fileSystemProvider=u.workspace.FileSystemProvider}async fromUri(u,B=O6.CancellationToken.None){let E=await this.fileSystemProvider.readFile(u);return this.createAsync(u,E,B)}fromTextDocument(u,B,E){if(B=B??JE.parse(u.uri),O6.CancellationToken.is(E))return this.createAsync(B,u,E);else return this.create(B,u,E)}fromString(u,B,E){if(O6.CancellationToken.is(E))return this.createAsync(B,u,E);else return this.create(B,u,E)}fromModel(u,B){return this.create(B,{$model:u})}create(u,B,E){if(typeof B==="string"){let A=this.parse(u,B,E);return this.createLangiumDocument(A,u,void 0,B)}else if("$model"in B){let A={value:B.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(A,u)}else{let A=this.parse(u,B.getText(),E);return this.createLangiumDocument(A,u,B)}}async createAsync(u,B,E){if(typeof B==="string"){let A=await this.parseAsync(u,B,E);return this.createLangiumDocument(A,u,void 0,B)}else{let A=await this.parseAsync(u,B.getText(),E);return this.createLangiumDocument(A,u,B)}}createLangiumDocument(u,B,E,A){let C;if(E)C={parseResult:u,uri:B,state:E1.Parsed,references:[],textDocument:E};else{let D=this.createTextDocumentGetter(B,A);C={parseResult:u,uri:B,state:E1.Parsed,references:[],get textDocument(){return D()}}}return u.value.$document=C,C}async update(u,B){let E=u.parseResult.value.$cstNode?.root.fullText,A=this.textDocuments?.get(u.uri.toString()),C=A?A.getText():await this.fileSystemProvider.readFile(u.uri);if(A)Object.defineProperty(u,"textDocument",{value:A});else{let D=this.createTextDocumentGetter(u.uri,C);Object.defineProperty(u,"textDocument",{get:D})}if(E!==C)u.parseResult=await this.parseAsync(u.uri,C,B),u.parseResult.value.$document=u;return u.state=E1.Parsed,u}parse(u,B,E){return this.serviceRegistry.getServices(u).parser.LangiumParser.parse(B,E)}parseAsync(u,B,E){return this.serviceRegistry.getServices(u).parser.AsyncParser.parse(B,E)}createTextDocumentGetter(u,B){let E=this.serviceRegistry,A=void 0;return()=>{return A??(A=Or.create(u.toString(),E.getServices(u).LanguageMetaData.languageId,0,B??""))}}},H3u=class{static{j(this,"DefaultLangiumDocuments")}constructor(u){this.documentTrie=new jA0,this.services=u,this.langiumDocumentFactory=u.workspace.LangiumDocumentFactory,this.documentBuilder=()=>u.workspace.DocumentBuilder}get all(){return F6(this.documentTrie.all())}addDocument(u){let B=u.uri.toString();if(this.documentTrie.has(B))throw Error(`A document with the URI '${B}' is already present.`);this.documentTrie.insert(B,u)}getDocument(u){let B=u.toString();return this.documentTrie.find(B)}getDocuments(u){let B=u.toString();return this.documentTrie.findAll(B)}async getOrCreateDocument(u,B){let E=this.getDocument(u);if(E)return E;return E=await this.langiumDocumentFactory.fromUri(u,B),this.addDocument(E),E}createDocument(u,B,E){if(E)return this.langiumDocumentFactory.fromString(B,u,E).then((A)=>{return this.addDocument(A),A});else{let A=this.langiumDocumentFactory.fromString(B,u);return this.addDocument(A),A}}hasDocument(u){return this.documentTrie.has(u.toString())}invalidateDocument(u){let B=u.toString(),E=this.documentTrie.find(B);if(E)this.documentBuilder().resetToState(E,E1.Changed);return E}deleteDocument(u){let B=u.toString(),E=this.documentTrie.find(B);if(E)E.state=E1.Changed,this.documentTrie.delete(B);return E}deleteDocuments(u){let B=u.toString(),E=this.documentTrie.findAll(B);for(let A of E)A.state=E1.Changed;return this.documentTrie.delete(B),E}},aJ=Symbol("RefResolving"),L3u=class{static{j(this,"DefaultLinker")}constructor(u){this.reflection=u.shared.AstReflection,this.langiumDocuments=()=>u.shared.workspace.LangiumDocuments,this.scopeProvider=u.references.ScopeProvider,this.astNodeLocator=u.workspace.AstNodeLocator,this.profiler=u.shared.profilers.LangiumProfiler,this.languageId=u.LanguageMetaData.languageId}async link(u,B=O6.CancellationToken.None){if(this.profiler?.isActive("linking")){let E=this.profiler.createTask("linking",this.languageId);E.start();try{for(let A of VC(u.parseResult.value))await I5(B),KL(A).forEach((C)=>{let D=`${A.$type}:${C.property}`;E.startSubTask(D);try{this.doLink(C,u)}finally{E.stopSubTask(D)}})}finally{E.stop()}}else for(let E of VC(u.parseResult.value))await I5(B),KL(E).forEach((A)=>this.doLink(A,u))}doLink(u,B){let E=u.reference;if("_ref"in E&&E._ref===void 0){E._ref=aJ;try{let A=this.getCandidate(u);if(VJ(A))E._ref=A;else{E._nodeDescription=A;let C=this.loadAstNode(A);E._ref=C??this.createLinkingError(u,A)}}catch(A){console.error(`An error occurred while resolving reference to '${E.$refText}':`,A);let C=A.message??String(A);E._ref={info:u,message:`An error occurred while resolving reference to '${E.$refText}': ${C}`}}B.references.push(E)}else if("_items"in E&&E._items===void 0){E._items=aJ;try{let A=this.getCandidates(u),C=[];if(VJ(A))E._linkingError=A;else for(let D of A){let F=this.loadAstNode(D);if(F)C.push({ref:F,$nodeDescription:D})}E._items=C}catch(A){E._linkingError={info:u,message:`An error occurred while resolving reference to '${E.$refText}': ${A}`},E._items=[]}B.references.push(E)}}unlink(u){for(let B of u.references)if("_ref"in B)B._ref=void 0,delete B._nodeDescription;else if("_items"in B)B._items=void 0,delete B._linkingError;u.references=[]}getCandidate(u){return this.scopeProvider.getScope(u).getElement(u.reference.$refText)??this.createLinkingError(u)}getCandidates(u){let E=this.scopeProvider.getScope(u).getElements(u.reference.$refText).distinct((A)=>`${A.documentUri}#${A.path}`).toArray();return E.length>0?E:this.createLinkingError(u)}buildReference(u,B,E,A){let C=this,D={$refNode:E,$refText:A,_ref:void 0,get ref(){if(R2(this._ref))return this._ref;else if(Q80(this._nodeDescription)){let F=C.loadAstNode(this._nodeDescription);this._ref=F??C.createLinkingError({reference:D,container:u,property:B},this._nodeDescription)}else if(this._ref===void 0){this._ref=aJ;let F=UL(u).$document,U=C.getLinkedNode({reference:D,container:u,property:B});if(U.error&&F&&F.state<E1.ComputedScopes)return this._ref=void 0;this._ref=U.node??U.error,this._nodeDescription=U.descr,F?.references.push(this)}else if(this._ref===aJ)C.throwCyclicReferenceError(u,B,A);return R2(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return VJ(this._ref)?this._ref:void 0}};return D}buildMultiReference(u,B,E,A){let C=this,D={$refNode:E,$refText:A,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;else if(this._items===void 0){this._items=aJ;let F=UL(u).$document,U=C.getCandidates({reference:D,container:u,property:B}),z=[];if(VJ(U))this._linkingError=U;else for(let k of U){let f=C.loadAstNode(k);if(f)z.push({ref:f,$nodeDescription:k})}this._items=z,F?.references.push(this)}else if(this._items===aJ)C.throwCyclicReferenceError(u,B,A);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=C.createLinkingError({reference:D,container:u,property:B})}};return D}throwCyclicReferenceError(u,B,E){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(u)}/${B} (symbol '${E}')`)}getLinkedNode(u){try{let B=this.getCandidate(u);if(VJ(B))return{error:B};let E=this.loadAstNode(B);if(E)return{node:E,descr:B};else return{descr:B,error:this.createLinkingError(u,B)}}catch(B){console.error(`An error occurred while resolving reference to '${u.reference.$refText}':`,B);let E=B.message??String(B);return{error:{info:u,message:`An error occurred while resolving reference to '${u.reference.$refText}': ${E}`}}}}loadAstNode(u){if(u.node)return u.node;let B=this.langiumDocuments().getDocument(u.documentUri);if(!B)return;return this.astNodeLocator.getAstNode(B.parseResult.value,u.path)}createLinkingError(u,B){let E=UL(u.container).$document;if(E&&E.state<E1.ComputedScopes)console.warn(`Attempted reference resolution before document reached ComputedScopes state (${E.uri}).`);let A=this.reflection.getReferenceType(u);return{info:u,message:`Could not resolve reference to ${A} named '${u.reference.$refText}'.`,targetDescription:B}}};j(NA0,"isNamed");q3u=class{static{j(this,"DefaultNameProvider")}getName(u){if(NA0(u))return u.name;return}getNameNode(u){return O$(u.$cstNode,"name")}},X3u=class{static{j(this,"DefaultReferences")}constructor(u){this.nameProvider=u.references.NameProvider,this.index=u.shared.workspace.IndexManager,this.nodeLocator=u.workspace.AstNodeLocator,this.documents=u.shared.workspace.LangiumDocuments,this.hasMultiReference=VC(u.Grammar).some((B)=>Jw(B)&&B.isMulti)}findDeclarations(u){if(u){let B=kE0(u),E=u.astNode;if(B&&E){let A=E[B.feature];if(XB(A)||uU(A))return sm(A);else if(Array.isArray(A)){for(let C of A)if((XB(C)||uU(C))&&C.$refNode&&C.$refNode.offset<=u.offset&&C.$refNode.end>=u.end)return sm(C)}}if(E){let A=this.nameProvider.getNameNode(E);if(A&&(A===u||$80(u,A)))return this.getSelfNodes(E)}}return[]}getSelfNodes(u){if(!this.hasMultiReference)return[u];else{let B=this.index.findAllReferences(u,this.nodeLocator.getAstNodePath(u)),E=this.getNodeFromReferenceDescription(B.head());if(E){for(let A of KL(E))if(uU(A.reference)&&A.reference.items.some((C)=>C.ref===u))return A.reference.items.map((C)=>C.ref)}return[u]}}getNodeFromReferenceDescription(u){if(!u)return;let B=this.documents.getDocument(u.sourceUri);if(B)return this.nodeLocator.getAstNode(B.parseResult.value,u.sourcePath);return}findDeclarationNodes(u){let B=this.findDeclarations(u),E=[];for(let A of B){let C=this.nameProvider.getNameNode(A)??A.$cstNode;if(C)E.push(C)}return E}findReferences(u,B){let E=[];if(B.includeDeclaration)E.push(...this.getSelfReferences(u));let A=this.index.findAllReferences(u,this.nodeLocator.getAstNodePath(u));if(B.documentUri)A=A.filter((C)=>xB.equals(C.sourceUri,B.documentUri));return E.push(...A),F6(E)}getSelfReferences(u){let B=this.getSelfNodes(u),E=[];for(let A of B){let C=this.nameProvider.getNameNode(A);if(C){let D=aC(A),F=this.nodeLocator.getAstNodePath(A);E.push({sourceUri:D.uri,sourcePath:F,targetUri:D.uri,targetPath:F,segment:HL(C),local:!0})}}return E}},Qk=class{static{j(this,"MultiMap")}constructor(u){if(this.map=new Map,u)for(let[B,E]of u)this.add(B,E)}get size(){return aY.sum(F6(this.map.values()).map((u)=>u.length))}clear(){this.map.clear()}delete(u,B){if(B===void 0)return this.map.delete(u);else{let E=this.map.get(u);if(E){let A=E.indexOf(B);if(A>=0){if(E.length===1)this.map.delete(u);else E.splice(A,1);return!0}}return!1}}get(u){return this.map.get(u)??[]}getStream(u){let B=this.map.get(u);return B?F6(B):ZL}has(u,B){if(B===void 0)return this.map.has(u);else{let E=this.map.get(u);if(E)return E.indexOf(B)>=0;return!1}}add(u,B){if(this.map.has(u))this.map.get(u).push(B);else this.map.set(u,[B]);return this}addAll(u,B){if(this.map.has(u))this.map.get(u).push(...B);else this.map.set(u,Array.from(B));return this}forEach(u){this.map.forEach((B,E)=>B.forEach((A)=>u(A,E,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return F6(this.map.entries()).flatMap(([u,B])=>B.map((E)=>[u,E]))}keys(){return F6(this.map.keys())}values(){return F6(this.map.values()).flat()}entriesGroupedByKey(){return F6(this.map.entries())}},Pr=class{static{j(this,"BiMap")}get size(){return this.map.size}constructor(u){if(this.map=new Map,this.inverse=new Map,u)for(let[B,E]of u)this.set(B,E)}clear(){this.map.clear(),this.inverse.clear()}set(u,B){return this.map.set(u,B),this.inverse.set(B,u),this}get(u){return this.map.get(u)}getKey(u){return this.inverse.get(u)}delete(u){let B=this.map.get(u);if(B!==void 0)return this.map.delete(u),this.inverse.delete(B),!0;return!1}},x3u=class{static{j(this,"DefaultScopeComputation")}constructor(u){this.nameProvider=u.references.NameProvider,this.descriptions=u.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(u,B=O6.CancellationToken.None){return this.collectExportedSymbolsForNode(u.parseResult.value,u,void 0,B)}async collectExportedSymbolsForNode(u,B,E=AR,A=O6.CancellationToken.None){let C=[];this.addExportedSymbol(u,C,B);for(let D of E(u))await I5(A),this.addExportedSymbol(D,C,B);return C}addExportedSymbol(u,B,E){let A=this.nameProvider.getName(u);if(A)B.push(this.descriptions.createDescription(u,A,E))}async collectLocalSymbols(u,B=O6.CancellationToken.None){let E=u.parseResult.value,A=new Qk;for(let C of Gk(E))await I5(B),this.addLocalSymbol(C,u,A);return A}addLocalSymbol(u,B,E){let A=u.$container;if(A){let C=this.nameProvider.getName(u);if(C)E.add(A,this.descriptions.createDescription(u,C,B))}}},gB0=class{static{j(this,"StreamScope")}constructor(u,B,E){this.elements=u,this.outerScope=B,this.caseInsensitive=E?.caseInsensitive??!1,this.concatOuterScope=E?.concatOuterScope??!0}getAllElements(){if(this.outerScope)return this.elements.concat(this.outerScope.getAllElements());else return this.elements}getElement(u){let B=this.caseInsensitive?u.toLowerCase():u,E=this.caseInsensitive?this.elements.find((A)=>A.name.toLowerCase()===B):this.elements.find((A)=>A.name===u);if(E)return E;if(this.outerScope)return this.outerScope.getElement(u);return}getElements(u){let B=this.caseInsensitive?u.toLowerCase():u,E=this.caseInsensitive?this.elements.filter((A)=>A.name.toLowerCase()===B):this.elements.filter((A)=>A.name===u);if((this.concatOuterScope||E.isEmpty())&&this.outerScope)return E.concat(this.outerScope.getElements(u));else return E}},YI4=class{static{j(this,"MapScope")}constructor(u,B,E){this.elements=new Map,this.caseInsensitive=E?.caseInsensitive??!1,this.concatOuterScope=E?.concatOuterScope??!0;for(let A of u){let C=this.caseInsensitive?A.name.toLowerCase():A.name;this.elements.set(C,A)}this.outerScope=B}getElement(u){let B=this.caseInsensitive?u.toLowerCase():u,E=this.elements.get(B);if(E)return E;if(this.outerScope)return this.outerScope.getElement(u);return}getElements(u){let B=this.caseInsensitive?u.toLowerCase():u,E=this.elements.get(B),A=E?[E]:[];if((this.concatOuterScope||A.length>0)&&this.outerScope)return F6(A).concat(this.outerScope.getElements(u));else return F6(A)}getAllElements(){let u=F6(this.elements.values());if(this.outerScope)u=u.concat(this.outerScope.getAllElements());return u}},v3u=class{static{j(this,"MultiMapScope")}constructor(u,B,E){this.elements=new Qk,this.caseInsensitive=E?.caseInsensitive??!1,this.concatOuterScope=E?.concatOuterScope??!0;for(let A of u){let C=this.caseInsensitive?A.name.toLowerCase():A.name;this.elements.add(C,A)}this.outerScope=B}getElement(u){let B=this.caseInsensitive?u.toLowerCase():u,E=this.elements.get(B)[0];if(E)return E;if(this.outerScope)return this.outerScope.getElement(u);return}getElements(u){let B=this.caseInsensitive?u.toLowerCase():u,E=this.elements.get(B);if((this.concatOuterScope||E.length===0)&&this.outerScope)return F6(E).concat(this.outerScope.getElements(u));else return F6(E)}getAllElements(){let u=F6(this.elements.values());if(this.outerScope)u=u.concat(this.outerScope.getAllElements());return u}},RI4={getElement(){return},getElements(){return ZL},getAllElements(){return ZL}},Hy=class{static{j(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(u){this.toDispose.push(u)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach((u)=>u.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}},iA0=class extends Hy{static{j(this,"SimpleCache")}constructor(){super(...arguments);this.cache=new Map}has(u){return this.throwIfDisposed(),this.cache.has(u)}set(u,B){this.throwIfDisposed(),this.cache.set(u,B)}get(u,B){if(this.throwIfDisposed(),this.cache.has(u))return this.cache.get(u);else if(B){let E=B();return this.cache.set(u,E),E}else return}delete(u){return this.throwIfDisposed(),this.cache.delete(u)}clear(){this.throwIfDisposed(),this.cache.clear()}},Ly=class extends Hy{static{j(this,"ContextCache")}constructor(u){super();this.cache=new Map,this.converter=u??((B)=>B)}has(u,B){return this.throwIfDisposed(),this.cacheForContext(u).has(B)}set(u,B,E){this.throwIfDisposed(),this.cacheForContext(u).set(B,E)}get(u,B,E){this.throwIfDisposed();let A=this.cacheForContext(u);if(A.has(B))return A.get(B);else if(E){let C=E();return A.set(B,C),C}else return}delete(u,B){return this.throwIfDisposed(),this.cacheForContext(u).delete(B)}clear(u){if(this.throwIfDisposed(),u){let B=this.converter(u);this.cache.delete(B)}else this.cache.clear()}cacheForContext(u){let B=this.converter(u),E=this.cache.get(B);if(!E)E=new Map,this.cache.set(B,E);return E}},S3u=class extends Ly{static{j(this,"DocumentCache")}constructor(u,B){super((E)=>E.toString());if(B)this.toDispose.push(u.workspace.DocumentBuilder.onDocumentPhase(B,(E)=>{this.clear(E.uri.toString())})),this.toDispose.push(u.workspace.DocumentBuilder.onUpdate((E,A)=>{for(let C of A)this.clear(C)}));else this.toDispose.push(u.workspace.DocumentBuilder.onUpdate((E,A)=>{let C=E.concat(A);for(let D of C)this.clear(D)}))}},aA0=class extends iA0{static{j(this,"WorkspaceCache")}constructor(u,B){super();if(B)this.toDispose.push(u.workspace.DocumentBuilder.onBuildPhase(B,()=>{this.clear()})),this.toDispose.push(u.workspace.DocumentBuilder.onUpdate((E,A)=>{if(A.length>0)this.clear()}));else this.toDispose.push(u.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},W3u=class{static{j(this,"DefaultScopeProvider")}constructor(u){this.reflection=u.shared.AstReflection,this.nameProvider=u.references.NameProvider,this.descriptions=u.workspace.AstNodeDescriptionProvider,this.indexManager=u.shared.workspace.IndexManager,this.globalScopeCache=new aA0(u.shared)}getScope(u){let B=[],E=this.reflection.getReferenceType(u),A=aC(u.container).localSymbols;if(A){let D=u.container;do{if(A.has(D))B.push(A.getStream(D).filter((F)=>this.reflection.isSubtype(F.type,E)));D=D.$container}while(D)}let C=this.getGlobalScope(E,u);for(let D=B.length-1;D>=0;D--)C=this.createScope(B[D],C);return C}createScope(u,B,E){return new gB0(F6(u),B,E)}createScopeForNodes(u,B,E){let A=F6(u).map((C)=>{let D=this.nameProvider.getName(C);if(D)return this.descriptions.createDescription(C,D);return}).nonNullable();return new gB0(A,B,E)}getGlobalScope(u,B){return this.globalScopeCache.get(u,()=>new v3u(this.indexManager.allElements(u)))}};j(VA0,"isAstNodeWithComment");j(_B0,"isIntermediateReference");Y3u=class{static{j(this,"DefaultJsonSerializer")}constructor(u){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=u.shared.workspace.LangiumDocuments,this.astNodeLocator=u.workspace.AstNodeLocator,this.nameProvider=u.references.NameProvider,this.commentProvider=u.documentation.CommentProvider}serialize(u,B){let E=B??{},A=B?.replacer,C=j((F,U)=>this.replacer(F,U,E),"defaultReplacer"),D=A?(F,U)=>A(F,U,C):C;try{return this.currentDocument=aC(u),JSON.stringify(u,D,B?.space)}finally{this.currentDocument=void 0}}deserialize(u,B){let E=B??{},A=JSON.parse(u);return this.linkNode(A,A,E),A}replacer(u,B,{refText:E,sourceText:A,textRegions:C,comments:D,uriConverter:F}){if(this.ignoreProperties.has(u))return;else if(XB(B)){let U=B.ref,z=E?B.$refText:void 0;if(U){let k=aC(U),f="";if(this.currentDocument&&this.currentDocument!==k)if(F)f=F(k.uri,U);else f=k.uri.toString();let l=this.astNodeLocator.getAstNodePath(U);return{$ref:`${f}#${l}`,$refText:z}}else return{$error:B.error?.message??"Could not resolve reference",$refText:z}}else if(uU(B)){let U=E?B.$refText:void 0,z=[];for(let k of B.items){let f=k.ref,l=aC(k.ref),b="";if(this.currentDocument&&this.currentDocument!==l)if(F)b=F(l.uri,f);else b=l.uri.toString();let M=this.astNodeLocator.getAstNodePath(f);z.push(`${b}#${M}`)}return{$refs:z,$refText:U}}else if(R2(B)){let U=void 0;if(C){if(U=this.addAstNodeRegionWithAssignmentsTo({...B}),(!u||B.$document)&&U?.$textRegion)U.$textRegion.documentURI=this.currentDocument?.uri.toString()}if(A&&!u)U??(U={...B}),U.$sourceText=B.$cstNode?.text;if(D){U??(U={...B});let z=this.commentProvider.getComment(B);if(z)U.$comment=z.replace(/\r/g,"")}return U??B}else return B}addAstNodeRegionWithAssignmentsTo(u){let B=j((E)=>({offset:E.offset,end:E.end,length:E.length,range:E.range}),"createDocumentSegment");if(u.$cstNode){let E=u.$textRegion=B(u.$cstNode),A=E.assignments={};return Object.keys(u).filter((C)=>!C.startsWith("$")).forEach((C)=>{let D=UE0(u.$cstNode,C).map(B);if(D.length!==0)A[C]=D}),u}return}linkNode(u,B,E,A,C,D){for(let[U,z]of Object.entries(u))if(Array.isArray(z))for(let k=0;k<z.length;k++){let f=z[k];if(_B0(f))z[k]=this.reviveReference(u,U,B,f,E);else if(R2(f))this.linkNode(f,B,E,u,U,k)}else if(_B0(z))u[U]=this.reviveReference(u,U,B,z,E);else if(R2(z))this.linkNode(z,B,E,u,U);let F=u;F.$container=A,F.$containerProperty=C,F.$containerIndex=D}reviveReference(u,B,E,A,C){let{$refText:D,$error:F}=A,U;if(A.$ref){let z=this.getRefNode(E,A.$ref,C.uriConverter);if(R2(z)){if(!D)D=this.nameProvider.getName(z);return{$refText:D??"",ref:z}}else F=z}else if(A.$refs){let z=[];for(let k of A.$refs){let f=this.getRefNode(E,k,C.uriConverter);if(R2(f))z.push({ref:f})}if(z.length===0)U={$refText:D??"",items:z},F??(F="Could not resolve multi-reference");else return{$refText:D??"",items:z}}if(F)return U??(U={$refText:D??"",ref:void 0}),U.error={info:{container:u,property:B,reference:U},message:F},U;else return}getRefNode(u,B,E){try{let A=B.indexOf("#");if(A===0){let U=this.astNodeLocator.getAstNode(u,B.substring(1));if(!U)return"Could not resolve path: "+B;return U}if(A<0){let U=E?E(B):JE.parse(B),z=this.langiumDocuments.getDocument(U);if(!z)return"Could not find document for URI: "+B;return z.parseResult.value}let C=E?E(B.substring(0,A)):JE.parse(B.substring(0,A)),D=this.langiumDocuments.getDocument(C);if(!D)return"Could not find document for URI: "+B;if(A===B.length-1)return D.parseResult.value;let F=this.astNodeLocator.getAstNode(D.parseResult.value,B.substring(A+1));if(!F)return"Could not resolve URI: "+B;return F}catch(A){return String(A)}}},R3u=class{static{j(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(u){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=u?.workspace.TextDocuments}register(u){let B=u.LanguageMetaData;for(let E of B.fileExtensions){if(this.fileExtensionMap.has(E))console.warn(`The file extension ${E} is used by multiple languages. It is now assigned to '${B.languageId}'.`);this.fileExtensionMap.set(E,u)}if(B.fileNames)for(let E of B.fileNames){if(this.fileNameMap.has(E))console.warn(`The file name ${E} is used by multiple languages. It is now assigned to '${B.languageId}'.`);this.fileNameMap.set(E,u)}this.languageIdMap.set(B.languageId,u)}getServices(u){if(this.languageIdMap.size===0)throw Error("The service registry is empty. Use `register` to register the services of a language.");let B=this.textDocuments?.get(u)?.languageId;if(B!==void 0){let D=this.languageIdMap.get(B);if(D)return D}let E=xB.extname(u),A=xB.basename(u),C=this.fileNameMap.get(A)??this.fileExtensionMap.get(E);if(!C)if(B)throw Error(`The service registry contains no services for the extension '${E}' for language '${B}'.`);else throw Error(`The service registry contains no services for the extension '${E}'.`);return C}hasServices(u){try{return this.getServices(u),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};j(Bw,"diagnosticData");(function(u){u.defaults=["fast","slow","built-in"],u.all=u.defaults})(jr||(jr={}));T3u=class{static{j(this,"ValidationRegistry")}constructor(u){this.entries=new Qk,this.knownCategories=new Set(jr.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=u.shared.AstReflection}register(u,B=this,E="fast"){if(E==="built-in")throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(E);for(let[A,C]of Object.entries(u)){let D=C;if(Array.isArray(D))for(let F of D){let U={check:this.wrapValidationException(F,B),category:E};this.addEntry(A,U)}else if(typeof D==="function"){let F={check:this.wrapValidationException(D,B),category:E};this.addEntry(A,F)}else Qb(D)}}wrapValidationException(u,B){return async(E,A,C)=>{await this.handleException(()=>u.call(B,E,A,C),"An error occurred during validation",A,E)}}async handleException(u,B,E,A){try{await u()}catch(C){if(Ow(C))throw C;if(console.error(`${B}:`,C),C instanceof Error&&C.stack)console.error(C.stack);let D=C instanceof Error?C.message:String(C);E("error",`${B}: ${D}`,{node:A})}}addEntry(u,B){if(u==="AstNode"){this.entries.add("AstNode",B);return}for(let E of this.reflection.getAllSubTypes(u))this.entries.add(E,B)}getChecks(u,B){let E=F6(this.entries.get(u)).concat(this.entries.get("AstNode"));if(B)E=E.filter((A)=>B.includes(A.category));return E.map((A)=>A.check)}registerBeforeDocument(u,B=this){this.entriesBefore.push(this.wrapPreparationException(u,"An error occurred during set-up of the validation",B))}registerAfterDocument(u,B=this){this.entriesAfter.push(this.wrapPreparationException(u,"An error occurred during tear-down of the validation",B))}wrapPreparationException(u,B,E){return async(A,C,D,F)=>{await this.handleException(()=>u.call(E,A,C,D,F),B,C,A)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(u){return this.knownCategories}},O3u=Object.freeze({validateNode:!0,validateChildren:!0}),I3u=class{static{j(this,"DefaultDocumentValidator")}constructor(u){this.validationRegistry=u.validation.ValidationRegistry,this.metadata=u.LanguageMetaData,this.profiler=u.shared.profilers.LangiumProfiler,this.languageId=u.LanguageMetaData.languageId}async validateDocument(u,B={},E=O6.CancellationToken.None){let A=u.parseResult,C=[];if(await I5(E),!B.categories||B.categories.includes("built-in")){if(this.processLexingErrors(A,C,B),B.stopAfterLexingErrors&&C.some((D)=>D.data?.code===wA.LexingError))return C;if(this.processParsingErrors(A,C,B),B.stopAfterParsingErrors&&C.some((D)=>D.data?.code===wA.ParsingError))return C;if(this.processLinkingErrors(u,C,B),B.stopAfterLinkingErrors&&C.some((D)=>D.data?.code===wA.LinkingError))return C}try{C.push(...await this.validateAst(A.value,B,E))}catch(D){if(Ow(D))throw D;console.error("An error occurred during validation:",D)}return await I5(E),C}processLexingErrors(u,B,E){let A=[...u.lexerErrors,...u.lexerReport?.diagnostics??[]];for(let C of A){let D=C.severity??"error",F={severity:WY(D),range:{start:{line:C.line-1,character:C.column-1},end:{line:C.line-1,character:C.column+C.length-1}},message:C.message,data:mA0(D),source:this.getSource()};B.push(F)}}processParsingErrors(u,B,E){for(let A of u.parserErrors){let C=void 0;if(isNaN(A.token.startOffset)){if("previousToken"in A){let D=A.previousToken;if(!isNaN(D.startOffset)){let F={line:D.endLine-1,character:D.endColumn};C={start:F,end:F}}else{let F={line:0,character:0};C={start:F,end:F}}}}else C=VY(A.token);if(C){let D={severity:WY("error"),range:C,message:A.message,data:Bw(wA.ParsingError),source:this.getSource()};B.push(D)}}}processLinkingErrors(u,B,E){for(let A of u.references){let C=A.error;if(C){let D={node:C.info.container,range:A.$refNode?.range,property:C.info.property,index:C.info.index,data:{code:wA.LinkingError,containerType:C.info.container.$type,property:C.info.property,refText:C.info.reference.$refText}};B.push(this.toDiagnostic("error",C.message,D))}}}async validateAst(u,B,E=O6.CancellationToken.None){let A=[],C=j((D,F,U)=>{A.push(this.toDiagnostic(D,F,U))},"acceptor");return await this.validateAstBefore(u,B,C,E),await this.validateAstNodes(u,B,C,E),await this.validateAstAfter(u,B,C,E),A}async validateAstBefore(u,B,E,A=O6.CancellationToken.None){let C=this.validationRegistry.checksBefore;for(let D of C)await I5(A),await D(u,E,B.categories??[],A)}async validateAstNodes(u,B,E,A=O6.CancellationToken.None){if(this.profiler?.isActive("validating")){let C=this.profiler.createTask("validating",this.languageId);C.start();try{let D=VC(u).iterator();for(let F of D){C.startSubTask(F.$type);let U=this.validateSingleNodeOptions(F,B);if(U.validateNode)try{let z=this.validationRegistry.getChecks(F.$type,B.categories);for(let k of z)await k(F,E,A)}finally{C.stopSubTask(F.$type)}if(!U.validateChildren)D.prune()}}finally{C.stop()}}else{let C=VC(u).iterator();for(let D of C){await I5(A);let F=this.validateSingleNodeOptions(D,B);if(F.validateNode){let U=this.validationRegistry.getChecks(D.$type,B.categories);for(let z of U)await z(D,E,A)}if(!F.validateChildren)C.prune()}}}validateSingleNodeOptions(u,B){return O3u}async validateAstAfter(u,B,E,A=O6.CancellationToken.None){let C=this.validationRegistry.checksAfter;for(let D of C)await I5(A),await D(u,E,B.categories??[],A)}toDiagnostic(u,B,E){return{message:B,range:hA0(E),severity:WY(u),code:E.code,codeDescription:E.codeDescription,tags:E.tags,relatedInformation:E.relatedInformation,data:E.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};j(hA0,"getDiagnosticRange");j(WY,"toDiagnosticSeverity");j(mA0,"toDiagnosticData");(function(u){u.LexingError="lexing-error",u.LexingWarning="lexing-warning",u.LexingInfo="lexing-info",u.LexingHint="lexing-hint",u.ParsingError="parsing-error",u.LinkingError="linking-error"})(wA||(wA={}));P3u=class{static{j(this,"DefaultAstNodeDescriptionProvider")}constructor(u){this.astNodeLocator=u.workspace.AstNodeLocator,this.nameProvider=u.references.NameProvider}createDescription(u,B,E){let A=E??aC(u);B??(B=this.nameProvider.getName(u));let C=this.astNodeLocator.getAstNodePath(u);if(!B)throw Error(`Node at path ${C} has no name.`);let D,F=j(()=>D??(D=HL(this.nameProvider.getNameNode(u)??u.$cstNode)),"nameSegmentGetter");return{node:u,name:B,get nameSegment(){return F()},selectionSegment:HL(u.$cstNode),type:u.$type,documentUri:A.uri,path:C}}},j3u=class{static{j(this,"DefaultReferenceDescriptionProvider")}constructor(u){this.nodeLocator=u.workspace.AstNodeLocator}async createDescriptions(u,B=O6.CancellationToken.None){let E=[],A=u.parseResult.value;for(let C of VC(A))await I5(B),KL(C).forEach((D)=>{if(!D.reference.error)E.push(...this.createInfoDescriptions(D))});return E}createInfoDescriptions(u){let B=u.reference;if(B.error||!B.$refNode)return[];let E=[];if(XB(B)&&B.$nodeDescription)E=[B.$nodeDescription];else if(uU(B))E=B.items.map((U)=>U.$nodeDescription).filter((U)=>U!==void 0);let A=aC(u.container).uri,C=this.nodeLocator.getAstNodePath(u.container),D=[],F=HL(B.$refNode);for(let U of E)D.push({sourceUri:A,sourcePath:C,targetUri:U.documentUri,targetPath:U.path,segment:F,local:xB.equals(U.documentUri,A)});return D}},N3u=class{static{j(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(u){if(u.$container){let B=this.getAstNodePath(u.$container),E=this.getPathSegment(u);return B+this.segmentSeparator+E}return""}getPathSegment({$containerProperty:u,$containerIndex:B}){if(!u)throw Error("Missing '$containerProperty' in AST node.");if(B!==void 0)return u+this.indexSeparator+B;return u}getAstNode(u,B){return B.split(this.segmentSeparator).reduce((A,C)=>{if(!A||C.length===0)return A;let D=C.indexOf(this.indexSeparator);if(D>0){let F=C.substring(0,D),U=parseInt(C.substring(D+1));return A[F]?.[U]}return A[C]},u)}},qy={};w$(qy,Z80(vL(),1));i3u=class{static{j(this,"DefaultConfigurationProvider")}constructor(u){this._ready=new Kk,this.onConfigurationSectionUpdateEmitter=new qy.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=u.ServiceRegistry}get ready(){return this._ready.promise}initialize(u){this.workspaceConfig=u.capabilities.workspace?.configuration??!1}async initialized(u){if(this.workspaceConfig){if(u.register){let B=this.serviceRegistry.all;u.register({section:B.map((E)=>this.toSectionName(E.LanguageMetaData.languageId))})}if(u.fetchConfiguration){let B=this.serviceRegistry.all.map((A)=>({section:this.toSectionName(A.LanguageMetaData.languageId)})),E=await u.fetchConfiguration(B);B.forEach((A,C)=>{this.updateSectionConfiguration(A.section,E[C])})}}this._ready.resolve()}updateConfiguration(u){if(typeof u.settings!=="object"||u.settings===null)return;Object.entries(u.settings).forEach(([B,E])=>{this.updateSectionConfiguration(B,E),this.onConfigurationSectionUpdateEmitter.fire({section:B,configuration:E})})}updateSectionConfiguration(u,B){this.settings[u]=B}async getConfiguration(u,B){await this.ready;let E=this.toSectionName(u);if(this.settings[E])return this.settings[E][B]}toSectionName(u){return`${u}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},wm=Z80(CL4(),1);(function(u){function B(E){return{dispose:j(async()=>await E(),"dispose")}}j(B,"create"),u.create=B})(Fw||(Fw={}));a3u=class{static{j(this,"DefaultDocumentBuilder")}constructor(u){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Qk,this.documentPhaseListeners=new Qk,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=E1.Changed,this.langiumDocuments=u.workspace.LangiumDocuments,this.langiumDocumentFactory=u.workspace.LangiumDocumentFactory,this.textDocuments=u.workspace.TextDocuments,this.indexManager=u.workspace.IndexManager,this.fileSystemProvider=u.workspace.FileSystemProvider,this.workspaceManager=()=>u.workspace.WorkspaceManager,this.serviceRegistry=u.ServiceRegistry}async build(u,B={},E=O6.CancellationToken.None){for(let A of u){let C=A.uri.toString();if(A.state===E1.Validated){if(typeof B.validation==="boolean"&&B.validation)this.resetToState(A,E1.IndexedReferences);else if(typeof B.validation==="object"){let D=this.findMissingValidationCategories(A,B);if(D.length>0)this.buildState.set(C,{completed:!1,options:{validation:{categories:D}},result:this.buildState.get(C)?.result}),A.state=E1.IndexedReferences}}else this.buildState.delete(C)}this.currentState=E1.Changed,await this.emitUpdate(u.map((A)=>A.uri),[]),await this.buildDocuments(u,B,E)}async update(u,B,E=O6.CancellationToken.None){this.currentState=E1.Changed;let A=[];for(let U of B){let z=this.langiumDocuments.deleteDocuments(U);for(let k of z)A.push(k.uri),this.cleanUpDeleted(k)}let C=(await Promise.all(u.map((U)=>this.findChangedUris(U)))).flat();for(let U of C){let z=this.langiumDocuments.getDocument(U);if(z===void 0)z=this.langiumDocumentFactory.fromModel({$type:"INVALID"},U),z.state=E1.Changed,this.langiumDocuments.addDocument(z);this.resetToState(z,E1.Changed)}let D=F6(C).concat(A).map((U)=>U.toString()).toSet();this.langiumDocuments.all.filter((U)=>!D.has(U.uri.toString())&&this.shouldRelink(U,D)).forEach((U)=>this.resetToState(U,E1.ComputedScopes)),await this.emitUpdate(C,A),await I5(E);let F=this.sortDocuments(this.langiumDocuments.all.filter((U)=>U.state<E1.Validated||!this.buildState.get(U.uri.toString())?.completed||this.resultsAreIncomplete(U,this.updateBuildOptions)).toArray());await this.buildDocuments(F,this.updateBuildOptions,E)}resultsAreIncomplete(u,B){return this.findMissingValidationCategories(u,B).length>=1}findMissingValidationCategories(u,B){let E=this.buildState.get(u.uri.toString()),A=this.serviceRegistry.getServices(u.uri).validation.ValidationRegistry.getAllValidationCategories(u),C=E?.result?.validationChecks?new Set(E?.result?.validationChecks):E?.completed?A:new Set,D=B===void 0||B.validation===!0?A:typeof B.validation==="object"?B.validation.categories??A:[];return F6(D).filter((F)=>!C.has(F)).toArray()}async findChangedUris(u){if(this.langiumDocuments.getDocument(u)??this.textDocuments?.get(u))return[u];try{let E=await this.fileSystemProvider.stat(u);if(E.isDirectory)return await this.workspaceManager().searchFolder(u);else if(this.workspaceManager().shouldIncludeEntry(E))return[u]}catch{}return[]}async emitUpdate(u,B){await Promise.all(this.updateListeners.map((E)=>E(u,B)))}sortDocuments(u){let B=0,E=u.length-1;while(B<E){while(B<u.length&&this.hasTextDocument(u[B]))B++;while(E>=0&&!this.hasTextDocument(u[E]))E--;if(B<E)[u[B],u[E]]=[u[E],u[B]]}return u}hasTextDocument(u){return Boolean(this.textDocuments?.get(u.uri))}shouldRelink(u,B){if(u.references.some((E)=>E.error!==void 0))return!0;return this.indexManager.isAffected(u,B)}onUpdate(u){return this.updateListeners.push(u),Fw.create(()=>{let B=this.updateListeners.indexOf(u);if(B>=0)this.updateListeners.splice(B,1)})}resetToState(u,B){switch(B){case E1.Changed:case E1.Parsed:this.indexManager.removeContent(u.uri);case E1.IndexedContent:u.localSymbols=void 0;case E1.ComputedScopes:this.serviceRegistry.getServices(u.uri).references.Linker.unlink(u);case E1.Linked:this.indexManager.removeReferences(u.uri);case E1.IndexedReferences:u.diagnostics=void 0,this.buildState.delete(u.uri.toString());case E1.Validated:}if(u.state>B)u.state=B}cleanUpDeleted(u){this.buildState.delete(u.uri.toString()),this.indexManager.remove(u.uri),u.state=E1.Changed}async buildDocuments(u,B,E){this.prepareBuild(u,B),await this.runCancelable(u,E1.Parsed,E,(D)=>this.langiumDocumentFactory.update(D,E)),await this.runCancelable(u,E1.IndexedContent,E,(D)=>this.indexManager.updateContent(D,E)),await this.runCancelable(u,E1.ComputedScopes,E,async(D)=>{let F=this.serviceRegistry.getServices(D.uri).references.ScopeComputation;D.localSymbols=await F.collectLocalSymbols(D,E)});let A=u.filter((D)=>this.shouldLink(D));await this.runCancelable(A,E1.Linked,E,(D)=>{return this.serviceRegistry.getServices(D.uri).references.Linker.link(D,E)}),await this.runCancelable(A,E1.IndexedReferences,E,(D)=>this.indexManager.updateReferences(D,E));let C=u.filter((D)=>{if(this.shouldValidate(D))return!0;else return this.markAsCompleted(D),!1});await this.runCancelable(C,E1.Validated,E,async(D)=>{await this.validate(D,E),this.markAsCompleted(D)})}markAsCompleted(u){let B=this.buildState.get(u.uri.toString());if(B)B.completed=!0}prepareBuild(u,B){for(let E of u){let A=E.uri.toString(),C=this.buildState.get(A);if(!C||C.completed)this.buildState.set(A,{completed:!1,options:B,result:C?.result})}}async runCancelable(u,B,E,A){for(let D of u)if(D.state<B)await I5(E),await A(D),D.state=B,await this.notifyDocumentPhase(D,B,E);let C=u.filter((D)=>D.state===B);await this.notifyBuildPhase(C,B,E),this.currentState=B}onBuildPhase(u,B){return this.buildPhaseListeners.add(u,B),Fw.create(()=>{this.buildPhaseListeners.delete(u,B)})}onDocumentPhase(u,B){return this.documentPhaseListeners.add(u,B),Fw.create(()=>{this.documentPhaseListeners.delete(u,B)})}waitUntil(u,B,E){let A=void 0;if(B&&"path"in B)A=B;else E=B;if(E??(E=O6.CancellationToken.None),A)return this.awaitDocumentState(u,A,E);else return this.awaitBuilderState(u,E)}awaitDocumentState(u,B,E){let A=this.langiumDocuments.getDocument(B);if(!A)return Promise.reject(new wm.ResponseError(wm.LSPErrorCodes.ServerCancelled,`No document found for URI: ${B.toString()}`));else if(A.state>=u)return Promise.resolve(B);else if(E.isCancellationRequested)return Promise.reject(eF);else if(this.currentState>=u&&u>A.state)return Promise.reject(new wm.ResponseError(wm.LSPErrorCodes.RequestFailed,`Document state of ${B.toString()} is ${E1[A.state]}, requiring ${E1[u]}, but workspace state is already ${E1[this.currentState]}. Returning undefined.`));return new Promise((C,D)=>{let F=this.onDocumentPhase(u,(z)=>{if(xB.equals(z.uri,B))F.dispose(),U.dispose(),C(z.uri)}),U=E.onCancellationRequested(()=>{F.dispose(),U.dispose(),D(eF)})})}awaitBuilderState(u,B){if(this.currentState>=u)return Promise.resolve();else if(B.isCancellationRequested)return Promise.reject(eF);return new Promise((E,A)=>{let C=this.onBuildPhase(u,()=>{C.dispose(),D.dispose(),E()}),D=B.onCancellationRequested(()=>{C.dispose(),D.dispose(),A(eF)})})}async notifyDocumentPhase(u,B,E){let C=this.documentPhaseListeners.get(B).slice();for(let D of C)try{await I5(E),await D(u,E)}catch(F){if(!Ow(F))throw F}}async notifyBuildPhase(u,B,E){if(u.length===0)return;let C=this.buildPhaseListeners.get(B).slice();for(let D of C)await I5(E),await D(u,E)}shouldLink(u){return this.getBuildOptions(u).eagerLinking??!0}shouldValidate(u){return Boolean(this.getBuildOptions(u).validation)}async validate(u,B){let E=this.serviceRegistry.getServices(u.uri).validation.DocumentValidator,A=this.getBuildOptions(u),C=typeof A.validation==="object"?{...A.validation}:{};C.categories=this.findMissingValidationCategories(u,A);let D=await E.validateDocument(u,C,B);if(u.diagnostics)u.diagnostics.push(...D);else u.diagnostics=D;let F=this.buildState.get(u.uri.toString());if(F)if(F.result??(F.result={}),F.result.validationChecks)F.result.validationChecks=F6(F.result.validationChecks).concat(C.categories).distinct().toArray();else F.result.validationChecks=[...C.categories]}getBuildOptions(u){return this.buildState.get(u.uri.toString())?.options??{}}},V3u=class{static{j(this,"DefaultIndexManager")}constructor(u){this.symbolIndex=new Map,this.symbolByTypeIndex=new Ly,this.referenceIndex=new Map,this.documents=u.workspace.LangiumDocuments,this.serviceRegistry=u.ServiceRegistry,this.astReflection=u.AstReflection}findAllReferences(u,B){let E=aC(u).uri,A=[];return this.referenceIndex.forEach((C)=>{C.forEach((D)=>{if(xB.equals(D.targetUri,E)&&D.targetPath===B)A.push(D)})}),F6(A)}allElements(u,B){let E=F6(this.symbolIndex.keys());if(B)E=E.filter((A)=>!B||B.has(A));return E.map((A)=>this.getFileDescriptions(A,u)).flat()}getFileDescriptions(u,B){if(!B)return this.symbolIndex.get(u)??[];return this.symbolByTypeIndex.get(u,B,()=>{return(this.symbolIndex.get(u)??[]).filter((C)=>this.astReflection.isSubtype(C.type,B))})}remove(u){this.removeContent(u),this.removeReferences(u)}removeContent(u){let B=u.toString();this.symbolIndex.delete(B),this.symbolByTypeIndex.clear(B)}removeReferences(u){let B=u.toString();this.referenceIndex.delete(B)}async updateContent(u,B=O6.CancellationToken.None){let A=await this.serviceRegistry.getServices(u.uri).references.ScopeComputation.collectExportedSymbols(u,B),C=u.uri.toString();this.symbolIndex.set(C,A),this.symbolByTypeIndex.clear(C)}async updateReferences(u,B=O6.CancellationToken.None){let A=await this.serviceRegistry.getServices(u.uri).workspace.ReferenceDescriptionProvider.createDescriptions(u,B);this.referenceIndex.set(u.uri.toString(),A)}isAffected(u,B){let E=this.referenceIndex.get(u.uri.toString());if(!E)return!1;return E.some((A)=>!A.local&&B.has(A.targetUri.toString()))}},h3u=class{static{j(this,"DefaultWorkspaceManager")}constructor(u){this.initialBuildOptions={},this._ready=new Kk,this.serviceRegistry=u.ServiceRegistry,this.langiumDocuments=u.workspace.LangiumDocuments,this.documentBuilder=u.workspace.DocumentBuilder,this.fileSystemProvider=u.workspace.FileSystemProvider,this.mutex=u.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(u){this.folders=u.workspaceFolders??void 0}initialized(u){return this.mutex.write((B)=>this.initializeWorkspace(this.folders??[],B))}async initializeWorkspace(u,B=O6.CancellationToken.None){let E=await this.performStartup(u);await I5(B),await this.documentBuilder.build(E,this.initialBuildOptions,B)}async performStartup(u){let B=[],E=j((D)=>{if(B.push(D),!this.langiumDocuments.hasDocument(D.uri))this.langiumDocuments.addDocument(D)},"collector");await this.loadAdditionalDocuments(u,E);let A=[];await Promise.all(u.map((D)=>this.getRootFolder(D)).map(async(D)=>this.traverseFolder(D,A)));let C=F6(A).distinct((D)=>D.toString()).filter((D)=>!this.langiumDocuments.hasDocument(D));return await this.loadWorkspaceDocuments(C,E),this._ready.resolve(),B}async loadWorkspaceDocuments(u,B){await Promise.all(u.map(async(E)=>{let A=await this.langiumDocuments.getOrCreateDocument(E);B(A)}))}loadAdditionalDocuments(u,B){return Promise.resolve()}getRootFolder(u){return JE.parse(u.uri)}async traverseFolder(u,B){try{let E=await this.fileSystemProvider.readDirectory(u);await Promise.all(E.map(async(A)=>{if(this.shouldIncludeEntry(A)){if(A.isDirectory)await this.traverseFolder(A.uri,B);else if(A.isFile)B.push(A.uri)}}))}catch(E){console.error("Failure to read directory content of "+u.toString(!0),E)}}async searchFolder(u){let B=[];return await this.traverseFolder(u,B),B}shouldIncludeEntry(u){let B=xB.basename(u.uri);if(B.startsWith("."))return!1;if(u.isDirectory)return B!=="node_modules"&&B!=="out";else if(u.isFile)return this.serviceRegistry.hasServices(u.uri);return!1}},m3u=class{static{j(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(u,B,E,A,C){return SB0.buildUnexpectedCharactersMessage(u,B,E,A,C)}buildUnableToPopLexerModeMessage(u){return SB0.buildUnableToPopLexerModeMessage(u)}},rA0={mode:"full"},$A0=class{static{j(this,"DefaultLexer")}constructor(u){this.errorMessageProvider=u.parser.LexerErrorMessageProvider,this.tokenBuilder=u.parser.TokenBuilder;let B=this.tokenBuilder.buildTokens(u.Grammar,{caseInsensitive:u.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(B);let E=Nr(B)?Object.values(B):B,A=u.LanguageMetaData.mode==="production";this.chevrotainLexer=new vB(E,{positionTracking:"full",skipValidations:A,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(u,B=rA0){let E=this.chevrotainLexer.tokenize(u);return{tokens:E.tokens,errors:E.errors,hidden:E.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(u)}}toTokenTypeDictionary(u){if(Nr(u))return u;let B=xy(u)?Object.values(u.modes).flat():u,E={};return B.forEach((A)=>E[A.name]=A),E}};j(Xy,"isTokenTypeArray");j(xy,"isIMultiModeLexerDefinition");j(Nr,"isTokenTypeDictionary");BR();j(yA0,"parseJSDoc");j(cA0,"isJSDoc");j(gA0,"getLines");g_0=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,TI4=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;j(r3u,"tokenize");j($3u,"buildInlineTokens");OI4=/\S/,II4=/\s*$/;j(ir,"skipWhitespace");j(y3u,"lastCharacter");j(c3u,"parseJSDocComment");j(g3u,"parseJSDocElement");j(_3u,"appendEmptyLine");j(_A0,"parseJSDocText");j(n3u,"parseJSDocInline");j(nA0,"parseJSDocTag");j(pA0,"parseJSDocLine");j(vy,"normalizeOptions");j(pm,"normalizeOption");__0=class{static{j(this,"JSDocCommentImpl")}constructor(u,B){this.elements=u,this.range=B}getTag(u){return this.getAllTags().find((B)=>B.name===u)}getTags(u){return this.getAllTags().filter((B)=>B.name===u)}getAllTags(){return this.elements.filter((u)=>("name"in u))}toString(){let u="";for(let B of this.elements)if(u.length===0)u=B.toString();else{let E=B.toString();u+=pB0(u)+E}return u.trim()}toMarkdown(u){let B="";for(let E of this.elements)if(B.length===0)B=E.toMarkdown(u);else{let A=E.toMarkdown(u);B+=pB0(B)+A}return B.trim()}},E70=class{static{j(this,"JSDocTagImpl")}constructor(u,B,E,A){this.name=u,this.content=B,this.inline=E,this.range=A}toString(){let u=`@${this.name}`,B=this.content.toString();if(this.content.inlines.length===1)u=`${u} ${B}`;else if(this.content.inlines.length>1)u=`${u}
${B}`;if(this.inline)return`{${u}}`;else return u}toMarkdown(u){return u?.renderTag?.(this)??this.toMarkdownDefault(u)}toMarkdownDefault(u){let B=this.content.toMarkdown(u);if(this.inline){let C=p3u(this.name,B,u??{});if(typeof C==="string")return C}let E="";if(u?.tag==="italic"||u?.tag===void 0)E="*";else if(u?.tag==="bold")E="**";else if(u?.tag==="bold-italic")E="***";let A=`${E}@${this.name}${E}`;if(this.content.inlines.length===1)A=`${A} — ${B}`;else if(this.content.inlines.length>1)A=`${A}
${B}`;if(this.inline)return`{${A}}`;else return A}};j(p3u,"renderInlineTag");j(d3u,"renderLinkDefault");nB0=class{static{j(this,"JSDocTextImpl")}constructor(u,B){this.inlines=u,this.range=B}toString(){let u="";for(let B=0;B<this.inlines.length;B++){let E=this.inlines[B],A=this.inlines[B+1];if(u+=E.toString(),A&&A.range.start.line>E.range.start.line)u+=`
`}return u}toMarkdown(u){let B="";for(let E=0;E<this.inlines.length;E++){let A=this.inlines[E],C=this.inlines[E+1];if(B+=A.toMarkdown(u),C&&C.range.start.line>A.range.start.line)B+=`
`}return B}},s3u=class{static{j(this,"JSDocLineImpl")}constructor(u,B){this.text=u,this.range=B}toString(){return this.text}toMarkdown(){return this.text}};j(pB0,"fillNewlines");o3u=class{static{j(this,"JSDocDocumentationProvider")}constructor(u){this.indexManager=u.shared.workspace.IndexManager,this.commentProvider=u.documentation.CommentProvider}getDocumentation(u){let B=this.commentProvider.getComment(u);if(B&&cA0(B))return yA0(B).toMarkdown({renderLink:j((A,C)=>{return this.documentationLinkRenderer(u,A,C)},"renderLink"),renderTag:j((A)=>{return this.documentationTagRenderer(u,A)},"renderTag")});return}documentationLinkRenderer(u,B,E){let A=this.findNameInLocalSymbols(u,B)??this.findNameInGlobalScope(u,B);if(A&&A.nameSegment){let C=A.nameSegment.range.start.line+1,D=A.nameSegment.range.start.character+1,F=A.documentUri.with({fragment:`L${C},${D}`});return`[${E}](${F.toString()})`}else return}documentationTagRenderer(u,B){return}findNameInLocalSymbols(u,B){let A=aC(u).localSymbols;if(!A)return;let C=u;do{let F=A.getStream(C).find((U)=>U.name===B);if(F)return F;C=C.$container}while(C);return}findNameInGlobalScope(u,B){return this.indexManager.allElements().find((A)=>A.name===B)}},t3u=class{static{j(this,"DefaultCommentProvider")}constructor(u){this.grammarConfig=()=>u.parser.GrammarConfig}getComment(u){if(VA0(u))return u.$comment;return _80(u.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},e3u=class{static{j(this,"DefaultAsyncParser")}constructor(u){this.syncParser=u.parser.LangiumParser}parse(u,B){return Promise.resolve(this.syncParser.parse(u))}},PI4=class{static{j(this,"AbstractThreadedAsyncParser")}constructor(u){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=u.serializer.Hydrator}initializeWorkers(){while(this.workerPool.length<this.threadCount){let u=this.createWorker();u.onReady(()=>{if(this.queue.length>0){let B=this.queue.shift();if(B)u.lock(),B.resolve(u)}}),this.workerPool.push(u)}}async parse(u,B){let E=await this.acquireParserWorker(B),A=new Kk,C,D=B.onCancellationRequested(()=>{C=setTimeout(()=>{this.terminateWorker(E)},this.terminationDelay)});return E.parse(u).then((F)=>{let U=this.hydrator.hydrate(F);A.resolve(U)}).catch((F)=>{A.reject(F)}).finally(()=>{D.dispose(),clearTimeout(C)}),A.promise}terminateWorker(u){u.terminate();let B=this.workerPool.indexOf(u);if(B>=0)this.workerPool.splice(B,1)}async acquireParserWorker(u){this.initializeWorkers();for(let E of this.workerPool)if(E.ready)return E.lock(),E;let B=new Kk;return u.onCancellationRequested(()=>{let E=this.queue.indexOf(B);if(E>=0)this.queue.splice(E,1);B.reject(eF)}),this.queue.push(B),B.promise}},jI4=class{static{j(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(u,B,E,A){this.onReadyEmitter=new qy.Emitter,this.deferred=new Kk,this._ready=!0,this._parsing=!1,this.sendMessage=u,this._terminate=A,B((C)=>{let D=C;this.deferred.resolve(D),this.unlock()}),E((C)=>{this.deferred.reject(C),this.unlock()})}terminate(){this.deferred.reject(eF),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(u){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new Kk,this.sendMessage(u),this.deferred.promise}},u1u=class{static{j(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new O6.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(u){this.cancelWrite();let B=Gy();return this.previousTokenSource=B,this.enqueue(this.writeQueue,u,B.token)}read(u){return this.enqueue(this.readQueue,u)}enqueue(u,B,E=O6.CancellationToken.None){let A=new Kk,C={action:B,deferred:A,cancellationToken:E};return u.push(C),this.performNextOperation(),A.promise}async performNextOperation(){if(!this.done)return;let u=[];if(this.writeQueue.length>0)u.push(this.writeQueue.shift());else if(this.readQueue.length>0)u.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(u.map(async({action:B,deferred:E,cancellationToken:A})=>{try{let C=await Promise.resolve().then(()=>B(A));E.resolve(C)}catch(C){if(Ow(C))E.resolve(void 0);else E.reject(C)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},B1u=class{static{j(this,"DefaultHydrator")}constructor(u){this.grammarElementIdMap=new Pr,this.tokenTypeIdMap=new Pr,this.grammar=u.Grammar,this.lexer=u.parser.Lexer,this.linker=u.references.Linker}dehydrate(u){return{lexerErrors:u.lexerErrors,lexerReport:u.lexerReport?this.dehydrateLexerReport(u.lexerReport):void 0,parserErrors:u.parserErrors.map((B)=>({...B,message:B.message})),value:this.dehydrateAstNode(u.value,this.createDehyrationContext(u.value))}}dehydrateLexerReport(u){return u}createDehyrationContext(u){let B=new Map,E=new Map;for(let A of VC(u))B.set(A,{});if(u.$cstNode)for(let A of GL(u.$cstNode))E.set(A,{});return{astNodes:B,cstNodes:E}}dehydrateAstNode(u,B){let E=B.astNodes.get(u);if(E.$type=u.$type,E.$containerIndex=u.$containerIndex,E.$containerProperty=u.$containerProperty,u.$cstNode!==void 0)E.$cstNode=this.dehydrateCstNode(u.$cstNode,B);for(let[A,C]of Object.entries(u)){if(A.startsWith("$"))continue;if(Array.isArray(C)){let D=[];E[A]=D;for(let F of C)if(R2(F))D.push(this.dehydrateAstNode(F,B));else if(XB(F))D.push(this.dehydrateReference(F,B));else D.push(F)}else if(R2(C))E[A]=this.dehydrateAstNode(C,B);else if(XB(C))E[A]=this.dehydrateReference(C,B);else if(C!==void 0)E[A]=C}return E}dehydrateReference(u,B){let E={};if(E.$refText=u.$refText,u.$refNode)E.$refNode=B.cstNodes.get(u.$refNode);return E}dehydrateCstNode(u,B){let E=B.cstNodes.get(u);if(G$(u))E.fullText=u.fullText;else E.grammarSource=this.getGrammarElementId(u.grammarSource);if(E.hidden=u.hidden,E.astNode=B.astNodes.get(u.astNode),kk(u))E.content=u.content.map((A)=>this.dehydrateCstNode(A,B));else if(bw(u))E.tokenType=u.tokenType.name,E.offset=u.offset,E.length=u.length,E.startLine=u.range.start.line,E.startColumn=u.range.start.character,E.endLine=u.range.end.line,E.endColumn=u.range.end.character;return E}hydrate(u){let B=u.value,E=this.createHydrationContext(B);if("$cstNode"in B)this.hydrateCstNode(B.$cstNode,E);return{lexerErrors:u.lexerErrors,lexerReport:u.lexerReport,parserErrors:u.parserErrors,value:this.hydrateAstNode(B,E)}}createHydrationContext(u){let B=new Map,E=new Map;for(let C of VC(u))B.set(C,{});let A;if(u.$cstNode)for(let C of GL(u.$cstNode)){let D;if("fullText"in C)D=new qA0(C.fullText),A=D;else if("content"in C)D=new Zy;else if("tokenType"in C)D=this.hydrateCstLeafNode(C);if(D)E.set(C,D),D.root=A}return{astNodes:B,cstNodes:E}}hydrateAstNode(u,B){let E=B.astNodes.get(u);if(E.$type=u.$type,E.$containerIndex=u.$containerIndex,E.$containerProperty=u.$containerProperty,u.$cstNode)E.$cstNode=B.cstNodes.get(u.$cstNode);for(let[A,C]of Object.entries(u)){if(A.startsWith("$"))continue;if(Array.isArray(C)){let D=[];E[A]=D;for(let F of C)if(R2(F))D.push(this.setParent(this.hydrateAstNode(F,B),E));else if(XB(F))D.push(this.hydrateReference(F,E,A,B));else D.push(F)}else if(R2(C))E[A]=this.setParent(this.hydrateAstNode(C,B),E);else if(XB(C))E[A]=this.hydrateReference(C,E,A,B);else if(C!==void 0)E[A]=C}return E}setParent(u,B){return u.$container=B,u}hydrateReference(u,B,E,A){return this.linker.buildReference(B,E,A.cstNodes.get(u.$refNode),u.$refText)}hydrateCstNode(u,B,E=0){let A=B.cstNodes.get(u);if(typeof u.grammarSource==="number")A.grammarSource=this.getGrammarElement(u.grammarSource);if(A.astNode=B.astNodes.get(u.astNode),kk(A))for(let C of u.content){let D=this.hydrateCstNode(C,B,E++);A.content.push(D)}return A}hydrateCstLeafNode(u){let B=this.getTokenType(u.tokenType),E=u.offset,A=u.length,C=u.startLine,D=u.startColumn,F=u.endLine,U=u.endColumn,z=u.hidden;return new Yr(E,A,{start:{line:C,character:D},end:{line:F,character:U}},B,z)}getTokenType(u){return this.lexer.definition[u]}getGrammarElementId(u){if(!u)return;if(this.grammarElementIdMap.size===0)this.createGrammarElementIdMap();return this.grammarElementIdMap.get(u)}getGrammarElement(u){if(this.grammarElementIdMap.size===0)this.createGrammarElementIdMap();return this.grammarElementIdMap.getKey(u)}createGrammarElementIdMap(){let u=0;for(let B of VC(this.grammar))if(H$(B))this.grammarElementIdMap.set(B,u++)}};j(K1,"createDefaultCoreModule");j(Q1,"createDefaultSharedCoreModule");(function(u){u.merge=(B,E)=>xL(xL({},B),E)})(dB0||(dB0={}));j(Q3,"inject");E1u=Symbol("isProxy");j(dA0,"eagerLoad");j(sA0,"_inject");n_0=Symbol();j(sB0,"_resolve");j(xL,"_merge");oB0={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(u){u.REGULAR="indentation-sensitive",u.IGNORE_INDENTATION="ignore-indentation"})(Ew||(Ew={}));A1u=class extends Ky{static{j(this,"IndentationAwareTokenBuilder")}constructor(u=oB0){super();this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...oB0,...u},this.indentTokenType=kL({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=kL({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(u,B){let E=super.buildTokens(u,B);if(!Xy(E))throw Error("Invalid tokens built by default builder");let{indentTokenName:A,dedentTokenName:C,whitespaceTokenName:D,ignoreIndentationDelimiters:F}=this.options,U,z,k,f=[];for(let l of E){for(let[b,M]of F)if(l.name===b)l.PUSH_MODE=Ew.IGNORE_INDENTATION;else if(l.name===M)l.POP_MODE=!0;if(l.name===C)U=l;else if(l.name===A)z=l;else if(l.name===D)k=l;else f.push(l)}if(!U||!z||!k)throw Error("Some indentation/whitespace tokens not found!");if(F.length>0)return{modes:{[Ew.REGULAR]:[U,z,...f,k],[Ew.IGNORE_INDENTATION]:[...f,k]},defaultMode:Ew.REGULAR};else return[U,z,k,...f]}flushLexingReport(u){return{...super.flushLexingReport(u),remainingDedents:this.flushRemainingDedents(u)}}isStartOfLine(u,B){return B===0||`\r
`.includes(u[B-1])}matchWhitespace(u,B,E,A){this.whitespaceRegExp.lastIndex=B;let C=this.whitespaceRegExp.exec(u);return{currIndentLevel:C?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:C}}createIndentationTokenInstance(u,B,E,A){let C=this.getLineNumber(B,A);return QR(u,E,A,A+E.length,C,C,1,E.length)}getLineNumber(u,B){return u.substring(0,B).split(/\r\n|\r|\n/).length}indentMatcher(u,B,E,A){if(!this.isStartOfLine(u,B))return null;let{currIndentLevel:C,prevIndentLevel:D,match:F}=this.matchWhitespace(u,B,E,A);if(C<=D)return null;return this.indentationStack.push(C),F}dedentMatcher(u,B,E,A){if(!this.isStartOfLine(u,B))return null;let{currIndentLevel:C,prevIndentLevel:D,match:F}=this.matchWhitespace(u,B,E,A);if(C>=D)return null;let U=this.indentationStack.lastIndexOf(C);if(U===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${C} at offset: ${B}. Current indentation stack: ${this.indentationStack}`,offset:B,length:F?.[0]?.length??0,line:this.getLineNumber(u,B),column:1}),null;let z=this.indentationStack.length-U-1,k=u.substring(0,B).match(/[\r\n]+$/)?.[0].length??1;for(let f=0;f<z;f++){let l=this.createIndentationTokenInstance(this.dedentTokenType,u,"",B-(k-1));E.push(l),this.indentationStack.pop()}return null}buildTerminalToken(u){let B=super.buildTerminalToken(u),{indentTokenName:E,dedentTokenName:A,whitespaceTokenName:C}=this.options;if(B.name===E)return this.indentTokenType;else if(B.name===A)return this.dedentTokenType;else if(B.name===C)return kL({name:C,pattern:this.whitespaceRegExp,group:vB.SKIPPED});return B}flushRemainingDedents(u){let B=[];while(this.indentationStack.length>1)B.push(this.createIndentationTokenInstance(this.dedentTokenType,u,"",u.length)),this.indentationStack.pop();return this.indentationStack=[0],B}},NI4=class extends $A0{static{j(this,"IndentationAwareLexer")}constructor(u){super(u);if(u.parser.TokenBuilder instanceof A1u)this.indentationTokenBuilder=u.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(u,B=rA0){let E=super.tokenize(u),A=E.report;if(B?.mode==="full")E.tokens.push(...A.remainingDedents);A.remainingDedents=[];let{indentTokenType:C,dedentTokenType:D}=this.indentationTokenBuilder,F=C.tokenTypeIdx,U=D.tokenTypeIdx,z=[],k=E.tokens.length-1;for(let f=0;f<k;f++){let l=E.tokens[f],b=E.tokens[f+1];if(l.tokenTypeIdx===F&&b.tokenTypeIdx===U){f++;continue}z.push(l)}if(k>=0)z.push(E.tokens[k]);return E.tokens=z,E}},oA0={};Kb(oA0,{AstUtils:()=>H80,BiMap:()=>Pr,Cancellation:()=>O6,ContextCache:()=>Ly,CstUtils:()=>K80,DONE_RESULT:()=>qB,Deferred:()=>Kk,Disposable:()=>Fw,DisposableCache:()=>Hy,DocumentCache:()=>S3u,EMPTY_STREAM:()=>ZL,ErrorWithLocation:()=>W$,GrammarUtils:()=>s80,MultiMap:()=>Qk,OperationCancelled:()=>eF,Reduction:()=>aY,RegExpUtils:()=>t80,SimpleCache:()=>iA0,StreamImpl:()=>tF,TreeStreamImpl:()=>JL,URI:()=>JE,UriTrie:()=>jA0,UriUtils:()=>xB,WorkspaceCache:()=>aA0,assertCondition:()=>o80,assertUnreachable:()=>Qb,delayNextTick:()=>Qy,interruptAndCheck:()=>I5,isOperationCancelled:()=>Ow,loadGrammarFromJson:()=>j5,setInterruptionPeriod:()=>OA0,startCancelableOperation:()=>Gy,stream:()=>F6});w$(oA0,qy);C1u=class{static{j(this,"EmptyFileSystemProvider")}stat(u){throw Error("No file system is available.")}statSync(u){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[]}},Y1={fileSystemProvider:j(()=>new C1u,"fileSystemProvider")},iI4={Grammar:j(()=>{return},"Grammar"),LanguageMetaData:j(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},aI4={AstReflection:j(()=>new r80,"AstReflection")};j(D1u,"createMinimalGrammarServices");j(j5,"loadGrammarFromJson");w$(P5,oA0);VI4=class{static{j(this,"DefaultLangiumProfiler")}constructor(u){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=u??new Set(this.allCategories),this.records=new Qk}isActive(u){return this.activeCategories.has(u)}start(...u){if(!u)this.activeCategories=new Set(this.allCategories);else u.forEach((B)=>this.activeCategories.add(B))}stop(...u){if(!u)this.activeCategories.clear();else u.forEach((B)=>this.activeCategories.delete(B))}createTask(u,B){if(!this.isActive(u))throw Error(`Category "${u}" is not active.`);return console.log(`Creating profiling task for '${u}.${B}'.`),new F1u((E)=>this.records.add(u,this.dumpRecord(u,E)),B)}dumpRecord(u,B){console.info(`Task ${u}.${B.identifier} executed in ${B.duration.toFixed(2)}ms and ended at ${B.date.toISOString()}`);let E=[];for(let D of B.entries.keys()){let F=B.entries.get(D),U=F.reduce((z,k)=>z+k);E.push({name:`${B.identifier}.${D}`,count:F.length,duration:U})}let A=B.duration-E.map((D)=>D.duration).reduce((D,F)=>D+F,0);E.push({name:B.identifier,count:1,duration:A}),E.sort((D,F)=>F.duration-D.duration);function C(D){return Math.round(100*D)/100}return j(C,"Round"),console.table(E.map((D)=>{return{Element:D.name,Count:D.count,"Self %":C(100*D.duration/B.duration),"Time (ms)":C(D.duration)}})),B}getRecords(...u){if(u.length===0)return this.records.values();else return this.records.entries().filter((B)=>u.some((E)=>E===B[0])).flatMap((B)=>B[1])}},F1u=class{static{j(this,"ProfilingTask")}constructor(u,B){this.stack=[],this.entries=new Qk,this.addRecord=u,this.identifier=B}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((B)=>B.id).join(", ")}.`);let u={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(u),this.startTime=void 0,this.entries.clear()}startSubTask(u){this.stack.push({id:u,start:performance.now(),content:0})}stopSubTask(u){let B=this.stack.pop();if(!B)throw Error(`Task "${this.identifier}.${u}" was not started.`);if(B.id!==u)throw Error(`Sub-Task "${B.id}" is not already stopped.`);let E=performance.now()-B.start;if(this.stack.at(-1)!==void 0)this.stack[this.stack.length-1].content+=E;let A=E-B.content;this.entries.add(u,A)}};((u)=>{u.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]+)\]/}})(tB0||(tB0={}));((u)=>{u.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]*/}})(eB0||(eB0={}));((u)=>{u.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]*/}})(u80||(u80={}));((u)=>{u.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])?/}})(B80||(B80={}));((u)=>{u.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]*/}})(E80||(E80={}));((u)=>{u.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]*/}})(A80||(A80={}));((u)=>{u.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]*/}})(C80||(C80={}));((u)=>{u.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]*/}})(D80||(D80={}));((u)=>{u.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]*/}})(F80||(F80={}));((u)=>{u.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]*?\*\)/}})(U80||(U80={}));((u)=>{u.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]*?\*\//}})(z80||(z80={}));((u)=>{u.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]*/}})(k80||(k80={}));((u)=>{u.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:/"[^"]*"|'[^']*'/}})(f80||(f80={}));((u)=>{u.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])*/}})(l80||(l80={}));((u)=>{u.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]*/}})(b80||(b80={}));Y81={...tB0.Terminals,...eB0.Terminals,...u80.Terminals,...B80.Terminals,...E80.Terminals,...A80.Terminals,...C80.Terminals,...D80.Terminals,...F80.Terminals,...U80.Terminals,...z80.Terminals,...k80.Terminals,...l80.Terminals,...f80.Terminals,...b80.Terminals},ar={$type:"AbnfAlternation",alternatives:"alternatives"},Vr={$type:"AbnfConcatenation",elements:"elements"},YY={$type:"AbnfElement",primary:"primary",repeat:"repeat"},hr={$type:"AbnfGroup",element:"element"},mr={$type:"AbnfNumVal",value:"value"},rr={$type:"AbnfOptionalGroup",element:"element"},el={$type:"AbnfPrimary"},RY={$type:"AbnfRule",definition:"definition",name:"name"},$r={$type:"AbnfRuleName",name:"name"},yr={$type:"AbnfStringLiteral",value:"value"},Km={$type:"Accelerator",name:"name",x:"x",y:"y"},A70={$type:"Alignment",direction:"direction",members:"members"},Qm={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},sW={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},C70={$type:"Annotations",x:"x",y:"y"},JA={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",alignments:"alignments",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};j(tA0,"isArchitecture");Gm={$type:"Axis",label:"label",name:"name"},lL={$type:"Branch",name:"name",order:"order"};j(eA0,"isBranch");p_0={$type:"Checkout",branch:"branch"},Hm={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},D70={$type:"ClassDefStatement",className:"className",styleText:"styleText"},Ab={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};j(uC0,"isCommit");Lm={$type:"Common",accDescr:"accDescr",accTitle:"accTitle",title:"title"},TJ={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},qm={$type:"Curve",entries:"entries",label:"label",name:"name"},Dk={$type:"Cynefin",accDescr:"accDescr",accTitle:"accTitle",domains:"domains",title:"title",transitions:"transitions"};j(BC0,"isCynefin");Xm={$type:"Deaccelerator",name:"name",x:"x",y:"y"},d_0={$type:"Decorator",strategy:"strategy"},gH={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},bL={$type:"DomainBlock",domain:"domain",items:"items"};j(EC0,"isDomainBlock");eY={$type:"DomainItem",label:"label"};j(AC0,"isDomainItem");cr={$type:"EbnfChoice",alternatives:"alternatives"},gr={$type:"EbnfExceptionPostfix",except:"except"},_r={$type:"EbnfGroup",element:"element"},nr={$type:"EbnfNonTerminal",name:"name"},pr={$type:"EbnfOneOrMorePostfix",operator:"operator"},dr={$type:"EbnfOptional",element:"element"},sr={$type:"EbnfOptionalPostfix",operator:"operator"},sJ={$type:"EbnfPostfix"},Ek={$type:"EbnfPrimary"},or={$type:"EbnfRepetition",element:"element"},TY={$type:"EbnfRule",definition:"definition",name:"name"},tr={$type:"EbnfSequence",elements:"elements"},er={$type:"EbnfSpecial",text:"text"},OY={$type:"EbnfTerm",base:"base",postfixes:"postfixes"},u$={$type:"EbnfTerminal",value:"value"},B$={$type:"EbnfZeroOrMorePostfix",operator:"operator"},nF={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},ub={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},Ak={$type:"EmFrame"},oW={$type:"EmGwt",givenStatements:"givenStatements",sourceFrame:"sourceFrame",thenStatements:"thenStatements",whenStatements:"whenStatements"},s_0={$type:"EmGwtStatement",entityIdentifier:"entityIdentifier"},F70={$type:"EmModelEntity",name:"name"};j(CC0,"isEmModelEntityType");xm={$type:"EmNoteEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",sourceFrame:"sourceFrame"},ez={$type:"EmResetFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"};j(qR,"isEmResetFrame");nl={$type:"EmTimeFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"},U70={$type:"Entry",axis:"axis",value:"value"},PC={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},o_0={$type:"Evolution",stages:"stages"},vm={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},z70={$type:"Evolve",component:"component",target:"target"},Fk={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};j(DC0,"isGitGraph");tW={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},Aw={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};j(FC0,"isInfo");eW={$type:"Item",classSelector:"classSelector",name:"name"},k70={$type:"Junction",id:"id",in:"in"},uY={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},Sm={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},OJ={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},Cb={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};j(UC0,"isMerge");Wm={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},f70={$type:"Option",name:"name",value:"value"},Db={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};j(zC0,"isPacket");Fb={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};j(kC0,"isPacketBlock");E$={$type:"PegAny",dot:"dot"},A$={$type:"PegGroup",element:"element"},C$={$type:"PegIdentifier",name:"name"},D$={$type:"PegLiteral",value:"value"},F$={$type:"PegOrderedChoice",alternatives:"alternatives"},IY={$type:"PegPrefix",operator:"operator",suffix:"suffix"},oJ={$type:"PegPrimary"},PY={$type:"PegRule",definition:"definition",name:"name"},U$={$type:"PegSequence",elements:"elements"},jY={$type:"PegSuffix",operator:"operator",primary:"primary"},Uk={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};j(fC0,"isPie");ML={$type:"PieSection",label:"label",value:"value"};j(lC0,"isPieSection");l70={$type:"Pipeline",components:"components",parent:"parent"},Ym={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},Ck={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},Ub={$type:"Railroad",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};j(bC0,"isRailroad");zb={$type:"RailroadAbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};j(MC0,"isRailroadAbnf");z$={$type:"RailroadChoiceExpr",alternatives:"alternatives"},kb={$type:"RailroadEbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};j(ZC0,"isRailroadEbnf");jC={$type:"RailroadExpression"},k$={$type:"RailroadNonTerminalExpr",name:"name"},f$={$type:"RailroadOneOrMoreExpr",element:"element"},l$={$type:"RailroadOptionalExpr",element:"element"},fb={$type:"RailroadPeg",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};j(JC0,"isRailroadPeg");NY={$type:"RailroadRule",definition:"definition",name:"name"},b$={$type:"RailroadSequenceExpr",elements:"elements"},M$={$type:"RailroadSpecialExpr",text:"text"},Z$={$type:"RailroadTerminalExpr",value:"value"},J$={$type:"RailroadZeroOrMoreExpr",element:"element"},b70={$type:"Section",classSelector:"classSelector",name:"name"},_H={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},M70={$type:"Size",height:"height",width:"width"},Bb={$type:"Statement"},Cw={$type:"Transition",from:"from",label:"label",to:"to"};j(wC0,"isTransition");lb={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};j(KC0,"isTreemap");Z70={$type:"TreemapRow",indent:"indent",item:"item"},Eb={$type:"TreeNode",classAnnotation:"classAnnotation",descAnnotation:"descAnnotation",iconAnnotation:"iconAnnotation",indent:"indent",name:"name"},tJ={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},u5={$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"};j(QC0,"isWardley");U1u=class extends G80{constructor(){super(...arguments);this.types={AbnfAlternation:{name:ar.$type,properties:{alternatives:{name:ar.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:Vr.$type,properties:{elements:{name:Vr.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:YY.$type,properties:{primary:{name:YY.primary},repeat:{name:YY.repeat}},superTypes:[]},AbnfGroup:{name:hr.$type,properties:{element:{name:hr.element}},superTypes:[el.$type]},AbnfNumVal:{name:mr.$type,properties:{value:{name:mr.value}},superTypes:[el.$type]},AbnfOptionalGroup:{name:rr.$type,properties:{element:{name:rr.element}},superTypes:[el.$type]},AbnfPrimary:{name:el.$type,properties:{},superTypes:[]},AbnfRule:{name:RY.$type,properties:{definition:{name:RY.definition},name:{name:RY.name}},superTypes:[]},AbnfRuleName:{name:$r.$type,properties:{name:{name:$r.name}},superTypes:[el.$type]},AbnfStringLiteral:{name:yr.$type,properties:{value:{name:yr.value}},superTypes:[el.$type]},Accelerator:{name:Km.$type,properties:{name:{name:Km.name},x:{name:Km.x},y:{name:Km.y}},superTypes:[]},Alignment:{name:A70.$type,properties:{direction:{name:A70.direction},members:{name:A70.members,defaultValue:[]}},superTypes:[]},Anchor:{name:Qm.$type,properties:{evolution:{name:Qm.evolution},name:{name:Qm.name},visibility:{name:Qm.visibility}},superTypes:[]},Annotation:{name:sW.$type,properties:{number:{name:sW.number},text:{name:sW.text},x:{name:sW.x},y:{name:sW.y}},superTypes:[]},Annotations:{name:C70.$type,properties:{x:{name:C70.x},y:{name:C70.y}},superTypes:[]},Architecture:{name:JA.$type,properties:{accDescr:{name:JA.accDescr},accTitle:{name:JA.accTitle},alignments:{name:JA.alignments,defaultValue:[]},edges:{name:JA.edges,defaultValue:[]},groups:{name:JA.groups,defaultValue:[]},junctions:{name:JA.junctions,defaultValue:[]},services:{name:JA.services,defaultValue:[]},title:{name:JA.title}},superTypes:[]},Axis:{name:Gm.$type,properties:{label:{name:Gm.label},name:{name:Gm.name}},superTypes:[]},Branch:{name:lL.$type,properties:{name:{name:lL.name},order:{name:lL.order}},superTypes:[Bb.$type]},Checkout:{name:p_0.$type,properties:{branch:{name:p_0.branch}},superTypes:[Bb.$type]},CherryPicking:{name:Hm.$type,properties:{id:{name:Hm.id},parent:{name:Hm.parent},tags:{name:Hm.tags,defaultValue:[]}},superTypes:[Bb.$type]},ClassDefStatement:{name:D70.$type,properties:{className:{name:D70.className},styleText:{name:D70.styleText}},superTypes:[]},Commit:{name:Ab.$type,properties:{id:{name:Ab.id},message:{name:Ab.message},tags:{name:Ab.tags,defaultValue:[]},type:{name:Ab.type}},superTypes:[Bb.$type]},Common:{name:Lm.$type,properties:{accDescr:{name:Lm.accDescr},accTitle:{name:Lm.accTitle},title:{name:Lm.title}},superTypes:[]},Component:{name:TJ.$type,properties:{decorator:{name:TJ.decorator},evolution:{name:TJ.evolution},inertia:{name:TJ.inertia,defaultValue:!1},label:{name:TJ.label},name:{name:TJ.name},visibility:{name:TJ.visibility}},superTypes:[]},Curve:{name:qm.$type,properties:{entries:{name:qm.entries,defaultValue:[]},label:{name:qm.label},name:{name:qm.name}},superTypes:[]},Cynefin:{name:Dk.$type,properties:{accDescr:{name:Dk.accDescr},accTitle:{name:Dk.accTitle},domains:{name:Dk.domains,defaultValue:[]},title:{name:Dk.title},transitions:{name:Dk.transitions,defaultValue:[]}},superTypes:[]},Deaccelerator:{name:Xm.$type,properties:{name:{name:Xm.name},x:{name:Xm.x},y:{name:Xm.y}},superTypes:[]},Decorator:{name:d_0.$type,properties:{strategy:{name:d_0.strategy}},superTypes:[]},Direction:{name:gH.$type,properties:{accDescr:{name:gH.accDescr},accTitle:{name:gH.accTitle},dir:{name:gH.dir},statements:{name:gH.statements,defaultValue:[]},title:{name:gH.title}},superTypes:[Fk.$type]},DomainBlock:{name:bL.$type,properties:{domain:{name:bL.domain},items:{name:bL.items,defaultValue:[]}},superTypes:[]},DomainItem:{name:eY.$type,properties:{label:{name:eY.label}},superTypes:[]},EbnfChoice:{name:cr.$type,properties:{alternatives:{name:cr.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:gr.$type,properties:{except:{name:gr.except}},superTypes:[sJ.$type]},EbnfGroup:{name:_r.$type,properties:{element:{name:_r.element}},superTypes:[Ek.$type]},EbnfNonTerminal:{name:nr.$type,properties:{name:{name:nr.name}},superTypes:[Ek.$type]},EbnfOneOrMorePostfix:{name:pr.$type,properties:{operator:{name:pr.operator}},superTypes:[sJ.$type]},EbnfOptional:{name:dr.$type,properties:{element:{name:dr.element}},superTypes:[Ek.$type]},EbnfOptionalPostfix:{name:sr.$type,properties:{operator:{name:sr.operator}},superTypes:[sJ.$type]},EbnfPostfix:{name:sJ.$type,properties:{},superTypes:[]},EbnfPrimary:{name:Ek.$type,properties:{},superTypes:[]},EbnfRepetition:{name:or.$type,properties:{element:{name:or.element}},superTypes:[Ek.$type]},EbnfRule:{name:TY.$type,properties:{definition:{name:TY.definition},name:{name:TY.name}},superTypes:[]},EbnfSequence:{name:tr.$type,properties:{elements:{name:tr.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:er.$type,properties:{text:{name:er.text}},superTypes:[Ek.$type]},EbnfTerm:{name:OY.$type,properties:{base:{name:OY.base},postfixes:{name:OY.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:u$.$type,properties:{value:{name:u$.value}},superTypes:[Ek.$type]},EbnfZeroOrMorePostfix:{name:B$.$type,properties:{operator:{name:B$.operator}},superTypes:[sJ.$type]},Edge:{name:nF.$type,properties:{lhsDir:{name:nF.lhsDir},lhsGroup:{name:nF.lhsGroup,defaultValue:!1},lhsId:{name:nF.lhsId},lhsInto:{name:nF.lhsInto,defaultValue:!1},rhsDir:{name:nF.rhsDir},rhsGroup:{name:nF.rhsGroup,defaultValue:!1},rhsId:{name:nF.rhsId},rhsInto:{name:nF.rhsInto,defaultValue:!1},title:{name:nF.title}},superTypes:[]},EmDataEntity:{name:ub.$type,properties:{dataBlockValue:{name:ub.dataBlockValue},dataType:{name:ub.dataType},name:{name:ub.name}},superTypes:[]},EmFrame:{name:Ak.$type,properties:{},superTypes:[]},EmGwt:{name:oW.$type,properties:{givenStatements:{name:oW.givenStatements,defaultValue:[]},sourceFrame:{name:oW.sourceFrame,referenceType:Ak.$type},thenStatements:{name:oW.thenStatements,defaultValue:[]},whenStatements:{name:oW.whenStatements,defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:s_0.$type,properties:{entityIdentifier:{name:s_0.entityIdentifier,referenceType:F70.$type}},superTypes:[]},EmModelEntity:{name:F70.$type,properties:{name:{name:F70.name}},superTypes:[]},EmNoteEntity:{name:xm.$type,properties:{dataBlockValue:{name:xm.dataBlockValue},dataType:{name:xm.dataType},sourceFrame:{name:xm.sourceFrame,referenceType:Ak.$type}},superTypes:[]},EmResetFrame:{name:ez.$type,properties:{dataInlineValue:{name:ez.dataInlineValue},dataReference:{name:ez.dataReference,referenceType:ub.$type},dataType:{name:ez.dataType},entityIdentifier:{name:ez.entityIdentifier},modelEntityType:{name:ez.modelEntityType},name:{name:ez.name},sourceFrames:{name:ez.sourceFrames,defaultValue:[],referenceType:Ak.$type}},superTypes:[Ak.$type]},EmTimeFrame:{name:nl.$type,properties:{dataInlineValue:{name:nl.dataInlineValue},dataReference:{name:nl.dataReference,referenceType:ub.$type},dataType:{name:nl.dataType},entityIdentifier:{name:nl.entityIdentifier},modelEntityType:{name:nl.modelEntityType},name:{name:nl.name},sourceFrames:{name:nl.sourceFrames,defaultValue:[],referenceType:Ak.$type}},superTypes:[Ak.$type]},Entry:{name:U70.$type,properties:{axis:{name:U70.axis,referenceType:Gm.$type},value:{name:U70.value}},superTypes:[]},EventModel:{name:PC.$type,properties:{accDescr:{name:PC.accDescr},accTitle:{name:PC.accTitle},dataEntities:{name:PC.dataEntities,defaultValue:[]},frames:{name:PC.frames,defaultValue:[]},gwtEntities:{name:PC.gwtEntities,defaultValue:[]},modelEntities:{name:PC.modelEntities,defaultValue:[]},noteEntities:{name:PC.noteEntities,defaultValue:[]},title:{name:PC.title}},superTypes:[]},Evolution:{name:o_0.$type,properties:{stages:{name:o_0.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:vm.$type,properties:{boundary:{name:vm.boundary},name:{name:vm.name},secondName:{name:vm.secondName}},superTypes:[]},Evolve:{name:z70.$type,properties:{component:{name:z70.component},target:{name:z70.target}},superTypes:[]},GitGraph:{name:Fk.$type,properties:{accDescr:{name:Fk.accDescr},accTitle:{name:Fk.accTitle},statements:{name:Fk.statements,defaultValue:[]},title:{name:Fk.title}},superTypes:[]},Group:{name:tW.$type,properties:{icon:{name:tW.icon},id:{name:tW.id},in:{name:tW.in},title:{name:tW.title}},superTypes:[]},Info:{name:Aw.$type,properties:{accDescr:{name:Aw.accDescr},accTitle:{name:Aw.accTitle},title:{name:Aw.title}},superTypes:[]},Item:{name:eW.$type,properties:{classSelector:{name:eW.classSelector},name:{name:eW.name}},superTypes:[]},Junction:{name:k70.$type,properties:{id:{name:k70.id},in:{name:k70.in}},superTypes:[]},Label:{name:uY.$type,properties:{negX:{name:uY.negX,defaultValue:!1},negY:{name:uY.negY,defaultValue:!1},offsetX:{name:uY.offsetX},offsetY:{name:uY.offsetY}},superTypes:[]},Leaf:{name:Sm.$type,properties:{classSelector:{name:Sm.classSelector},name:{name:Sm.name},value:{name:Sm.value}},superTypes:[eW.$type]},Link:{name:OJ.$type,properties:{arrow:{name:OJ.arrow},from:{name:OJ.from},fromPort:{name:OJ.fromPort},linkLabel:{name:OJ.linkLabel},to:{name:OJ.to},toPort:{name:OJ.toPort}},superTypes:[]},Merge:{name:Cb.$type,properties:{branch:{name:Cb.branch},id:{name:Cb.id},tags:{name:Cb.tags,defaultValue:[]},type:{name:Cb.type}},superTypes:[Bb.$type]},Note:{name:Wm.$type,properties:{evolution:{name:Wm.evolution},text:{name:Wm.text},visibility:{name:Wm.visibility}},superTypes:[]},Option:{name:f70.$type,properties:{name:{name:f70.name},value:{name:f70.value,defaultValue:!1}},superTypes:[]},Packet:{name:Db.$type,properties:{accDescr:{name:Db.accDescr},accTitle:{name:Db.accTitle},blocks:{name:Db.blocks,defaultValue:[]},title:{name:Db.title}},superTypes:[]},PacketBlock:{name:Fb.$type,properties:{bits:{name:Fb.bits},end:{name:Fb.end},label:{name:Fb.label},start:{name:Fb.start}},superTypes:[]},PegAny:{name:E$.$type,properties:{dot:{name:E$.dot}},superTypes:[oJ.$type]},PegGroup:{name:A$.$type,properties:{element:{name:A$.element}},superTypes:[oJ.$type]},PegIdentifier:{name:C$.$type,properties:{name:{name:C$.name}},superTypes:[oJ.$type]},PegLiteral:{name:D$.$type,properties:{value:{name:D$.value}},superTypes:[oJ.$type]},PegOrderedChoice:{name:F$.$type,properties:{alternatives:{name:F$.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:IY.$type,properties:{operator:{name:IY.operator},suffix:{name:IY.suffix}},superTypes:[]},PegPrimary:{name:oJ.$type,properties:{},superTypes:[]},PegRule:{name:PY.$type,properties:{definition:{name:PY.definition},name:{name:PY.name}},superTypes:[]},PegSequence:{name:U$.$type,properties:{elements:{name:U$.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:jY.$type,properties:{operator:{name:jY.operator},primary:{name:jY.primary}},superTypes:[]},Pie:{name:Uk.$type,properties:{accDescr:{name:Uk.accDescr},accTitle:{name:Uk.accTitle},sections:{name:Uk.sections,defaultValue:[]},showData:{name:Uk.showData,defaultValue:!1},title:{name:Uk.title}},superTypes:[]},PieSection:{name:ML.$type,properties:{label:{name:ML.label},value:{name:ML.value}},superTypes:[]},Pipeline:{name:l70.$type,properties:{components:{name:l70.components,defaultValue:[]},parent:{name:l70.parent}},superTypes:[]},PipelineComponent:{name:Ym.$type,properties:{evolution:{name:Ym.evolution},label:{name:Ym.label},name:{name:Ym.name}},superTypes:[]},Radar:{name:Ck.$type,properties:{accDescr:{name:Ck.accDescr},accTitle:{name:Ck.accTitle},axes:{name:Ck.axes,defaultValue:[]},curves:{name:Ck.curves,defaultValue:[]},options:{name:Ck.options,defaultValue:[]},title:{name:Ck.title}},superTypes:[]},Railroad:{name:Ub.$type,properties:{accDescr:{name:Ub.accDescr},accTitle:{name:Ub.accTitle},rules:{name:Ub.rules,defaultValue:[]},title:{name:Ub.title}},superTypes:[]},RailroadAbnf:{name:zb.$type,properties:{accDescr:{name:zb.accDescr},accTitle:{name:zb.accTitle},rules:{name:zb.rules,defaultValue:[]},title:{name:zb.title}},superTypes:[]},RailroadChoiceExpr:{name:z$.$type,properties:{alternatives:{name:z$.alternatives,defaultValue:[]}},superTypes:[jC.$type]},RailroadEbnf:{name:kb.$type,properties:{accDescr:{name:kb.accDescr},accTitle:{name:kb.accTitle},rules:{name:kb.rules,defaultValue:[]},title:{name:kb.title}},superTypes:[]},RailroadExpression:{name:jC.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:k$.$type,properties:{name:{name:k$.name}},superTypes:[jC.$type]},RailroadOneOrMoreExpr:{name:f$.$type,properties:{element:{name:f$.element}},superTypes:[jC.$type]},RailroadOptionalExpr:{name:l$.$type,properties:{element:{name:l$.element}},superTypes:[jC.$type]},RailroadPeg:{name:fb.$type,properties:{accDescr:{name:fb.accDescr},accTitle:{name:fb.accTitle},rules:{name:fb.rules,defaultValue:[]},title:{name:fb.title}},superTypes:[]},RailroadRule:{name:NY.$type,properties:{definition:{name:NY.definition},name:{name:NY.name}},superTypes:[]},RailroadSequenceExpr:{name:b$.$type,properties:{elements:{name:b$.elements,defaultValue:[]}},superTypes:[jC.$type]},RailroadSpecialExpr:{name:M$.$type,properties:{text:{name:M$.text}},superTypes:[jC.$type]},RailroadTerminalExpr:{name:Z$.$type,properties:{value:{name:Z$.value}},superTypes:[jC.$type]},RailroadZeroOrMoreExpr:{name:J$.$type,properties:{element:{name:J$.element}},superTypes:[jC.$type]},Section:{name:b70.$type,properties:{classSelector:{name:b70.classSelector},name:{name:b70.name}},superTypes:[eW.$type]},Service:{name:_H.$type,properties:{icon:{name:_H.icon},iconText:{name:_H.iconText},id:{name:_H.id},in:{name:_H.in},title:{name:_H.title}},superTypes:[]},Size:{name:M70.$type,properties:{height:{name:M70.height},width:{name:M70.width}},superTypes:[]},Statement:{name:Bb.$type,properties:{},superTypes:[]},Transition:{name:Cw.$type,properties:{from:{name:Cw.from},label:{name:Cw.label},to:{name:Cw.to}},superTypes:[]},TreeNode:{name:Eb.$type,properties:{classAnnotation:{name:Eb.classAnnotation},descAnnotation:{name:Eb.descAnnotation},iconAnnotation:{name:Eb.iconAnnotation},indent:{name:Eb.indent},name:{name:Eb.name}},superTypes:[]},TreeView:{name:tJ.$type,properties:{accDescr:{name:tJ.accDescr},accTitle:{name:tJ.accTitle},nodes:{name:tJ.nodes,defaultValue:[]},title:{name:tJ.title}},superTypes:[]},Treemap:{name:lb.$type,properties:{accDescr:{name:lb.accDescr},accTitle:{name:lb.accTitle},title:{name:lb.title},TreemapRows:{name:lb.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Z70.$type,properties:{indent:{name:Z70.indent},item:{name:Z70.item}},superTypes:[]},Wardley:{name:u5.$type,properties:{accDescr:{name:u5.accDescr},accelerators:{name:u5.accelerators,defaultValue:[]},accTitle:{name:u5.accTitle},anchors:{name:u5.anchors,defaultValue:[]},annotation:{name:u5.annotation,defaultValue:[]},annotations:{name:u5.annotations,defaultValue:[]},components:{name:u5.components,defaultValue:[]},deaccelerators:{name:u5.deaccelerators,defaultValue:[]},evolution:{name:u5.evolution},evolves:{name:u5.evolves,defaultValue:[]},links:{name:u5.links,defaultValue:[]},notes:{name:u5.notes,defaultValue:[]},pipelines:{name:u5.pipelines,defaultValue:[]},size:{name:u5.size},title:{name:u5.title}},superTypes:[]}}}static{j(this,"MermaidAstReflection")}},U2=new U1u,hI4=j(()=>t_0??(t_0=j5('{"$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"),mI4=j(()=>e_0??(e_0=j5('{"$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"),rI4=j(()=>un0??(un0=j5('{"$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"),$I4=j(()=>Bn0??(Bn0=j5('{"$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"),yI4=j(()=>En0??(En0=j5('{"$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"),cI4=j(()=>An0??(An0=j5('{"$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"),gI4=j(()=>Cn0??(Cn0=j5('{"$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"),_I4=j(()=>Dn0??(Dn0=j5('{"$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"),nI4=j(()=>Fn0??(Fn0=j5('{"$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"),pI4=j(()=>Un0??(Un0=j5('{"$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"),dI4=j(()=>zn0??(zn0=j5('{"$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"),sI4=j(()=>kn0??(kn0=j5('{"$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"),oI4=j(()=>fn0??(fn0=j5('{"$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"),tI4=j(()=>ln0??(ln0=j5('{"$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"),eI4=j(()=>bn0??(bn0=j5('{"$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"),uP4={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},BP4={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},EP4={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},AP4={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},CP4={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},DP4={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},FP4={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},UP4={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},zP4={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},kP4={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},fP4={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},lP4={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},bP4={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},MP4={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ZP4={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},m1={AstReflection:j(()=>new U1u,"AstReflection")},Sy={Grammar:j(()=>hI4(),"Grammar"),LanguageMetaData:j(()=>uP4,"LanguageMetaData"),parser:{}},Wy={Grammar:j(()=>mI4(),"Grammar"),LanguageMetaData:j(()=>BP4,"LanguageMetaData"),parser:{}},Yy={Grammar:j(()=>rI4(),"Grammar"),LanguageMetaData:j(()=>EP4,"LanguageMetaData"),parser:{}},Ry={Grammar:j(()=>$I4(),"Grammar"),LanguageMetaData:j(()=>AP4,"LanguageMetaData"),parser:{}},Ty={Grammar:j(()=>yI4(),"Grammar"),LanguageMetaData:j(()=>CP4,"LanguageMetaData"),parser:{}},Oy={Grammar:j(()=>cI4(),"Grammar"),LanguageMetaData:j(()=>DP4,"LanguageMetaData"),parser:{}},Iy={Grammar:j(()=>gI4(),"Grammar"),LanguageMetaData:j(()=>FP4,"LanguageMetaData"),parser:{}},Py={Grammar:j(()=>_I4(),"Grammar"),LanguageMetaData:j(()=>UP4,"LanguageMetaData"),parser:{}},jy={Grammar:j(()=>nI4(),"Grammar"),LanguageMetaData:j(()=>zP4,"LanguageMetaData"),parser:{}},Ny={Grammar:j(()=>pI4(),"Grammar"),LanguageMetaData:j(()=>kP4,"LanguageMetaData"),parser:{}},iy={Grammar:j(()=>dI4(),"Grammar"),LanguageMetaData:j(()=>fP4,"LanguageMetaData"),parser:{}},ay={Grammar:j(()=>sI4(),"Grammar"),LanguageMetaData:j(()=>lP4,"LanguageMetaData"),parser:{}},Vy={Grammar:j(()=>oI4(),"Grammar"),LanguageMetaData:j(()=>bP4,"LanguageMetaData"),parser:{}},hy={Grammar:j(()=>tI4(),"Grammar"),LanguageMetaData:j(()=>MP4,"LanguageMetaData"),parser:{}},my={Grammar:j(()=>eI4(),"Grammar"),LanguageMetaData:j(()=>ZP4,"LanguageMetaData"),parser:{}},JP4=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,wP4=/accTitle[\t ]*:([^\n\r]*)/,KP4=/title([\t ][^\n\r]*|)/,QP4={ACC_DESCR:JP4,ACC_TITLE:wP4,TITLE:KP4},z2=class extends TA0{static{j(this,"AbstractMermaidValueConverter")}runConverter(u,B,E){let A=this.runCommonConverter(u,B,E);if(A===void 0)A=this.runCustomConverter(u,B,E);if(A===void 0)return super.runConverter(u,B,E);return A}runCommonConverter(u,B,E){let A=QP4[u.name];if(A===void 0)return;let C=A.exec(B);if(C===null)return;if(C[1]!==void 0)return C[1].trim().replace(/[\t ]{2,}/gm," ");if(C[2]!==void 0)return C[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
`);return}},v8=class extends z2{static{j(this,"CommonValueConverter")}runCustomConverter(u,B,E){return}},o1=class extends Ky{static{j(this,"AbstractMermaidTokenBuilder")}constructor(u){super();this.keywords=new Set(u)}buildKeywordTokens(u,B,E){let A=super.buildKeywordTokens(u,B,E);return A.forEach((C)=>{if(this.keywords.has(C.name)&&C.PATTERN!==void 0)C.PATTERN=new RegExp(C.PATTERN.toString()+"(?:(?=%%)|(?!\\S))")}),A}},z1u=class extends o1{static{j(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 yy(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Py,$y);return B.ServiceRegistry.register(E),{shared:B,Radar:E}}var GP4,$y;var GC0=g(()=>{r1();GP4=class extends o1{static{j(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},$y={parser:{TokenBuilder:j(()=>new GP4,"TokenBuilder"),ValueConverter:j(()=>new v8,"ValueConverter")}};j(yy,"createRadarServices")});function NL(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),iy,cy);return B.ServiceRegistry.register(E),{shared:B,Railroad:E}}var HP4,k1u,LP4,cy;var HC0=g(()=>{r1();HP4=class extends o1{static{j(this,"RailroadTokenBuilder")}constructor(){super(["railroad-beta"])}},k1u=j((u)=>{let B=u.slice(1,-1),E="";for(let A=0;A<B.length;A++){let C=B[A];if(C==="\\"&&A+1<B.length){A++;let D=B[A];switch(D){case"n":E+=`
`;break;case"r":E+="\r";break;case"t":E+="\t";break;default:E+=D}continue}E+=C}return E},"decodeEscapedString"),LP4=class extends z2{static{j(this,"RailroadValueConverter")}runConverter(u,B,E){let A=super.runConverter(u,B,E);if(u.name==="TITLE"&&typeof A==="string"){let C=A.trim();if(C.startsWith('"')&&C.endsWith('"')||C.startsWith("'")&&C.endsWith("'"))return k1u(C)}return A}runCustomConverter(u,B,E){if(u.name==="RR_STRING")return k1u(B);return}},cy={parser:{TokenBuilder:j(()=>new HP4,"TokenBuilder"),ValueConverter:j(()=>new LP4,"ValueConverter")}};j(NL,"createRailroadServices")});function iL(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Ny,gy);return B.ServiceRegistry.register(E),{shared:B,RailroadEbnf:E}}var qP4,f1u,XP4,gy;var LC0=g(()=>{r1();qP4=class extends o1{static{j(this,"RailroadEbnfTokenBuilder")}constructor(){super(["railroad-ebnf-beta"])}},f1u=j((u)=>{let B=u.slice(1,-1),E="";for(let A=0;A<B.length;A++){let C=B[A];if(C==="\\"&&A+1<B.length){A++;let D=B[A];switch(D){case"n":E+=`
`;break;case"r":E+="\r";break;case"t":E+="\t";break;default:E+=D}continue}E+=C}return E},"decodeEscapedString"),XP4=class extends z2{static{j(this,"RailroadEbnfValueConverter")}runConverter(u,B,E){let A=super.runConverter(u,B,E);if(u.name==="TITLE"&&typeof A==="string"){let C=A.trim();if(C.startsWith('"')&&C.endsWith('"')||C.startsWith("'")&&C.endsWith("'"))return f1u(C)}return A}runCustomConverter(u,B,E){if(u.name==="EBNF_STRING")return f1u(B);if(u.name==="EBNF_SPECIAL_SEQUENCE")return B.slice(1,-1).trim();return}},gy={parser:{TokenBuilder:j(()=>new qP4,"TokenBuilder"),ValueConverter:j(()=>new XP4,"ValueConverter")}};j(iL,"createRailroadEbnfServices")});function aL(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),jy,_y);return B.ServiceRegistry.register(E),{shared:B,RailroadAbnf:E}}var xP4,vP4,_y;var qC0=g(()=>{r1();xP4=class extends o1{static{j(this,"RailroadAbnfTokenBuilder")}constructor(){super(["railroad-abnf-beta"])}},vP4=class extends z2{static{j(this,"RailroadAbnfValueConverter")}runConverter(u,B,E){let A=super.runConverter(u,B,E);if(u.name==="TITLE"&&typeof A==="string"){let C=A.trim();if(C.startsWith('"')&&C.endsWith('"')||C.startsWith("'")&&C.endsWith("'"))return C.slice(1,-1)}return A}runCustomConverter(u,B,E){if(u.name==="ABNF_STRING")return B.slice(1,-1);return}},_y={parser:{TokenBuilder:j(()=>new xP4,"TokenBuilder"),ValueConverter:j(()=>new vP4,"ValueConverter")}};j(aL,"createRailroadAbnfServices")});function VL(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),ay,ny);return B.ServiceRegistry.register(E),{shared:B,RailroadPeg:E}}var SP4,l1u,WP4,ny;var XC0=g(()=>{r1();SP4=class extends o1{static{j(this,"RailroadPegTokenBuilder")}constructor(){super(["railroad-peg-beta"])}},l1u=j((u)=>{let B=u.slice(1,-1),E="";for(let A=0;A<B.length;A++){let C=B[A];if(C==="\\"&&A+1<B.length){A++;let D=B[A];switch(D){case"n":E+=`
`;break;case"r":E+="\r";break;case"t":E+="\t";break;default:E+=D}continue}E+=C}return E},"decodeEscapedString"),WP4=class extends z2{static{j(this,"RailroadPegValueConverter")}runConverter(u,B,E){let A=super.runConverter(u,B,E);if(u.name==="TITLE"&&typeof A==="string"){let C=A.trim();if(C.startsWith('"')&&C.endsWith('"')||C.startsWith("'")&&C.endsWith("'"))return l1u(C)}return A}runCustomConverter(u,B,E){if(u.name==="PEG_STRING")return l1u(B);return}},ny={parser:{TokenBuilder:j(()=>new SP4,"TokenBuilder"),ValueConverter:j(()=>new WP4,"ValueConverter")}};j(VL,"createRailroadPegServices")});function b1u(u){let B=u.validation.TreemapValidator,E=u.validation.ValidationRegistry;if(E){let A={Treemap:B.checkSingleRoot.bind(B)};E.register(A,B)}}function dy(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Vy,py);return B.ServiceRegistry.register(E),b1u(E),{shared:B,Treemap:E}}var YP4,RP4,TP4,OP4,py;var xC0=g(()=>{r1();YP4=class extends o1{static{j(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},RP4=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,TP4=class extends z2{static{j(this,"TreemapValueConverter")}runCustomConverter(u,B,E){if(u.name==="NUMBER2")return parseFloat(B.replace(/,/g,""));else if(u.name==="SEPARATOR")return B.substring(1,B.length-1);else if(u.name==="STRING2")return B.substring(1,B.length-1);else if(u.name==="INDENTATION")return B.length;else if(u.name==="ClassDef"){if(typeof B!=="string")return B;let A=RP4.exec(B);if(A)return{$type:"ClassDefStatement",className:A[1],styleText:A[2]||void 0}}return}};j(b1u,"registerValidationChecks");OP4=class{static{j(this,"TreemapValidator")}checkSingleRoot(u,B){let E;for(let A of u.TreemapRows){if(!A.item)continue;if(E===void 0&&A.indent===void 0)E=0;else if(A.indent===void 0)B("error","Multiple root nodes are not allowed in a treemap.",{node:A,property:"item"});else if(E!==void 0&&E>=parseInt(A.indent,10))B("error","Multiple root nodes are not allowed in a treemap.",{node:A,property:"item"})}}},py={parser:{TokenBuilder:j(()=>new YP4,"TokenBuilder"),ValueConverter:j(()=>new TP4,"ValueConverter")},validation:{TreemapValidator:j(()=>new OP4,"TreemapValidator")}};j(dy,"createTreemapServices")});function oy(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),my,sy);return B.ServiceRegistry.register(E),{shared:B,Wardley:E}}var IP4,sy;var vC0=g(()=>{r1();IP4=class extends z2{static{j(this,"WardleyValueConverter")}runCustomConverter(u,B,E){switch(u.name.toUpperCase()){case"LINK_LABEL":return B.substring(1).trim();default:return}}},sy={parser:{ValueConverter:j(()=>new IP4,"ValueConverter")}};j(oy,"createWardleyServices")});function ey(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Wy,ty);return B.ServiceRegistry.register(E),{shared:B,Cynefin:E}}var PP4,ty;var SC0=g(()=>{r1();PP4=class extends o1{static{j(this,"CynefinTokenBuilder")}constructor(){super(["cynefin-beta"])}},ty={parser:{TokenBuilder:j(()=>new PP4,"TokenBuilder"),ValueConverter:j(()=>new v8,"ValueConverter")}};j(ey,"createCynefinServices")});function Bc(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Ry,uc);return B.ServiceRegistry.register(E),{shared:B,GitGraph:E}}var jP4,uc;var WC0=g(()=>{r1();jP4=class extends o1{static{j(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},uc={parser:{TokenBuilder:j(()=>new jP4,"TokenBuilder"),ValueConverter:j(()=>new v8,"ValueConverter")}};j(Bc,"createGitGraphServices")});function Ac(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Ty,Ec);return B.ServiceRegistry.register(E),{shared:B,Info:E}}var NP4,Ec;var YC0=g(()=>{r1();NP4=class extends o1{static{j(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},Ec={parser:{TokenBuilder:j(()=>new NP4,"TokenBuilder"),ValueConverter:j(()=>new v8,"ValueConverter")}};j(Ac,"createInfoServices")});function Dc(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Oy,Cc);return B.ServiceRegistry.register(E),{shared:B,Packet:E}}var iP4,Cc;var RC0=g(()=>{r1();iP4=class extends o1{static{j(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},Cc={parser:{TokenBuilder:j(()=>new iP4,"TokenBuilder"),ValueConverter:j(()=>new v8,"ValueConverter")}};j(Dc,"createPacketServices")});function Uc(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Iy,Fc);return B.ServiceRegistry.register(E),{shared:B,Pie:E}}var aP4,VP4,Fc;var TC0=g(()=>{r1();aP4=class extends o1{static{j(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},VP4=class extends z2{static{j(this,"PieValueConverter")}runCustomConverter(u,B,E){if(u.name!=="PIE_SECTION_LABEL")return;return B.replace(/"/g,"").trim()}},Fc={parser:{TokenBuilder:j(()=>new aP4,"TokenBuilder"),ValueConverter:j(()=>new VP4,"ValueConverter")}};j(Uc,"createPieServices")});function kc(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),hy,zc);return B.ServiceRegistry.register(E),{shared:B,TreeView:E}}var hP4,mP4,zc;var OC0=g(()=>{r1();hP4=class extends z2{static{j(this,"TreeViewValueConverter")}runCustomConverter(u,B,E){if(u.name==="INDENTATION")return B?.length||0;if(u.name==="QUOTED_NAME")return B.substring(1,B.length-1);if(u.name==="BARE_NAME")return B.replace(/[\t ]+$/,"");if(u.name==="CLASS_ANNOTATION")return B.trim().substring(3).trim();if(u.name==="ICON_ANNOTATION"){let A=B.trim();return A.substring(5,A.length-1)}if(u.name==="DESC_ANNOTATION")return B.trim().substring(2).trim();return}},mP4=class extends o1{static{j(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},zc={parser:{TokenBuilder:j(()=>new mP4,"TokenBuilder"),ValueConverter:j(()=>new hP4,"ValueConverter")}};j(kc,"createTreeViewServices")});function lc(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Sy,fc);return B.ServiceRegistry.register(E),{shared:B,Architecture:E}}var rP4,$P4,fc;var IC0=g(()=>{r1();rP4=class extends o1{static{j(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},$P4=class extends z2{static{j(this,"ArchitectureValueConverter")}runCustomConverter(u,B,E){if(u.name==="ARCH_ICON")return B.replace(/[()]/g,"").trim();else if(u.name==="ARCH_TEXT_ICON")return B.replace(/["()]/g,"");else if(u.name==="ARCH_TITLE"){let A=B.replace(/^\[|]$/g,"").trim();if(A.startsWith('"')&&A.endsWith('"')||A.startsWith("'")&&A.endsWith("'"))A=A.slice(1,-1),A=A.replace(/\\"/g,'"').replace(/\\'/g,"'");return A.trim()}return}},fc={parser:{TokenBuilder:j(()=>new rP4,"TokenBuilder"),ValueConverter:j(()=>new $P4,"ValueConverter")}};j(lc,"createArchitectureServices")});function K1u(u){let B=u.validation.EventModelingValidator,E=u.validation.ValidationRegistry;if(E){let A={EmTimeFrame:B.checkSourceFrameTypes.bind(B),EmResetFrame:B.checkSourceFrameTypes.bind(B)};E.register(A,B)}}function Mc(u=Y1){let B=Q3(Q1(u),m1),E=Q3(K1({shared:B}),Yy,bc);return B.ServiceRegistry.register(E),K1u(E),{shared:B,EventModel:E}}var yP4,M1u,Z1u,PC0,J1u,w1u,cP4,bc;var jC0=g(()=>{r1();yP4=class extends o1{static{j(this,"EventModelingTokenBuilder")}constructor(){super(["eventmodeling"])}},M1u=new Set(["cmd","command"]),Z1u=new Set(["evt","event"]),PC0=new Set(["rmo","readmodel"]),J1u=new Set(["pcr","processor"]),w1u=new Set(["ui"]);j(K1u,"registerValidationChecks");cP4=class{static{j(this,"EventModelingValidator")}checkSourceFrameTypes(u,B){if(u.sourceFrames.length===0)return;if(M1u.has(u.modelEntityType))this.validateSources(u,new Set([...w1u,...J1u]),"command","ui or processor",B);else if(Z1u.has(u.modelEntityType))this.validateSources(u,M1u,"event","command",B);else if(PC0.has(u.modelEntityType))this.validateSources(u,Z1u,"read model","event",B);else if(J1u.has(u.modelEntityType))this.validateSources(u,PC0,"processor","read model",B);else if(w1u.has(u.modelEntityType))this.validateSources(u,PC0,"ui","read model",B)}validateSources(u,B,E,A,C){for(let D of u.sourceFrames){let F=D.ref;if(F!==void 0&&!B.has(F.modelEntityType))C("error",`A ${E} can only receive input from a ${A}, not from '${F.modelEntityType}'.`,{node:u,property:"sourceFrames"})}}},bc={parser:{TokenBuilder:j(()=>new yP4,"TokenBuilder"),ValueConverter:j(()=>new v8,"ValueConverter")},validation:{EventModelingValidator:j(()=>new cP4,"EventModelingValidator")}};j(Mc,"createEventModelingServices")});var Q1u={};ju(Q1u,{createInfoServices:()=>Ac,InfoModule:()=>Ec});var G1u=g(()=>{YC0();r1()});var H1u={};ju(H1u,{createPacketServices:()=>Dc,PacketModule:()=>Cc});var L1u=g(()=>{RC0();r1()});var q1u={};ju(q1u,{createPieServices:()=>Uc,PieModule:()=>Fc});var X1u=g(()=>{TC0();r1()});var x1u={};ju(x1u,{createTreeViewServices:()=>kc,TreeViewModule:()=>zc});var v1u=g(()=>{OC0();r1()});var S1u={};ju(S1u,{createArchitectureServices:()=>lc,ArchitectureModule:()=>fc});var W1u=g(()=>{IC0();r1()});var Y1u={};ju(Y1u,{createGitGraphServices:()=>Bc,GitGraphModule:()=>uc});var R1u=g(()=>{WC0();r1()});var T1u={};ju(T1u,{createEventModelingServices:()=>Mc,EventModelingModule:()=>bc});var O1u=g(()=>{jC0();r1()});var I1u={};ju(I1u,{createRadarServices:()=>yy,RadarModule:()=>$y});var P1u=g(()=>{GC0();r1()});var j1u={};ju(j1u,{createRailroadServices:()=>NL,RailroadModule:()=>cy});var N1u=g(()=>{HC0();r1()});var i1u={};ju(i1u,{createRailroadEbnfServices:()=>iL,RailroadEbnfModule:()=>gy});var a1u=g(()=>{LC0();r1()});var V1u={};ju(V1u,{createRailroadAbnfServices:()=>aL,RailroadAbnfModule:()=>_y});var h1u=g(()=>{qC0();r1()});var m1u={};ju(m1u,{createRailroadPegServices:()=>VL,RailroadPegModule:()=>ny});var r1u=g(()=>{XC0();r1()});var $1u={};ju($1u,{createTreemapServices:()=>dy,TreemapModule:()=>py});var y1u=g(()=>{xC0();r1()});var c1u={};ju(c1u,{createWardleyServices:()=>oy,WardleyModule:()=>sy});var g1u=g(()=>{vC0();r1()});var _1u={};ju(_1u,{createCynefinServices:()=>ey,CynefinModule:()=>ty});var n1u=g(()=>{SC0();r1()});async function X9(u,B){let E=gP4[u];if(!E)throw Error(`Unknown diagram type: ${u}`);if(!f7[u])await E();let C=f7[u].parse(B);if(C.lexerErrors.length>0||C.parserErrors.length>0)throw new Xk(C);return C.value}var f7,gP4,Xk;var l7=g(()=>{GC0();HC0();LC0();qC0();XC0();xC0();vC0();SC0();WC0();YC0();RC0();TC0();OC0();IC0();jC0();r1();f7={},gP4={info:j(async()=>{let{createInfoServices:u}=await Promise.resolve().then(() => (G1u(),Q1u)),B=u().Info.parser.LangiumParser;f7.info=B},"info"),packet:j(async()=>{let{createPacketServices:u}=await Promise.resolve().then(() => (L1u(),H1u)),B=u().Packet.parser.LangiumParser;f7.packet=B},"packet"),pie:j(async()=>{let{createPieServices:u}=await Promise.resolve().then(() => (X1u(),q1u)),B=u().Pie.parser.LangiumParser;f7.pie=B},"pie"),treeView:j(async()=>{let{createTreeViewServices:u}=await Promise.resolve().then(() => (v1u(),x1u)),B=u().TreeView.parser.LangiumParser;f7.treeView=B},"treeView"),architecture:j(async()=>{let{createArchitectureServices:u}=await Promise.resolve().then(() => (W1u(),S1u)),B=u().Architecture.parser.LangiumParser;f7.architecture=B},"architecture"),gitGraph:j(async()=>{let{createGitGraphServices:u}=await Promise.resolve().then(() => (R1u(),Y1u)),B=u().GitGraph.parser.LangiumParser;f7.gitGraph=B},"gitGraph"),eventmodeling:j(async()=>{let{createEventModelingServices:u}=await Promise.resolve().then(() => (O1u(),T1u)),B=u().EventModel.parser.LangiumParser;f7.eventmodeling=B},"eventmodeling"),radar:j(async()=>{let{createRadarServices:u}=await Promise.resolve().then(() => (P1u(),I1u)),B=u().Radar.parser.LangiumParser;f7.radar=B},"radar"),railroad:j(async()=>{let{createRailroadServices:u}=await Promise.resolve().then(() => (N1u(),j1u)),B=u().Railroad.parser.LangiumParser;f7.railroad=B},"railroad"),railroadEbnf:j(async()=>{let{createRailroadEbnfServices:u}=await Promise.resolve().then(() => (a1u(),i1u)),B=u().RailroadEbnf.parser.LangiumParser;f7.railroadEbnf=B},"railroadEbnf"),railroadAbnf:j(async()=>{let{createRailroadAbnfServices:u}=await Promise.resolve().then(() => (h1u(),V1u)),B=u().RailroadAbnf.parser.LangiumParser;f7.railroadAbnf=B},"railroadAbnf"),railroadPeg:j(async()=>{let{createRailroadPegServices:u}=await Promise.resolve().then(() => (r1u(),m1u)),B=u().RailroadPeg.parser.LangiumParser;f7.railroadPeg=B},"railroadPeg"),treemap:j(async()=>{let{createTreemapServices:u}=await Promise.resolve().then(() => (y1u(),$1u)),B=u().Treemap.parser.LangiumParser;f7.treemap=B},"treemap"),wardley:j(async()=>{let{createWardleyServices:u}=await Promise.resolve().then(() => (g1u(),c1u)),B=u().Wardley.parser.LangiumParser;f7.wardley=B},"wardley"),cynefin:j(async()=>{let{createCynefinServices:u}=await Promise.resolve().then(() => (n1u(),_1u)),B=u().Cynefin.parser.LangiumParser;f7.cynefin=B},"cynefin")};j(X9,"parse");Xk=class extends Error{constructor(u){let B=u.lexerErrors.map((A)=>{let C=A.line!==void 0&&!isNaN(A.line)?A.line:"?",D=A.column!==void 0&&!isNaN(A.column)?A.column:"?";return`Lexer error on line ${C}, column ${D}: ${A.message}`}).join(`
`),E=u.parserErrors.map((A)=>{let C=A.token.startLine!==void 0&&!isNaN(A.token.startLine)?A.token.startLine:"?",D=A.token.startColumn!==void 0&&!isNaN(A.token.startColumn)?A.token.startColumn:"?";return`Parse error on line ${C}, column ${D}: ${A.message}`}).join(`
`);super(`Parsing failed: ${B} ${E}`);this.result=u}static{j(this,"MermaidParseError")}}});var A6u={};ju(A6u,{diagram:()=>_j4});function wc(){return P40({length:7})}function d1u(u,B){let E=Object.create(null);return u.reduce((A,C)=>{let D=B(C);if(!E[D])E[D]=!0,A.push(C);return A},[])}function NC0(u,B,E){let A=u.indexOf(B);if(A===-1)u.push(E);else u.splice(A,1,E)}function aC0(u){let B=u.reduce((C,D)=>{if(C.seq>D.seq)return C;return D},u[0]),E="";u.forEach(function(C){if(C===B)E+="\t*";else E+="\t|"});let A=[E,B.id,B.seq];for(let C in w4.records.branches)if(w4.records.branches.get(C)===B.id)A.push(C);if(z0.debug(A.join(" ")),B.parents&&B.parents.length==2&&B.parents[0]&&B.parents[1]){let C=w4.records.commits.get(B.parents[0]);if(NC0(u,B,C),B.parents[1])u.push(w4.records.commits.get(B.parents[1]))}else if(B.parents.length==0)return;else if(B.parents[0]){let C=w4.records.commits.get(B.parents[0]);NC0(u,B,C)}u=d1u(u,(C)=>C.id),aC0(u)}var M6,_P4,jw,w4,nP4,pP4,dP4,sP4,oP4,tP4,eP4,s1u,uj4,Bj4,Ej4,Aj4,Cj4,o1u,Dj4,Fj4,Uj4,t1u,zj4,kj4,fj4,lj4,bj4,Mj4,Zj4,Jj4,qb=10,Xb=40,UU=4,xk=2,Iw=8,Kc,iC0=12,VC0,wj4,Pw,S8,W8,Zc=30,XR,Jc,vk=0,C1="LR",Kj4,e1u,u6u,Qj4,Gj4,Hj4,Lj4,qj4,Xj4,xj4,vj4,Sj4,Wj4,Yj4,Rj4,p1u,Tj4,xR,Oj4,Ij4,Pj4,jj4,Nj4,ij4,B6u=8,E6u,aj4,Vj4,hj4,mj4,rj4,$j4,yj4,cj4,gj4,_j4;var C6u=g(()=>{fm();LB();t3();s4();o4();Y4();l7();i3();M6={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},_P4=t4.gitGraph,jw=X(()=>{return B1({..._P4,...F4().gitGraph})},"getConfig"),w4=new cH(()=>{let u=jw(),B=u.mainBranchName,E=u.mainBranchOrder;return{mainBranchName:B,commits:new Map,head:null,branchConfig:new Map([[B,{name:B,order:E}]]),branches:new Map([[B,null]]),currBranch:B,direction:"LR",seq:0,options:{}}});X(wc,"getID");X(d1u,"uniqBy");nP4=X(function(u){w4.records.direction=u},"setDirection"),pP4=X(function(u){z0.debug("options str",u),u=u?.trim(),u=u||"{}";try{w4.records.options=JSON.parse(u)}catch(B){z0.error("error while parsing gitGraph options",B.message)}},"setOptions"),dP4=X(function(){return w4.records.options},"getOptions"),sP4=X(function(u){let{msg:B,id:E,type:A,tags:C}=u;z0.info("commit",B,E,A,C),z0.debug("Entering commit:",B,E,A,C);let D=jw();E=yu.sanitizeText(E,D),B=yu.sanitizeText(B,D),C=C?.map((U)=>yu.sanitizeText(U,D));let F={id:E?E:w4.records.seq+"-"+wc(),message:B,seq:w4.records.seq++,type:A??M6.NORMAL,tags:C??[],parents:w4.records.head==null?[]:[w4.records.head.id],branch:w4.records.currBranch};if(w4.records.head=F,z0.info("main branch",D.mainBranchName),w4.records.commits.has(F.id))z0.warn(`Commit ID ${F.id} already exists`);w4.records.commits.set(F.id,F),w4.records.branches.set(w4.records.currBranch,F.id),z0.debug("in pushCommit "+F.id)},"commit"),oP4=X(function(u){let{name:B,order:E}=u;if(B=yu.sanitizeText(B,jw()),w4.records.branches.has(B))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 ${B}")`);w4.records.branches.set(B,w4.records.head!=null?w4.records.head.id:null),w4.records.branchConfig.set(B,{name:B,order:E}),s1u(B),z0.debug("in createBranch")},"branch"),tP4=X((u)=>{let{branch:B,id:E,type:A,tags:C}=u,D=jw();if(B=yu.sanitizeText(B,D),E)E=yu.sanitizeText(E,D);let F=w4.records.branches.get(w4.records.currBranch),U=w4.records.branches.get(B),z=F?w4.records.commits.get(F):void 0,k=U?w4.records.commits.get(U):void 0;if(z&&k&&z.branch===B)throw Error(`Cannot merge branch '${B}' into itself.`);if(w4.records.currBranch===B){let b=Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw b.hash={text:`merge ${B}`,token:`merge ${B}`,expected:["branch abc"]},b}if(z===void 0||!z){let b=Error(`Incorrect usage of "merge". Current branch (${w4.records.currBranch})has no commits`);throw b.hash={text:`merge ${B}`,token:`merge ${B}`,expected:["commit"]},b}if(!w4.records.branches.has(B)){let b=Error('Incorrect usage of "merge". Branch to be merged ('+B+") does not exist");throw b.hash={text:`merge ${B}`,token:`merge ${B}`,expected:[`branch ${B}`]},b}if(k===void 0||!k){let b=Error('Incorrect usage of "merge". Branch to be merged ('+B+") has no commits");throw b.hash={text:`merge ${B}`,token:`merge ${B}`,expected:['"commit"']},b}if(z===k){let b=Error('Incorrect usage of "merge". Both branches have same head');throw b.hash={text:`merge ${B}`,token:`merge ${B}`,expected:["branch abc"]},b}if(E&&w4.records.commits.has(E)){let b=Error('Incorrect usage of "merge". Commit with id:'+E+" already exists, use different custom id");throw b.hash={text:`merge ${B} ${E} ${A} ${C?.join(" ")}`,token:`merge ${B} ${E} ${A} ${C?.join(" ")}`,expected:[`merge ${B} ${E}_UNIQUE ${A} ${C?.join(" ")}`]},b}let f=U?U:"",l={id:E||`${w4.records.seq}-${wc()}`,message:`merged branch ${B} into ${w4.records.currBranch}`,seq:w4.records.seq++,parents:w4.records.head==null?[]:[w4.records.head.id,f],branch:w4.records.currBranch,type:M6.MERGE,customType:A,customId:E?!0:!1,tags:C??[]};w4.records.head=l,w4.records.commits.set(l.id,l),w4.records.branches.set(w4.records.currBranch,l.id),z0.debug(w4.records.branches),z0.debug("in mergeBranch")},"merge"),eP4=X(function(u){let{id:B,targetId:E,tags:A,parent:C}=u;z0.debug("Entering cherryPick:",B,E,A);let D=jw();if(B=yu.sanitizeText(B,D),E=yu.sanitizeText(E,D),A=A?.map((z)=>yu.sanitizeText(z,D)),C=yu.sanitizeText(C,D),!B||!w4.records.commits.has(B)){let z=Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw z.hash={text:`cherryPick ${B} ${E}`,token:`cherryPick ${B} ${E}`,expected:["cherry-pick abc"]},z}let F=w4.records.commits.get(B);if(F===void 0||!F)throw Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(C&&!(Array.isArray(F.parents)&&F.parents.includes(C)))throw Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let U=F.branch;if(F.type===M6.MERGE&&!C)throw Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!E||!w4.records.commits.has(E)){if(U===w4.records.currBranch){let l=Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw l.hash={text:`cherryPick ${B} ${E}`,token:`cherryPick ${B} ${E}`,expected:["cherry-pick abc"]},l}let z=w4.records.branches.get(w4.records.currBranch);if(z===void 0||!z){let l=Error(`Incorrect usage of "cherry-pick". Current branch (${w4.records.currBranch})has no commits`);throw l.hash={text:`cherryPick ${B} ${E}`,token:`cherryPick ${B} ${E}`,expected:["cherry-pick abc"]},l}let k=w4.records.commits.get(z);if(k===void 0||!k){let l=Error(`Incorrect usage of "cherry-pick". Current branch (${w4.records.currBranch})has no commits`);throw l.hash={text:`cherryPick ${B} ${E}`,token:`cherryPick ${B} ${E}`,expected:["cherry-pick abc"]},l}let f={id:w4.records.seq+"-"+wc(),message:`cherry-picked ${F?.message} into ${w4.records.currBranch}`,seq:w4.records.seq++,parents:w4.records.head==null?[]:[w4.records.head.id,F.id],branch:w4.records.currBranch,type:M6.CHERRY_PICK,tags:A?A.filter(Boolean):[`cherry-pick:${F.id}${F.type===M6.MERGE?`|parent:${C}`:""}`]};w4.records.head=f,w4.records.commits.set(f.id,f),w4.records.branches.set(w4.records.currBranch,f.id),z0.debug(w4.records.branches),z0.debug("in cherryPick")}},"cherryPick"),s1u=X(function(u){if(u=yu.sanitizeText(u,jw()),!w4.records.branches.has(u)){let B=Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${u}")`);throw B.hash={text:`checkout ${u}`,token:`checkout ${u}`,expected:[`branch ${u}`]},B}else{w4.records.currBranch=u;let B=w4.records.branches.get(w4.records.currBranch);if(B===void 0||!B)w4.records.head=null;else w4.records.head=w4.records.commits.get(B)??null}},"checkout");X(NC0,"upsert");X(aC0,"prettyPrintCommitHistory");uj4=X(function(){z0.debug(w4.records.commits);let u=o1u()[0];aC0([u])},"prettyPrint"),Bj4=X(function(){w4.reset(),D3()},"clear"),Ej4=X(function(){return[...w4.records.branchConfig.values()].map((B,E)=>{if(B.order!==null&&B.order!==void 0)return B;return{...B,order:parseFloat(`0.${E}`)}}).sort((B,E)=>(B.order??0)-(E.order??0)).map(({name:B})=>({name:B}))},"getBranchesAsObjArray"),Aj4=X(function(){return w4.records.branches},"getBranches"),Cj4=X(function(){return w4.records.commits},"getCommits"),o1u=X(function(){let u=[...w4.records.commits.values()];return u.forEach(function(B){z0.debug(B.id)}),u.sort((B,E)=>B.seq-E.seq),u},"getCommitsArray"),Dj4=X(function(){return w4.records.currBranch},"getCurrentBranch"),Fj4=X(function(){return w4.records.direction},"getDirection"),Uj4=X(function(){return w4.records.head},"getHead"),t1u={commitType:M6,getConfig:jw,setDirection:nP4,setOptions:pP4,getOptions:dP4,commit:sP4,branch:oP4,merge:tP4,cherryPick:eP4,checkout:s1u,prettyPrint:uj4,clear:Bj4,getBranchesAsObjArray:Ej4,getBranches:Aj4,getCommits:Cj4,getCommitsArray:o1u,getCurrentBranch:Dj4,getDirection:Fj4,getHead:Uj4,setAccTitle:w3,getAccTitle:H3,getAccDescription:q3,setAccDescription:L3,setDiagramTitle:T3,getDiagramTitle:X3},zj4=X((u,B)=>{if(D6(u,B),u.dir)B.setDirection(u.dir);for(let E of u.statements)kj4(E,B)},"populate"),kj4=X((u,B)=>{let A={Commit:X((C)=>B.commit(fj4(C)),"Commit"),Branch:X((C)=>B.branch(lj4(C)),"Branch"),Merge:X((C)=>B.merge(bj4(C)),"Merge"),Checkout:X((C)=>B.checkout(Mj4(C)),"Checkout"),CherryPicking:X((C)=>B.cherryPick(Zj4(C)),"CherryPicking")}[u.$type];if(A)A(u);else z0.error(`Unknown statement type: ${u.$type}`)},"parseStatement"),fj4=X((u)=>{return{id:u.id,msg:u.message??"",type:u.type!==void 0?M6[u.type]:M6.NORMAL,tags:u.tags??void 0}},"parseCommit"),lj4=X((u)=>{return{name:u.name,order:u.order??0}},"parseBranch"),bj4=X((u)=>{return{branch:u.branch,id:u.id??"",type:u.type!==void 0?M6[u.type]:void 0,tags:u.tags??void 0}},"parseMerge"),Mj4=X((u)=>{return u.branch},"parseCheckout"),Zj4=X((u)=>{return{id:u.id,targetId:"",tags:u.tags?.length===0?void 0:u.tags,parent:u.parent}},"parseCherryPicking"),Jj4={parse:X(async(u)=>{let B=await X9("gitGraph",u);z0.debug(B),zj4(B,t1u)},"parse")},Kc=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),VC0=new Set(["redux-color","redux-dark-color"]),wj4=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),Pw=X((u,B,E=!1)=>{if(E&&u>0)return(u-1)%(B-1)+1;return u%B},"calcColorIndex"),S8=new Map,W8=new Map,XR=new Map,Jc=[],Kj4=X(()=>{S8.clear(),W8.clear(),XR.clear(),vk=0,Jc=[],C1="LR"},"clear"),e1u=X((u)=>{let B=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof u==="string"?u.split(/\\n|\n|<br\s*\/?>/gi):u).forEach((A)=>{let C=document.createElementNS("http://www.w3.org/2000/svg","tspan");C.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),C.setAttribute("dy","1em"),C.setAttribute("x","0"),C.setAttribute("class","row"),C.textContent=A.trim(),B.appendChild(C)}),B},"drawText"),u6u=X((u)=>{let B,E,A;if(C1==="BT")E=X((C,D)=>C<=D,"comparisonFunc"),A=1/0;else E=X((C,D)=>C>=D,"comparisonFunc"),A=0;return u.forEach((C)=>{let D=C1==="TB"||C1=="BT"?W8.get(C)?.y:W8.get(C)?.x;if(D!==void 0&&E(D,A))B=C,A=D}),B},"findClosestParent"),Qj4=X((u)=>{let B="",E=1/0;return u.forEach((A)=>{let C=W8.get(A).y;if(C<=E)B=A,E=C}),B||void 0},"findClosestParentBT"),Gj4=X((u,B,E)=>{let A=E,C=E,D=[];u.forEach((F)=>{let U=B.get(F);if(!U)throw Error(`Commit not found for key ${F}`);if(U.parents.length)A=Lj4(U),C=Math.max(A,C);else D.push(U);qj4(U,A)}),A=C,D.forEach((F)=>{Xj4(F,A,E)}),u.forEach((F)=>{let U=B.get(F);if(U?.parents.length){let z=Qj4(U.parents);if(A=W8.get(z).y-Xb,A<=C)C=A;let k=S8.get(U.branch).pos,f=A-qb;W8.set(U.id,{x:k,y:f})}})},"setParallelBTPos"),Hj4=X((u)=>{let B=u6u(u.parents.filter((A)=>A!==null));if(!B)throw Error(`Closest parent not found for commit ${u.id}`);let E=W8.get(B)?.y;if(E===void 0)throw Error(`Closest parent position not found for commit ${u.id}`);return E},"findClosestParentPos"),Lj4=X((u)=>{return Hj4(u)+Xb},"calculateCommitPosition"),qj4=X((u,B)=>{let E=S8.get(u.branch);if(!E)throw Error(`Branch not found for commit ${u.id}`);let A=E.pos,C=B+qb;return W8.set(u.id,{x:A,y:C}),{x:A,y:C}},"setCommitPosition"),Xj4=X((u,B,E)=>{let A=S8.get(u.branch);if(!A)throw Error(`Branch not found for commit ${u.id}`);let C=B+E,D=A.pos;W8.set(u.id,{x:D,y:C})},"setRootPosition"),xj4=X((u,B,E,A,C,D)=>{let{theme:F}=$0(),U=Kc.has(F??""),z=VC0.has(F??""),k=wj4.has(F??"");if(D===M6.HIGHLIGHT)u.append("rect").attr("x",E.x-10+(U?3:0)).attr("y",E.y-10+(U?3:0)).attr("width",U?14:20).attr("height",U?14:20).attr("class",`commit ${B.id} commit-highlight${Pw(C,Iw,z)} ${A}-outer`),u.append("rect").attr("x",E.x-6+(U?2:0)).attr("y",E.y-6+(U?2:0)).attr("width",U?8:12).attr("height",U?8:12).attr("class",`commit ${B.id} commit${Pw(C,Iw,z)} ${A}-inner`);else if(D===M6.CHERRY_PICK)u.append("circle").attr("cx",E.x).attr("cy",E.y).attr("r",U?7:10).attr("class",`commit ${B.id} ${A}`),u.append("circle").attr("cx",E.x-3).attr("cy",E.y+2).attr("r",U?2.5:2.75).attr("fill",k?"#000000":"#fff").attr("class",`commit ${B.id} ${A}`),u.append("circle").attr("cx",E.x+3).attr("cy",E.y+2).attr("r",U?2.5:2.75).attr("fill",k?"#000000":"#fff").attr("class",`commit ${B.id} ${A}`),u.append("line").attr("x1",E.x+3).attr("y1",E.y+1).attr("x2",E.x).attr("y2",E.y-5).attr("stroke",k?"#000000":"#fff").attr("class",`commit ${B.id} ${A}`),u.append("line").attr("x1",E.x-3).attr("y1",E.y+1).attr("x2",E.x).attr("y2",E.y-5).attr("stroke",k?"#000000":"#fff").attr("class",`commit ${B.id} ${A}`);else{let f=u.append("circle");if(f.attr("cx",E.x),f.attr("cy",E.y),f.attr("r",U?7:10),f.attr("class",`commit ${B.id} commit${Pw(C,Iw,z)}`),D===M6.MERGE){let l=u.append("circle");l.attr("cx",E.x),l.attr("cy",E.y),l.attr("r",U?5:6),l.attr("class",`commit ${A} ${B.id} commit${Pw(C,Iw,z)}`)}if(D===M6.REVERSE){let l=u.append("path"),b=U?4:5;l.attr("d",`M ${E.x-b},${E.y-b}L${E.x+b},${E.y+b}M${E.x-b},${E.y+b}L${E.x+b},${E.y-b}`).attr("class",`commit ${A} ${B.id} commit${Pw(C,Iw,z)}`)}}},"drawCommitBullet"),vj4=X((u,B,E,A,C)=>{if(B.type!==M6.CHERRY_PICK&&(B.customId&&B.type===M6.MERGE||B.type!==M6.MERGE)&&C.showCommitLabel){let D=u.append("g"),F=D.insert("rect").attr("class","commit-label-bkg"),U=D.append("text").attr("x",A).attr("y",E.y+25).attr("class","commit-label").text(B.id),z=U.node()?.getBBox();if(z){if(F.attr("x",E.posWithOffset-z.width/2-xk).attr("y",E.y+13.5).attr("width",z.width+2*xk).attr("height",z.height+2*xk),C1==="TB"||C1==="BT")F.attr("x",E.x-(z.width+4*UU+5)).attr("y",E.y-12),U.attr("x",E.x-(z.width+4*UU)).attr("y",E.y+z.height-12);else U.attr("x",E.posWithOffset-z.width/2);if(C.rotateCommitLabel)if(C1==="TB"||C1==="BT")U.attr("transform","rotate(-45, "+E.x+", "+E.y+")"),F.attr("transform","rotate(-45, "+E.x+", "+E.y+")");else{let k=-7.5-(z.width+10)/25*9.5,f=10+z.width/25*8.5;D.attr("transform","translate("+k+", "+f+") rotate(-45, "+A+", "+E.y+")")}}}},"drawCommitLabel"),Sj4=X((u,B,E,A)=>{if(B.tags.length>0){let C=0,D=0,F=0,U=[];for(let z of B.tags.reverse()){let k=u.insert("polygon"),f=u.append("circle"),l=u.append("text").attr("y",E.y-16-C).attr("class","tag-label").text(z),b=l.node()?.getBBox();if(!b)throw Error("Tag bbox not found");D=Math.max(D,b.width),F=Math.max(F,b.height),l.attr("x",E.posWithOffset-b.width/2),U.push({tag:l,hole:f,rect:k,yOffset:C}),C+=20}for(let{tag:z,hole:k,rect:f,yOffset:l}of U){let b=F/2,M=E.y-19.2-l;if(f.attr("class","tag-label-bkg").attr("points",`
${A-D/2-UU/2},${M+xk}
${A-D/2-UU/2},${M-xk}
${E.posWithOffset-D/2-UU},${M-b-xk}
${E.posWithOffset+D/2+UU},${M-b-xk}
${E.posWithOffset+D/2+UU},${M+b+xk}
${E.posWithOffset-D/2-UU},${M+b+xk}`),k.attr("cy",M).attr("cx",A-D/2+UU/2).attr("r",1.5).attr("class","tag-hole"),C1==="TB"||C1==="BT"){let Z=A+l;f.attr("class","tag-label-bkg").attr("points",`
${E.x},${Z+2}
${E.x},${Z-2}
${E.x+qb},${Z-b-2}
${E.x+qb+D+4},${Z-b-2}
${E.x+qb+D+4},${Z+b+2}
${E.x+qb},${Z+b+2}`).attr("transform","translate(12,12) rotate(45, "+E.x+","+A+")"),k.attr("cx",E.x+UU/2).attr("cy",Z).attr("transform","translate(12,12) rotate(45, "+E.x+","+A+")"),z.attr("x",E.x+5).attr("y",Z+3).attr("transform","translate(14,14) rotate(45, "+E.x+","+A+")")}}}},"drawCommitTags"),Wj4=X((u)=>{switch(u.customType??u.type){case M6.NORMAL:return"commit-normal";case M6.REVERSE:return"commit-reverse";case M6.HIGHLIGHT:return"commit-highlight";case M6.MERGE:return"commit-merge";case M6.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),Yj4=X((u,B,E,A)=>{let C={x:0,y:0};if(u.parents.length>0){let D=u6u(u.parents);if(D){let F=A.get(D)??C;if(B==="TB")return F.y+Xb;else if(B==="BT")return(A.get(u.id)??C).y-Xb;else return F.x+Xb}}else if(B==="TB")return Zc;else if(B==="BT")return(A.get(u.id)??C).y-Xb;else return 0;return 0},"calculatePosition"),Rj4=X((u,B,E)=>{let A=C1==="BT"&&E?B:B+qb,C=S8.get(u.branch)?.pos,D=C1==="TB"||C1==="BT"?S8.get(u.branch)?.pos:A;if(D===void 0||C===void 0)throw Error(`Position were undefined for commit ${u.id}`);let F=Kc.has($0().theme??""),U=C1==="TB"||C1==="BT"?A:C+(F?iC0/2+1:-2);return{x:D,y:U,posWithOffset:A}},"getCommitPosition"),p1u=X((u,B,E,A)=>{let C=u.append("g").attr("class","commit-bullets"),D=u.append("g").attr("class","commit-labels"),F=C1==="TB"||C1==="BT"?Zc:0,U=[...B.keys()],z=A.parallelCommits??!1,k=X((l,b)=>{let M=B.get(l)?.seq,Z=B.get(b)?.seq;return M!==void 0&&Z!==void 0?M-Z:0},"sortKeys"),f=U.sort(k);if(C1==="BT"){if(z)Gj4(f,B,F);f=f.reverse()}f.forEach((l)=>{let b=B.get(l);if(!b)throw Error(`Commit not found for key ${l}`);if(z)F=Yj4(b,C1,F,W8);let M=Rj4(b,F,z);if(E){let Z=Wj4(b),J=b.customType??b.type,w=S8.get(b.branch)?.index??0;xj4(C,b,M,Z,w,J),vj4(D,b,M,F,A),Sj4(D,b,M,F)}if(C1==="TB"||C1==="BT")W8.set(b.id,{x:M.x,y:M.posWithOffset});else W8.set(b.id,{x:M.posWithOffset,y:M.y});if(F=C1==="BT"&&z?F+Xb:F+Xb+qb,F>vk)vk=F})},"drawCommits"),Tj4=X((u,B,E,A,C)=>{let F=(C1==="TB"||C1==="BT"?E.x<A.x:E.y<A.y)?B.branch:u.branch,U=X((k)=>k.branch===F,"isOnBranchToGetCurve"),z=X((k)=>k.seq>u.seq&&k.seq<B.seq,"isBetweenCommits");return[...C.values()].some((k)=>{return z(k)&&U(k)})},"shouldRerouteArrow"),xR=X((u,B,E=0)=>{let A=u+Math.abs(u-B)/2;if(E>5)return A;if(Jc.every((F)=>Math.abs(F-A)>=10))return Jc.push(A),A;let D=Math.abs(u-B);return xR(u,B-D/5,E+1)},"findLane"),Oj4=X((u,B,E,A)=>{let{theme:C}=$0(),D=VC0.has(C??""),F=W8.get(B.id),U=W8.get(E.id);if(F===void 0||U===void 0)throw Error(`Commit positions not found for commits ${B.id} and ${E.id}`);let z=Tj4(B,E,F,U,A),k="",f="",l=0,b=0,M=S8.get(E.branch)?.index;if(E.type===M6.MERGE&&B.id!==E.parents[0])M=S8.get(B.branch)?.index;let Z;if(z){k="A 10 10, 0, 0, 0,",f="A 10 10, 0, 0, 1,",l=10,b=10;let J=F.y<U.y?xR(F.y,U.y):xR(U.y,F.y),w=F.x<U.x?xR(F.x,U.x):xR(U.x,F.x);if(C1==="TB")if(F.x<U.x)Z=`M ${F.x} ${F.y} L ${w-l} ${F.y} ${f} ${w} ${F.y+b} L ${w} ${U.y-l} ${k} ${w+b} ${U.y} L ${U.x} ${U.y}`;else M=S8.get(B.branch)?.index,Z=`M ${F.x} ${F.y} L ${w+l} ${F.y} ${k} ${w} ${F.y+b} L ${w} ${U.y-l} ${f} ${w-b} ${U.y} L ${U.x} ${U.y}`;else if(C1==="BT")if(F.x<U.x)Z=`M ${F.x} ${F.y} L ${w-l} ${F.y} ${k} ${w} ${F.y-b} L ${w} ${U.y+l} ${f} ${w+b} ${U.y} L ${U.x} ${U.y}`;else M=S8.get(B.branch)?.index,Z=`M ${F.x} ${F.y} L ${w+l} ${F.y} ${f} ${w} ${F.y-b} L ${w} ${U.y+l} ${k} ${w-b} ${U.y} L ${U.x} ${U.y}`;else if(F.y<U.y)Z=`M ${F.x} ${F.y} L ${F.x} ${J-l} ${k} ${F.x+b} ${J} L ${U.x-l} ${J} ${f} ${U.x} ${J+b} L ${U.x} ${U.y}`;else M=S8.get(B.branch)?.index,Z=`M ${F.x} ${F.y} L ${F.x} ${J+l} ${f} ${F.x+b} ${J} L ${U.x-l} ${J} ${k} ${U.x} ${J-b} L ${U.x} ${U.y}`}else if(k="A 20 20, 0, 0, 0,",f="A 20 20, 0, 0, 1,",l=20,b=20,C1==="TB"){if(F.x<U.x)if(E.type===M6.MERGE&&B.id!==E.parents[0])Z=`M ${F.x} ${F.y} L ${F.x} ${U.y-l} ${k} ${F.x+b} ${U.y} L ${U.x} ${U.y}`;else Z=`M ${F.x} ${F.y} L ${U.x-l} ${F.y} ${f} ${U.x} ${F.y+b} L ${U.x} ${U.y}`;if(F.x>U.x)if(k="A 20 20, 0, 0, 0,",f="A 20 20, 0, 0, 1,",l=20,b=20,E.type===M6.MERGE&&B.id!==E.parents[0])Z=`M ${F.x} ${F.y} L ${F.x} ${U.y-l} ${f} ${F.x-b} ${U.y} L ${U.x} ${U.y}`;else Z=`M ${F.x} ${F.y} L ${U.x+l} ${F.y} ${k} ${U.x} ${F.y+b} L ${U.x} ${U.y}`;if(F.x===U.x)Z=`M ${F.x} ${F.y} L ${U.x} ${U.y}`}else if(C1==="BT"){if(F.x<U.x)if(E.type===M6.MERGE&&B.id!==E.parents[0])Z=`M ${F.x} ${F.y} L ${F.x} ${U.y+l} ${f} ${F.x+b} ${U.y} L ${U.x} ${U.y}`;else Z=`M ${F.x} ${F.y} L ${U.x-l} ${F.y} ${k} ${U.x} ${F.y-b} L ${U.x} ${U.y}`;if(F.x>U.x)if(k="A 20 20, 0, 0, 0,",f="A 20 20, 0, 0, 1,",l=20,b=20,E.type===M6.MERGE&&B.id!==E.parents[0])Z=`M ${F.x} ${F.y} L ${F.x} ${U.y+l} ${k} ${F.x-b} ${U.y} L ${U.x} ${U.y}`;else Z=`M ${F.x} ${F.y} L ${U.x+l} ${F.y} ${f} ${U.x} ${F.y-b} L ${U.x} ${U.y}`;if(F.x===U.x)Z=`M ${F.x} ${F.y} L ${U.x} ${U.y}`}else{if(F.y<U.y)if(E.type===M6.MERGE&&B.id!==E.parents[0])Z=`M ${F.x} ${F.y} L ${U.x-l} ${F.y} ${f} ${U.x} ${F.y+b} L ${U.x} ${U.y}`;else Z=`M ${F.x} ${F.y} L ${F.x} ${U.y-l} ${k} ${F.x+b} ${U.y} L ${U.x} ${U.y}`;if(F.y>U.y)if(E.type===M6.MERGE&&B.id!==E.parents[0])Z=`M ${F.x} ${F.y} L ${U.x-l} ${F.y} ${k} ${U.x} ${F.y-b} L ${U.x} ${U.y}`;else Z=`M ${F.x} ${F.y} L ${F.x} ${U.y+l} ${f} ${F.x+b} ${U.y} L ${U.x} ${U.y}`;if(F.y===U.y)Z=`M ${F.x} ${F.y} L ${U.x} ${U.y}`}if(Z===void 0)throw Error("Line definition not found");u.append("path").attr("d",Z).attr("class","arrow arrow"+Pw(M,Iw,D))},"drawArrow"),Ij4=X((u,B)=>{let E=u.append("g").attr("class","commit-arrows");[...B.keys()].forEach((A)=>{let C=B.get(A);if(C.parents&&C.parents.length>0)C.parents.forEach((D)=>{Oj4(E,B.get(D),C,B)})})},"drawArrows"),Pj4=X((u,B,E,A)=>{let{look:C,theme:D,themeVariables:F}=$0(),{dropShadow:U,THEME_COLOR_LIMIT:z}=F,k=Kc.has(D??""),f=VC0.has(D??""),l=u.append("g");B.forEach((b,M)=>{let Z=Pw(M,k?z:Iw,f),J=S8.get(b.name)?.pos;if(J===void 0)throw Error(`Position not found for branch ${b.name}`);let w=C1==="TB"||C1==="BT"?J:k?J+iC0/2+1:J-2,K=l.append("line");if(K.attr("x1",0),K.attr("y1",w),K.attr("x2",vk),K.attr("y2",w),K.attr("class","branch branch"+Z),C1==="TB")K.attr("y1",Zc),K.attr("x1",J),K.attr("y2",vk),K.attr("x2",J);else if(C1==="BT")K.attr("y1",vk),K.attr("x1",J),K.attr("y2",Zc),K.attr("x2",J);Jc.push(w);let Q=b.name,G=e1u(Q),L=l.insert("rect"),q=l.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+Z);q.node().appendChild(G);let x=G.getBBox(),v=k?0:4,W=k?16:0,S=k?iC0:0;if(C==="neo")L.attr("data-look","neo");if(L.attr("class","branchLabelBkg label"+Z).attr("style",C==="neo"?`filter:${k?`url(#${A}-drop-shadow)`:U}`:"").attr("rx",v).attr("ry",v).attr("x",-x.width-4-(E.rotateCommitLabel===!0?30:0)).attr("y",-x.height/2+10).attr("width",x.width+18+W).attr("height",x.height+4+S),q.attr("transform","translate("+(-x.width-14-(E.rotateCommitLabel===!0?30:0)+W/2)+", "+(w-x.height/2-2)+")"),C1==="TB"){if(L.attr("x",J-x.width/2-10).attr("y",0),q.attr("transform","translate("+(J-x.width/2-5)+", 0)"),k)L.attr("transform",`translate(${-W/2-3}, ${-S-10})`),q.attr("transform","translate("+(J-x.width/2-5)+", "+(-S*2+7)+")")}else if(C1==="BT"){if(L.attr("x",J-x.width/2-10).attr("y",vk),q.attr("transform","translate("+(J-x.width/2-5)+", "+vk+")"),k)L.attr("transform",`translate(${-W/2-3}, ${S+10})`),q.attr("transform","translate("+(J-x.width/2-5)+", "+(vk+S*2+4)+")")}else L.attr("transform","translate(-19, "+(w-12-S/2)+")")})},"drawBranches"),jj4=X(function(u,B,E,A,C){return S8.set(u,{pos:B,index:E}),B+=50+(C?40:0)+(C1==="TB"||C1==="BT"?A.width/2:0),B},"setBranchPosition"),Nj4=X(function(u,B,E,A){Kj4(),z0.debug("in gitgraph renderer",u+`
`,"id:",B,E);let C=A.db;if(!C.getConfig){z0.error("getConfig method is not available on db");return}let D=C.getConfig(),F=D.rotateCommitLabel??!1;XR=C.getCommits();let U=C.getBranchesAsObjArray();C1=C.getDirection();let z=Ku(`[id="${B}"]`),{look:k,theme:f,themeVariables:l}=$0(),{useGradient:b,gradientStart:M,gradientStop:Z,filterColor:J}=l;if(b){let K=z.append("defs").append("linearGradient").attr("id",B+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");K.append("stop").attr("offset","0%").attr("stop-color",M).attr("stop-opacity",1),K.append("stop").attr("offset","100%").attr("stop-color",Z).attr("stop-opacity",1)}if(k==="neo"&&Kc.has(f??""))z.append("defs").append("filter").attr("id",B+"-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",J);let w=0;if(U.forEach((K,Q)=>{let G=e1u(K.name),L=z.append("g"),H=L.insert("g").attr("class","branchLabel"),q=H.insert("g").attr("class","label branch-label");q.node()?.appendChild(G);let x=G.getBBox();w=jj4(K.name,w,Q,x,F),q.remove(),H.remove(),L.remove()}),p1u(z,XR,!1,D),D.showBranches)Pj4(z,U,D,B);Ij4(z,XR),p1u(z,XR,!0,D),R4.insertTitle(z,"gitTitleText",D.titleTopMargin??0,C.getDiagramTitle()),Cv(void 0,z,D.diagramPadding,D.useMaxWidth)},"draw"),ij4={draw:Nj4},E6u=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),aj4=new Set(["redux-color","redux-dark-color"]),Vj4=new Set(["neo","neo-dark"]),hj4=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),mj4=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),rj4=X((u)=>{let{svgId:B}=u,E="";if(u.useGradient&&B)for(let A=0;A<u.THEME_COLOR_LIMIT;A++)E+=`
.label${A} { fill: ${u.mainBkg}; stroke: url(${B}-gradient); stroke-width: ${u.strokeWidth};}
`;return E},"genGitGraphGradient"),$j4=X((u)=>{let B=F4(),{theme:E,themeVariables:A}=B,{borderColorArray:C}=A,D=E6u.has(E);if(Vj4.has(E)){let F="";for(let U=0;U<u.THEME_COLOR_LIMIT;U++)if(U===0)F+=`
.branch-label${U} { fill: ${u.nodeBorder};}
.commit${U} { stroke: ${u.nodeBorder}; }
.commit-highlight${U} { stroke: ${u.nodeBorder}; fill: ${u.nodeBorder}; }
.arrow${U} { stroke: ${u.nodeBorder}; }
.commit-bullets { fill: ${u.nodeBorder}; }
.commit-cherry-pick${U} { stroke: ${u.nodeBorder}; }
${rj4(u)}`;else{let z=U%B6u;F+=`
.branch-label${U} { fill: ${u["gitBranchLabel"+z]}; }
.commit${U} { stroke: ${u["git"+z]}; fill: ${u["git"+z]}; }
.commit-highlight${U} { stroke: ${u["gitInv"+z]}; fill: ${u["gitInv"+z]}; }
.arrow${U} { stroke: ${u["git"+z]}; }
`}return F}else if(!aj4.has(E)){let F="";for(let U=0;U<u.THEME_COLOR_LIMIT;U++)F+=`
.branch-label${U} { fill: ${u.nodeBorder}; ${D?`font-weight:${u.noteFontWeight}`:""} }
.commit${U} { stroke: ${u.nodeBorder}; }
.commit-highlight${U} { stroke: ${u.nodeBorder}; fill: ${u.nodeBorder}; }
.label${U} { fill: ${u.mainBkg}; stroke: ${u.nodeBorder}; stroke-width: ${u.strokeWidth}; ${D?`font-weight:${u.noteFontWeight}`:""}}
.arrow${U} { stroke: ${u.nodeBorder}; }
.commit-bullets { fill: ${u.nodeBorder}; }
.commit-cherry-pick${U} { stroke: ${u.nodeBorder}; }
`;return F}else{let F="";for(let U=0;U<u.THEME_COLOR_LIMIT;U++)if(U===0)F+=`
.branch-label${U} { fill: ${u.nodeBorder}; ${D?`font-weight:${u.noteFontWeight}`:""} }
.commit${U} { stroke: ${u.nodeBorder}; }
.commit-highlight${U} { stroke: ${u.nodeBorder}; fill: ${u.mainBkg}; }
.label${U} { fill: ${u.mainBkg}; stroke: ${u.nodeBorder}; stroke-width: ${u.strokeWidth}; ${D?`font-weight:${u.noteFontWeight}`:""} }
.arrow${U} { stroke: ${u.nodeBorder}; }
.commit-bullets { fill: ${u.nodeBorder}; }
`;else{let z=U%C.length;F+=`
.branch-label${U} { fill: ${u.nodeBorder}; ${D?`font-weight:${u.noteFontWeight}`:""} }
.commit${U} { stroke: ${C[z]}; fill: ${C[z]}; }
.commit-highlight${U} { stroke: ${C[z]}; fill: ${C[z]}; }
.label${U} { fill: ${hj4.has(E)?u.mainBkg:C[z]}; stroke: ${C[z]}; stroke-width: ${u.strokeWidth}; }
.arrow${U} { stroke: ${C[z]}; }
`}return F}},"genColor"),yj4=X((u)=>{return`${Array.from({length:u.THEME_COLOR_LIMIT},(B,E)=>E).map((B)=>{let E=B%B6u;return`
.branch-label${B} { fill: ${u["gitBranchLabel"+E]}; }
.commit${B} { stroke: ${u["git"+E]}; fill: ${u["git"+E]}; }
.commit-highlight${B} { stroke: ${u["gitInv"+E]}; fill: ${u["gitInv"+E]}; }
.label${B} { fill: ${u["git"+E]}; }
.arrow${B} { stroke: ${u["git"+E]}; }
`}).join(`
`)}`},"normalTheme"),cj4=X((u)=>{let B=F4(),{theme:E}=B,A=mj4.has(E);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);
}
${A?$j4(u):yj4(u)}
.branch {
stroke-width: ${u.strokeWidth};
stroke: ${u.commitLineColor??u.lineColor};
stroke-dasharray: ${A?"4 2":"2"};
}
.commit-label { font-size: ${u.commitLabelFontSize}; fill: ${A?u.nodeBorder:u.commitLabelColor}; ${A?`font-weight:${u.noteFontWeight};`:""}}
.commit-label-bkg { font-size: ${u.commitLabelFontSize}; fill: ${A?"transparent":u.commitLabelBackground}; opacity: ${A?"":0.5}; }
.tag-label { font-size: ${u.tagLabelFontSize}; fill: ${u.tagLabelColor};}
.tag-label-bkg { fill: ${A?u.mainBkg:u.tagLabelBackground}; stroke: ${A?u.nodeBorder:u.tagLabelBorder}; ${A?`filter:${u.dropShadow}`:""} }
.tag-hole { fill: ${u.textColor}; }
.commit-merge {
stroke: ${A?u.mainBkg:u.primaryColor};
fill: ${A?u.mainBkg:u.primaryColor};
}
.commit-reverse {
stroke: ${A?u.mainBkg:u.primaryColor};
fill: ${A?u.mainBkg:u.primaryColor};
stroke-width: ${A?u.strokeWidth:3};
}
.commit-highlight-outer {
}
.commit-highlight-inner {
stroke: ${A?u.mainBkg:u.primaryColor};
fill: ${A?u.mainBkg:u.primaryColor};
}
.arrow {
/* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */
stroke-width: ${E6u.has(E)?u.strokeWidth:8};
stroke-linecap: round;
fill: none
}
.gitTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${u.textColor};
}
`},"getStyles"),gj4=cj4,_j4={parser:Jj4,db:t1u,renderer:ij4,styles:gj4}});var D6u=P1((hC0,mC0)=>{(function(u,B){typeof hC0=="object"&&typeof mC0<"u"?mC0.exports=B():typeof define=="function"&&define.amd?define(B):(u=typeof globalThis<"u"?globalThis:u||self).dayjs_plugin_isoWeek=B()})(hC0,function(){var u="day";return function(B,E,A){var C=function(U){return U.add(4-U.isoWeekday(),u)},D=E.prototype;D.isoWeekYear=function(){return C(this).year()},D.isoWeek=function(U){if(!this.$utils().u(U))return this.add(7*(U-this.isoWeek()),u);var z,k,f,l,b=C(this),M=(z=this.isoWeekYear(),k=this.$u,f=(k?A.utc:A)().year(z).startOf("year"),l=4-f.isoWeekday(),f.isoWeekday()>4&&(l+=7),f.add(l,u));return b.diff(M,"week")+1},D.isoWeekday=function(U){return this.$utils().u(U)?this.day()||7:this.day(this.day()%7?U:U-7)};var F=D.startOf;D.startOf=function(U,z){var k=this.$utils(),f=!!k.u(z)||z;return k.p(U)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):F.bind(this)(U,z)}}})});var F6u=P1((rC0,$C0)=>{(function(u,B){typeof rC0=="object"&&typeof $C0<"u"?$C0.exports=B():typeof define=="function"&&define.amd?define(B):(u=typeof globalThis<"u"?globalThis:u||self).dayjs_plugin_customParseFormat=B()})(rC0,function(){var u={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"},B=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,E=/\d/,A=/\d\d/,C=/\d\d?/,D=/\d*[^-_:/,()\s\d]+/,F={},U=function(Z){return(Z=+Z)+(Z>68?1900:2000)},z=function(Z){return function(J){this[Z]=+J}},k=[/[+-]\d\d:?(\d\d)?|Z/,function(Z){(this.zone||(this.zone={})).offset=function(J){if(!J)return 0;if(J==="Z")return 0;var w=J.match(/([+-]|\d\d)/g),K=60*w[1]+(+w[2]||0);return K===0?0:w[0]==="+"?-K:K}(Z)}],f=function(Z){var J=F[Z];return J&&(J.indexOf?J:J.s.concat(J.f))},l=function(Z,J){var w,K=F.meridiem;if(K){for(var Q=1;Q<=24;Q+=1)if(Z.indexOf(K(Q,0,J))>-1){w=Q>12;break}}else w=Z===(J?"pm":"PM");return w},b={A:[D,function(Z){this.afternoon=l(Z,!1)}],a:[D,function(Z){this.afternoon=l(Z,!0)}],Q:[E,function(Z){this.month=3*(Z-1)+1}],S:[E,function(Z){this.milliseconds=100*+Z}],SS:[A,function(Z){this.milliseconds=10*+Z}],SSS:[/\d{3}/,function(Z){this.milliseconds=+Z}],s:[C,z("seconds")],ss:[C,z("seconds")],m:[C,z("minutes")],mm:[C,z("minutes")],H:[C,z("hours")],h:[C,z("hours")],HH:[C,z("hours")],hh:[C,z("hours")],D:[C,z("day")],DD:[A,z("day")],Do:[D,function(Z){var J=F.ordinal,w=Z.match(/\d+/);if(this.day=w[0],J)for(var K=1;K<=31;K+=1)J(K).replace(/\[|\]/g,"")===Z&&(this.day=K)}],w:[C,z("week")],ww:[A,z("week")],M:[C,z("month")],MM:[A,z("month")],MMM:[D,function(Z){var J=f("months"),w=(f("monthsShort")||J.map(function(K){return K.slice(0,3)})).indexOf(Z)+1;if(w<1)throw Error();this.month=w%12||w}],MMMM:[D,function(Z){var J=f("months").indexOf(Z)+1;if(J<1)throw Error();this.month=J%12||J}],Y:[/[+-]?\d+/,z("year")],YY:[A,function(Z){this.year=U(Z)}],YYYY:[/\d{4}/,z("year")],Z:k,ZZ:k};function M(Z){var J,w;J=Z,w=F&&F.formats;for(var K=(Z=J.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(v,W,S){var T=S&&S.toUpperCase();return W||w[S]||u[S]||w[T].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(R,Y,a){return Y||a.slice(1)})})).match(B),Q=K.length,G=0;G<Q;G+=1){var L=K[G],H=b[L],q=H&&H[0],x=H&&H[1];K[G]=x?{regex:q,parser:x}:L.replace(/^\[|\]$/g,"")}return function(v){for(var W={},S=0,T=0;S<Q;S+=1){var R=K[S];if(typeof R=="string")T+=R.length;else{var{regex:Y,parser:a}=R,I=v.slice(T),O=Y.exec(I)[0];a.call(W,O),v=v.replace(O,"")}}return function(i){var N=i.afternoon;if(N!==void 0){var V=i.hours;N?V<12&&(i.hours+=12):V===12&&(i.hours=0),delete i.afternoon}}(W),W}}return function(Z,J,w){w.p.customParseFormat=!0,Z&&Z.parseTwoDigitYear&&(U=Z.parseTwoDigitYear);var K=J.prototype,Q=K.parse;K.parse=function(G){var{date:L,utc:H,args:q}=G;this.$u=H;var x=q[1];if(typeof x=="string"){var v=q[2]===!0,W=q[3]===!0,S=v||W,T=q[2];W&&(T=q[2]),F=this.$locale(),!v&&T&&(F=w.Ls[T]),this.$d=function(I,O,i,N){try{if(["x","X"].indexOf(O)>-1)return new Date((O==="X"?1000:1)*I);var V=M(O)(I),h=V.year,r=V.month,m=V.day,$=V.hours,y=V.minutes,p=V.seconds,e=V.milliseconds,_=V.zone,b0=V.week,B0=new Date,k0=m||(h||r?1:B0.getDate()),f0=h||B0.getFullYear(),D0=0;h&&!r||(D0=r>0?r-1:B0.getMonth());var P0,q0=$||0,m0=y||0,a0=p||0,_0=e||0;return _?new Date(Date.UTC(f0,D0,k0,q0,m0,a0,_0+60*_.offset*1000)):i?new Date(Date.UTC(f0,D0,k0,q0,m0,a0,_0)):(P0=new Date(f0,D0,k0,q0,m0,a0,_0),b0&&(P0=N(P0).week(b0).toDate()),P0)}catch(w0){return new Date("")}}(L,x,H,w),this.init(),T&&T!==!0&&(this.$L=this.locale(T).$L),S&&L!=this.format(x)&&(this.$d=new Date("")),F={}}else if(x instanceof Array)for(var R=x.length,Y=1;Y<=R;Y+=1){q[1]=x[Y-1];var a=w.apply(this,q);if(a.isValid()){this.$d=a.$d,this.$L=a.$L,this.init();break}Y===R&&(this.$d=new Date(""))}else Q.call(this,G)}}})});var U6u=P1((yC0,cC0)=>{(function(u,B){typeof yC0=="object"&&typeof cC0<"u"?cC0.exports=B():typeof define=="function"&&define.amd?define(B):(u=typeof globalThis<"u"?globalThis:u||self).dayjs_plugin_advancedFormat=B()})(yC0,function(){return function(u,B){var E=B.prototype,A=E.format;E.format=function(C){var D=this,F=this.$locale();if(!this.isValid())return A.bind(this)(C);var U=this.$utils(),z=(C||"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(k){switch(k){case"Q":return Math.ceil((D.$M+1)/3);case"Do":return F.ordinal(D.$D);case"gggg":return D.weekYear();case"GGGG":return D.isoWeekYear();case"wo":return F.ordinal(D.week(),"W");case"w":case"ww":return U.s(D.week(),k==="w"?1:2,"0");case"W":case"WW":return U.s(D.isoWeek(),k==="W"?1:2,"0");case"k":case"kk":return U.s(String(D.$H===0?24:D.$H),k==="k"?1:2,"0");case"X":return Math.floor(D.$d.getTime()/1000);case"x":return D.$d.getTime();case"z":return"["+D.offsetName()+"]";case"zzz":return"["+D.offsetName("long")+"]";default:return k}});return A.bind(this)(z)}}})});var z6u=P1((gC0,_C0)=>{(function(u,B){typeof gC0=="object"&&typeof _C0<"u"?_C0.exports=B():typeof define=="function"&&define.amd?define(B):(u=typeof globalThis<"u"?globalThis:u||self).dayjs_plugin_duration=B()})(gC0,function(){var u,B,E=1000,A=60000,C=3600000,D=86400000,F=31536000000,U=2628000000,z=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,k=/\[([^\]]+)]|YYYY|YY|Y|M{1,2}|D{1,2}|H{1,2}|m{1,2}|s{1,2}|SSS/g,f={years:F,months:U,days:D,hours:C,minutes:A,seconds:E,milliseconds:1,weeks:604800000},l=function(L){return L instanceof Q},b=function(L,H,q){return new Q(L,q,H.$l)},M=function(L){return B.p(L)+"s"},Z=function(L){return L<0},J=function(L){return Z(L)?Math.ceil(L):Math.floor(L)},w=function(L){return Math.abs(L)},K=function(L,H){return L?Z(L)?{negative:!0,format:""+w(L)+H}:{negative:!1,format:""+L+H}:{negative:!1,format:""}},Q=function(){function L(q,x,v){var W=this;if(this.$d={},this.$l=v,q===void 0&&(this.$ms=0,this.parseFromMilliseconds()),x)return b(q*f[M(x)],this);if(typeof q=="number")return this.$ms=q,this.parseFromMilliseconds(),this;if(typeof q=="object")return Object.keys(q).forEach(function(R){W.$d[M(R)]=q[R]}),this.calMilliseconds(),this;if(typeof q=="string"){var S=q.match(z);if(S){var T=S.slice(2).map(function(R){return R!=null?Number(R):0});return this.$d.years=T[0],this.$d.months=T[1],this.$d.weeks=T[2],this.$d.days=T[3],this.$d.hours=T[4],this.$d.minutes=T[5],this.$d.seconds=T[6],this.calMilliseconds(),this}}return this}var H=L.prototype;return H.calMilliseconds=function(){var q=this;this.$ms=Object.keys(this.$d).reduce(function(x,v){return x+(q.$d[v]||0)*f[v]},0)},H.parseFromMilliseconds=function(){var q=this.$ms;this.$d.years=J(q/F),q%=F,this.$d.months=J(q/U),q%=U,this.$d.days=J(q/D),q%=D,this.$d.hours=J(q/C),q%=C,this.$d.minutes=J(q/A),q%=A,this.$d.seconds=J(q/E),q%=E,this.$d.milliseconds=q},H.toISOString=function(){var q=K(this.$d.years,"Y"),x=K(this.$d.months,"M"),v=+this.$d.days||0;this.$d.weeks&&(v+=7*this.$d.weeks);var W=K(v,"D"),S=K(this.$d.hours,"H"),T=K(this.$d.minutes,"M"),R=this.$d.seconds||0;this.$d.milliseconds&&(R+=this.$d.milliseconds/1000,R=Math.round(1000*R)/1000);var Y=K(R,"S"),a=q.negative||x.negative||W.negative||S.negative||T.negative||Y.negative,I=S.format||T.format||Y.format?"T":"",O=(a?"-":"")+"P"+q.format+x.format+W.format+I+S.format+T.format+Y.format;return O==="P"||O==="-P"?"P0D":O},H.toJSON=function(){return this.toISOString()},H.format=function(q){var x=q||"YYYY-MM-DDTHH:mm:ss",v={Y:this.$d.years,YY:B.s(this.$d.years,2,"0"),YYYY:B.s(this.$d.years,4,"0"),M:this.$d.months,MM:B.s(this.$d.months,2,"0"),D:this.$d.days,DD:B.s(this.$d.days,2,"0"),H:this.$d.hours,HH:B.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:B.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:B.s(this.$d.seconds,2,"0"),SSS:B.s(this.$d.milliseconds,3,"0")};return x.replace(k,function(W,S){return S||String(v[W])})},H.as=function(q){return this.$ms/f[M(q)]},H.get=function(q){var x=this.$ms,v=M(q);return v==="milliseconds"?x%=1000:x=v==="weeks"?J(x/f[v]):this.$d[v],x||0},H.add=function(q,x,v){var W;return W=x?q*f[M(x)]:l(q)?q.$ms:b(q,this).$ms,b(this.$ms+W*(v?-1:1),this)},H.subtract=function(q,x){return this.add(q,x,!0)},H.locale=function(q){var x=this.clone();return x.$l=q,x},H.clone=function(){return b(this.$ms,this)},H.humanize=function(q){return u().add(this.$ms,"ms").locale(this.$l).fromNow(!q)},H.valueOf=function(){return this.asMilliseconds()},H.milliseconds=function(){return this.get("milliseconds")},H.asMilliseconds=function(){return this.as("milliseconds")},H.seconds=function(){return this.get("seconds")},H.asSeconds=function(){return this.as("seconds")},H.minutes=function(){return this.get("minutes")},H.asMinutes=function(){return this.as("minutes")},H.hours=function(){return this.get("hours")},H.asHours=function(){return this.as("hours")},H.days=function(){return this.get("days")},H.asDays=function(){return this.as("days")},H.weeks=function(){return this.get("weeks")},H.asWeeks=function(){return this.as("weeks")},H.months=function(){return this.get("months")},H.asMonths=function(){return this.as("months")},H.years=function(){return this.get("years")},H.asYears=function(){return this.as("years")},L}(),G=function(L,H,q){return L.add(H.years()*q,"y").add(H.months()*q,"M").add(H.days()*q,"d").add(H.hours()*q,"h").add(H.minutes()*q,"m").add(H.seconds()*q,"s").add(H.milliseconds()*q,"ms")};return function(L,H,q){u=q,B=q().$utils(),q.duration=function(W,S){var T=q.locale();return b(W,{$l:T},S)},q.isDuration=l;var x=H.prototype.add,v=H.prototype.subtract;H.prototype.add=function(W,S){return l(W)?G(this,W,1):x.bind(this)(W,S)},H.prototype.subtract=function(W,S){return l(W)?G(this,W,-1):v.bind(this)(W,S)}}})});var S6u={};ju(S6u,{diagram:()=>aN4});function UD0(u,B,E){let A=!0;while(A)A=!1,E.forEach(function(C){let D="^\\s*"+C+"\\s*$",F=new RegExp(D);if(u[0].match(F))B[C]=!0,u.shift(1),A=!0})}var b6u,LE,M6u,Z6u,J6u,mL,v6u,pC0,nj4,k6u,zU="",tC0="",eC0=void 0,uD0="",$L,yL,BD0,ED0,Hc,cL="",AD0="",w6u,CD0,hL="",vR=!1,DD0=!1,FD0="sunday",Lc="saturday",dC0=0,pj4,dj4,sj4,oj4,tj4,ej4,uN4,BN4,EN4,AN4,CN4,DN4,FN4,UN4,zN4,kN4,K6u,fN4,lN4,bN4,MN4,ZN4,JN4,wN4,KN4,Q6u,QN4,GN4,HN4,G6u,LN4,sC0,H6u,L6u,Qc=0,rL,qN4,XN4,oC0,Gc,A5,q6u,xN4,Nw,vN4,f6u,SN4,X6u,WN4,x6u,YN4,RN4,TN4,ON4,l6u,IN4,Sk,nC0=1e4,PN4,jN4,NN4,iN4,aN4;var W6u=g(()=>{t3();s4();o4();Y4();i3();b6u=Eu(wG(),1),LE=Eu(OP(),1),M6u=Eu(D6u(),1),Z6u=Eu(F6u(),1),J6u=Eu(U6u(),1),mL=Eu(OP(),1),v6u=Eu(z6u(),1),pC0=function(){var u=X(function(Y,a,I,O){for(I=I||{},O=Y.length;O--;I[Y[O]]=a);return I},"o"),B=[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],E=[1,26],A=[1,27],C=[1,28],D=[1,29],F=[1,30],U=[1,31],z=[1,32],k=[1,33],f=[1,34],l=[1,9],b=[1,10],M=[1,11],Z=[1,12],J=[1,13],w=[1,14],K=[1,15],Q=[1,16],G=[1,19],L=[1,20],H=[1,21],q=[1,22],x=[1,23],v=[1,25],W=[1,35],S={trace:X(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:X(function(a,I,O,i,N,V,h){var r=V.length-1;switch(N){case 1:return V[r-1];case 2:this.$=[];break;case 3:V[r-1].push(V[r]),this.$=V[r-1];break;case 4:case 5:this.$=V[r];break;case 6:case 7:this.$=[];break;case 8:i.setWeekday("monday");break;case 9:i.setWeekday("tuesday");break;case 10:i.setWeekday("wednesday");break;case 11:i.setWeekday("thursday");break;case 12:i.setWeekday("friday");break;case 13:i.setWeekday("saturday");break;case 14:i.setWeekday("sunday");break;case 15:i.setWeekend("friday");break;case 16:i.setWeekend("saturday");break;case 17:i.setDateFormat(V[r].substr(11)),this.$=V[r].substr(11);break;case 18:i.enableInclusiveEndDates(),this.$=V[r].substr(18);break;case 19:i.TopAxis(),this.$=V[r].substr(8);break;case 20:i.setAxisFormat(V[r].substr(11)),this.$=V[r].substr(11);break;case 21:i.setTickInterval(V[r].substr(13)),this.$=V[r].substr(13);break;case 22:i.setExcludes(V[r].substr(9)),this.$=V[r].substr(9);break;case 23:i.setIncludes(V[r].substr(9)),this.$=V[r].substr(9);break;case 24:i.setTodayMarker(V[r].substr(12)),this.$=V[r].substr(12);break;case 27:i.setDiagramTitle(V[r].substr(6)),this.$=V[r].substr(6);break;case 28:this.$=V[r].trim(),i.setAccTitle(this.$);break;case 29:case 30:this.$=V[r].trim(),i.setAccDescription(this.$);break;case 31:i.addSection(V[r].substr(8)),this.$=V[r].substr(8);break;case 33:i.addTask(V[r-1],V[r]),this.$="task";break;case 34:this.$=V[r-1],i.setClickEvent(V[r-1],V[r],null);break;case 35:this.$=V[r-2],i.setClickEvent(V[r-2],V[r-1],V[r]);break;case 36:this.$=V[r-2],i.setClickEvent(V[r-2],V[r-1],null),i.setLink(V[r-2],V[r]);break;case 37:this.$=V[r-3],i.setClickEvent(V[r-3],V[r-2],V[r-1]),i.setLink(V[r-3],V[r]);break;case 38:this.$=V[r-2],i.setClickEvent(V[r-2],V[r],null),i.setLink(V[r-2],V[r-1]);break;case 39:this.$=V[r-3],i.setClickEvent(V[r-3],V[r-1],V[r]),i.setLink(V[r-3],V[r-2]);break;case 40:this.$=V[r-1],i.setLink(V[r-1],V[r]);break;case 41:case 47:this.$=V[r-1]+" "+V[r];break;case 42:case 43:case 45:this.$=V[r-2]+" "+V[r-1]+" "+V[r];break;case 44:case 46:this.$=V[r-3]+" "+V[r-2]+" "+V[r-1]+" "+V[r];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},u(B,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:E,13:A,14:C,15:D,16:F,17:U,18:z,19:18,20:k,21:f,22:l,23:b,24:M,25:Z,26:J,27:w,28:K,29:Q,30:G,31:L,33:H,35:q,36:x,37:24,38:v,40:W},u(B,[2,7],{1:[2,1]}),u(B,[2,3]),{9:36,11:17,12:E,13:A,14:C,15:D,16:F,17:U,18:z,19:18,20:k,21:f,22:l,23:b,24:M,25:Z,26:J,27:w,28:K,29:Q,30:G,31:L,33:H,35:q,36:x,37:24,38:v,40:W},u(B,[2,5]),u(B,[2,6]),u(B,[2,17]),u(B,[2,18]),u(B,[2,19]),u(B,[2,20]),u(B,[2,21]),u(B,[2,22]),u(B,[2,23]),u(B,[2,24]),u(B,[2,25]),u(B,[2,26]),u(B,[2,27]),{32:[1,37]},{34:[1,38]},u(B,[2,30]),u(B,[2,31]),u(B,[2,32]),{39:[1,39]},u(B,[2,8]),u(B,[2,9]),u(B,[2,10]),u(B,[2,11]),u(B,[2,12]),u(B,[2,13]),u(B,[2,14]),u(B,[2,15]),u(B,[2,16]),{41:[1,40],43:[1,41]},u(B,[2,4]),u(B,[2,28]),u(B,[2,29]),u(B,[2,33]),u(B,[2,34],{42:[1,42],43:[1,43]}),u(B,[2,40],{41:[1,44]}),u(B,[2,35],{43:[1,45]}),u(B,[2,36]),u(B,[2,38],{42:[1,46]}),u(B,[2,37]),u(B,[2,39])],defaultActions:{},parseError:X(function(a,I){if(I.recoverable)this.trace(a);else{var O=Error(a);throw O.hash=I,O}},"parseError"),parse:X(function(a){var I=this,O=[0],i=[],N=[null],V=[],h=this.table,r="",m=0,$=0,y=0,p=2,e=1,_=V.slice.call(arguments,1),b0=Object.create(this.lexer),B0={yy:{}};for(var k0 in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,k0))B0.yy[k0]=this.yy[k0];if(b0.setInput(a,B0.yy),B0.yy.lexer=b0,B0.yy.parser=this,typeof b0.yylloc>"u")b0.yylloc={};var f0=b0.yylloc;V.push(f0);var D0=b0.options&&b0.options.ranges;if(typeof B0.yy.parseError==="function")this.parseError=B0.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function P0(Y0){O.length=O.length-2*Y0,N.length=N.length-Y0,V.length=V.length-Y0}X(P0,"popStack");function q0(){var Y0=i.pop()||b0.lex()||e;if(typeof Y0!=="number"){if(Y0 instanceof Array)i=Y0,Y0=i.pop();Y0=I.symbols_[Y0]||Y0}return Y0}X(q0,"lex");var m0,a0,_0,w0,v0,T0,Z0={},F0,u0,M0,X0;while(!0){if(_0=O[O.length-1],this.defaultActions[_0])w0=this.defaultActions[_0];else{if(m0===null||typeof m0>"u")m0=q0();w0=h[_0]&&h[_0][m0]}if(typeof w0>"u"||!w0.length||!w0[0]){var S0="";X0=[];for(F0 in h[_0])if(this.terminals_[F0]&&F0>p)X0.push("'"+this.terminals_[F0]+"'");if(b0.showPosition)S0="Parse error on line "+(m+1)+`:
`+b0.showPosition()+`
Expecting `+X0.join(", ")+", got '"+(this.terminals_[m0]||m0)+"'";else S0="Parse error on line "+(m+1)+": Unexpected "+(m0==e?"end of input":"'"+(this.terminals_[m0]||m0)+"'");this.parseError(S0,{text:b0.match,token:this.terminals_[m0]||m0,line:b0.yylineno,loc:f0,expected:X0})}if(w0[0]instanceof Array&&w0.length>1)throw Error("Parse Error: multiple actions possible at state: "+_0+", token: "+m0);switch(w0[0]){case 1:if(O.push(m0),N.push(b0.yytext),V.push(b0.yylloc),O.push(w0[1]),m0=null,!a0){if($=b0.yyleng,r=b0.yytext,m=b0.yylineno,f0=b0.yylloc,y>0)y--}else m0=a0,a0=null;break;case 2:if(u0=this.productions_[w0[1]][1],Z0.$=N[N.length-u0],Z0._$={first_line:V[V.length-(u0||1)].first_line,last_line:V[V.length-1].last_line,first_column:V[V.length-(u0||1)].first_column,last_column:V[V.length-1].last_column},D0)Z0._$.range=[V[V.length-(u0||1)].range[0],V[V.length-1].range[1]];if(T0=this.performAction.apply(Z0,[r,$,m,B0.yy,w0[1],N,V].concat(_)),typeof T0<"u")return T0;if(u0)O=O.slice(0,-1*u0*2),N=N.slice(0,-1*u0),V=V.slice(0,-1*u0);O.push(this.productions_[w0[1]][0]),N.push(Z0.$),V.push(Z0._$),M0=h[O[O.length-2]][O[O.length-1]],O.push(M0);break;case 3:return!0}}return!0},"parse")},T=function(){var Y={EOF:1,parseError:X(function(I,O){if(this.yy.parser)this.yy.parser.parseError(I,O);else throw Error(I)},"parseError"),setInput:X(function(a,I){if(this.yy=I||this.yy||{},this._input=a,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:X(function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var I=a.match(/(?:\r\n?|\n).*/g);if(I)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),a},"input"),unput:X(function(a){var I=a.length,O=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-I),this.offset-=I;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),O.length-1)this.yylineno-=O.length-1;var N=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:O?(O.length===i.length?this.yylloc.first_column:0)+i[i.length-O.length].length-O[0].length:this.yylloc.first_column-I},this.options.ranges)this.yylloc.range=[N[0],N[0]+this.yyleng-I];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(a){this.unput(this.match.slice(a))},"less"),pastInput:X(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var a=this.match;if(a.length<20)a+=this._input.substr(0,20-a.length);return(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var a=this.pastInput(),I=Array(a.length+1).join("-");return a+this.upcomingInput()+`
`+I+"^"},"showPosition"),test_match:X(function(a,I){var O,i,N;if(this.options.backtrack_lexer){if(N={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)N.yylloc.range=this.yylloc.range.slice(0)}if(i=a[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+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],O=this.performAction.call(this,this.yy,this,I,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(O)return O;else if(this._backtrack){for(var V in N)this[V]=N[V];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var a,I,O,i;if(!this._more)this.yytext="",this.match="";var N=this._currentRules();for(var V=0;V<N.length;V++)if(O=this._input.match(this.rules[N[V]]),O&&(!I||O[0].length>I[0].length)){if(I=O,i=V,this.options.backtrack_lexer)if(a=this.test_match(O,N[V]),a!==!1)return a;else if(this._backtrack){I=!1;continue}else return!1;else if(!this.options.flex)break}if(I){if(a=this.test_match(I,N[i]),a!==!1)return a;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:X(function(){var I=this.next();if(I)return I;else return this.lex()},"lex"),begin:X(function(I){this.conditionStack.push(I)},"begin"),popState:X(function(){var I=this.conditionStack.length-1;if(I>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(I){if(I=this.conditionStack.length-1-Math.abs(I||0),I>=0)return this.conditionStack[I];else return"INITIAL"},"topState"),pushState:X(function(I){this.begin(I)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(I,O,i,N){var V=N;switch(i){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 Y}();S.lexer=T;function R(){this.yy={}}return X(R,"Parser"),R.prototype=S,S.Parser=R,new R}();pC0.parser=pC0;nj4=pC0;LE.default.extend(M6u.default);LE.default.extend(Z6u.default);LE.default.extend(J6u.default);k6u={friday:5,saturday:6},$L=[],yL=[],BD0=new Map,ED0=[],Hc=[],w6u=["active","done","crit","milestone","vert"],CD0=[],pj4=X(function(){ED0=[],Hc=[],cL="",CD0=[],Qc=0,oC0=void 0,Gc=void 0,A5=[],zU="",tC0="",AD0="",eC0=void 0,uD0="",$L=[],yL=[],vR=!1,DD0=!1,dC0=0,BD0=new Map,hL="",D3(),FD0="sunday",Lc="saturday"},"clear"),dj4=X(function(u){hL=u},"setDiagramId"),sj4=X(function(u){tC0=u},"setAxisFormat"),oj4=X(function(){return tC0},"getAxisFormat"),tj4=X(function(u){eC0=u},"setTickInterval"),ej4=X(function(){return eC0},"getTickInterval"),uN4=X(function(u){uD0=u},"setTodayMarker"),BN4=X(function(){return uD0},"getTodayMarker"),EN4=X(function(u){zU=u},"setDateFormat"),AN4=X(function(){vR=!0},"enableInclusiveEndDates"),CN4=X(function(){return vR},"endDatesAreInclusive"),DN4=X(function(){DD0=!0},"enableTopAxis"),FN4=X(function(){return DD0},"topAxisEnabled"),UN4=X(function(u){AD0=u},"setDisplayMode"),zN4=X(function(){return AD0},"getDisplayMode"),kN4=X(function(){return zU},"getDateFormat"),K6u=X((u,B)=>{let E=B.toLowerCase().split(/[\s,]+/).filter((A)=>A!=="");return[...new Set([...u,...E])]},"mergeTokens"),fN4=X(function(u){$L=K6u($L,u)},"setIncludes"),lN4=X(function(){return $L},"getIncludes"),bN4=X(function(u){yL=K6u(yL,u)},"setExcludes"),MN4=X(function(){return yL},"getExcludes"),ZN4=X(function(){return BD0},"getLinks"),JN4=X(function(u){cL=u,ED0.push(u)},"addSection"),wN4=X(function(){return ED0},"getSections"),KN4=X(function(){let u=f6u(),B=10,E=0;while(!u&&E<B)u=f6u(),E++;return Hc=A5,Hc},"getTasks"),Q6u=X(function(u,B,E,A){let C=u.format(B.trim()),D=u.format("YYYY-MM-DD");if(A.includes(C)||A.includes(D))return!1;if(E.includes("weekends")&&(u.isoWeekday()===k6u[Lc]||u.isoWeekday()===k6u[Lc]+1))return!0;if(E.includes(u.format("dddd").toLowerCase()))return!0;return E.includes(C)||E.includes(D)},"isInvalidDate"),QN4=X(function(u){FD0=u},"setWeekday"),GN4=X(function(){return FD0},"getWeekday"),HN4=X(function(u){Lc=u},"setWeekend"),G6u=X(function(u,B,E,A){if(!E.length||u.manualEndTime)return;let C;if(u.startTime instanceof Date)C=LE.default(u.startTime);else C=LE.default(u.startTime,B,!0);C=C.add(1,"d");let D;if(u.endTime instanceof Date)D=LE.default(u.endTime);else D=LE.default(u.endTime,B,!0);let[F,U]=LN4(C,D,B,E,A);u.endTime=F.toDate(),u.renderEndTime=U},"checkTaskDates"),LN4=X(function(u,B,E,A,C){let D=!1,F=null,U=B.add(1e4,"d");while(u<=B){if(!D)F=B.toDate();if(D=Q6u(u,E,A,C),D){if(B=B.add(1,"d"),B>U)throw Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.")}u=u.add(1,"d")}return[B,F]},"fixTaskDates"),sC0=X(function(u,B,E){if(E=E.trim(),X((U)=>{let z=U.trim();return z==="x"||z==="X"},"isTimestampFormat")(B)&&/^\d+$/.test(E))return new Date(Number(E));let D=/^after\s+(?<ids>[\d\w- ]+)/.exec(E);if(D!==null){let U=null;for(let k of D.groups.ids.split(" ")){let f=Nw(k);if(f!==void 0&&(!U||f.endTime>U.endTime))U=f}if(U)return U.endTime;let z=new Date;return z.setHours(0,0,0,0),z}let F=LE.default(E,B.trim(),!0);if(F.isValid())return F.toDate();else{z0.debug("Invalid date:"+E),z0.debug("With date format:"+B.trim());let U=new Date(E);if(U===void 0||isNaN(U.getTime())||U.getFullYear()<-1e4||U.getFullYear()>1e4)throw Error("Invalid date:"+E);return U}},"getStartDate"),H6u=X(function(u){let B=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(u.trim());if(B!==null)return[Number.parseFloat(B[1]),B[2]];return[NaN,"ms"]},"parseDuration"),L6u=X(function(u,B,E,A=!1){E=E.trim();let D=/^until\s+(?<ids>[\d\w- ]+)/.exec(E);if(D!==null){let f=null;for(let b of D.groups.ids.split(" ")){let M=Nw(b);if(M!==void 0&&(!f||M.startTime<f.startTime))f=M}if(f)return f.startTime;let l=new Date;return l.setHours(0,0,0,0),l}let F=LE.default(E,B.trim(),!0);if(F.isValid()){if(A)F=F.add(1,"d");return F.toDate()}let U=LE.default(u),[z,k]=H6u(E);if(!Number.isNaN(z)){let f=U.add(z,k);if(f.isValid())U=f}return U.toDate()},"getEndDate"),rL=X(function(u){if(u===void 0)return Qc=Qc+1,"task"+Qc;return u},"parseId"),qN4=X(function(u,B){let E;if(B.substr(0,1)===":")E=B.substr(1,B.length);else E=B;let A=E.split(","),C={};UD0(A,C,w6u);for(let F=0;F<A.length;F++)A[F]=A[F].trim();let D="";switch(A.length){case 1:C.id=rL(),C.startTime=u.endTime,D=A[0];break;case 2:C.id=rL(),C.startTime=sC0(void 0,zU,A[0]),D=A[1];break;case 3:C.id=rL(A[0]),C.startTime=sC0(void 0,zU,A[1]),D=A[2];break;default:}if(D)C.endTime=L6u(C.startTime,zU,D,vR),C.manualEndTime=LE.default(D,"YYYY-MM-DD",!0).isValid(),G6u(C,zU,yL,$L);return C},"compileData"),XN4=X(function(u,B){let E;if(B.substr(0,1)===":")E=B.substr(1,B.length);else E=B;let A=E.split(","),C={};UD0(A,C,w6u);for(let D=0;D<A.length;D++)A[D]=A[D].trim();switch(A.length){case 1:C.id=rL(),C.startTime={type:"prevTaskEnd",id:u},C.endTime={data:A[0]};break;case 2:C.id=rL(),C.startTime={type:"getStartDate",startData:A[0]},C.endTime={data:A[1]};break;case 3:C.id=rL(A[0]),C.startTime={type:"getStartDate",startData:A[1]},C.endTime={data:A[2]};break;default:}return C},"parseData"),A5=[],q6u={},xN4=X(function(u,B){let E={section:cL,type:cL,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:B},task:u,classes:[]},A=XN4(Gc,B);if(E.raw.startTime=A.startTime,E.raw.endTime=A.endTime,E.id=A.id,E.prevTaskId=Gc,E.active=A.active,E.done=A.done,E.crit=A.crit,E.milestone=A.milestone,E.vert=A.vert,E.vert)E.order=-1;else E.order=dC0,dC0++;let C=A5.push(E);Gc=E.id,q6u[E.id]=C-1},"addTask"),Nw=X(function(u){let B=q6u[u];return A5[B]},"findTaskById"),vN4=X(function(u,B){let E={section:cL,type:cL,description:u,task:u,classes:[]},A=qN4(oC0,B);E.startTime=A.startTime,E.endTime=A.endTime,E.id=A.id,E.active=A.active,E.done=A.done,E.crit=A.crit,E.milestone=A.milestone,E.vert=A.vert,oC0=E,Hc.push(E)},"addTaskOrg"),f6u=X(function(){let u=X(function(E){let A=A5[E],C="";switch(A5[E].raw.startTime.type){case"prevTaskEnd":{let D=Nw(A.prevTaskId);A.startTime=D.endTime;break}case"getStartDate":if(C=sC0(void 0,zU,A5[E].raw.startTime.startData),C)A5[E].startTime=C;break}if(A5[E].startTime){if(A5[E].endTime=L6u(A5[E].startTime,zU,A5[E].raw.endTime.data,vR),A5[E].endTime)A5[E].processed=!0,A5[E].manualEndTime=LE.default(A5[E].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),G6u(A5[E],zU,yL,$L)}return A5[E].processed},"compileTask"),B=!0;for(let[E,A]of A5.entries())u(E),B=B&&A.processed;return B},"compileTasks"),SN4=X(function(u,B){let E=B;if($0().securityLevel!=="loose")E=b6u.sanitizeUrl(B);u.split(",").forEach(function(A){if(Nw(A)!==void 0)x6u(A,()=>{window.open(E,"_self")}),BD0.set(A,E)}),X6u(u,"clickable")},"setLink"),X6u=X(function(u,B){u.split(",").forEach(function(E){let A=Nw(E);if(A!==void 0)A.classes.push(B)})},"setClass"),WN4=X(function(u,B,E){if($0().securityLevel!=="loose")return;if(B===void 0)return;let A=[];if(typeof E==="string"){A=E.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let D=0;D<A.length;D++){let F=A[D].trim();if(F.startsWith('"')&&F.endsWith('"'))F=F.substr(1,F.length-2);A[D]=F}}if(A.length===0)A.push(u);if(Nw(u)!==void 0)x6u(u,()=>{R4.runFunc(B,...A)})},"setClickFun"),x6u=X(function(u,B){CD0.push(function(){let E=hL?`${hL}-${u}`:u,A=document.querySelector(`[id="${E}"]`);if(A!==null)A.addEventListener("click",function(){B()})},function(){let E=hL?`${hL}-${u}`:u,A=document.querySelector(`[id="${E}-text"]`);if(A!==null)A.addEventListener("click",function(){B()})})},"pushFun"),YN4=X(function(u,B,E){u.split(",").forEach(function(A){WN4(A,B,E)}),X6u(u,"clickable")},"setClickEvent"),RN4=X(function(u){CD0.forEach(function(B){B(u)})},"bindFunctions"),TN4={getConfig:X(()=>$0().gantt,"getConfig"),clear:pj4,setDateFormat:EN4,getDateFormat:kN4,enableInclusiveEndDates:AN4,endDatesAreInclusive:CN4,enableTopAxis:DN4,topAxisEnabled:FN4,setAxisFormat:sj4,getAxisFormat:oj4,setTickInterval:tj4,getTickInterval:ej4,setTodayMarker:uN4,getTodayMarker:BN4,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,setDiagramId:dj4,setDisplayMode:UN4,getDisplayMode:zN4,setAccDescription:L3,getAccDescription:q3,addSection:JN4,getSections:wN4,getTasks:KN4,addTask:xN4,findTaskById:Nw,addTaskOrg:vN4,setIncludes:fN4,getIncludes:lN4,setExcludes:bN4,getExcludes:MN4,setClickEvent:YN4,setLink:SN4,getLinks:ZN4,bindFunctions:RN4,parseDuration:H6u,isInvalidDate:Q6u,setWeekday:QN4,getWeekday:GN4,setWeekend:HN4};X(UD0,"getTaskTags");mL.default.extend(v6u.default);ON4=X(function(){z0.debug("Something is calling, setConf, remove the call")},"setConf"),l6u={monday:Vf,tuesday:GN,wednesday:HN,thursday:JF,friday:LN,saturday:qN,sunday:bC},IN4=X((u,B)=>{let E=[...u].map(()=>-1/0),A=[...u].sort((D,F)=>D.startTime-F.startTime||D.order-F.order),C=0;for(let D of A)for(let F=0;F<E.length;F++)if(D.startTime>=E[F]){if(E[F]=D.endTime,D.order=F+B,F>C)C=F;break}return C},"getMaxIntersections"),PN4=X(function(u,B,E,A){let C=$0().gantt;A.db.setDiagramId(B);let D=$0().securityLevel,F;if(D==="sandbox")F=Ku("#i"+B);let U=D==="sandbox"?Ku(F.nodes()[0].contentDocument.body):Ku("body"),z=D==="sandbox"?F.nodes()[0].contentDocument:document,k=z.getElementById(B);if(Sk=k.parentElement.offsetWidth,Sk===void 0)Sk=1200;if(C.useWidth!==void 0)Sk=C.useWidth;let f=A.db.getTasks(),l=f.filter((S)=>!S.vert),b=[];for(let S of l)b.push(S.type);b=W(b);let M={},Z=2*C.topPadding;if(A.db.getDisplayMode()==="compact"||C.displayMode==="compact"){let S={};for(let R of l)if(S[R.section]===void 0)S[R.section]=[R];else S[R.section].push(R);let T=0;for(let R of Object.keys(S)){let Y=IN4(S[R],T)+1;T+=Y,Z+=Y*(C.barHeight+C.barGap),M[R]=Y}}else{Z+=l.length*(C.barHeight+C.barGap);for(let S of b)M[S]=l.filter((T)=>T.type===S).length}k.setAttribute("viewBox","0 0 "+Sk+" "+Z);let J=U.select(`[id="${B}"]`),w=vN().domain([Tj(f,function(S){return S.startTime}),Rj(f,function(S){return S.endTime})]).rangeRound([0,Sk-C.leftPadding-C.rightPadding]);function K(S,T){let R=S.startTime,Y=T.startTime,a=0;if(R>Y)a=1;else if(R<Y)a=-1;return a}X(K,"taskCompare"),f.sort(K),Q(f,Sk,Z),y3(J,Z,Sk,C.useMaxWidth),J.append("text").text(A.db.getDiagramTitle()).attr("x",Sk/2).attr("y",C.titleTopMargin).attr("class","titleText");function Q(S,T,R){let Y=C.barHeight,a=Y+C.barGap,I=C.topPadding,O=C.leftPadding,i=lC().domain([0,b.length]).range(["#00B9FA","#F95002"]).interpolate(ee);L(a,I,O,T,R,S,A.db.getExcludes(),A.db.getIncludes()),q(O,I,T,R),G(S,a,I,O,Y,i,T,R),x(a,I,O,Y,i),v(O,I,T,R)}X(Q,"makeGantt");function G(S,T,R,Y,a,I,O){S.sort(($,y)=>$.vert===y.vert?0:$.vert?1:-1);let i=S.filter(($)=>!$.vert),V=[...new Set(i.map(($)=>$.order))].map(($)=>i.find((y)=>y.order===$));J.append("g").selectAll("rect").data(V).enter().append("rect").attr("x",0).attr("y",function($,y){return y=$.order,y*T+R-2}).attr("width",function(){return O-C.rightPadding/2}).attr("height",T).attr("class",function($){for(let[y,p]of b.entries())if($.type===p)return"section section"+y%C.numberSectionStyles;return"section section0"}).enter();let h=J.append("g").selectAll("rect").data(S).enter(),r=A.db.getLinks();if(h.append("rect").attr("id",function($){return B+"-"+$.id}).attr("rx",3).attr("ry",3).attr("x",function($){if($.milestone)return w($.startTime)+Y+0.5*(w($.endTime)-w($.startTime))-0.5*a;return w($.startTime)+Y}).attr("y",function($,y){if(y=$.order,$.vert)return C.gridLineStartPadding;return y*T+R}).attr("width",function($){if($.milestone)return a;if($.vert)return 0.08*a;return w($.renderEndTime||$.endTime)-w($.startTime)}).attr("height",function($){if($.vert)return i.length*(C.barHeight+C.barGap)+C.barHeight*2;return a}).attr("transform-origin",function($,y){return y=$.order,(w($.startTime)+Y+0.5*(w($.endTime)-w($.startTime))).toString()+"px "+(y*T+R+0.5*a).toString()+"px"}).attr("class",function($){let p="";if($.classes.length>0)p=$.classes.join(" ");let e=0;for(let[b0,B0]of b.entries())if($.type===B0)e=b0%C.numberSectionStyles;let _="";if($.active)if($.crit)_+=" activeCrit";else _=" active";else if($.done)if($.crit)_=" doneCrit";else _=" done";else if($.crit)_+=" crit";if(_.length===0)_=" task";if($.milestone)_=" milestone "+_;if($.vert)_=" vert "+_;return _+=e,_+=" "+p,"task"+_}),h.append("text").attr("id",function($){return B+"-"+$.id+"-text"}).text(function($){return $.task}).attr("font-size",C.fontSize).attr("x",function($){let y=w($.startTime),p=w($.renderEndTime||$.endTime);if($.milestone)y+=0.5*(w($.endTime)-w($.startTime))-0.5*a,p=y+a;if($.vert)return w($.startTime)+Y;let e=this.getBBox().width;if(e>p-y)if(p+e+1.5*C.leftPadding>O)return y+Y-5;else return p+Y+5;else return(p-y)/2+y+Y}).attr("y",function($,y){if($.vert)return C.gridLineStartPadding+i.length*(C.barHeight+C.barGap)+60;return y=$.order,y*T+C.barHeight/2+(C.fontSize/2-2)+R}).attr("text-height",a).attr("class",function($){let y=w($.startTime),p=w($.endTime);if($.milestone)p=y+a;let e=this.getBBox().width,_="";if($.classes.length>0)_=$.classes.join(" ");let b0=0;for(let[k0,f0]of b.entries())if($.type===f0)b0=k0%C.numberSectionStyles;let B0="";if($.active)if($.crit)B0="activeCritText"+b0;else B0="activeText"+b0;if($.done)if($.crit)B0=B0+" doneCritText"+b0;else B0=B0+" doneText"+b0;else if($.crit)B0=B0+" critText"+b0;if($.milestone)B0+=" milestoneText";if($.vert)B0+=" vertText";if(e>p-y)if(p+e+1.5*C.leftPadding>O)return _+" taskTextOutsideLeft taskTextOutside"+b0+" "+B0;else return _+" taskTextOutsideRight taskTextOutside"+b0+" "+B0+" width-"+e;else return _+" taskText taskText"+b0+" "+B0+" width-"+e}),$0().securityLevel==="sandbox"){let $;$=Ku("#i"+B);let y=$.nodes()[0].contentDocument;h.filter(function(p){return r.has(p.id)}).each(function(p){var e=y.querySelector("#"+CSS.escape(B+"-"+p.id)),_=y.querySelector("#"+CSS.escape(B+"-"+p.id+"-text"));let b0=e.parentNode;var B0=y.createElement("a");B0.setAttribute("xlink:href",r.get(p.id)),B0.setAttribute("target","_top"),b0.appendChild(B0),B0.appendChild(e),B0.appendChild(_)})}}X(G,"drawRects");function L(S,T,R,Y,a,I,O,i){if(O.length===0&&i.length===0)return;let N,V;for(let{startTime:p,endTime:e}of I){if(N===void 0||p<N)N=p;if(V===void 0||e>V)V=e}if(!N||!V)return;if(mL.default(V).diff(mL.default(N),"year")>5){z0.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=A.db.getDateFormat(),r=[],m=null,$=mL.default(N);while($.valueOf()<=V){if(A.db.isInvalidDate($,h,O,i))if(!m)m={start:$,end:$};else m.end=$;else if(m)r.push(m),m=null;$=$.add(1,"d")}J.append("g").selectAll("rect").data(r).enter().append("rect").attr("id",(p)=>B+"-exclude-"+p.start.format("YYYY-MM-DD")).attr("x",(p)=>w(p.start.startOf("day"))+R).attr("y",C.gridLineStartPadding).attr("width",(p)=>w(p.end.endOf("day"))-w(p.start.startOf("day"))).attr("height",a-T-C.gridLineStartPadding).attr("transform-origin",function(p,e){return(w(p.start)+R+0.5*(w(p.end)-w(p.start))).toString()+"px "+(e*S+0.5*a).toString()+"px"}).attr("class","exclude-range")}X(L,"drawExcludeDays");function H(S,T,R,Y){if(R<=0||S>T)return 1/0;let a=T-S,I=mL.default.duration({[Y??"day"]:R}).asMilliseconds();if(I<=0)return 1/0;return Math.ceil(a/I)}X(H,"getEstimatedTickCount");function q(S,T,R,Y){let a=A.db.getDateFormat(),I=A.db.getAxisFormat(),O;if(I)O=I;else if(a==="D")O="%d";else O=C.axisFormat??"%Y-%m-%d";let i=mt(w).tickSize(-Y+T+C.gridLineStartPadding).tickFormat(jZ(O)),V=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(A.db.getTickInterval()||C.tickInterval);if(V!==null){let h=parseInt(V[1],10);if(isNaN(h)||h<=0)z0.warn(`Invalid tick interval value: "${V[1]}". Skipping custom tick interval.`);else{let r=V[2],m=A.db.getWeekday()||C.weekday,$=w.domain(),y=$[0],p=$[1],e=H(y,p,h,r);if(e>nC0)z0.warn(`The tick interval "${h}${r}" would generate ${e} ticks, which exceeds the maximum allowed (${nC0}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(r){case"millisecond":i.ticks(MF.every(h));break;case"second":i.ticks(uE.every(h));break;case"minute":i.ticks(xz.every(h));break;case"hour":i.ticks(vz.every(h));break;case"day":i.ticks(pE.every(h));break;case"week":i.ticks(l6u[m].every(h));break;case"month":i.ticks(Sz.every(h));break}}}if(J.append("g").attr("class","grid").attr("transform","translate("+S+", "+(Y-50)+")").call(i).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),A.db.topAxisEnabled()||C.topAxis){let h=ht(w).tickSize(-Y+T+C.gridLineStartPadding).tickFormat(jZ(O));if(V!==null){let r=parseInt(V[1],10);if(isNaN(r)||r<=0)z0.warn(`Invalid tick interval value: "${V[1]}". Skipping custom tick interval.`);else{let m=V[2],$=A.db.getWeekday()||C.weekday,y=w.domain(),p=y[0],e=y[1];if(H(p,e,r,m)<=nC0)switch(m){case"millisecond":h.ticks(MF.every(r));break;case"second":h.ticks(uE.every(r));break;case"minute":h.ticks(xz.every(r));break;case"hour":h.ticks(vz.every(r));break;case"day":h.ticks(pE.every(r));break;case"week":h.ticks(l6u[$].every(r));break;case"month":h.ticks(Sz.every(r));break}}}J.append("g").attr("class","grid").attr("transform","translate("+S+", "+T+")").call(h).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}X(q,"makeGrid");function x(S,T){let R=0,Y=Object.keys(M).map((a)=>[a,M[a]]);J.append("g").selectAll("text").data(Y).enter().append(function(a){let I=a[0].split(yu.lineBreakRegex),O=-(I.length-1)/2,i=z.createElementNS("http://www.w3.org/2000/svg","text");i.setAttribute("dy",O+"em");for(let[N,V]of I.entries()){let h=z.createElementNS("http://www.w3.org/2000/svg","tspan");if(h.setAttribute("alignment-baseline","central"),h.setAttribute("x","10"),N>0)h.setAttribute("dy","1em");h.textContent=V,i.appendChild(h)}return i}).attr("x",10).attr("y",function(a,I){if(I>0)for(let O=0;O<I;O++)return R+=Y[I-1][1],a[1]*S/2+R*S+T;else return a[1]*S/2+T}).attr("font-size",C.sectionFontSize).attr("class",function(a){for(let[I,O]of b.entries())if(a[0]===O)return"sectionTitle sectionTitle"+I%C.numberSectionStyles;return"sectionTitle"})}X(x,"vertLabels");function v(S,T,R,Y){let a=A.db.getTodayMarker();if(a==="off")return;let I=J.append("g").attr("class","today"),O=new Date,i=I.append("line");if(i.attr("x1",w(O)+S).attr("x2",w(O)+S).attr("y1",C.titleTopMargin).attr("y2",Y-C.titleTopMargin).attr("class","today"),a!=="")i.attr("style",a.replace(/,/g,";"))}X(v,"drawToday");function W(S){let T={},R=[];for(let Y=0,a=S.length;Y<a;++Y)if(!Object.prototype.hasOwnProperty.call(T,S[Y]))T[S[Y]]=!0,R.push(S[Y]);return R}X(W,"checkUnique")},"draw"),jN4={setConf:ON4,draw:PN4},NN4=X((u)=>`
.mermaid-main-font {
font-family: ${u.fontFamily};
}
.exclude-range {
fill: ${u.excludeBkgColor};
}
.section {
stroke: none;
opacity: 0.2;
}
.section0 {
fill: ${u.sectionBkgColor};
}
.section2 {
fill: ${u.sectionBkgColor2};
}
.section1,
.section3 {
fill: ${u.altSectionBkgColor};
opacity: 0.2;
}
.sectionTitle0 {
fill: ${u.titleColor};
}
.sectionTitle1 {
fill: ${u.titleColor};
}
.sectionTitle2 {
fill: ${u.titleColor};
}
.sectionTitle3 {
fill: ${u.titleColor};
}
.sectionTitle {
text-anchor: start;
font-family: ${u.fontFamily};
}
/* Grid and axis */
.grid .tick {
stroke: ${u.gridColor};
opacity: 0.8;
shape-rendering: crispEdges;
}
.grid .tick text {
font-family: ${u.fontFamily};
fill: ${u.textColor};
}
.grid path {
stroke-width: 0;
}
/* Today line */
.today {
fill: none;
stroke: ${u.todayLineColor};
stroke-width: 2px;
}
/* Task styling */
/* Default task */
.task {
stroke-width: 2;
}
.taskText {
text-anchor: middle;
font-family: ${u.fontFamily};
}
.taskTextOutsideRight {
fill: ${u.taskTextDarkColor};
text-anchor: start;
font-family: ${u.fontFamily};
}
.taskTextOutsideLeft {
fill: ${u.taskTextDarkColor};
text-anchor: end;
}
/* Special case clickable */
.task.clickable {
cursor: pointer;
}
.taskText.clickable {
cursor: pointer;
fill: ${u.taskTextClickableColor} !important;
font-weight: bold;
}
.taskTextOutsideLeft.clickable {
cursor: pointer;
fill: ${u.taskTextClickableColor} !important;
font-weight: bold;
}
.taskTextOutsideRight.clickable {
cursor: pointer;
fill: ${u.taskTextClickableColor} !important;
font-weight: bold;
}
/* Specific task settings for the sections*/
.taskText0,
.taskText1,
.taskText2,
.taskText3 {
fill: ${u.taskTextColor};
}
.task0,
.task1,
.task2,
.task3 {
fill: ${u.taskBkgColor};
stroke: ${u.taskBorderColor};
}
.taskTextOutside0,
.taskTextOutside2
{
fill: ${u.taskTextOutsideColor};
}
.taskTextOutside1,
.taskTextOutside3 {
fill: ${u.taskTextOutsideColor};
}
/* Active task */
.active0,
.active1,
.active2,
.active3 {
fill: ${u.activeTaskBkgColor};
stroke: ${u.activeTaskBorderColor};
}
.activeText0,
.activeText1,
.activeText2,
.activeText3 {
fill: ${u.taskTextDarkColor} !important;
}
/* Completed task */
.done0,
.done1,
.done2,
.done3 {
stroke: ${u.doneTaskBorderColor};
fill: ${u.doneTaskBkgColor};
stroke-width: 2;
}
.doneText0,
.doneText1,
.doneText2,
.doneText3 {
fill: ${u.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: ${u.taskTextOutsideColor} !important;
}
/* Tasks on the critical line */
.crit0,
.crit1,
.crit2,
.crit3 {
stroke: ${u.critBorderColor};
fill: ${u.critBkgColor};
stroke-width: 2;
}
.activeCrit0,
.activeCrit1,
.activeCrit2,
.activeCrit3 {
stroke: ${u.critBorderColor};
fill: ${u.activeTaskBkgColor};
stroke-width: 2;
}
.doneCrit0,
.doneCrit1,
.doneCrit2,
.doneCrit3 {
stroke: ${u.critBorderColor};
fill: ${u.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: ${u.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: ${u.taskTextOutsideColor} !important;
}
.vert {
stroke: ${u.vertLineColor};
}
.vertText {
font-size: 15px;
text-anchor: middle;
fill: ${u.vertLineColor} !important;
}
.activeCritText0,
.activeCritText1,
.activeCritText2,
.activeCritText3 {
fill: ${u.taskTextDarkColor} !important;
}
.titleText {
text-anchor: middle;
font-size: 18px;
fill: ${u.titleColor||u.textColor};
font-family: ${u.fontFamily};
}
`,"getStyles"),iN4=NN4,aN4={parser:nj4,db:TN4,renderer:jN4,styles:iN4}});var Y6u={};ju(Y6u,{diagram:()=>cN4});var VN4,hN4,mN4,rN4,$N4,yN4,cN4;var R6u=g(()=>{E2();s4();o4();Y4();l7();VN4={parse:X(async(u)=>{let B=await X9("info",u);z0.debug(B)},"parse")},hN4={version:"11.16.1"},mN4=X(()=>hN4.version,"getVersion"),rN4={getVersion:mN4},$N4=X((u,B,E)=>{z0.debug(`rendering info diagram
`+u);let A=N1(B);y3(A,100,400,!0),A.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${E}`)},"draw"),yN4={draw:$N4},cN4={parser:VN4,db:rN4,renderer:yN4}});var I6u={};ju(I6u,{diagram:()=>Di4});var T6u,zD0,qc,kD0,gN4,_N4,nN4,pN4,dN4,sN4,oN4,O6u,tN4,eN4,ui4,Bi4,Ei4,Ai4,Ci4,Di4;var P6u=g(()=>{LB();E2();t3();s4();o4();Y4();l7();i3();T6u=t4.pie,zD0={sections:new Map,showData:!1,config:T6u},qc=zD0.sections,kD0=zD0.showData,gN4=structuredClone(T6u),_N4=X(()=>structuredClone(gN4),"getConfig"),nN4=X(()=>{qc=new Map,kD0=zD0.showData,D3()},"clear"),pN4=X(({label:u,value:B})=>{if(B<0)throw Error(`"${u}" has invalid value: ${B}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);if(!qc.has(u))qc.set(u,B),z0.debug(`added new section: ${u}, with value: ${B}`)},"addSection"),dN4=X(()=>qc,"getSections"),sN4=X((u)=>{kD0=u},"setShowData"),oN4=X(()=>kD0,"getShowData"),O6u={getConfig:_N4,clear:nN4,setDiagramTitle:T3,getDiagramTitle:X3,setAccTitle:w3,getAccTitle:H3,setAccDescription:L3,getAccDescription:q3,addSection:pN4,getSections:dN4,setShowData:sN4,getShowData:oN4},tN4=X((u,B)=>{D6(u,B),B.setShowData(u.showData),u.sections.map(B.addSection)},"populateDb"),eN4={parse:X(async(u)=>{let B=await X9("pie",u);z0.debug(B),tN4(B,O6u)},"parse")},ui4=X((u)=>`
.pieCircle{
stroke: ${u.pieStrokeColor};
stroke-width : ${u.pieStrokeWidth};
opacity : ${u.pieOpacity};
}
.pieCircle.highlighted{
scale: 1.05;
opacity: 1;
}
.pieCircle.highlightedOnHover:hover{
transition-duration: 250ms;
scale: 1.05;
opacity: 1;
}
.pieOuterCircle{
stroke: ${u.pieOuterStrokeColor};
stroke-width: ${u.pieOuterStrokeWidth};
fill: none;
}
.pieTitleText {
text-anchor: middle;
font-size: ${u.pieTitleTextSize};
fill: ${u.pieTitleTextColor};
font-family: ${u.fontFamily};
}
.slice {
font-family: ${u.fontFamily};
fill: ${u.pieSectionTextColor};
font-size:${u.pieSectionTextSize};
// fill: white;
}
.legend text {
fill: ${u.pieLegendTextColor};
font-family: ${u.fontFamily};
font-size: ${u.pieLegendTextSize};
}
`,"getStyles"),Bi4=ui4,Ei4=X((u)=>{let B=[...u.values()].reduce((C,D)=>C+D,0),E=[...u.entries()].map(([C,D])=>({label:C,value:D})).filter((C)=>C.value/B*100>=1);return TN().value((C)=>C.value).sort(null)(E)},"createPieArcs"),Ai4=X((u,B,E,A)=>{z0.debug(`rendering pie chart
`+u);let C=A.db,D=$0(),F=B1(C.getConfig(),D.pie),U=40,z=18,k=4,f=450,l=f,b=N1(B),M=b.append("g");M.attr("transform","translate("+l/2+","+f/2+")");let{themeVariables:Z}=D,[J]=A8(Z.pieOuterStrokeWidth);J??=2;let{legendPosition:w,textPosition:K}=F,Q=F.donutHole>0&&F.donutHole<=0.9?F.donutHole:0,G=Math.min(l,f)/2-U,L=JC().innerRadius(Q*G).outerRadius(G),H=JC().innerRadius(G*K).outerRadius(G*K),q=M.append("g");q.append("circle").attr("cx",0).attr("cy",0).attr("r",G+J/2).attr("class","pieOuterCircle");let x=C.getSections(),v=Ei4(x),W=[Z.pie1,Z.pie2,Z.pie3,Z.pie4,Z.pie5,Z.pie6,Z.pie7,Z.pie8,Z.pie9,Z.pie10,Z.pie11,Z.pie12],S=0;x.forEach((_)=>{S+=_});let T=v.filter((_)=>(_.data.value/S*100).toFixed(0)!=="0"),R=e8(W).domain([...x.keys()]);q.selectAll("mySlices").data(T).enter().append("path").attr("d",L).attr("fill",(_)=>{return R(_.data.label)}).attr("class",(_)=>{let b0="pieCircle";if(F.highlightSlice==="hover")b0+=" highlightedOnHover";else if(F.highlightSlice===_.data.label)b0+=" highlighted";return b0}),q.selectAll("mySlices").data(T).enter().append("text").text((_)=>{return(_.data.value/S*100).toFixed(0)+"%"}).attr("transform",(_)=>{return"translate("+H.centroid(_)+")"}).style("text-anchor","middle").attr("class","slice");let Y=M.append("text").text(C.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText"),a=[...x.entries()].map(([_,b0])=>({label:_,value:b0})),I=M.selectAll(".legend").data(a).enter().append("g").attr("class","legend");I.append("rect").attr("width",z).attr("height",z).style("fill",(_)=>R(_.label)).style("stroke",(_)=>R(_.label)),I.append("text").attr("x",z+k).attr("y",z-k).text((_)=>{if(C.getShowData())return`${_.label} [${_.value}]`;return _.label});let O=Math.max(...I.selectAll("text").nodes().map((_)=>_?.getBoundingClientRect().width??0)),i=f,N=l+U,V=z+k,h=a.length*V;switch(w){case"center":I.attr("transform",(_,b0)=>{let B0=V*a.length/2,k0=-O/2-(z+k),f0=b0*V-B0;return"translate("+k0+","+f0+")"});break;case"top":i+=h,I.attr("transform",(_,b0)=>{let B0=G,k0=-O/2-(z+k),f0=b0*V-B0;return`translate(${k0}, ${f0})`}),q.attr("transform",()=>{return`translate(0, ${h+V})`});break;case"bottom":i+=h,I.attr("transform",(_,b0)=>{let B0=-G-V,k0=-O/2-(z+k),f0=b0*V-B0;return"translate("+k0+","+f0+")"});break;case"left":N+=z+k+O,I.attr("transform",(_,b0)=>{let B0=V*a.length/2,k0=-G-(z+k),f0=b0*V-B0;return"translate("+k0+","+f0+")"}),q.attr("transform",()=>{return`translate(${O+z+k}, 0)`});break;case"right":default:N+=z+k+O,I.attr("transform",(_,b0)=>{let B0=V*a.length/2,k0=12*z,f0=b0*V-B0;return"translate("+k0+","+f0+")"});break}let r=Y.node()?.getBoundingClientRect().width??0,m=l/2-r/2,$=l/2+r/2,y=Math.min(0,m),e=Math.max(N,$)-y;b.attr("viewBox",`${y} 0 ${e} ${i}`),y3(b,i,e,F.useMaxWidth)},"draw"),Ci4={draw:Ai4},Di4={parser:eN4,db:O6u,renderer:Ci4,styles:Bi4}});var d6u={};ju(d6u,{diagram:()=>bi4});function lD0(u){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(u)}function j6u(u){return!/^\d+$/.test(u)}function N6u(u){return!/^\d+px$/.test(u)}function kU(u){return C3(u.trim(),$0())}function i6u(u){b7.setData({quadrant1Text:kU(u.text)})}function a6u(u){b7.setData({quadrant2Text:kU(u.text)})}function V6u(u){b7.setData({quadrant3Text:kU(u.text)})}function h6u(u){b7.setData({quadrant4Text:kU(u.text)})}function m6u(u){b7.setData({xAxisLeftText:kU(u.text)})}function r6u(u){b7.setData({xAxisRightText:kU(u.text)})}function $6u(u){b7.setData({yAxisTopText:kU(u.text)})}function y6u(u){b7.setData({yAxisBottomText:kU(u.text)})}function xc(u){let B={};for(let E of u){let[A,C]=E.trim().split(/\s*:\s*/);if(A==="radius"){if(j6u(C))throw new Xc(A,C,"number");B.radius=parseInt(C)}else if(A==="color"){if(lD0(C))throw new Xc(A,C,"hex code");B.color=C}else if(A==="stroke-color"){if(lD0(C))throw new Xc(A,C,"hex code");B.strokeColor=C}else if(A==="stroke-width"){if(N6u(C))throw new Xc(A,C,"number of pixels (eg. 10px)");B.strokeWidth=C}else throw Error(`style named ${A} is not supported.`)}return B}function c6u(u,B,E,A,C){let D=xc(C);b7.addPoints([{x:E,y:A,text:kU(u.text),className:B,...D}])}function g6u(u,B){b7.addClass(u,xc(B))}function _6u(u){b7.setConfig({chartWidth:u})}function n6u(u){b7.setConfig({chartHeight:u})}function p6u(){let u=$0(),{themeVariables:B,quadrantChart:E}=u;if(E)b7.setConfig(E);return b7.setThemeConfig({quadrant1Fill:B.quadrant1Fill,quadrant2Fill:B.quadrant2Fill,quadrant3Fill:B.quadrant3Fill,quadrant4Fill:B.quadrant4Fill,quadrant1TextFill:B.quadrant1TextFill,quadrant2TextFill:B.quadrant2TextFill,quadrant3TextFill:B.quadrant3TextFill,quadrant4TextFill:B.quadrant4TextFill,quadrantPointFill:B.quadrantPointFill,quadrantPointTextFill:B.quadrantPointTextFill,quadrantXAxisTextFill:B.quadrantXAxisTextFill,quadrantYAxisTextFill:B.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:B.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:B.quadrantInternalBorderStrokeFill,quadrantTitleFill:B.quadrantTitleFill}),b7.setData({titleText:X3()}),b7.build()}var fD0,Fi4,OB,Ui4,Xc,b7,zi4,ki4,fi4,li4,bi4;var s6u=g(()=>{s4();o4();Y4();i3();i3();fD0=function(){var u=X(function(o,L0,E0,r0){for(E0=E0||{},r0=o.length;r0--;E0[o[r0]]=L0);return E0},"o"),B=[1,3],E=[1,4],A=[1,5],C=[1,6],D=[1,7],F=[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],U=[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],z=[55,56,57],k=[2,36],f=[1,37],l=[1,36],b=[1,38],M=[1,35],Z=[1,43],J=[1,41],w=[1,45],K=[1,14],Q=[1,23],G=[1,18],L=[1,19],H=[1,20],q=[1,21],x=[1,22],v=[1,24],W=[1,25],S=[1,26],T=[1,27],R=[1,28],Y=[1,29],a=[1,32],I=[1,33],O=[1,34],i=[1,39],N=[1,40],V=[1,42],h=[1,44],r=[1,63],m=[1,62],$=[4,5,8,10,12,13,14,15,18,44,47,49,55,56,57,63,64,65,66,67],y=[1,66],p=[1,67],e=[1,68],_=[1,69],b0=[1,70],B0=[1,71],k0=[1,72],f0=[1,73],D0=[1,74],P0=[1,75],q0=[1,76],m0=[1,77],a0=[4,5,6,7,8,9,10,11,12,13,14,15,18],_0=[1,91],w0=[1,92],v0=[1,93],T0=[1,100],Z0=[1,94],F0=[1,97],u0=[1,95],M0=[1,96],X0=[1,98],S0=[1,99],Y0=[1,103],h0=[10,55,56,57],J0=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],n={trace:X(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:X(function(L0,E0,r0,c0,p0,g0,Bu){var n0=g0.length-1;switch(p0){case 23:this.$=g0[n0];break;case 24:this.$=g0[n0-1]+""+g0[n0];break;case 26:this.$=g0[n0-1]+g0[n0];break;case 27:this.$=[g0[n0].trim()];break;case 28:g0[n0-2].push(g0[n0].trim()),this.$=g0[n0-2];break;case 29:this.$=g0[n0-4],c0.addClass(g0[n0-2],g0[n0]);break;case 37:this.$=[];break;case 42:this.$=g0[n0].trim(),c0.setDiagramTitle(this.$);break;case 43:this.$=g0[n0].trim(),c0.setAccTitle(this.$);break;case 44:case 45:this.$=g0[n0].trim(),c0.setAccDescription(this.$);break;case 46:c0.addSection(g0[n0].substr(8)),this.$=g0[n0].substr(8);break;case 47:c0.addPoint(g0[n0-3],"",g0[n0-1],g0[n0],[]);break;case 48:c0.addPoint(g0[n0-4],g0[n0-3],g0[n0-1],g0[n0],[]);break;case 49:c0.addPoint(g0[n0-4],"",g0[n0-2],g0[n0-1],g0[n0]);break;case 50:c0.addPoint(g0[n0-5],g0[n0-4],g0[n0-2],g0[n0-1],g0[n0]);break;case 51:c0.setXAxisLeftText(g0[n0-2]),c0.setXAxisRightText(g0[n0]);break;case 52:g0[n0-1].text+=" ⟶ ",c0.setXAxisLeftText(g0[n0-1]);break;case 53:c0.setXAxisLeftText(g0[n0]);break;case 54:c0.setYAxisBottomText(g0[n0-2]),c0.setYAxisTopText(g0[n0]);break;case 55:g0[n0-1].text+=" ⟶ ",c0.setYAxisBottomText(g0[n0-1]);break;case 56:c0.setYAxisBottomText(g0[n0]);break;case 57:c0.setQuadrant1Text(g0[n0]);break;case 58:c0.setQuadrant2Text(g0[n0]);break;case 59:c0.setQuadrant3Text(g0[n0]);break;case 60:c0.setQuadrant4Text(g0[n0]);break;case 64:this.$={text:g0[n0],type:"text"};break;case 65:this.$={text:g0[n0-1].text+""+g0[n0],type:g0[n0-1].type};break;case 66:this.$={text:g0[n0],type:"text"};break;case 67:this.$={text:g0[n0],type:"markdown"};break;case 68:this.$=g0[n0];break;case 69:this.$=g0[n0-1]+""+g0[n0];break}},"anonymous"),table:[{18:B,26:1,27:2,28:E,55:A,56:C,57:D},{1:[3]},{18:B,26:8,27:2,28:E,55:A,56:C,57:D},{18:B,26:9,27:2,28:E,55:A,56:C,57:D},u(F,[2,33],{29:10}),u(U,[2,61]),u(U,[2,62]),u(U,[2,63]),{1:[2,30]},{1:[2,31]},u(z,k,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:l,10:b,12:M,13:Z,14:J,15:w,18:K,25:Q,35:G,37:L,39:H,41:q,42:x,48:v,50:W,51:S,52:T,53:R,54:Y,60:a,61:I,63:O,64:i,65:N,66:V,67:h}),u(F,[2,34]),{27:46,55:A,56:C,57:D},u(z,[2,37]),u(z,k,{24:13,32:15,33:16,34:17,43:30,58:31,31:47,4:f,5:l,10:b,12:M,13:Z,14:J,15:w,18:K,25:Q,35:G,37:L,39:H,41:q,42:x,48:v,50:W,51:S,52:T,53:R,54:Y,60:a,61:I,63:O,64:i,65:N,66:V,67:h}),u(z,[2,39]),u(z,[2,40]),u(z,[2,41]),{36:[1,48]},{38:[1,49]},{40:[1,50]},u(z,[2,45]),u(z,[2,46]),{18:[1,51]},{4:f,5:l,10:b,12:M,13:Z,14:J,15:w,43:52,58:31,60:a,61:I,63:O,64:i,65:N,66:V,67:h},{4:f,5:l,10:b,12:M,13:Z,14:J,15:w,43:53,58:31,60:a,61:I,63:O,64:i,65:N,66:V,67:h},{4:f,5:l,10:b,12:M,13:Z,14:J,15:w,43:54,58:31,60:a,61:I,63:O,64:i,65:N,66:V,67:h},{4:f,5:l,10:b,12:M,13:Z,14:J,15:w,43:55,58:31,60:a,61:I,63:O,64:i,65:N,66:V,67:h},{4:f,5:l,10:b,12:M,13:Z,14:J,15:w,43:56,58:31,60:a,61:I,63:O,64:i,65:N,66:V,67:h},{4:f,5:l,10:b,12:M,13:Z,14:J,15:w,43:57,58:31,60:a,61:I,63:O,64:i,65:N,66:V,67:h},{4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,44:[1,58],47:[1,59],58:61,59:60,63:O,64:i,65:N,66:V,67:h},u($,[2,64]),u($,[2,66]),u($,[2,67]),u($,[2,70]),u($,[2,71]),u($,[2,72]),u($,[2,73]),u($,[2,74]),u($,[2,75]),u($,[2,76]),u($,[2,77]),u($,[2,78]),u($,[2,79]),u($,[2,80]),u($,[2,81]),u(F,[2,35]),u(z,[2,38]),u(z,[2,42]),u(z,[2,43]),u(z,[2,44]),{3:65,4:y,5:p,6:e,7:_,8:b0,9:B0,10:k0,11:f0,12:D0,13:P0,14:q0,15:m0,21:64},u(z,[2,53],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,49:[1,78],63:O,64:i,65:N,66:V,67:h}),u(z,[2,56],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,49:[1,79],63:O,64:i,65:N,66:V,67:h}),u(z,[2,57],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,63:O,64:i,65:N,66:V,67:h}),u(z,[2,58],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,63:O,64:i,65:N,66:V,67:h}),u(z,[2,59],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,63:O,64:i,65:N,66:V,67:h}),u(z,[2,60],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,63:O,64:i,65:N,66:V,67:h}),{45:[1,80]},{44:[1,81]},u($,[2,65]),u($,[2,82]),u($,[2,83]),u($,[2,84]),{3:83,4:y,5:p,6:e,7:_,8:b0,9:B0,10:k0,11:f0,12:D0,13:P0,14:q0,15:m0,18:[1,82]},u(a0,[2,23]),u(a0,[2,1]),u(a0,[2,2]),u(a0,[2,3]),u(a0,[2,4]),u(a0,[2,5]),u(a0,[2,6]),u(a0,[2,7]),u(a0,[2,8]),u(a0,[2,9]),u(a0,[2,10]),u(a0,[2,11]),u(a0,[2,12]),u(z,[2,52],{58:31,43:84,4:f,5:l,10:b,12:M,13:Z,14:J,15:w,60:a,61:I,63:O,64:i,65:N,66:V,67:h}),u(z,[2,55],{58:31,43:85,4:f,5:l,10:b,12:M,13:Z,14:J,15:w,60:a,61:I,63:O,64:i,65:N,66:V,67:h}),{46:[1,86]},{45:[1,87]},{4:_0,5:w0,6:v0,8:T0,11:Z0,13:F0,16:90,17:u0,18:M0,19:X0,20:S0,22:89,23:88},u(a0,[2,24]),u(z,[2,51],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,63:O,64:i,65:N,66:V,67:h}),u(z,[2,54],{59:60,58:61,4:f,5:l,8:r,10:b,12:M,13:Z,14:J,15:w,18:m,63:O,64:i,65:N,66:V,67:h}),u(z,[2,47],{22:89,16:90,23:101,4:_0,5:w0,6:v0,8:T0,11:Z0,13:F0,17:u0,18:M0,19:X0,20:S0}),{46:[1,102]},u(z,[2,29],{10:Y0}),u(h0,[2,27],{16:104,4:_0,5:w0,6:v0,8:T0,11:Z0,13:F0,17:u0,18:M0,19:X0,20:S0}),u(J0,[2,25]),u(J0,[2,13]),u(J0,[2,14]),u(J0,[2,15]),u(J0,[2,16]),u(J0,[2,17]),u(J0,[2,18]),u(J0,[2,19]),u(J0,[2,20]),u(J0,[2,21]),u(J0,[2,22]),u(z,[2,49],{10:Y0}),u(z,[2,48],{22:89,16:90,23:105,4:_0,5:w0,6:v0,8:T0,11:Z0,13:F0,17:u0,18:M0,19:X0,20:S0}),{4:_0,5:w0,6:v0,8:T0,11:Z0,13:F0,16:90,17:u0,18:M0,19:X0,20:S0,22:106},u(J0,[2,26]),u(z,[2,50],{10:Y0}),u(h0,[2,28],{16:104,4:_0,5:w0,6:v0,8:T0,11:Z0,13:F0,17:u0,18:M0,19:X0,20:S0})],defaultActions:{8:[2,30],9:[2,31]},parseError:X(function(L0,E0){if(E0.recoverable)this.trace(L0);else{var r0=Error(L0);throw r0.hash=E0,r0}},"parseError"),parse:X(function(L0){var E0=this,r0=[0],c0=[],p0=[null],g0=[],Bu=this.table,n0="",e0=0,t0=0,zu=0,W0=2,$u=1,i0=g0.slice.call(arguments,1),vu=Object.create(this.lexer),cu={yy:{}};for(var Du in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Du))cu.yy[Du]=this.yy[Du];if(vu.setInput(L0,cu.yy),cu.yy.lexer=vu,cu.yy.parser=this,typeof vu.yylloc>"u")vu.yylloc={};var Nu=vu.yylloc;g0.push(Nu);var du=vu.options&&vu.options.ranges;if(typeof cu.yy.parseError==="function")this.parseError=cu.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function Iu(b4){r0.length=r0.length-2*b4,p0.length=p0.length-b4,g0.length=g0.length-b4}X(Iu,"popStack");function x0(){var b4=c0.pop()||vu.lex()||$u;if(typeof b4!=="number"){if(b4 instanceof Array)c0=b4,b4=c0.pop();b4=E0.symbols_[b4]||b4}return b4}X(x0,"lex");var Tu,Vu,Zu,I0,lu,Hu,Ru={},W4,ru,q4,F3;while(!0){if(Zu=r0[r0.length-1],this.defaultActions[Zu])I0=this.defaultActions[Zu];else{if(Tu===null||typeof Tu>"u")Tu=x0();I0=Bu[Zu]&&Bu[Zu][Tu]}if(typeof I0>"u"||!I0.length||!I0[0]){var i4="";F3=[];for(W4 in Bu[Zu])if(this.terminals_[W4]&&W4>W0)F3.push("'"+this.terminals_[W4]+"'");if(vu.showPosition)i4="Parse error on line "+(e0+1)+`:
`+vu.showPosition()+`
Expecting `+F3.join(", ")+", got '"+(this.terminals_[Tu]||Tu)+"'";else i4="Parse error on line "+(e0+1)+": Unexpected "+(Tu==$u?"end of input":"'"+(this.terminals_[Tu]||Tu)+"'");this.parseError(i4,{text:vu.match,token:this.terminals_[Tu]||Tu,line:vu.yylineno,loc:Nu,expected:F3})}if(I0[0]instanceof Array&&I0.length>1)throw Error("Parse Error: multiple actions possible at state: "+Zu+", token: "+Tu);switch(I0[0]){case 1:if(r0.push(Tu),p0.push(vu.yytext),g0.push(vu.yylloc),r0.push(I0[1]),Tu=null,!Vu){if(t0=vu.yyleng,n0=vu.yytext,e0=vu.yylineno,Nu=vu.yylloc,zu>0)zu--}else Tu=Vu,Vu=null;break;case 2:if(ru=this.productions_[I0[1]][1],Ru.$=p0[p0.length-ru],Ru._$={first_line:g0[g0.length-(ru||1)].first_line,last_line:g0[g0.length-1].last_line,first_column:g0[g0.length-(ru||1)].first_column,last_column:g0[g0.length-1].last_column},du)Ru._$.range=[g0[g0.length-(ru||1)].range[0],g0[g0.length-1].range[1]];if(Hu=this.performAction.apply(Ru,[n0,t0,e0,cu.yy,I0[1],p0,g0].concat(i0)),typeof Hu<"u")return Hu;if(ru)r0=r0.slice(0,-1*ru*2),p0=p0.slice(0,-1*ru),g0=g0.slice(0,-1*ru);r0.push(this.productions_[I0[1]][0]),p0.push(Ru.$),g0.push(Ru._$),q4=Bu[r0[r0.length-2]][r0[r0.length-1]],r0.push(q4);break;case 3:return!0}}return!0},"parse")},d=function(){var o={EOF:1,parseError:X(function(E0,r0){if(this.yy.parser)this.yy.parser.parseError(E0,r0);else throw Error(E0)},"parseError"),setInput:X(function(L0,E0){if(this.yy=E0||this.yy||{},this._input=L0,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:X(function(){var L0=this._input[0];this.yytext+=L0,this.yyleng++,this.offset++,this.match+=L0,this.matched+=L0;var E0=L0.match(/(?:\r\n?|\n).*/g);if(E0)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),L0},"input"),unput:X(function(L0){var E0=L0.length,r0=L0.split(/(?:\r\n?|\n)/g);this._input=L0+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E0),this.offset-=E0;var c0=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),r0.length-1)this.yylineno-=r0.length-1;var p0=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:r0?(r0.length===c0.length?this.yylloc.first_column:0)+c0[c0.length-r0.length].length-r0[0].length:this.yylloc.first_column-E0},this.options.ranges)this.yylloc.range=[p0[0],p0[0]+this.yyleng-E0];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(L0){this.unput(this.match.slice(L0))},"less"),pastInput:X(function(){var L0=this.matched.substr(0,this.matched.length-this.match.length);return(L0.length>20?"...":"")+L0.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var L0=this.match;if(L0.length<20)L0+=this._input.substr(0,20-L0.length);return(L0.substr(0,20)+(L0.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var L0=this.pastInput(),E0=Array(L0.length+1).join("-");return L0+this.upcomingInput()+`
`+E0+"^"},"showPosition"),test_match:X(function(L0,E0){var r0,c0,p0;if(this.options.backtrack_lexer){if(p0={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)p0.yylloc.range=this.yylloc.range.slice(0)}if(c0=L0[0].match(/(?:\r\n?|\n).*/g),c0)this.yylineno+=c0.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:c0?c0[c0.length-1].length-c0[c0.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+L0[0].length},this.yytext+=L0[0],this.match+=L0[0],this.matches=L0,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(L0[0].length),this.matched+=L0[0],r0=this.performAction.call(this,this.yy,this,E0,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(r0)return r0;else if(this._backtrack){for(var g0 in p0)this[g0]=p0[g0];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var L0,E0,r0,c0;if(!this._more)this.yytext="",this.match="";var p0=this._currentRules();for(var g0=0;g0<p0.length;g0++)if(r0=this._input.match(this.rules[p0[g0]]),r0&&(!E0||r0[0].length>E0[0].length)){if(E0=r0,c0=g0,this.options.backtrack_lexer)if(L0=this.test_match(r0,p0[g0]),L0!==!1)return L0;else if(this._backtrack){E0=!1;continue}else return!1;else if(!this.options.flex)break}if(E0){if(L0=this.test_match(E0,p0[c0]),L0!==!1)return L0;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:X(function(){var E0=this.next();if(E0)return E0;else return this.lex()},"lex"),begin:X(function(E0){this.conditionStack.push(E0)},"begin"),popState:X(function(){var E0=this.conditionStack.length-1;if(E0>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(E0){if(E0=this.conditionStack.length-1-Math.abs(E0||0),E0>=0)return this.conditionStack[E0];else return"INITIAL"},"topState"),pushState:X(function(E0){this.begin(E0)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(E0,r0,c0,p0){var g0=p0;switch(c0){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 o}();n.lexer=d;function H0(){this.yy={}}return X(H0,"Parser"),H0.prototype=n,n.Parser=H0,new H0}();fD0.parser=fD0;Fi4=fD0,OB=S7(),Ui4=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{X(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:t4.quadrantChart?.chartWidth||500,chartWidth:t4.quadrantChart?.chartHeight||500,titlePadding:t4.quadrantChart?.titlePadding||10,titleFontSize:t4.quadrantChart?.titleFontSize||20,quadrantPadding:t4.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:t4.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:t4.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:t4.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:t4.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:t4.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:t4.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:t4.quadrantChart?.pointTextPadding||5,pointLabelFontSize:t4.quadrantChart?.pointLabelFontSize||12,pointRadius:t4.quadrantChart?.pointRadius||5,xAxisPosition:t4.quadrantChart?.xAxisPosition||"top",yAxisPosition:t4.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:t4.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:t4.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:OB.quadrant1Fill,quadrant2Fill:OB.quadrant2Fill,quadrant3Fill:OB.quadrant3Fill,quadrant4Fill:OB.quadrant4Fill,quadrant1TextFill:OB.quadrant1TextFill,quadrant2TextFill:OB.quadrant2TextFill,quadrant3TextFill:OB.quadrant3TextFill,quadrant4TextFill:OB.quadrant4TextFill,quadrantPointFill:OB.quadrantPointFill,quadrantPointTextFill:OB.quadrantPointTextFill,quadrantXAxisTextFill:OB.quadrantXAxisTextFill,quadrantYAxisTextFill:OB.quadrantYAxisTextFill,quadrantTitleFill:OB.quadrantTitleFill,quadrantInternalBorderStrokeFill:OB.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:OB.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,z0.info("clear called")}setData(u){this.data={...this.data,...u}}addPoints(u){this.data.points=[...u,...this.data.points]}addClass(u,B){this.classes.set(u,B)}setConfig(u){z0.trace("setConfig called with: ",u),this.config={...this.config,...u}}setThemeConfig(u){z0.trace("setThemeConfig called with: ",u),this.themeConfig={...this.themeConfig,...u}}calculateSpace(u,B,E,A){let C=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,D={top:u==="top"&&B?C:0,bottom:u==="bottom"&&B?C:0},F=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,U={left:this.config.yAxisPosition==="left"&&E?F:0,right:this.config.yAxisPosition==="right"&&E?F:0},z=this.config.titleFontSize+this.config.titlePadding*2,k={top:A?z:0},f=this.config.quadrantPadding+U.left,l=this.config.quadrantPadding+D.top+k.top,b=this.config.chartWidth-this.config.quadrantPadding*2-U.left-U.right,M=this.config.chartHeight-this.config.quadrantPadding*2-D.top-D.bottom-k.top,Z=b/2,J=M/2;return{xAxisSpace:D,yAxisSpace:U,titleSpace:k,quadrantSpace:{quadrantLeft:f,quadrantTop:l,quadrantWidth:b,quadrantHalfWidth:Z,quadrantHeight:M,quadrantHalfHeight:J}}}getAxisLabels(u,B,E,A){let{quadrantSpace:C,titleSpace:D}=A,{quadrantHalfHeight:F,quadrantHeight:U,quadrantLeft:z,quadrantHalfWidth:k,quadrantTop:f,quadrantWidth:l}=C,b=Boolean(this.data.xAxisRightText),M=Boolean(this.data.yAxisTopText),Z=[];if(this.data.xAxisLeftText&&B)Z.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:z+(b?k/2:0),y:u==="top"?this.config.xAxisLabelPadding+D.top:this.config.xAxisLabelPadding+f+U+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:b?"center":"left",horizontalPos:"top",rotation:0});if(this.data.xAxisRightText&&B)Z.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:z+k+(b?k/2:0),y:u==="top"?this.config.xAxisLabelPadding+D.top:this.config.xAxisLabelPadding+f+U+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:b?"center":"left",horizontalPos:"top",rotation:0});if(this.data.yAxisBottomText&&E)Z.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+z+l+this.config.quadrantPadding,y:f+U-(M?F/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:M?"center":"left",horizontalPos:"top",rotation:-90});if(this.data.yAxisTopText&&E)Z.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+z+l+this.config.quadrantPadding,y:f+F-(M?F/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:M?"center":"left",horizontalPos:"top",rotation:-90});return Z}getQuadrants(u){let{quadrantSpace:B}=u,{quadrantHalfHeight:E,quadrantLeft:A,quadrantHalfWidth:C,quadrantTop:D}=B,F=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:A+C,y:D,width:C,height:E,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:A,y:D,width:C,height:E,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:A,y:D+E,width:C,height:E,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:A+C,y:D+E,width:C,height:E,fill:this.themeConfig.quadrant4Fill}];for(let U of F)if(U.text.x=U.x+U.width/2,this.data.points.length===0)U.text.y=U.y+U.height/2,U.text.horizontalPos="middle";else U.text.y=U.y+this.config.quadrantTextTopPadding,U.text.horizontalPos="top";return F}getQuadrantPoints(u){let{quadrantSpace:B}=u,{quadrantHeight:E,quadrantLeft:A,quadrantTop:C,quadrantWidth:D}=B,F=lC().domain([0,1]).range([A,D+A]),U=lC().domain([0,1]).range([E+C,C]);return this.data.points.map((k)=>{let f=this.classes.get(k.className);if(f)k={...f,...k};return{x:F(k.x),y:U(k.y),fill:k.color??this.themeConfig.quadrantPointFill,radius:k.radius??this.config.pointRadius,text:{text:k.text,fill:this.themeConfig.quadrantPointTextFill,x:F(k.x),y:U(k.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:k.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:k.strokeWidth??"0px"}})}getBorders(u){let B=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:E}=u,{quadrantHalfHeight:A,quadrantHeight:C,quadrantLeft:D,quadrantHalfWidth:F,quadrantTop:U,quadrantWidth:z}=E;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:D-B,y1:U,x2:D+z+B,y2:U},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:D+z,y1:U+B,x2:D+z,y2:U+C-B},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:D-B,y1:U+C,x2:D+z+B,y2:U+C},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:D,y1:U+B,x2:D,y2:U+C-B},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:D+F,y1:U+B,x2:D+F,y2:U+C-B},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:D+B,y1:U+A,x2:D+z-B,y2:U+A}]}getTitle(u){if(u)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 u=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),B=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),E=this.config.showTitle&&!!this.data.titleText,A=this.data.points.length>0?"bottom":this.config.xAxisPosition,C=this.calculateSpace(A,u,B,E);return{points:this.getQuadrantPoints(C),quadrants:this.getQuadrants(C),axisLabels:this.getAxisLabels(A,u,B,C),borderLines:this.getBorders(C),title:this.getTitle(E)}}},Xc=class extends Error{static{X(this,"InvalidStyleError")}constructor(u,B,E){super(`value for ${u} ${B} is invalid, please use a valid ${E}`);this.name="InvalidStyleError"}};X(lD0,"validateHexCode");X(j6u,"validateNumber");X(N6u,"validateSizeInPixels");X(kU,"textSanitizer");b7=new Ui4;X(i6u,"setQuadrant1Text");X(a6u,"setQuadrant2Text");X(V6u,"setQuadrant3Text");X(h6u,"setQuadrant4Text");X(m6u,"setXAxisLeftText");X(r6u,"setXAxisRightText");X($6u,"setYAxisTopText");X(y6u,"setYAxisBottomText");X(xc,"parseStyles");X(c6u,"addPoint");X(g6u,"addClass");X(_6u,"setWidth");X(n6u,"setHeight");X(p6u,"getQuadrantData");zi4=X(function(){b7.clear(),D3()},"clear"),ki4={setWidth:_6u,setHeight:n6u,setQuadrant1Text:i6u,setQuadrant2Text:a6u,setQuadrant3Text:V6u,setQuadrant4Text:h6u,setXAxisLeftText:m6u,setXAxisRightText:r6u,setYAxisTopText:$6u,setYAxisBottomText:y6u,parseStyles:xc,addPoint:c6u,addClass:g6u,getQuadrantData:p6u,clear:zi4,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,getAccDescription:q3,setAccDescription:L3},fi4=X((u,B,E,A)=>{function C(v){return v==="top"?"hanging":"middle"}X(C,"getDominantBaseLine");function D(v){return v==="left"?"start":"middle"}X(D,"getTextAnchor");function F(v){return`translate(${v.x}, ${v.y}) rotate(${v.rotation||0})`}X(F,"getTransformation");let U=$0();z0.debug(`Rendering quadrant chart
`+u);let z=U.securityLevel,k;if(z==="sandbox")k=Ku("#i"+B);let l=(z==="sandbox"?Ku(k.nodes()[0].contentDocument.body):Ku("body")).select(`[id="${B}"]`),b=l.append("g").attr("class","main"),M=U.quadrantChart?.chartWidth??500,Z=U.quadrantChart?.chartHeight??500;y3(l,Z,M,U.quadrantChart?.useMaxWidth??!0),l.attr("viewBox","0 0 "+M+" "+Z),A.db.setHeight(Z),A.db.setWidth(M);let J=A.db.getQuadrantData(),w=b.append("g").attr("class","quadrants"),K=b.append("g").attr("class","border"),Q=b.append("g").attr("class","data-points"),G=b.append("g").attr("class","labels"),L=b.append("g").attr("class","title");if(J.title)L.append("text").attr("x",0).attr("y",0).attr("fill",J.title.fill).attr("font-size",J.title.fontSize).attr("dominant-baseline",C(J.title.horizontalPos)).attr("text-anchor",D(J.title.verticalPos)).attr("transform",F(J.title)).text(J.title.text);if(J.borderLines)K.selectAll("line").data(J.borderLines).enter().append("line").attr("x1",(v)=>v.x1).attr("y1",(v)=>v.y1).attr("x2",(v)=>v.x2).attr("y2",(v)=>v.y2).style("stroke",(v)=>v.strokeFill).style("stroke-width",(v)=>v.strokeWidth);let H=w.selectAll("g.quadrant").data(J.quadrants).enter().append("g").attr("class","quadrant");H.append("rect").attr("x",(v)=>v.x).attr("y",(v)=>v.y).attr("width",(v)=>v.width).attr("height",(v)=>v.height).attr("fill",(v)=>v.fill),H.append("text").attr("x",0).attr("y",0).attr("fill",(v)=>v.text.fill).attr("font-size",(v)=>v.text.fontSize).attr("dominant-baseline",(v)=>C(v.text.horizontalPos)).attr("text-anchor",(v)=>D(v.text.verticalPos)).attr("transform",(v)=>F(v.text)).text((v)=>v.text.text),G.selectAll("g.label").data(J.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((v)=>v.text).attr("fill",(v)=>v.fill).attr("font-size",(v)=>v.fontSize).attr("dominant-baseline",(v)=>C(v.horizontalPos)).attr("text-anchor",(v)=>D(v.verticalPos)).attr("transform",(v)=>F(v));let x=Q.selectAll("g.data-point").data(J.points).enter().append("g").attr("class","data-point");x.append("circle").attr("cx",(v)=>v.x).attr("cy",(v)=>v.y).attr("r",(v)=>v.radius).attr("fill",(v)=>v.fill).attr("stroke",(v)=>v.strokeColor).attr("stroke-width",(v)=>v.strokeWidth),x.append("text").attr("x",0).attr("y",0).text((v)=>v.text.text).attr("fill",(v)=>v.text.fill).attr("font-size",(v)=>v.text.fontSize).attr("dominant-baseline",(v)=>C(v.text.horizontalPos)).attr("text-anchor",(v)=>D(v.text.verticalPos)).attr("transform",(v)=>F(v.text))},"draw"),li4={draw:fi4},bi4={parser:Fi4,db:ki4,renderer:li4,styles:X(()=>"","styles")}});var K9u={};ju(K9u,{diagram:()=>Si4});function MD0(u){return u.type==="bar"}function vc(u){return u.type==="band"}function gL(u){return u.type==="linear"}function ZD0(u,B,E,A){let C=new e6u(A);if(vc(u))return new Zi4(B,E,u.categories,u.title,C);return new Ji4(B,E,[u.min,u.max],u.title,C)}function B9u(u,B,E,A){let C=new e6u(A);return new wi4(C,u,B,E)}function E9u(u,B,E){return new Gi4(u,B,E)}function KD0(){let u=S7(),B=F4();return B1(u.xyChart,B.themeVariables.xyChart)}function QD0(){let u=F4();return B1(t4.xyChart,u.xyChart)}function GD0(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function RR(u){let B=F4();return C3(u.trim(),B)}function C9u(u){A9u=u}function D9u(u){if(u==="horizontal")WR.chartOrientation="horizontal";else WR.chartOrientation="vertical"}function F9u(u){R1.xAxis.title=RR(u.text)}function HD0(u,B){R1.xAxis={type:"linear",title:R1.xAxis.title,min:u,max:B},Sc=!0}function U9u(u){R1.xAxis={type:"band",title:R1.xAxis.title,categories:u.map((B)=>RR(B.text))},Sc=!0}function z9u(u){R1.yAxis.title=RR(u.text)}function k9u(u,B){R1.yAxis={type:"linear",title:R1.yAxis.title,min:u,max:B},wD0=!0}function f9u(u){let B=Math.min(...u),E=Math.max(...u),A=gL(R1.yAxis)?R1.yAxis.min:1/0,C=gL(R1.yAxis)?R1.yAxis.max:-1/0;R1.yAxis={type:"linear",title:R1.yAxis.title,min:Math.min(A,B),max:Math.max(C,E)}}function LD0(u){let B=[];if(u.length===0)return B;if(!Sc){let E=gL(R1.xAxis)?R1.xAxis.min:1/0,A=gL(R1.xAxis)?R1.xAxis.max:-1/0;HD0(Math.min(E,1),Math.max(A,u.length))}if(vc(R1.xAxis)&&u.length>R1.xAxis.categories.length)u=u.slice(0,R1.xAxis.categories.length);if(!wD0)f9u(u);if(vc(R1.xAxis))B=R1.xAxis.categories.map((E,A)=>[E,u[A]]);if(gL(R1.xAxis)){let E=R1.xAxis.min,A=R1.xAxis.max;if(u.length===1)B=[[`${E}`,u[0]]];else{let C=(A-E)/(u.length-1);B=u.map((D,F)=>[`${E+F*C}`,D])}}return B}function qD0(u){return JD0[u===0?0:u%JD0.length]}function l9u(u,B){let E=B.map((F)=>F.value),A=B.map((F)=>F.label?RR(F.label):""),C=LD0(E),D=A.some((F)=>F!=="");R1.plots.push({type:"line",strokeFill:qD0(SR),strokeWidth:2,data:C,...D?{pointLabels:A}:{}}),SR++}function b9u(u,B){let E=B.map((C)=>C.value),A=LD0(E);R1.plots.push({type:"bar",fill:qD0(SR),data:A}),SR++}function M9u(){if(R1.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return R1.title=X3(),Li4.build(WR,R1,YR,A9u)}function Z9u(){return YR}function J9u(){return WR}function w9u(){return R1}var bD0,Mi4,e6u,o6u=0.7,t6u=0.2,u9u,Zi4,Ji4,wi4,Ki4,Qi4,Gi4,Hi4,Li4,SR=0,A9u,WR,YR,R1,JD0,Sc=!1,wD0=!1,qi4,Xi4,xi4,vi4,Si4;var Q9u=g(()=>{E2();d2();q2();t3();s4();o4();Y4();i3();i3();i3();bD0=function(){var u=X(function(O,i,N,V){for(N=N||{},V=O.length;V--;N[O[V]]=i);return N},"o"),B=[1,10,12,14,16,18,19,21,23],E=[2,6],A=[1,3],C=[1,5],D=[1,6],F=[1,7],U=[1,5,10,12,14,16,18,19,21,23,36,37,38],z=[1,25],k=[1,26],f=[1,28],l=[1,29],b=[1,30],M=[1,31],Z=[1,32],J=[1,33],w=[1,34],K=[1,35],Q=[1,36],G=[1,37],L=[1,43],H=[1,42],q=[1,47],x=[1,50],v=[1,10,12,14,16,18,19,21,23,36,37,38],W=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],S=[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],T=[1,65],R=[26,28],Y={trace:X(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:X(function(i,N,V,h,r,m,$){var y=m.length-1;switch(r){case 5:h.setOrientation(m[y]);break;case 9:h.setDiagramTitle(m[y].text.trim());break;case 12:h.setLineData({text:"",type:"text"},m[y]);break;case 13:h.setLineData(m[y-1],m[y]);break;case 14:h.setBarData({text:"",type:"text"},m[y]);break;case 15:h.setBarData(m[y-1],m[y]);break;case 16:this.$=m[y].trim(),h.setAccTitle(this.$);break;case 17:case 18:this.$=m[y].trim(),h.setAccDescription(this.$);break;case 19:this.$=m[y-1];break;case 20:case 30:this.$=[m[y-2],...m[y]];break;case 21:case 31:this.$=[m[y]];break;case 22:this.$={value:Number(m[y-1]),label:m[y]};break;case 23:this.$={value:Number(m[y]),label:""};break;case 24:h.setXAxisTitle(m[y]);break;case 25:h.setXAxisTitle(m[y-1]);break;case 26:h.setXAxisTitle({type:"text",text:""});break;case 27:h.setXAxisBand(m[y]);break;case 28:h.setXAxisRangeData(Number(m[y-2]),Number(m[y]));break;case 29:this.$=m[y-1];break;case 32:h.setYAxisTitle(m[y]);break;case 33:h.setYAxisTitle(m[y-1]);break;case 34:h.setYAxisTitle({type:"text",text:""});break;case 35:h.setYAxisRangeData(Number(m[y-2]),Number(m[y]));break;case 39:this.$={text:m[y],type:"text"};break;case 40:this.$={text:m[y],type:"text"};break;case 41:this.$={text:m[y],type:"markdown"};break;case 42:this.$=m[y];break;case 43:this.$=m[y-1]+""+m[y];break}},"anonymous"),table:[u(B,E,{3:1,4:2,7:4,5:A,36:C,37:D,38:F}),{1:[3]},u(B,E,{4:2,7:4,3:8,5:A,36:C,37:D,38:F}),u(B,E,{4:2,7:4,6:9,3:10,5:A,8:[1,11],36:C,37:D,38:F}),{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]},u(U,[2,36]),u(U,[2,37]),u(U,[2,38]),{1:[2,1]},u(B,E,{4:2,7:4,3:21,5:A,36:C,37:D,38:F}),{1:[2,3]},u(U,[2,5]),u(B,[2,7],{4:22,36:C,37:D,38:F}),{11:23,30:z,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},{11:39,13:38,24:L,29:H,30:z,31:40,32:41,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},{11:45,15:44,29:q,30:z,35:46,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},{11:49,17:48,24:x,30:z,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},{11:52,17:51,24:x,30:z,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},{20:[1,53]},{22:[1,54]},u(v,[2,18]),{1:[2,2]},u(v,[2,8]),u(v,[2,9]),u(W,[2,39],{41:55,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G}),u(W,[2,40]),u(W,[2,41]),u(S,[2,42]),u(S,[2,44]),u(S,[2,45]),u(S,[2,46]),u(S,[2,47]),u(S,[2,48]),u(S,[2,49]),u(S,[2,50]),u(S,[2,51]),u(S,[2,52]),u(S,[2,53]),u(v,[2,10]),u(v,[2,24],{32:41,31:56,24:L,29:H}),u(v,[2,26]),u(v,[2,27]),{33:[1,57]},{11:59,30:z,34:58,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},u(v,[2,11]),u(v,[2,32],{35:60,29:q}),u(v,[2,34]),{33:[1,61]},u(v,[2,12]),{17:62,24:x},{25:63,27:64,29:T},u(v,[2,14]),{17:66,24:x},u(v,[2,16]),u(v,[2,17]),u(S,[2,43]),u(v,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},u(v,[2,33]),{29:[1,70]},u(v,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},u(R,[2,23],{30:[1,73]}),u(v,[2,15]),u(v,[2,28]),u(v,[2,29]),{11:59,30:z,34:74,39:24,40:k,41:27,42:f,43:l,44:b,45:M,46:Z,47:J,48:w,49:K,50:Q,51:G},u(v,[2,35]),u(v,[2,19]),{25:75,27:64,29:T},u(R,[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:X(function(i,N){if(N.recoverable)this.trace(i);else{var V=Error(i);throw V.hash=N,V}},"parseError"),parse:X(function(i){var N=this,V=[0],h=[],r=[null],m=[],$=this.table,y="",p=0,e=0,_=0,b0=2,B0=1,k0=m.slice.call(arguments,1),f0=Object.create(this.lexer),D0={yy:{}};for(var P0 in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,P0))D0.yy[P0]=this.yy[P0];if(f0.setInput(i,D0.yy),D0.yy.lexer=f0,D0.yy.parser=this,typeof f0.yylloc>"u")f0.yylloc={};var q0=f0.yylloc;m.push(q0);var m0=f0.options&&f0.options.ranges;if(typeof D0.yy.parseError==="function")this.parseError=D0.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function a0(n){V.length=V.length-2*n,r.length=r.length-n,m.length=m.length-n}X(a0,"popStack");function _0(){var n=h.pop()||f0.lex()||B0;if(typeof n!=="number"){if(n instanceof Array)h=n,n=h.pop();n=N.symbols_[n]||n}return n}X(_0,"lex");var w0,v0,T0,Z0,F0,u0,M0={},X0,S0,Y0,h0;while(!0){if(T0=V[V.length-1],this.defaultActions[T0])Z0=this.defaultActions[T0];else{if(w0===null||typeof w0>"u")w0=_0();Z0=$[T0]&&$[T0][w0]}if(typeof Z0>"u"||!Z0.length||!Z0[0]){var J0="";h0=[];for(X0 in $[T0])if(this.terminals_[X0]&&X0>b0)h0.push("'"+this.terminals_[X0]+"'");if(f0.showPosition)J0="Parse error on line "+(p+1)+`:
`+f0.showPosition()+`
Expecting `+h0.join(", ")+", got '"+(this.terminals_[w0]||w0)+"'";else J0="Parse error on line "+(p+1)+": Unexpected "+(w0==B0?"end of input":"'"+(this.terminals_[w0]||w0)+"'");this.parseError(J0,{text:f0.match,token:this.terminals_[w0]||w0,line:f0.yylineno,loc:q0,expected:h0})}if(Z0[0]instanceof Array&&Z0.length>1)throw Error("Parse Error: multiple actions possible at state: "+T0+", token: "+w0);switch(Z0[0]){case 1:if(V.push(w0),r.push(f0.yytext),m.push(f0.yylloc),V.push(Z0[1]),w0=null,!v0){if(e=f0.yyleng,y=f0.yytext,p=f0.yylineno,q0=f0.yylloc,_>0)_--}else w0=v0,v0=null;break;case 2:if(S0=this.productions_[Z0[1]][1],M0.$=r[r.length-S0],M0._$={first_line:m[m.length-(S0||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-(S0||1)].first_column,last_column:m[m.length-1].last_column},m0)M0._$.range=[m[m.length-(S0||1)].range[0],m[m.length-1].range[1]];if(u0=this.performAction.apply(M0,[y,e,p,D0.yy,Z0[1],r,m].concat(k0)),typeof u0<"u")return u0;if(S0)V=V.slice(0,-1*S0*2),r=r.slice(0,-1*S0),m=m.slice(0,-1*S0);V.push(this.productions_[Z0[1]][0]),r.push(M0.$),m.push(M0._$),Y0=$[V[V.length-2]][V[V.length-1]],V.push(Y0);break;case 3:return!0}}return!0},"parse")},a=function(){var O={EOF:1,parseError:X(function(N,V){if(this.yy.parser)this.yy.parser.parseError(N,V);else throw Error(N)},"parseError"),setInput:X(function(i,N){if(this.yy=N||this.yy||{},this._input=i,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:X(function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var N=i.match(/(?:\r\n?|\n).*/g);if(N)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),i},"input"),unput:X(function(i){var N=i.length,V=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-N),this.offset-=N;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),V.length-1)this.yylineno-=V.length-1;var r=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===h.length?this.yylloc.first_column:0)+h[h.length-V.length].length-V[0].length:this.yylloc.first_column-N},this.options.ranges)this.yylloc.range=[r[0],r[0]+this.yyleng-N];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(i){this.unput(this.match.slice(i))},"less"),pastInput:X(function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var i=this.match;if(i.length<20)i+=this._input.substr(0,20-i.length);return(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var i=this.pastInput(),N=Array(i.length+1).join("-");return i+this.upcomingInput()+`
`+N+"^"},"showPosition"),test_match:X(function(i,N){var V,h,r;if(this.options.backtrack_lexer){if(r={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)r.yylloc.range=this.yylloc.range.slice(0)}if(h=i[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+i[0].length},this.yytext+=i[0],this.match+=i[0],this.matches=i,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(i[0].length),this.matched+=i[0],V=this.performAction.call(this,this.yy,this,N,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(V)return V;else if(this._backtrack){for(var m in r)this[m]=r[m];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var i,N,V,h;if(!this._more)this.yytext="",this.match="";var r=this._currentRules();for(var m=0;m<r.length;m++)if(V=this._input.match(this.rules[r[m]]),V&&(!N||V[0].length>N[0].length)){if(N=V,h=m,this.options.backtrack_lexer)if(i=this.test_match(V,r[m]),i!==!1)return i;else if(this._backtrack){N=!1;continue}else return!1;else if(!this.options.flex)break}if(N){if(i=this.test_match(N,r[h]),i!==!1)return i;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:X(function(){var N=this.next();if(N)return N;else return this.lex()},"lex"),begin:X(function(N){this.conditionStack.push(N)},"begin"),popState:X(function(){var N=this.conditionStack.length-1;if(N>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(N){if(N=this.conditionStack.length-1-Math.abs(N||0),N>=0)return this.conditionStack[N];else return"INITIAL"},"topState"),pushState:X(function(N){this.begin(N)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(N,V,h,r){var m=r;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 O}();Y.lexer=a;function I(){this.yy={}}return X(I,"Parser"),I.prototype=Y,Y.Parser=I,new I}();bD0.parser=bD0;Mi4=bD0;X(MD0,"isBarPlot");X(vc,"isBandAxisData");X(gL,"isLinearAxisData");e6u=class{constructor(u){this.parentGroup=u}static{X(this,"TextDimensionCalculatorWithFont")}getMaxDimension(u,B){if(!this.parentGroup)return{width:u.reduce((C,D)=>Math.max(D.length,C),0)*B,height:B};let E={width:0,height:0},A=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",B);for(let C of u){let D=C30(A,1,C),F=D?D.width:C.length*B,U=D?D.height:B;E.width=Math.max(E.width,F),E.height=Math.max(E.height,U)}return A.remove(),E}},u9u=class{constructor(u,B,E,A){this.axisConfig=u,this.title=B,this.textDimensionCalculator=E,this.axisThemeConfig=A,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{X(this,"BaseAxis")}setRange(u){if(this.range=u,this.axisPosition==="left"||this.axisPosition==="right")this.boundingRect.height=u[1]-u[0];else this.boundingRect.width=u[1]-u[0];this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(u){this.axisPosition=u,this.setRange(this.range)}getTickDistance(){let u=this.getRange();return Math.abs(u[0]-u[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map((u)=>u.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){if(o6u*this.getTickDistance()>this.outerPadding*2)this.outerPadding=Math.floor(o6u*this.getTickDistance()/2);this.recalculateScale()}calculateSpaceIfDrawnHorizontally(u){let B=u.height;if(this.axisConfig.showAxisLine&&B>this.axisConfig.axisLineWidth)B-=this.axisConfig.axisLineWidth,this.showAxisLine=!0;if(this.axisConfig.showLabel){let E=this.getLabelDimension(),A=t6u*u.width;this.outerPadding=Math.min(E.width/2,A);let C=E.height;if(this.axisPosition==="bottom"&&this.normalizedLabelRotationInRad!==0)C=Math.max(C,Math.abs(Math.sin(this.normalizedLabelRotationInRad)*E.width)+Math.abs(Math.cos(this.normalizedLabelRotationInRad)*E.height));if(C+=this.axisConfig.labelPadding*2,this.labelTextHeight=E.height,C<=B)B-=C,this.showLabel=!0}if(this.axisConfig.showTick&&B>=this.axisConfig.tickLength)this.showTick=!0,B-=this.axisConfig.tickLength;if(this.axisConfig.showTitle&&this.title){let E=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),A=E.height+this.axisConfig.titlePadding*2;if(this.titleTextHeight=E.height,A<=B)B-=A,this.showTitle=!0}this.boundingRect.width=u.width,this.boundingRect.height=u.height-B}calculateSpaceIfDrawnVertical(u){let B=u.width;if(this.axisConfig.showAxisLine&&B>this.axisConfig.axisLineWidth)B-=this.axisConfig.axisLineWidth,this.showAxisLine=!0;if(this.axisConfig.showLabel){let E=this.getLabelDimension(),A=t6u*u.height;this.outerPadding=Math.min(E.height/2,A);let C=E.width+this.axisConfig.labelPadding*2;if(C<=B)B-=C,this.showLabel=!0}if(this.axisConfig.showTick&&B>=this.axisConfig.tickLength)this.showTick=!0,B-=this.axisConfig.tickLength;if(this.axisConfig.showTitle&&this.title){let E=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),A=E.height+this.axisConfig.titlePadding*2;if(this.titleTextHeight=E.height,A<=B)B-=A,this.showTitle=!0}this.boundingRect.width=u.width-B,this.boundingRect.height=u.height}calculateSpace(u){if(this.axisPosition==="left"||this.axisPosition==="right")this.calculateSpaceIfDrawnVertical(u);else this.calculateSpaceIfDrawnHorizontally(u);return this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(u){this.boundingRect.x=u.x,this.boundingRect.y=u.y}calculateOffsetByRotation(u){let B=this.normalizedLabelRotationInRad;if(B===0)return 0;return Math.sin(B)*this.getLabelDimension()[u]/2}getDrawableElementsForLeftAxis(){let u=[];if(this.showAxisLine){let B=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;u.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${B},${this.boundingRect.y} L ${B},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)u.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map((B)=>({text:B.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(B),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))});if(this.showTick){let B=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);u.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map((E)=>({path:`M ${B},${this.getScaleValue(E)} L ${B-this.axisConfig.tickLength},${this.getScaleValue(E)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)u.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 u}getDrawableElementsForBottomAxis(){let u=[];if(this.showAxisLine){let B=this.boundingRect.y+this.axisConfig.axisLineWidth/2;u.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${B} L ${this.boundingRect.x+this.boundingRect.width},${B}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)u.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map((B)=>({text:B.toString(),x:this.getScaleValue(B)+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 B=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);u.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map((E)=>({path:`M ${this.getScaleValue(E)},${B} L ${this.getScaleValue(E)},${B+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)u.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 u}getDrawableElementsForTopAxis(){let u=[];if(this.showAxisLine){let B=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;u.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${B} L ${this.boundingRect.x+this.boundingRect.width},${B}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)u.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map((B)=>({text:B.toString(),x:this.getScaleValue(B),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 B=this.boundingRect.y;u.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map((E)=>({path:`M ${this.getScaleValue(E)},${B+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(E)},${B+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)u.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 u}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[]}},Zi4=class extends u9u{static{X(this,"BandAxis")}constructor(u,B,E,A,C){super(u,A,C,B);this.categories=E,this.scale=EG().domain(this.categories).range(this.getRange())}setRange(u){super.setRange(u)}recalculateScale(){this.scale=EG().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(0.5),z0.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(u){return this.scale(u)??this.getRange()[0]}},Ji4=class extends u9u{static{X(this,"LinearAxis")}constructor(u,B,E,A,C){super(u,A,C,B);this.domain=E,this.scale=lC().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let u=[...this.domain];if(this.axisPosition==="left")u.reverse();this.scale=lC().domain(u).range(this.getRange())}getScaleValue(u){return this.scale(u)}};X(ZD0,"getAxis");wi4=class{constructor(u,B,E,A){this.textDimensionCalculator=u,this.chartConfig=B,this.chartData=E,this.chartThemeConfig=A,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{X(this,"ChartTitle")}setBoundingBoxXY(u){this.boundingRect.x=u.x,this.boundingRect.y=u.y}calculateSpace(u){let B=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),E=Math.max(B.width,u.width),A=B.height+2*this.chartConfig.titlePadding;if(B.width<=E&&B.height<=A&&this.chartConfig.showTitle&&this.chartData.title)this.boundingRect.width=E,this.boundingRect.height=A,this.showChartTitle=!0;return{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let u=[];if(this.showChartTitle)u.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 u}};X(B9u,"getChartTitleComponent");Ki4=class{constructor(u,B,E,A,C){this.plotData=u,this.xAxis=B,this.yAxis=E,this.orientation=A,this.plotIndex=C}static{X(this,"LinePlot")}getDrawableElement(){let u=this.plotData.data.map((A)=>[this.xAxis.getScaleValue(A[0]),this.yAxis.getScaleValue(A[1])]),B;if(this.orientation==="horizontal")B=wC().y((A)=>A[0]).x((A)=>A[1])(u);else B=wC().x((A)=>A[0]).y((A)=>A[1])(u);if(!B)return[];let E=[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:B,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}];if(this.plotData.pointLabels&&this.plotData.pointLabels.length>0){let D=[];for(let[F,[U,z]]of u.entries()){let k=this.plotData.pointLabels[F];if(!k)continue;if(this.orientation==="horizontal")D.push({x:z+10,y:U,text:k,fill:this.plotData.strokeFill,verticalPos:"middle",horizontalPos:"left",fontSize:12,rotation:0});else D.push({x:U,y:z-10,text:k,fill:this.plotData.strokeFill,verticalPos:"middle",horizontalPos:"center",fontSize:12,rotation:0})}if(D.length>0)E.push({groupTexts:["plot",`line-plot-${this.plotIndex}`,"labels"],type:"text",data:D})}return E}},Qi4=class{constructor(u,B,E,A,C,D){this.barData=u,this.boundingRect=B,this.xAxis=E,this.yAxis=A,this.orientation=C,this.plotIndex=D}static{X(this,"BarPlot")}getDrawableElement(){let u=this.barData.data.map((C)=>[this.xAxis.getScaleValue(C[0]),this.yAxis.getScaleValue(C[1])]),B=0.05,E=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*0.95,A=E/2;if(this.orientation==="horizontal")return[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:u.map((C)=>({x:this.boundingRect.x,y:C[0]-A,height:E,width:C[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}];return[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:u.map((C)=>({x:C[0]-A,y:C[1],width:E,height:this.boundingRect.y+this.boundingRect.height-C[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},Gi4=class{constructor(u,B,E){this.chartConfig=u,this.chartData=B,this.chartThemeConfig=E,this.boundingRect={x:0,y:0,width:0,height:0}}static{X(this,"BasePlot")}setAxes(u,B){this.xAxis=u,this.yAxis=B}setBoundingBoxXY(u){this.boundingRect.x=u.x,this.boundingRect.y=u.y}calculateSpace(u){return this.boundingRect.width=u.width,this.boundingRect.height=u.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 u=[];for(let[B,E]of this.chartData.plots.entries())switch(E.type){case"line":{let A=new Ki4(E,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,B);u.push(...A.getDrawableElement())}break;case"bar":{let A=new Qi4(E,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,B);u.push(...A.getDrawableElement())}break}return u}};X(E9u,"getPlotComponent");Hi4=class{constructor(u,B,E,A){this.chartConfig=u,this.chartData=B,this.componentStore={title:B9u(u,B,E,A),plot:E9u(u,B,E),xAxis:ZD0(B.xAxis,u.xAxis,{titleColor:E.xAxisTitleColor,labelColor:E.xAxisLabelColor,tickColor:E.xAxisTickColor,axisLineColor:E.xAxisLineColor},A),yAxis:ZD0(B.yAxis,u.yAxis,{titleColor:E.yAxisTitleColor,labelColor:E.yAxisLabelColor,tickColor:E.yAxisTickColor,axisLineColor:E.yAxisLineColor},A)}}static{X(this,"Orchestrator")}calculateVerticalSpace(){let u=this.chartConfig.width,B=this.chartConfig.height,E=0,A=0,C=Math.floor(u*this.chartConfig.plotReservedSpacePercent/100),D=Math.floor(B*this.chartConfig.plotReservedSpacePercent/100),F=this.componentStore.plot.calculateSpace({width:C,height:D});if(u-=F.width,B-=F.height,F=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:B}),A=F.height,B-=F.height,this.componentStore.xAxis.setAxisPosition("bottom"),F=this.componentStore.xAxis.calculateSpace({width:u,height:B}),B-=F.height,this.componentStore.yAxis.setAxisPosition("left"),F=this.componentStore.yAxis.calculateSpace({width:u,height:B}),E=F.width,u-=F.width,u>0)C+=u,u=0;if(B>0)D+=B,B=0;if(this.componentStore.plot.calculateSpace({width:C,height:D}),this.componentStore.plot.setBoundingBoxXY({x:E,y:A}),this.componentStore.xAxis.setRange([E,E+C]),this.componentStore.xAxis.setBoundingBoxXY({x:E,y:A+D}),this.componentStore.yAxis.setRange([A,A+D]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:A}),this.chartData.plots.some((U)=>MD0(U)))this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let u=this.chartConfig.width,B=this.chartConfig.height,E=0,A=0,C=0,D=Math.floor(u*this.chartConfig.plotReservedSpacePercent/100),F=Math.floor(B*this.chartConfig.plotReservedSpacePercent/100),U=this.componentStore.plot.calculateSpace({width:D,height:F});if(u-=U.width,B-=U.height,U=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:B}),E=U.height,B-=U.height,this.componentStore.xAxis.setAxisPosition("left"),U=this.componentStore.xAxis.calculateSpace({width:u,height:B}),u-=U.width,A=U.width,this.componentStore.yAxis.setAxisPosition("top"),U=this.componentStore.yAxis.calculateSpace({width:u,height:B}),B-=U.height,C=E+U.height,u>0)D+=u,u=0;if(B>0)F+=B,B=0;if(this.componentStore.plot.calculateSpace({width:D,height:F}),this.componentStore.plot.setBoundingBoxXY({x:A,y:C}),this.componentStore.yAxis.setRange([A,A+D]),this.componentStore.yAxis.setBoundingBoxXY({x:A,y:E}),this.componentStore.xAxis.setRange([C,C+F]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:C}),this.chartData.plots.some((z)=>MD0(z)))this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){if(this.chartConfig.chartOrientation==="horizontal")this.calculateHorizontalSpace();else this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let u=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let B of Object.values(this.componentStore))u.push(...B.getDrawableElements());return u}},Li4=class{static{X(this,"XYChartBuilder")}static build(u,B,E,A){return new Hi4(u,B,E,A).getDrawableElement()}},WR=QD0(),YR=KD0(),R1=GD0(),JD0=YR.plotColorPalette.split(",").map((u)=>u.trim());X(KD0,"getChartDefaultThemeConfig");X(QD0,"getChartDefaultConfig");X(GD0,"getChartDefaultData");X(RR,"textSanitizer");X(C9u,"setTmpSVGG");X(D9u,"setOrientation");X(F9u,"setXAxisTitle");X(HD0,"setXAxisRangeData");X(U9u,"setXAxisBand");X(z9u,"setYAxisTitle");X(k9u,"setYAxisRangeData");X(f9u,"setYAxisRangeFromPlotData");X(LD0,"transformDataWithoutCategory");X(qD0,"getPlotColorFromPalette");X(l9u,"setLineData");X(b9u,"setBarData");X(M9u,"getDrawableElem");X(Z9u,"getChartThemeConfig");X(J9u,"getChartConfig");X(w9u,"getXYChartData");qi4=X(function(){D3(),SR=0,WR=QD0(),R1=GD0(),YR=KD0(),JD0=YR.plotColorPalette.split(",").map((u)=>u.trim()),Sc=!1,wD0=!1},"clear"),Xi4={getDrawableElem:M9u,clear:qi4,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,getAccDescription:q3,setAccDescription:L3,setOrientation:D9u,setXAxisTitle:F9u,setXAxisRangeData:HD0,setXAxisBand:U9u,setYAxisTitle:z9u,setYAxisRangeData:k9u,setLineData:l9u,setBarData:b9u,setTmpSVGG:C9u,getChartThemeConfig:Z9u,getChartConfig:J9u,getXYChartData:w9u},xi4=X((u,B,E,A)=>{let C=A.db,D=C.getChartThemeConfig(),F=C.getChartConfig(),U=C.getXYChartData().plots[0].data.map((G)=>G[1]);function z(G){return G==="top"?"text-before-edge":"middle"}X(z,"getDominantBaseLine");function k(G){return G==="left"?"start":G==="right"?"end":"middle"}X(k,"getTextAnchor");function f(G){return`translate(${G.x}, ${G.y}) rotate(${G.rotation||0})`}X(f,"getTextTransformation"),z0.debug(`Rendering xychart chart
`+u);let l=N1(B),b=l.append("g").attr("class","main"),M=b.append("rect").attr("width",F.width).attr("height",F.height).attr("class","background");y3(l,F.height,F.width,!0),l.attr("viewBox",`0 0 ${F.width} ${F.height}`),M.attr("fill",D.backgroundColor),C.setTmpSVGG(l.append("g").attr("class","mermaid-tmp-group"));let Z=C.getDrawableElem(),J={};function w(G){let L=b,H="";for(let[q]of G.entries()){let x=b;if(q>0&&J[H])x=J[H];if(H+=G[q],L=J[H],!L)L=J[H]=x.append("g").attr("class",G[q])}return L}X(w,"getGroup");for(let G of Z){if(G.data.length===0)continue;let L=w(G.groupTexts);switch(G.type){case"rect":if(L.selectAll("rect").data(G.data).enter().append("rect").attr("x",(H)=>H.x).attr("y",(H)=>H.y).attr("width",(H)=>H.width).attr("height",(H)=>H.height).attr("fill",(H)=>H.fill).attr("stroke",(H)=>H.strokeFill).attr("stroke-width",(H)=>H.strokeWidth),F.showDataLabel){let H=F.showDataLabelOutsideBar;if(F.chartOrientation==="horizontal"){let q=function(Y,a){let{data:I,label:O}=Y;return a*O.length*x<=I.width-v};var K=q;X(q,"fitsHorizontally");let x=0.7,v=10,W=G.data.map((Y,a)=>({data:Y,label:U[a].toString()})).filter((Y)=>Y.data.width>0&&Y.data.height>0),S=W.map((Y)=>{let{data:a}=Y,I=a.height*0.7;while(!q(Y,I)&&I>0)I-=1;return I}),T=Math.floor(Math.min(...S)),R=X((Y)=>{if(H)return Y.data.x+Y.data.width+v;else return Y.data.x+Y.data.width-v},"determineLabelXPosition");L.selectAll("text").data(W).enter().append("text").attr("x",R).attr("y",(Y)=>Y.data.y+Y.data.height/2).attr("text-anchor",H?"start":"end").attr("dominant-baseline","middle").attr("fill",D.dataLabelColor).attr("font-size",`${T}px`).text((Y)=>Y.label)}else{let q=function(R,Y,a){let{data:I,label:O}=R,i=0.7,N=Y*O.length*0.7,V=I.x+I.width/2,h=V-N/2,r=V+N/2,m=h>=I.x&&r<=I.x+I.width,$=I.y+a+Y<=I.y+I.height;return m&&$};var Q=q;X(q,"fitsInBar");let x=10,v=G.data.map((R,Y)=>({data:R,label:U[Y].toString()})).filter((R)=>R.data.width>0&&R.data.height>0),W=v.map((R)=>{let{data:Y,label:a}=R,I=Y.width/(a.length*0.7);while(!q(R,I,x)&&I>0)I-=1;return I}),S=Math.floor(Math.min(...W)),T=X((R)=>{if(H)return R.data.y-x;else return R.data.y+x},"determineLabelYPosition");L.selectAll("text").data(v).enter().append("text").attr("x",(R)=>R.data.x+R.data.width/2).attr("y",T).attr("text-anchor","middle").attr("dominant-baseline",H?"auto":"hanging").attr("fill",D.dataLabelColor).attr("font-size",`${S}px`).text((R)=>R.label)}}break;case"text":L.selectAll("text").data(G.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",(H)=>H.fill).attr("font-size",(H)=>H.fontSize).attr("dominant-baseline",(H)=>z(H.verticalPos)).attr("text-anchor",(H)=>k(H.horizontalPos)).attr("transform",(H)=>f(H)).text((H)=>H.text);break;case"path":L.selectAll("path").data(G.data).enter().append("path").attr("d",(H)=>H.path).attr("fill",(H)=>H.fill?H.fill:"none").attr("stroke",(H)=>H.strokeFill).attr("stroke-width",(H)=>H.strokeWidth);break}}},"draw"),vi4={draw:xi4},Si4={parser:Mi4,db:Xi4,renderer:vi4}});var H9u={};ju(H9u,{diagram:()=>Pi4});var XD0,Wi4,Yi4,Ri4,Ti4,Oi4,G9u,Ii4,Pi4;var L9u=g(()=>{ME();Q8();J8();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();XD0=function(){var u=X(function(J0,n,d,H0){for(d=d||{},H0=J0.length;H0--;d[J0[H0]]=n);return d},"o"),B=[1,3],E=[1,4],A=[1,5],C=[1,6],D=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],F=[1,22],U=[2,7],z=[1,26],k=[1,27],f=[1,28],l=[1,29],b=[1,33],M=[1,34],Z=[1,35],J=[1,36],w=[1,37],K=[1,38],Q=[1,24],G=[1,31],L=[1,32],H=[1,30],q=[1,39],x=[1,40],v=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],W=[1,61],S=[89,90],T=[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],R=[27,29],Y=[1,70],a=[1,71],I=[1,72],O=[1,73],i=[1,74],N=[1,75],V=[1,76],h=[1,83],r=[1,80],m=[1,84],$=[1,85],y=[1,86],p=[1,87],e=[1,88],_=[1,89],b0=[1,90],B0=[1,91],k0=[1,92],f0=[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],D0=[63,64],P0=[1,101],q0=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],m0=[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],a0=[1,110],_0=[1,106],w0=[1,107],v0=[1,108],T0=[1,109],Z0=[1,111],F0=[1,116],u0=[1,117],M0=[1,114],X0=[1,115],S0={trace:X(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:X(function(n,d,H0,o,L0,E0,r0){var c0=E0.length-1;switch(L0){case 4:this.$=E0[c0].trim(),o.setAccTitle(this.$);break;case 5:case 6:this.$=E0[c0].trim(),o.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:o.setDirection("TB");break;case 18:o.setDirection("BT");break;case 19:o.setDirection("RL");break;case 20:o.setDirection("LR");break;case 21:o.addRequirement(E0[c0-3],E0[c0-4]);break;case 22:o.addRequirement(E0[c0-5],E0[c0-6]),o.setClass([E0[c0-5]],E0[c0-3]);break;case 23:o.setNewReqId(E0[c0-2]);break;case 24:o.setNewReqText(E0[c0-2]);break;case 25:o.setNewReqRisk(E0[c0-2]);break;case 26:o.setNewReqVerifyMethod(E0[c0-2]);break;case 29:this.$=o.RequirementType.REQUIREMENT;break;case 30:this.$=o.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=o.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=o.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=o.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=o.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=o.RiskLevel.LOW_RISK;break;case 36:this.$=o.RiskLevel.MED_RISK;break;case 37:this.$=o.RiskLevel.HIGH_RISK;break;case 38:this.$=o.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=o.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=o.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=o.VerifyType.VERIFY_TEST;break;case 42:o.addElement(E0[c0-3]);break;case 43:o.addElement(E0[c0-5]),o.setClass([E0[c0-5]],E0[c0-3]);break;case 44:o.setNewElementType(E0[c0-2]);break;case 45:o.setNewElementDocRef(E0[c0-2]);break;case 48:o.addRelationship(E0[c0-2],E0[c0],E0[c0-4]);break;case 49:o.addRelationship(E0[c0-2],E0[c0-4],E0[c0]);break;case 50:this.$=o.Relationships.CONTAINS;break;case 51:this.$=o.Relationships.COPIES;break;case 52:this.$=o.Relationships.DERIVES;break;case 53:this.$=o.Relationships.SATISFIES;break;case 54:this.$=o.Relationships.VERIFIES;break;case 55:this.$=o.Relationships.REFINES;break;case 56:this.$=o.Relationships.TRACES;break;case 57:this.$=E0[c0-2],o.defineClass(E0[c0-1],E0[c0]);break;case 58:o.setClass(E0[c0-1],E0[c0]);break;case 59:o.setClass([E0[c0-2]],E0[c0]);break;case 60:case 62:this.$=[E0[c0]];break;case 61:case 63:this.$=E0[c0-2].concat([E0[c0]]);break;case 64:this.$=E0[c0-2],o.setCssStyle(E0[c0-1],E0[c0]);break;case 65:this.$=[E0[c0]];break;case 66:E0[c0-2].push(E0[c0]),this.$=E0[c0-2];break;case 68:this.$=E0[c0-1]+E0[c0];break}},"anonymous"),table:[{3:1,4:2,6:B,9:E,11:A,13:C},{1:[3]},{3:8,4:2,5:[1,7],6:B,9:E,11:A,13:C},{5:[1,9]},{10:[1,10]},{12:[1,11]},u(D,[2,6]),{3:12,4:2,6:B,9:E,11:A,13:C},{1:[2,2]},{4:17,5:F,7:13,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},u(D,[2,4]),u(D,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:F,7:42,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:43,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:44,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:45,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:46,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:47,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:48,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:49,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{4:17,5:F,7:50,8:U,9:E,11:A,13:C,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:z,22:k,23:f,24:l,25:23,33:25,41:b,42:M,43:Z,44:J,45:w,46:K,54:Q,72:G,74:L,77:H,89:q,90:x},{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]},u(v,[2,17]),u(v,[2,18]),u(v,[2,19]),u(v,[2,20]),{30:60,33:62,75:W,89:q,90:x},{30:63,33:62,75:W,89:q,90:x},{30:64,33:62,75:W,89:q,90:x},u(S,[2,29]),u(S,[2,30]),u(S,[2,31]),u(S,[2,32]),u(S,[2,33]),u(S,[2,34]),u(T,[2,81]),u(T,[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]},u(R,[2,79]),u(R,[2,80]),{27:[1,67],29:[1,68]},u(R,[2,85]),u(R,[2,86]),{62:69,65:Y,66:a,67:I,68:O,69:i,70:N,71:V},{62:77,65:Y,66:a,67:I,68:O,69:i,70:N,71:V},{30:78,33:62,75:W,89:q,90:x},{73:79,75:h,76:r,78:81,79:82,80:m,81:$,82:y,83:p,84:e,85:_,86:b0,87:B0,88:k0},u(f0,[2,60]),u(f0,[2,62]),{73:93,75:h,76:r,78:81,79:82,80:m,81:$,82:y,83:p,84:e,85:_,86:b0,87:B0,88:k0},{30:94,33:62,75:W,76:r,89:q,90:x},{5:[1,95]},{30:96,33:62,75:W,89:q,90:x},{5:[1,97]},{30:98,33:62,75:W,89:q,90:x},{63:[1,99]},u(D0,[2,50]),u(D0,[2,51]),u(D0,[2,52]),u(D0,[2,53]),u(D0,[2,54]),u(D0,[2,55]),u(D0,[2,56]),{64:[1,100]},u(v,[2,59],{76:r}),u(v,[2,64],{76:P0}),{33:103,75:[1,102],89:q,90:x},u(q0,[2,65],{79:104,75:h,80:m,81:$,82:y,83:p,84:e,85:_,86:b0,87:B0,88:k0}),u(m0,[2,67]),u(m0,[2,69]),u(m0,[2,70]),u(m0,[2,71]),u(m0,[2,72]),u(m0,[2,73]),u(m0,[2,74]),u(m0,[2,75]),u(m0,[2,76]),u(m0,[2,77]),u(m0,[2,78]),u(v,[2,57],{76:P0}),u(v,[2,58],{76:r}),{5:a0,28:105,31:_0,34:w0,36:v0,38:T0,40:Z0},{27:[1,112],76:r},{5:F0,40:u0,56:113,57:M0,59:X0},{27:[1,118],76:r},{33:119,89:q,90:x},{33:120,89:q,90:x},{75:h,78:121,79:82,80:m,81:$,82:y,83:p,84:e,85:_,86:b0,87:B0,88:k0},u(f0,[2,61]),u(f0,[2,63]),u(m0,[2,68]),u(v,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:a0,28:126,31:_0,34:w0,36:v0,38:T0,40:Z0},u(v,[2,28]),{5:[1,127]},u(v,[2,42]),{32:[1,128]},{32:[1,129]},{5:F0,40:u0,56:130,57:M0,59:X0},u(v,[2,47]),{5:[1,131]},u(v,[2,48]),u(v,[2,49]),u(q0,[2,66],{79:104,75:h,80:m,81:$,82:y,83:p,84:e,85:_,86:b0,87:B0,88:k0}),{33:132,89:q,90:x},{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]},u(v,[2,27]),{5:a0,28:145,31:_0,34:w0,36:v0,38:T0,40:Z0},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},u(v,[2,46]),{5:F0,40:u0,56:152,57:M0,59:X0},{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]},u(v,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},u(v,[2,43]),{5:a0,28:159,31:_0,34:w0,36:v0,38:T0,40:Z0},{5:a0,28:160,31:_0,34:w0,36:v0,38:T0,40:Z0},{5:a0,28:161,31:_0,34:w0,36:v0,38:T0,40:Z0},{5:a0,28:162,31:_0,34:w0,36:v0,38:T0,40:Z0},{5:F0,40:u0,56:163,57:M0,59:X0},{5:F0,40:u0,56:164,57:M0,59:X0},u(v,[2,23]),u(v,[2,24]),u(v,[2,25]),u(v,[2,26]),u(v,[2,44]),u(v,[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:X(function(n,d){if(d.recoverable)this.trace(n);else{var H0=Error(n);throw H0.hash=d,H0}},"parseError"),parse:X(function(n){var d=this,H0=[0],o=[],L0=[null],E0=[],r0=this.table,c0="",p0=0,g0=0,Bu=0,n0=2,e0=1,t0=E0.slice.call(arguments,1),zu=Object.create(this.lexer),W0={yy:{}};for(var $u in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,$u))W0.yy[$u]=this.yy[$u];if(zu.setInput(n,W0.yy),W0.yy.lexer=zu,W0.yy.parser=this,typeof zu.yylloc>"u")zu.yylloc={};var i0=zu.yylloc;E0.push(i0);var vu=zu.options&&zu.options.ranges;if(typeof W0.yy.parseError==="function")this.parseError=W0.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function cu(ru){H0.length=H0.length-2*ru,L0.length=L0.length-ru,E0.length=E0.length-ru}X(cu,"popStack");function Du(){var ru=o.pop()||zu.lex()||e0;if(typeof ru!=="number"){if(ru instanceof Array)o=ru,ru=o.pop();ru=d.symbols_[ru]||ru}return ru}X(Du,"lex");var Nu,du,Iu,x0,Tu,Vu,Zu={},I0,lu,Hu,Ru;while(!0){if(Iu=H0[H0.length-1],this.defaultActions[Iu])x0=this.defaultActions[Iu];else{if(Nu===null||typeof Nu>"u")Nu=Du();x0=r0[Iu]&&r0[Iu][Nu]}if(typeof x0>"u"||!x0.length||!x0[0]){var W4="";Ru=[];for(I0 in r0[Iu])if(this.terminals_[I0]&&I0>n0)Ru.push("'"+this.terminals_[I0]+"'");if(zu.showPosition)W4="Parse error on line "+(p0+1)+`:
`+zu.showPosition()+`
Expecting `+Ru.join(", ")+", got '"+(this.terminals_[Nu]||Nu)+"'";else W4="Parse error on line "+(p0+1)+": Unexpected "+(Nu==e0?"end of input":"'"+(this.terminals_[Nu]||Nu)+"'");this.parseError(W4,{text:zu.match,token:this.terminals_[Nu]||Nu,line:zu.yylineno,loc:i0,expected:Ru})}if(x0[0]instanceof Array&&x0.length>1)throw Error("Parse Error: multiple actions possible at state: "+Iu+", token: "+Nu);switch(x0[0]){case 1:if(H0.push(Nu),L0.push(zu.yytext),E0.push(zu.yylloc),H0.push(x0[1]),Nu=null,!du){if(g0=zu.yyleng,c0=zu.yytext,p0=zu.yylineno,i0=zu.yylloc,Bu>0)Bu--}else Nu=du,du=null;break;case 2:if(lu=this.productions_[x0[1]][1],Zu.$=L0[L0.length-lu],Zu._$={first_line:E0[E0.length-(lu||1)].first_line,last_line:E0[E0.length-1].last_line,first_column:E0[E0.length-(lu||1)].first_column,last_column:E0[E0.length-1].last_column},vu)Zu._$.range=[E0[E0.length-(lu||1)].range[0],E0[E0.length-1].range[1]];if(Vu=this.performAction.apply(Zu,[c0,g0,p0,W0.yy,x0[1],L0,E0].concat(t0)),typeof Vu<"u")return Vu;if(lu)H0=H0.slice(0,-1*lu*2),L0=L0.slice(0,-1*lu),E0=E0.slice(0,-1*lu);H0.push(this.productions_[x0[1]][0]),L0.push(Zu.$),E0.push(Zu._$),Hu=r0[H0[H0.length-2]][H0[H0.length-1]],H0.push(Hu);break;case 3:return!0}}return!0},"parse")},Y0=function(){var J0={EOF:1,parseError:X(function(d,H0){if(this.yy.parser)this.yy.parser.parseError(d,H0);else throw Error(d)},"parseError"),setInput:X(function(n,d){if(this.yy=d||this.yy||{},this._input=n,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:X(function(){var n=this._input[0];this.yytext+=n,this.yyleng++,this.offset++,this.match+=n,this.matched+=n;var d=n.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),n},"input"),unput:X(function(n){var d=n.length,H0=n.split(/(?:\r\n?|\n)/g);this._input=n+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;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),H0.length-1)this.yylineno-=H0.length-1;var L0=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:H0?(H0.length===o.length?this.yylloc.first_column:0)+o[o.length-H0.length].length-H0[0].length:this.yylloc.first_column-d},this.options.ranges)this.yylloc.range=[L0[0],L0[0]+this.yyleng-d];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(n){this.unput(this.match.slice(n))},"less"),pastInput:X(function(){var n=this.matched.substr(0,this.matched.length-this.match.length);return(n.length>20?"...":"")+n.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var n=this.match;if(n.length<20)n+=this._input.substr(0,20-n.length);return(n.substr(0,20)+(n.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var n=this.pastInput(),d=Array(n.length+1).join("-");return n+this.upcomingInput()+`
`+d+"^"},"showPosition"),test_match:X(function(n,d){var H0,o,L0;if(this.options.backtrack_lexer){if(L0={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)L0.yylloc.range=this.yylloc.range.slice(0)}if(o=n[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+n[0].length},this.yytext+=n[0],this.match+=n[0],this.matches=n,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(n[0].length),this.matched+=n[0],H0=this.performAction.call(this,this.yy,this,d,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(H0)return H0;else if(this._backtrack){for(var E0 in L0)this[E0]=L0[E0];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var n,d,H0,o;if(!this._more)this.yytext="",this.match="";var L0=this._currentRules();for(var E0=0;E0<L0.length;E0++)if(H0=this._input.match(this.rules[L0[E0]]),H0&&(!d||H0[0].length>d[0].length)){if(d=H0,o=E0,this.options.backtrack_lexer)if(n=this.test_match(H0,L0[E0]),n!==!1)return n;else if(this._backtrack){d=!1;continue}else return!1;else if(!this.options.flex)break}if(d){if(n=this.test_match(d,L0[o]),n!==!1)return n;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:X(function(){var d=this.next();if(d)return d;else return this.lex()},"lex"),begin:X(function(d){this.conditionStack.push(d)},"begin"),popState:X(function(){var d=this.conditionStack.length-1;if(d>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(d){if(d=this.conditionStack.length-1-Math.abs(d||0),d>=0)return this.conditionStack[d];else return"INITIAL"},"topState"),pushState:X(function(d){this.begin(d)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(d,H0,o,L0){var E0=L0;switch(o){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 H0.yytext=H0.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 J0}();S0.lexer=Y0;function h0(){this.yy={}}return X(h0,"Parser"),h0.prototype=S0,S0.Parser=h0,new h0}();XD0.parser=XD0;Wi4=XD0,Yi4=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=w3,this.getAccTitle=H3,this.setAccDescription=L3,this.getAccDescription=q3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,this.getConfig=X(()=>$0().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{X(this,"RequirementDB")}getDirection(){return this.direction}setDirection(u){this.direction=u}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(u,B){if(!this.requirements.has(u))this.requirements.set(u,{name:u,type:B,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(u)}getRequirements(){return this.requirements}setNewReqId(u){if(this.latestRequirement!==void 0)this.latestRequirement.requirementId=u}setNewReqText(u){if(this.latestRequirement!==void 0)this.latestRequirement.text=u}setNewReqRisk(u){if(this.latestRequirement!==void 0)this.latestRequirement.risk=u}setNewReqVerifyMethod(u){if(this.latestRequirement!==void 0)this.latestRequirement.verifyMethod=u}addElement(u){if(!this.elements.has(u))this.elements.set(u,{name:u,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),z0.info("Added new element: ",u);return this.resetLatestElement(),this.elements.get(u)}getElements(){return this.elements}setNewElementType(u){if(this.latestElement!==void 0)this.latestElement.type=u}setNewElementDocRef(u){if(this.latestElement!==void 0)this.latestElement.docRef=u}addRelationship(u,B,E){this.relations.push({type:u,src:B,dst:E})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,D3()}setCssStyle(u,B){for(let E of u){let A=this.requirements.get(E)??this.elements.get(E);if(!B||!A)return;for(let C of B)if(C.includes(","))A.cssStyles.push(...C.split(","));else A.cssStyles.push(C)}}setClass(u,B){for(let E of u){let A=this.requirements.get(E)??this.elements.get(E);if(A)for(let C of B){A.classes.push(C);let D=this.classes.get(C)?.styles;if(D)A.cssStyles.push(...D)}}}defineClass(u,B){for(let E of u){let A=this.classes.get(E);if(A===void 0)A={id:E,styles:[],textStyles:[]},this.classes.set(E,A);if(B)B.forEach(function(C){if(/color/.exec(C)){let D=C.replace("fill","bgFill");A.textStyles.push(D)}A.styles.push(C)});this.requirements.forEach((C)=>{if(C.classes.includes(E))C.cssStyles.push(...B.flatMap((D)=>D.split(",")))}),this.elements.forEach((C)=>{if(C.classes.includes(E))C.cssStyles.push(...B.flatMap((D)=>D.split(",")))})}}getClasses(){return this.classes}getData(){let u=$0(),B=[],E=[];for(let A of this.requirements.values()){let C=A;C.id=A.name,C.cssStyles=A.cssStyles,C.cssClasses=A.classes.join(" "),C.shape="requirementBox",C.look=u.look,C.colorIndex=B.length,B.push(C)}for(let A of this.elements.values()){let C=A;C.shape="requirementBox",C.look=u.look,C.id=A.name,C.cssStyles=A.cssStyles,C.cssClasses=A.classes.join(" "),C.colorIndex=B.length,B.push(C)}for(let A of this.relations){let C=0,D=A.type===this.Relationships.CONTAINS,F={id:`${A.src}-${A.dst}-${C}`,start:this.requirements.get(A.src)?.name??this.elements.get(A.src)?.name,end:this.requirements.get(A.dst)?.name??this.elements.get(A.dst)?.name,label:`&lt;&lt;${A.type}&gt;&gt;`,classes:"relationshipLine",style:["fill:none",D?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:D?"normal":"dashed",arrowTypeStart:D?"requirement_contains":"",arrowTypeEnd:D?"":"requirement_arrow",look:u.look,labelType:"markdown"};E.push(F),C++}return{nodes:B,edges:E,other:{},config:u,direction:this.getDirection()}}},Ri4=X((u)=>{let B=F4(),{themeVariables:E,look:A}=B,{bkgColorArray:C,borderColorArray:D}=E;if(!D?.length)return"";let F="";for(let U=0;U<u.THEME_COLOR_LIMIT;U++)F+=`
[data-look="${A}"][data-color-id="color-${U}"].node path {
stroke: ${D[U]};
fill: ${C?.length?C[U]:""};
}
[data-look="${A}"][data-color-id="color-${U}"].node rect {
stroke: ${D[U]};
fill: ${C?.length?C[U]:""};
}
`;return F},"genColor"),Ti4=X((u)=>{let B=F4(),{look:E,themeVariables:A}=B,{requirementEdgeLabelBackground:C}=A;return`
${Ri4(u)}
marker {
fill: ${u.relationColor};
stroke: ${u.relationColor};
}
marker.cross {
stroke: ${u.lineColor};
}
svg {
font-family: ${u.fontFamily};
font-size: ${u.fontSize};
}
.reqBox {
fill: ${u.requirementBackground};
fill-opacity: 1.0;
stroke: ${u.requirementBorderColor};
stroke-width: ${u.requirementBorderSize};
}
.reqTitle, .reqLabel{
fill: ${u.requirementTextColor};
}
.reqLabelBox {
fill: ${u.relationLabelBackground};
fill-opacity: 1.0;
}
.req-title-line {
stroke: ${u.requirementBorderColor};
stroke-width: ${u.requirementBorderSize};
}
.relationshipLine {
stroke: ${u.relationColor};
stroke-width: ${E==="neo"?u.strokeWidth:"1px"};
}
.relationshipLabel {
fill: ${u.relationLabelColor};
}
.edgeLabel {
background-color: ${u.edgeLabelBackground};
}
.edgeLabel .label rect {
fill: ${u.edgeLabelBackground};
}
.edgeLabel .label text {
fill: ${u.relationLabelColor};
}
.divider {
stroke: ${u.nodeBorder};
stroke-width: 1;
}
.label {
font-family: ${u.fontFamily};
color: ${u.nodeTextColor||u.textColor};
}
.label text,span {
fill: ${u.nodeTextColor||u.textColor};
color: ${u.nodeTextColor||u.textColor};
}
.labelBkg {
background-color: ${C??u.edgeLabelBackground};
}
`},"getStyles"),Oi4=Ti4,G9u={};Gf(G9u,{draw:()=>Ii4});Ii4=X(async function(u,B,E,A){z0.info("REF0:"),z0.info("Drawing requirement diagram (unified)",B);let{securityLevel:C,state:D,layout:F,look:U}=$0(),z=A.db.getData(),k=ZA(B,C);z.type=A.type,z.layoutAlgorithm=$F(F),z.nodeSpacing=D?.nodeSpacing??50,z.rankSpacing=D?.rankSpacing??50,z.markers=U==="neo"?["requirement_contains_neo","requirement_arrow_neo"]:["requirement_contains","requirement_arrow"],z.diagramId=B,await kA(z,k);let f=8;R4.insertTitle(k,"requirementDiagramTitleText",D?.titleTopMargin??25,A.db.getDiagramTitle()),K8(k,f,"requirementDiagram",D?.useMaxWidth??!0)},"draw"),Pi4={parser:Wi4,get db(){return new Yi4},renderer:G9u,styles:Oi4}});var N9u={};ju(N9u,{diagram:()=>Ya4});async function Y9u(u,B){_u.bumpVerticalPos(10);let{startx:E,stopx:A,message:C}=B,D=yu.splitBreaks(C).length,F=A9(C),U=F?await VQ(C,$0()):R4.calculateTextDimensions(C,Vw(Uu));if(!F){let l=U.height/D;B.height+=l,_u.bumpVerticalPos(l)}let z,k=U.height-10,f=U.width;if(E===A){if(z=_u.getVerticalPos()+k,!Uu.rightAngles)k+=Uu.boxMargin,z=_u.getVerticalPos()+k;k+=30;let l=yu.getMax(f/2,Uu.width/2);_u.insert(E-l,_u.getVerticalPos()-10+k,A+l,_u.getVerticalPos()+30+k)}else k+=Uu.boxMargin,z=_u.getVerticalPos()+k,_u.insert(E,z-10,A,z);return _u.bumpVerticalPos(k),B.height+=k,B.stopy=B.starty+B.height,_u.insert(B.fromBounds,B.starty,B.toBounds,B.stopy),z}function cC(u,B,E,A,C){_u.bumpVerticalPos(E);let D=A;if(B.id&&B.message&&u[B.id]){let F=u[B.id].width,U=Vw(Uu);B.message=R4.wrapLabel(`[${B.message}]`,F-2*Uu.wrapPadding,U),B.width=F,B.wrap=!0;let z=R4.calculateTextDimensions(B.message,U),k=yu.getMax(z.height,Uu.labelBoxHeight);D=A+k,z0.debug(`${k} - ${B.message}`)}C(B),_u.bumpVerticalPos(D)}function O9u(u,B,E,A,C,D,F){function U(f,l){if(f.x<C.get(u.from).x)_u.insert(B.stopx-l,B.starty,B.startx,B.stopy+f.height/2+Uu.noteMargin),B.stopx=B.stopx+l;else _u.insert(B.startx,B.starty,B.stopx+l,B.stopy+f.height/2+Uu.noteMargin),B.stopx=B.stopx-l}X(U,"receiverAdjustment");function z(f,l){if(f.x<C.get(u.to).x)_u.insert(B.startx-l,B.starty,B.stopx,B.stopy+f.height/2+Uu.noteMargin),B.startx=B.startx+l;else _u.insert(B.stopx,B.starty,B.startx+l,B.stopy+f.height/2+Uu.noteMargin),B.startx=B.startx-l}X(z,"senderAdjustment");let k=[Wc.ACTOR,Wc.CONTROL,Wc.ENTITY,Wc.DATABASE];if(D.get(u.to)==A){let f=C.get(u.to),l=k.includes(f.type)?iw/2+3:f.width/2+3;U(f,l),f.starty=E-f.height/2,_u.bumpVerticalPos(f.height/2)}else if(F.get(u.from)==A){let f=C.get(u.from);if(Uu.mirrorActors){let l=k.includes(f.type)?iw/2:f.width/2;z(f,l)}f.stopy=E-f.height/2,_u.bumpVerticalPos(f.height/2)}else if(F.get(u.to)==A){let f=C.get(u.to);if(Uu.mirrorActors){let l=k.includes(f.type)?iw/2+3:f.width/2+3;U(f,l)}f.stopy=E-f.height/2,_u.bumpVerticalPos(f.height/2)}}async function I9u(u,B,E){let A={};for(let C of B)if(u.get(C.to)&&u.get(C.from)){let D=u.get(C.to);if(C.placement===E.db.PLACEMENT.LEFTOF&&!D.prevActor)continue;if(C.placement===E.db.PLACEMENT.RIGHTOF&&!D.nextActor)continue;let F=C.placement!==void 0,U=!F,z=F?_L(Uu):Vw(Uu),k=C.wrap?R4.wrapLabel(C.message,Uu.width-2*Uu.wrapPadding,z):C.message,l=(A9(k)?await VQ(C.message,$0()):R4.calculateTextDimensions(k,z)).width+2*Uu.wrapPadding;if(U&&C.from===D.nextActor)A[C.to]=yu.getMax(A[C.to]||0,l);else if(U&&C.from===D.prevActor)A[C.from]=yu.getMax(A[C.from]||0,l);else if(U&&C.from===C.to)A[C.from]=yu.getMax(A[C.from]||0,l/2),A[C.to]=yu.getMax(A[C.to]||0,l/2);else if(C.placement===E.db.PLACEMENT.RIGHTOF)A[C.from]=yu.getMax(A[C.from]||0,l);else if(C.placement===E.db.PLACEMENT.LEFTOF)A[D.prevActor]=yu.getMax(A[D.prevActor]||0,l);else if(C.placement===E.db.PLACEMENT.OVER){if(D.prevActor)A[D.prevActor]=yu.getMax(A[D.prevActor]||0,l/2);if(D.nextActor)A[C.from]=yu.getMax(A[C.from]||0,l/2)}}return z0.debug("maxMessageWidthPerActor:",A),A}async function P9u(u,B,E){let A=0;for(let D of u.keys()){let F=u.get(D);if(F.wrap)F.description=R4.wrapLabel(F.description,Uu.width-2*Uu.wrapPadding,SD0(Uu));let U=A9(F.description)?await VQ(F.description,$0()):R4.calculateTextDimensions(F.description,SD0(Uu));F.width=F.wrap?Uu.width:yu.getMax(Uu.width,U.width+2*Uu.wrapPadding),F.height=F.wrap?yu.getMax(U.height,Uu.height):Uu.height,A=yu.getMax(A,F.height)}for(let D in B){let F=u.get(D);if(!F)continue;let U=u.get(F.nextActor);if(!U){let l=B[D]+Uu.actorMargin-F.width/2;F.margin=yu.getMax(l,Uu.actorMargin);continue}let k=B[D]+Uu.actorMargin-F.width/2-U.width/2;F.margin=yu.getMax(k,Uu.actorMargin)}let C=0;return E.forEach((D)=>{let F=Vw(Uu),U=D.actorKeys.reduce((l,b)=>{return l+=u.get(b).width+(u.get(b).margin||0)},0),z=Uu.boxMargin*8;if(U+=z,U-=2*Uu.boxTextMargin,D.wrap)D.name=R4.wrapLabel(D.name,U-2*Uu.wrapPadding,F);let k=R4.calculateTextDimensions(D.name,F);C=yu.getMax(k.height,C);let f=yu.getMax(U,k.width+2*Uu.wrapPadding);if(D.margin=Uu.boxTextMargin,U<f){let l=(f-U)/2;D.margin+=l}}),E.forEach((D)=>D.textMaxHeight=C),yu.getMax(A,Uu.height)}var YD0,vD0,ji4,Ni4,ii4,ai4,Wc,Vi4,hi4,mi4,iw=36,xb="actor-top",vb="actor-bottom",Rc="actor-box",aw="actor-man",Wk,TR,ri4,Tc,Yc,nL,x9u,F1=-1,v9u,$i4,yi4,ci4,gi4,_i4,ni4,pi4,di4,si4,oi4,ti4,ei4,ua4,S9u,Ba4,Ea4,Aa4,Ca4,Da4,Fa4,Ua4,za4,W9u,ka4,Yk,fa4,la4,ba4,Ma4,Za4,P6,Uu,_u,Ja4,q9u,Vw,_L,SD0,wa4,Ka4,WD0,R9u,T9u,Oc,X9u,Qa4,Ga4,Ha4,La4=4,qa4=6,xD0,Xa4,j9u,xa4,va4,Sa4,Wa4,Ya4;var i9u=g(()=>{fm();mZ();bE();t3();s4();o4();Y4();i3();YD0=Eu(wG(),1),vD0=function(){var u=X(function(g0,Bu,n0,e0){for(n0=n0||{},e0=g0.length;e0--;n0[g0[e0]]=Bu);return n0},"o"),B=[1,2],E=[1,3],A=[1,4],C=[2,4],D=[1,9],F=[1,11],U=[1,12],z=[1,14],k=[1,15],f=[1,17],l=[1,18],b=[1,19],M=[1,25],Z=[1,26],J=[1,27],w=[1,28],K=[1,29],Q=[1,30],G=[1,31],L=[1,32],H=[1,33],q=[1,34],x=[1,35],v=[1,36],W=[1,37],S=[1,38],T=[1,39],R=[1,40],Y=[1,42],a=[1,43],I=[1,44],O=[1,45],i=[1,46],N=[1,47],V=[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],r=[1,80],m=[1,81],$=[1,82],y=[1,83],p=[1,84],e=[1,85],_=[1,86],b0=[1,87],B0=[1,88],k0=[1,89],f0=[1,90],D0=[1,91],P0=[1,92],q0=[1,93],m0=[1,94],a0=[1,95],_0=[1,96],w0=[1,97],v0=[1,98],T0=[1,99],Z0=[1,100],F0=[1,101],u0=[1,102],M0=[1,103],X0=[1,104],S0=[1,105],Y0=[2,78],h0=[4,5,17,51,53,54],J0=[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],n=[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],d=[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],H0=[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],o=[5,52],L0=[70,71,72,73],E0=[1,151],r0={trace:X(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:X(function(Bu,n0,e0,t0,zu,W0,$u){var i0=W0.length-1;switch(zu){case 3:return t0.apply(W0[i0]),W0[i0];break;case 4:case 10:this.$=[];break;case 5:case 11:W0[i0-1].push(W0[i0]),this.$=W0[i0-1];break;case 6:case 7:case 12:case 13:this.$=W0[i0];break;case 8:case 9:case 14:this.$=[];break;case 16:W0[i0].type="createParticipant",this.$=W0[i0];break;case 17:W0[i0-1].unshift({type:"boxStart",boxData:t0.parseBoxData(W0[i0-2])}),W0[i0-1].push({type:"boxEnd",boxText:W0[i0-2]}),this.$=W0[i0-1];break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(W0[i0-2]),sequenceIndexStep:Number(W0[i0-1]),sequenceVisible:!0,signalType:t0.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceIndex:Number(W0[i0-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:t0.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:t0.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:t0.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"activeStart",signalType:t0.LINETYPE.ACTIVE_START,actor:W0[i0-1].actor};break;case 24:this.$={type:"activeEnd",signalType:t0.LINETYPE.ACTIVE_END,actor:W0[i0-1].actor};break;case 30:t0.setDiagramTitle(W0[i0].substring(6)),this.$=W0[i0].substring(6);break;case 31:t0.setDiagramTitle(W0[i0].substring(7)),this.$=W0[i0].substring(7);break;case 32:this.$=W0[i0].trim(),t0.setAccTitle(this.$);break;case 33:case 34:this.$=W0[i0].trim(),t0.setAccDescription(this.$);break;case 35:W0[i0-1].unshift({type:"loopStart",loopText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.LOOP_START}),W0[i0-1].push({type:"loopEnd",loopText:W0[i0-2],signalType:t0.LINETYPE.LOOP_END}),this.$=W0[i0-1];break;case 36:W0[i0-1].unshift({type:"rectStart",color:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.RECT_START}),W0[i0-1].push({type:"rectEnd",color:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.RECT_END}),this.$=W0[i0-1];break;case 37:W0[i0-1].unshift({type:"optStart",optText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.OPT_START}),W0[i0-1].push({type:"optEnd",optText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.OPT_END}),this.$=W0[i0-1];break;case 38:W0[i0-1].unshift({type:"altStart",altText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.ALT_START}),W0[i0-1].push({type:"altEnd",signalType:t0.LINETYPE.ALT_END}),this.$=W0[i0-1];break;case 39:W0[i0-1].unshift({type:"parStart",parText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.PAR_START}),W0[i0-1].push({type:"parEnd",signalType:t0.LINETYPE.PAR_END}),this.$=W0[i0-1];break;case 40:W0[i0-1].unshift({type:"parStart",parText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.PAR_OVER_START}),W0[i0-1].push({type:"parEnd",signalType:t0.LINETYPE.PAR_END}),this.$=W0[i0-1];break;case 41:W0[i0-1].unshift({type:"criticalStart",criticalText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.CRITICAL_START}),W0[i0-1].push({type:"criticalEnd",signalType:t0.LINETYPE.CRITICAL_END}),this.$=W0[i0-1];break;case 42:W0[i0-1].unshift({type:"breakStart",breakText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.BREAK_START}),W0[i0-1].push({type:"breakEnd",optText:t0.parseMessage(W0[i0-2]),signalType:t0.LINETYPE.BREAK_END}),this.$=W0[i0-1];break;case 44:this.$=W0[i0-3].concat([{type:"option",optionText:t0.parseMessage(W0[i0-1]),signalType:t0.LINETYPE.CRITICAL_OPTION},W0[i0]]);break;case 46:this.$=W0[i0-3].concat([{type:"and",parText:t0.parseMessage(W0[i0-1]),signalType:t0.LINETYPE.PAR_AND},W0[i0]]);break;case 48:this.$=W0[i0-3].concat([{type:"else",altText:t0.parseMessage(W0[i0-1]),signalType:t0.LINETYPE.ALT_ELSE},W0[i0]]);break;case 49:W0[i0-3].draw="participant",W0[i0-3].type="addParticipant",W0[i0-3].description=t0.parseMessage(W0[i0-1]),this.$=W0[i0-3];break;case 50:W0[i0-1].draw="participant",W0[i0-1].type="addParticipant",this.$=W0[i0-1];break;case 51:W0[i0-3].draw="actor",W0[i0-3].type="addParticipant",W0[i0-3].description=t0.parseMessage(W0[i0-1]),this.$=W0[i0-3];break;case 52:case 57:W0[i0-1].draw="actor",W0[i0-1].type="addParticipant",this.$=W0[i0-1];break;case 53:W0[i0-1].type="destroyParticipant",this.$=W0[i0-1];break;case 54:W0[i0-3].draw="participant",W0[i0-3].type="addParticipant",W0[i0-3].description=t0.parseMessage(W0[i0-1]),this.$=W0[i0-3];break;case 55:W0[i0-1].draw="participant",W0[i0-1].type="addParticipant",this.$=W0[i0-1];break;case 56:W0[i0-3].draw="actor",W0[i0-3].type="addParticipant",W0[i0-3].description=t0.parseMessage(W0[i0-1]),this.$=W0[i0-3];break;case 58:this.$=[W0[i0-1],{type:"addNote",placement:W0[i0-2],actor:W0[i0-1].actor,text:W0[i0]}];break;case 59:W0[i0-2]=[].concat(W0[i0-1],W0[i0-1]).slice(0,2),W0[i0-2][0]=W0[i0-2][0].actor,W0[i0-2][1]=W0[i0-2][1].actor,this.$=[W0[i0-1],{type:"addNote",placement:t0.PLACEMENT.OVER,actor:W0[i0-2].slice(0,2),text:W0[i0]}];break;case 60:this.$=[W0[i0-1],{type:"addLinks",actor:W0[i0-1].actor,text:W0[i0]}];break;case 61:this.$=[W0[i0-1],{type:"addALink",actor:W0[i0-1].actor,text:W0[i0]}];break;case 62:this.$=[W0[i0-1],{type:"addProperties",actor:W0[i0-1].actor,text:W0[i0]}];break;case 63:this.$=[W0[i0-1],{type:"addDetails",actor:W0[i0-1].actor,text:W0[i0]}];break;case 66:this.$=[W0[i0-2],W0[i0]];break;case 67:this.$=W0[i0];break;case 68:this.$=t0.PLACEMENT.LEFTOF;break;case 69:this.$=t0.PLACEMENT.RIGHTOF;break;case 70:this.$=[W0[i0-4],W0[i0-1],{type:"addMessage",from:W0[i0-4].actor,to:W0[i0-1].actor,signalType:W0[i0-3],msg:W0[i0],activate:!0},{type:"activeStart",signalType:t0.LINETYPE.ACTIVE_START,actor:W0[i0-1].actor}];break;case 71:this.$=[W0[i0-4],W0[i0-1],{type:"addMessage",from:W0[i0-4].actor,to:W0[i0-1].actor,signalType:W0[i0-3],msg:W0[i0]},{type:"activeEnd",signalType:t0.LINETYPE.ACTIVE_END,actor:W0[i0-4].actor}];break;case 72:this.$=[W0[i0-4],W0[i0-1],{type:"addMessage",from:W0[i0-4].actor,to:W0[i0-1].actor,signalType:W0[i0-3],msg:W0[i0],activate:!0,centralConnection:t0.LINETYPE.CENTRAL_CONNECTION},{type:"centralConnection",signalType:t0.LINETYPE.CENTRAL_CONNECTION,actor:W0[i0-1].actor}];break;case 73:this.$=[W0[i0-4],W0[i0-1],{type:"addMessage",from:W0[i0-4].actor,to:W0[i0-1].actor,signalType:W0[i0-2],msg:W0[i0],activate:!1,centralConnection:t0.LINETYPE.CENTRAL_CONNECTION_REVERSE},{type:"centralConnectionReverse",signalType:t0.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:W0[i0-4].actor}];break;case 74:this.$=[W0[i0-5],W0[i0-1],{type:"addMessage",from:W0[i0-5].actor,to:W0[i0-1].actor,signalType:W0[i0-3],msg:W0[i0],activate:!0,centralConnection:t0.LINETYPE.CENTRAL_CONNECTION_DUAL},{type:"centralConnection",signalType:t0.LINETYPE.CENTRAL_CONNECTION,actor:W0[i0-1].actor},{type:"centralConnectionReverse",signalType:t0.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:W0[i0-5].actor}];break;case 75:this.$=[W0[i0-3],W0[i0-1],{type:"addMessage",from:W0[i0-3].actor,to:W0[i0-1].actor,signalType:W0[i0-2],msg:W0[i0]}];break;case 76:this.$={type:"addParticipant",actor:W0[i0-1],config:W0[i0]};break;case 77:this.$=W0[i0-1].trim();break;case 78:this.$={type:"addParticipant",actor:W0[i0]};break;case 79:this.$=t0.LINETYPE.SOLID_OPEN;break;case 80:this.$=t0.LINETYPE.DOTTED_OPEN;break;case 81:this.$=t0.LINETYPE.SOLID;break;case 82:this.$=t0.LINETYPE.SOLID_TOP;break;case 83:this.$=t0.LINETYPE.SOLID_BOTTOM;break;case 84:this.$=t0.LINETYPE.STICK_TOP;break;case 85:this.$=t0.LINETYPE.STICK_BOTTOM;break;case 86:this.$=t0.LINETYPE.SOLID_TOP_DOTTED;break;case 87:this.$=t0.LINETYPE.SOLID_BOTTOM_DOTTED;break;case 88:this.$=t0.LINETYPE.STICK_TOP_DOTTED;break;case 89:this.$=t0.LINETYPE.STICK_BOTTOM_DOTTED;break;case 90:this.$=t0.LINETYPE.SOLID_ARROW_TOP_REVERSE;break;case 91:this.$=t0.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE;break;case 92:this.$=t0.LINETYPE.STICK_ARROW_TOP_REVERSE;break;case 93:this.$=t0.LINETYPE.STICK_ARROW_BOTTOM_REVERSE;break;case 94:this.$=t0.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED;break;case 95:this.$=t0.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED;break;case 96:this.$=t0.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED;break;case 97:this.$=t0.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED;break;case 98:this.$=t0.LINETYPE.BIDIRECTIONAL_SOLID;break;case 99:this.$=t0.LINETYPE.DOTTED;break;case 100:this.$=t0.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 101:this.$=t0.LINETYPE.SOLID_CROSS;break;case 102:this.$=t0.LINETYPE.DOTTED_CROSS;break;case 103:this.$=t0.LINETYPE.SOLID_POINT;break;case 104:this.$=t0.LINETYPE.DOTTED_POINT;break;case 105:this.$=t0.parseMessage(W0[i0].trim().substring(1));break}},"anonymous"),table:[{3:1,4:B,5:E,6:A},{1:[3]},{3:5,4:B,5:E,6:A},{3:6,4:B,5:E,6:A},u([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],C,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},u(V,[2,5]),{9:48,13:13,14:z,15:k,18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},u(V,[2,7]),u(V,[2,8]),u(V,[2,9]),u(V,[2,15]),{13:49,51:S,53:T,54:R},{16:[1,50]},{5:[1,51]},{5:[1,54],20:[1,52],21:[1,53]},{23:55,73:N},{23:56,73:N},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},{5:[1,61]},u(V,[2,30]),u(V,[2,31]),{33:[1,62]},{35:[1,63]},u(V,[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:N},{69:78,72:[1,79],78:r,79:m,80:$,81:y,82:p,83:e,84:_,85:b0,86:B0,87:k0,88:f0,89:D0,90:P0,91:q0,92:m0,93:a0,94:_0,95:w0,96:v0,97:T0,98:Z0,99:F0,100:u0,101:M0,102:X0,103:S0},{57:106,59:[1,107],67:[1,108],68:[1,109]},{23:110,73:N},{23:111,73:N},{23:112,73:N},{23:113,73:N},u([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],Y0),u(V,[2,6]),u(V,[2,16]),u(h0,[2,10],{11:114}),u(V,[2,18]),{5:[1,116],20:[1,115]},{5:[1,117]},u(V,[2,22]),{5:[1,118]},{5:[1,119]},u(V,[2,25]),u(V,[2,26]),u(V,[2,27]),u(V,[2,28]),u(V,[2,29]),u(V,[2,32]),u(V,[2,33]),u(J0,C,{7:120}),u(J0,C,{7:121}),u(J0,C,{7:122}),u(n,C,{41:123,7:124}),u(d,C,{43:125,7:126}),u(d,C,{7:126,43:127}),u(H0,C,{46:128,7:129}),u(J0,C,{7:130}),{5:[1,132],52:[1,131]},{5:[1,134],52:[1,133]},u(o,Y0,{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:N},{69:146,78:r,79:m,80:$,81:y,82:p,83:e,84:_,85:b0,86:B0,87:k0,88:f0,89:D0,90:P0,91:q0,92:m0,93:a0,94:_0,95:w0,96:v0,97:T0,98:Z0,99:F0,100:u0,101:M0,102:X0,103:S0},u(L0,[2,79]),u(L0,[2,80]),u(L0,[2,81]),u(L0,[2,82]),u(L0,[2,83]),u(L0,[2,84]),u(L0,[2,85]),u(L0,[2,86]),u(L0,[2,87]),u(L0,[2,88]),u(L0,[2,89]),u(L0,[2,90]),u(L0,[2,91]),u(L0,[2,92]),u(L0,[2,93]),u(L0,[2,94]),u(L0,[2,95]),u(L0,[2,96]),u(L0,[2,97]),u(L0,[2,98]),u(L0,[2,99]),u(L0,[2,100]),u(L0,[2,101]),u(L0,[2,102]),u(L0,[2,103]),u(L0,[2,104]),{23:147,73:N},{23:149,60:148,73:N},{73:[2,68]},{73:[2,69]},{58:150,104:E0},{58:152,104:E0},{58:153,104:E0},{58:154,104:E0},{4:[1,157],5:[1,159],12:156,13:158,17:[1,155],51:S,53:T,54:R},{5:[1,160]},u(V,[2,20]),u(V,[2,21]),u(V,[2,23]),u(V,[2,24]),{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[1,161],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[1,162],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[1,163],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{17:[1,164]},{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[2,47],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,50:[1,165],51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{17:[1,166]},{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[2,45],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,49:[1,167],51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{17:[1,168]},{17:[1,169]},{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[2,43],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,48:[1,170],51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{4:D,5:F,8:8,9:10,10:U,13:13,14:z,15:k,17:[1,171],18:16,19:f,22:l,23:41,24:b,25:20,26:21,27:22,28:23,29:24,30:M,31:Z,32:J,34:w,36:K,37:Q,38:G,39:L,40:H,42:q,44:x,45:v,47:W,51:S,53:T,54:R,56:Y,61:a,62:I,63:O,64:i,73:N},{16:[1,172]},u(V,[2,50]),{16:[1,173]},u(V,[2,55]),u(o,[2,76]),{76:[1,174]},{16:[1,175]},u(V,[2,52]),{16:[1,176]},u(V,[2,57]),u(V,[2,53]),{23:177,73:N},{23:178,73:N},{23:179,73:N},{58:180,104:E0},{23:181,72:[1,182],73:N},{58:183,104:E0},{58:184,104:E0},{66:[1,185],104:[2,67]},{5:[2,60]},{5:[2,105]},{5:[2,61]},{5:[2,62]},{5:[2,63]},u(V,[2,17]),u(h0,[2,11]),{13:186,51:S,53:T,54:R},u(h0,[2,13]),u(h0,[2,14]),u(V,[2,19]),u(V,[2,35]),u(V,[2,36]),u(V,[2,37]),u(V,[2,38]),{16:[1,187]},u(V,[2,39]),{16:[1,188]},u(V,[2,40]),u(V,[2,41]),{16:[1,189]},u(V,[2,42]),{5:[1,190]},{5:[1,191]},{77:[1,192]},{5:[1,193]},{5:[1,194]},{58:195,104:E0},{58:196,104:E0},{58:197,104:E0},{5:[2,75]},{58:198,104:E0},{23:199,73:N},{5:[2,58]},{5:[2,59]},{23:200,73:N},u(h0,[2,12]),u(n,C,{7:124,41:201}),u(d,C,{7:126,43:202}),u(H0,C,{7:129,46:203}),u(V,[2,49]),u(V,[2,54]),u(o,[2,77]),u(V,[2,51]),u(V,[2,56]),{5:[2,70]},{5:[2,71]},{5:[2,72]},{5:[2,73]},{58:204,104:E0},{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:X(function(Bu,n0){if(n0.recoverable)this.trace(Bu);else{var e0=Error(Bu);throw e0.hash=n0,e0}},"parseError"),parse:X(function(Bu){var n0=this,e0=[0],t0=[],zu=[null],W0=[],$u=this.table,i0="",vu=0,cu=0,Du=0,Nu=2,du=1,Iu=W0.slice.call(arguments,1),x0=Object.create(this.lexer),Tu={yy:{}};for(var Vu in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Vu))Tu.yy[Vu]=this.yy[Vu];if(x0.setInput(Bu,Tu.yy),Tu.yy.lexer=x0,Tu.yy.parser=this,typeof x0.yylloc>"u")x0.yylloc={};var Zu=x0.yylloc;W0.push(Zu);var I0=x0.options&&x0.options.ranges;if(typeof Tu.yy.parseError==="function")this.parseError=Tu.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function lu($4){e0.length=e0.length-2*$4,zu.length=zu.length-$4,W0.length=W0.length-$4}X(lu,"popStack");function Hu(){var $4=t0.pop()||x0.lex()||du;if(typeof $4!=="number"){if($4 instanceof Array)t0=$4,$4=t0.pop();$4=n0.symbols_[$4]||$4}return $4}X(Hu,"lex");var Ru,W4,ru,q4,F3,i4,b4={},P4,bu,qu,nu;while(!0){if(ru=e0[e0.length-1],this.defaultActions[ru])q4=this.defaultActions[ru];else{if(Ru===null||typeof Ru>"u")Ru=Hu();q4=$u[ru]&&$u[ru][Ru]}if(typeof q4>"u"||!q4.length||!q4[0]){var c4="";nu=[];for(P4 in $u[ru])if(this.terminals_[P4]&&P4>Nu)nu.push("'"+this.terminals_[P4]+"'");if(x0.showPosition)c4="Parse error on line "+(vu+1)+`:
`+x0.showPosition()+`
Expecting `+nu.join(", ")+", got '"+(this.terminals_[Ru]||Ru)+"'";else c4="Parse error on line "+(vu+1)+": Unexpected "+(Ru==du?"end of input":"'"+(this.terminals_[Ru]||Ru)+"'");this.parseError(c4,{text:x0.match,token:this.terminals_[Ru]||Ru,line:x0.yylineno,loc:Zu,expected:nu})}if(q4[0]instanceof Array&&q4.length>1)throw Error("Parse Error: multiple actions possible at state: "+ru+", token: "+Ru);switch(q4[0]){case 1:if(e0.push(Ru),zu.push(x0.yytext),W0.push(x0.yylloc),e0.push(q4[1]),Ru=null,!W4){if(cu=x0.yyleng,i0=x0.yytext,vu=x0.yylineno,Zu=x0.yylloc,Du>0)Du--}else Ru=W4,W4=null;break;case 2:if(bu=this.productions_[q4[1]][1],b4.$=zu[zu.length-bu],b4._$={first_line:W0[W0.length-(bu||1)].first_line,last_line:W0[W0.length-1].last_line,first_column:W0[W0.length-(bu||1)].first_column,last_column:W0[W0.length-1].last_column},I0)b4._$.range=[W0[W0.length-(bu||1)].range[0],W0[W0.length-1].range[1]];if(i4=this.performAction.apply(b4,[i0,cu,vu,Tu.yy,q4[1],zu,W0].concat(Iu)),typeof i4<"u")return i4;if(bu)e0=e0.slice(0,-1*bu*2),zu=zu.slice(0,-1*bu),W0=W0.slice(0,-1*bu);e0.push(this.productions_[q4[1]][0]),zu.push(b4.$),W0.push(b4._$),qu=$u[e0[e0.length-2]][e0[e0.length-1]],e0.push(qu);break;case 3:return!0}}return!0},"parse")},c0=function(){var g0={EOF:1,parseError:X(function(n0,e0){if(this.yy.parser)this.yy.parser.parseError(n0,e0);else throw Error(n0)},"parseError"),setInput:X(function(Bu,n0){if(this.yy=n0||this.yy||{},this._input=Bu,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:X(function(){var Bu=this._input[0];this.yytext+=Bu,this.yyleng++,this.offset++,this.match+=Bu,this.matched+=Bu;var n0=Bu.match(/(?:\r\n?|\n).*/g);if(n0)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),Bu},"input"),unput:X(function(Bu){var n0=Bu.length,e0=Bu.split(/(?:\r\n?|\n)/g);this._input=Bu+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n0),this.offset-=n0;var t0=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),e0.length-1)this.yylineno-=e0.length-1;var zu=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:e0?(e0.length===t0.length?this.yylloc.first_column:0)+t0[t0.length-e0.length].length-e0[0].length:this.yylloc.first_column-n0},this.options.ranges)this.yylloc.range=[zu[0],zu[0]+this.yyleng-n0];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(Bu){this.unput(this.match.slice(Bu))},"less"),pastInput:X(function(){var Bu=this.matched.substr(0,this.matched.length-this.match.length);return(Bu.length>20?"...":"")+Bu.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var Bu=this.match;if(Bu.length<20)Bu+=this._input.substr(0,20-Bu.length);return(Bu.substr(0,20)+(Bu.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var Bu=this.pastInput(),n0=Array(Bu.length+1).join("-");return Bu+this.upcomingInput()+`
`+n0+"^"},"showPosition"),test_match:X(function(Bu,n0){var e0,t0,zu;if(this.options.backtrack_lexer){if(zu={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)zu.yylloc.range=this.yylloc.range.slice(0)}if(t0=Bu[0].match(/(?:\r\n?|\n).*/g),t0)this.yylineno+=t0.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:t0?t0[t0.length-1].length-t0[t0.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Bu[0].length},this.yytext+=Bu[0],this.match+=Bu[0],this.matches=Bu,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(Bu[0].length),this.matched+=Bu[0],e0=this.performAction.call(this,this.yy,this,n0,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(e0)return e0;else if(this._backtrack){for(var W0 in zu)this[W0]=zu[W0];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var Bu,n0,e0,t0;if(!this._more)this.yytext="",this.match="";var zu=this._currentRules();for(var W0=0;W0<zu.length;W0++)if(e0=this._input.match(this.rules[zu[W0]]),e0&&(!n0||e0[0].length>n0[0].length)){if(n0=e0,t0=W0,this.options.backtrack_lexer)if(Bu=this.test_match(e0,zu[W0]),Bu!==!1)return Bu;else if(this._backtrack){n0=!1;continue}else return!1;else if(!this.options.flex)break}if(n0){if(Bu=this.test_match(n0,zu[t0]),Bu!==!1)return Bu;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:X(function(){var n0=this.next();if(n0)return n0;else return this.lex()},"lex"),begin:X(function(n0){this.conditionStack.push(n0)},"begin"),popState:X(function(){var n0=this.conditionStack.length-1;if(n0>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(n0){if(n0=this.conditionStack.length-1-Math.abs(n0||0),n0>=0)return this.conditionStack[n0];else return"INITIAL"},"topState"),pushState:X(function(n0){this.begin(n0)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(n0,e0,t0,zu){var W0=zu;switch(t0){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 e0.yytext=e0.yytext.trim(),73;break;case 12:return e0.yytext=e0.yytext.trim(),this.begin("ALIAS"),73;break;case 13:return e0.yytext=e0.yytext.trim(),this.popState(),73;break;case 14:return this.popState(),10;break;case 15:return e0.yytext=e0.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 e0.yytext=e0.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 g0}();r0.lexer=c0;function p0(){this.yy={}}return X(p0,"Parser"),p0.prototype=r0,r0.Parser=p0,new p0}();vD0.parser=vD0;ji4=vD0,Ni4={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},ii4={FILLED:0,OPEN:1},ai4={LEFTOF:0,RIGHTOF:1,OVER:2},Wc={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},Vi4=class{constructor(){this.state=new cH(()=>({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=w3,this.setAccDescription=L3,this.setDiagramTitle=T3,this.getAccTitle=H3,this.getAccDescription=q3,this.getDiagramTitle=X3,this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap($0().wrap),this.LINETYPE=Ni4,this.ARROWTYPE=ii4,this.PLACEMENT=ai4}static{X(this,"SequenceDB")}addBox(u){this.state.records.boxes.push({name:u.text,wrap:u.wrap??this.autoWrap(),fill:u.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(u,B,E,A,C){let D=this.state.records.currentBox,F;if(C!==void 0){let z;if(!C.includes(`
`))z=`{
`+C+`
}`;else z=C+`
`;F=gf(z,{schema:cf})}if(A=F?.type??A,F?.alias&&(!E||E.text===B))E={text:F.alias,wrap:E?.wrap,type:A};let U=this.state.records.actors.get(u);if(U){if(this.state.records.currentBox&&U.box&&this.state.records.currentBox!==U.box)throw Error(`A same participant should only be defined in one Box: ${U.name} can't be in '${U.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(D=U.box?U.box:this.state.records.currentBox,U.box=D,U&&B===U.name&&E==null)return}if(E?.text==null)E={text:B,type:A};if(A==null||E.text==null)E={text:B,type:A};if(this.state.records.actors.set(u,{box:D,name:B,description:E.text,wrap:E.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:A??"participant"}),this.state.records.prevActor){let z=this.state.records.actors.get(this.state.records.prevActor);if(z)z.nextActor=u}if(this.state.records.currentBox)this.state.records.currentBox.actorKeys.push(u);this.state.records.prevActor=u}activationCount(u){let B,E=0;if(!u)return 0;for(B=0;B<this.state.records.messages.length;B++){if(this.state.records.messages[B].type===this.LINETYPE.ACTIVE_START&&this.state.records.messages[B].from===u)E++;if(this.state.records.messages[B].type===this.LINETYPE.ACTIVE_END&&this.state.records.messages[B].from===u)E--}return E}addMessage(u,B,E,A){this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:u,to:B,message:E.text,wrap:E.wrap??this.autoWrap(),answer:A})}addSignal(u,B,E,A,C=!1,D){if(A===this.LINETYPE.ACTIVE_END){if(this.activationCount(u??"")<1){let U=Error("Trying to inactivate an inactive participant ("+u+")");throw U.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},U}}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:u,to:B,message:E?.text??"",wrap:E?.wrap??this.autoWrap(),type:A,activate:C,centralConnection:D??0}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some((u)=>u.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(u){return this.state.records.actors.get(u)}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(u){this.state.records.wrapEnabled=u}extractWrap(u){if(u===void 0)return{};u=u.trim();let B=/^:?wrap:/.exec(u)!==null?!0:/^:?nowrap:/.exec(u)!==null?!1:void 0;return{cleanedText:(B===void 0?u:u.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:B}}autoWrap(){if(this.state.records.wrapEnabled!==void 0)return this.state.records.wrapEnabled;return $0().sequence?.wrap??!1}clear(){this.state.reset(),D3()}parseMessage(u){let B=u.trim(),{wrap:E,cleanedText:A}=this.extractWrap(B),C={text:A,wrap:E};return z0.debug(`parseMessage: ${JSON.stringify(C)}`),C}parseBoxData(u){let B=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(u),E=B?.[1]?B[1].trim():"transparent",A=B?.[2]?B[2].trim():void 0;if(window?.CSS){if(!window.CSS.supports("color",E))E="transparent",A=u.trim()}else{let F=new Option().style;if(F.color=E,F.color!==E)E="transparent",A=u.trim()}let{wrap:C,cleanedText:D}=this.extractWrap(A);return{text:D?C3(D,$0()):void 0,color:E,wrap:C}}addNote(u,B,E){let A={actor:u,placement:B,message:E.text,wrap:E.wrap??this.autoWrap()},C=[].concat(u,u);this.state.records.notes.push(A),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:C[0],to:C[1],message:E.text,wrap:E.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:B})}addLinks(u,B){let E=this.getActor(u);try{let A=C3(B.text,$0());A=A.replace(/&equals;/g,"="),A=A.replace(/&amp;/g,"&");let C=JSON.parse(A);this.insertLinks(E,C)}catch(A){z0.error("error while parsing actor link text",A)}}addALink(u,B){let E=this.getActor(u);try{let A={},C=C3(B.text,$0()),D=C.indexOf("@");C=C.replace(/&equals;/g,"="),C=C.replace(/&amp;/g,"&");let F=C.slice(0,D-1).trim(),U=C.slice(D+1).trim();A[F]=U,this.insertLinks(E,A)}catch(A){z0.error("error while parsing actor link text",A)}}insertLinks(u,B){if(u.links==null)u.links=B;else for(let E in B)u.links[E]=B[E]}addProperties(u,B){let E=this.getActor(u);try{let A=C3(B.text,$0()),C=JSON.parse(A);this.insertProperties(E,C)}catch(A){z0.error("error while parsing actor properties text",A)}}insertProperties(u,B){if(u.properties==null)u.properties=B;else for(let E in B)u.properties[E]=B[E]}boxEnd(){this.state.records.currentBox=void 0}addDetails(u,B){let E=this.getActor(u),A=document.getElementById(B.text);try{let C=A.innerHTML,D=JSON.parse(C);if(D.properties)this.insertProperties(E,D.properties);if(D.links)this.insertLinks(E,D.links)}catch(C){z0.error("error while parsing actor details text",C)}}getActorProperty(u,B){if(u?.properties!==void 0)return u.properties[B];return}apply(u){if(Array.isArray(u))u.forEach((B)=>{this.apply(B)});else switch(u.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:u.sequenceIndex,step:u.sequenceIndexStep,visible:u.sequenceVisible},wrap:!1,type:u.signalType});break;case"addParticipant":this.addActor(u.actor,u.actor,u.description,u.draw,u.config);break;case"createParticipant":if(this.state.records.actors.has(u.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=u.actor,this.addActor(u.actor,u.actor,u.description,u.draw,u.config),this.state.records.createdActors.set(u.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=u.actor,this.state.records.destroyedActors.set(u.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(u.actor,void 0,void 0,u.signalType);break;case"centralConnection":this.addSignal(u.actor,void 0,void 0,u.signalType);break;case"centralConnectionReverse":this.addSignal(u.actor,void 0,void 0,u.signalType);break;case"activeEnd":this.addSignal(u.actor,void 0,void 0,u.signalType);break;case"addNote":this.addNote(u.actor,u.placement,u.text);break;case"addLinks":this.addLinks(u.actor,u.text);break;case"addALink":this.addALink(u.actor,u.text);break;case"addProperties":this.addProperties(u.actor,u.text);break;case"addDetails":this.addDetails(u.actor,u.text);break;case"addMessage":if(this.state.records.lastCreated)if(u.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(u.to!==this.state.records.lastDestroyed&&u.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(u.from,u.to,u.msg,u.signalType,u.activate,u.centralConnection);break;case"boxStart":this.addBox(u.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,u.loopText,u.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break;case"rectStart":this.addSignal(void 0,void 0,u.color,u.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break;case"optStart":this.addSignal(void 0,void 0,u.optText,u.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break;case"altStart":this.addSignal(void 0,void 0,u.altText,u.signalType);break;case"else":this.addSignal(void 0,void 0,u.altText,u.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break;case"setAccTitle":w3(u.text);break;case"parStart":this.addSignal(void 0,void 0,u.parText,u.signalType);break;case"and":this.addSignal(void 0,void 0,u.parText,u.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,u.criticalText,u.signalType);break;case"option":this.addSignal(void 0,void 0,u.optionText,u.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break;case"breakStart":this.addSignal(void 0,void 0,u.breakText,u.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,u.signalType);break}}getConfig(){return $0().sequence}},hi4=X((u)=>{let B=u.dropShadow??"none",{look:E}=$0();return`.actor {
stroke: ${u.actorBorder};
fill: ${u.actorBkg};
stroke-width: ${u.strokeWidth??1};
}
rect.actor.outer-path[data-look="neo"] {
filter: ${B};
}
rect.note[data-look="neo"] {
stroke:${u.noteBorderColor};
fill:${u.noteBkgColor};
filter: ${B};
}
text.actor > tspan {
fill: ${u.actorTextColor};
stroke: none;
}
.actor-line {
stroke: ${u.actorLineColor};
}
.innerArc {
stroke-width: 1.5;
stroke-dasharray: none;
}
.messageLine0 {
stroke-width: 1.5;
stroke-dasharray: none;
stroke: ${u.signalColor};
}
.messageLine1 {
stroke-width: 1.5;
stroke-dasharray: 2, 2;
stroke: ${u.signalColor};
}
[id$="-arrowhead"] path {
fill: ${u.signalColor};
stroke: ${u.signalColor};
}
.sequenceNumber {
fill: ${u.sequenceNumberColor};
}
[id$="-sequencenumber"] {
fill: ${u.signalColor};
}
[id$="-crosshead"] path {
fill: ${u.signalColor};
stroke: ${u.signalColor};
}
.messageText {
fill: ${u.signalTextColor};
stroke: none;
}
.labelBox {
stroke: ${u.labelBoxBorderColor};
fill: ${u.labelBoxBkgColor};
filter: ${E==="neo"?B:"none"};
}
.labelText, .labelText > tspan {
fill: ${u.labelTextColor};
stroke: none;
}
.loopText, .loopText > tspan {
fill: ${u.loopTextColor};
stroke: none;
}
.sectionTitle, .sectionTitle > tspan {
fill: ${u.loopTextColor};
stroke: none;
}
.loopLine {
stroke-width: 2px;
stroke-dasharray: 2, 2;
stroke: ${u.labelBoxBorderColor};
fill: ${u.labelBoxBorderColor};
}
.note {
//stroke: #decc93;
stroke: ${u.noteBorderColor};
fill: ${u.noteBkgColor};
}
.noteText, .noteText > tspan {
fill: ${u.noteTextColor};
stroke: none;
${u.noteFontWeight?`font-weight: ${u.noteFontWeight};`:""}
}
.activation0 {
fill: ${u.activationBkgColor};
stroke: ${u.activationBorderColor};
}
.activation1 {
fill: ${u.activationBkgColor};
stroke: ${u.activationBorderColor};
}
.activation2 {
fill: ${u.activationBkgColor};
stroke: ${u.activationBorderColor};
}
.actorPopupMenu {
position: absolute;
}
.actorPopupMenuPanel {
position: absolute;
fill: ${u.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: ${u.actorBkg};
stroke-width: 2px;
}
g rect.rect {
filter: ${B};
stroke: ${u.nodeBorder};
}
`},"getStyles"),mi4=hi4,Wk=new Set(["redux-color","redux-dark-color"]),TR=X(function(u,B){let E=RJ(u,B);if(F4().look==="neo")E.attr("data-look","neo");return E},"drawRect"),ri4=X(function(u,B,E,A,C){if(B.links===void 0||B.links===null||Object.keys(B.links).length===0)return{height:0,width:0};let{links:D,actorCnt:F,rectData:U}=B;var z="none";if(C)z="block !important";let k=u.append("g");k.attr("id","actor"+F+"_popup"),k.attr("class","actorPopupMenu"),k.attr("display",z);var f="";if(U.class!==void 0)f=" "+U.class;let l=U.width>E?U.width:E,b=k.append("rect");if(b.attr("class","actorPopupMenuPanel"+f),b.attr("x",U.x),b.attr("y",U.height),b.attr("fill",U.fill),b.attr("stroke",U.stroke),b.attr("width",l),b.attr("height",U.height),b.attr("rx",U.rx),b.attr("ry",U.ry),D!=null){var M=20;for(let w in D){var Z=k.append("a"),J=YD0.sanitizeUrl(D[w]);Z.attr("xlink:href",J),Z.attr("target","_blank"),fa4(A)(w,Z,U.x+10,U.height+M,l,20,{class:"actor"},A),M+=30}}return b.attr("height",M),{height:U.height+M,width:l}},"drawPopup"),Tc=X(function(u){return"var pu = document.getElementById('"+u+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Yc=X(async function(u,B,E=null){let A=u.append("foreignObject"),C=await hQ(B.text,F4()),F=A.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(C).node().getBoundingClientRect();if(A.attr("height",Math.round(F.height)).attr("width",Math.round(F.width)),B.class==="noteText"){let U=u.node().firstChild;U.setAttribute("height",F.height+2*B.textMargin);let z=U.getBBox();A.attr("x",Math.round(z.x+z.width/2-F.width/2)).attr("y",Math.round(z.y+z.height/2-F.height/2))}else if(E){let{startx:U,stopx:z,starty:k}=E;if(U>z){let f=U;U=z,z=f}if(A.attr("x",Math.round(U+Math.abs(U-z)/2-F.width/2)),B.class==="loopText")A.attr("y",Math.round(k));else A.attr("y",Math.round(k-F.height))}return[A]},"drawKatex"),nL=X(function(u,B){let E=0,A=0,C=B.text.split(yu.lineBreakRegex),[D,F]=A8(B.fontSize),U=[],z=0,k=X(()=>B.y,"yfunc");if(B.valign!==void 0&&B.textMargin!==void 0&&B.textMargin>0)switch(B.valign){case"top":case"start":k=X(()=>Math.round(B.y+B.textMargin),"yfunc");break;case"middle":case"center":k=X(()=>Math.round(B.y+(E+A+B.textMargin)/2),"yfunc");break;case"bottom":case"end":k=X(()=>Math.round(B.y+(E+A+2*B.textMargin)-B.textMargin),"yfunc");break}if(B.anchor!==void 0&&B.textMargin!==void 0&&B.width!==void 0)switch(B.anchor){case"left":case"start":B.x=Math.round(B.x+B.textMargin),B.anchor="start",B.dominantBaseline="middle",B.alignmentBaseline="middle";break;case"middle":case"center":B.x=Math.round(B.x+B.width/2),B.anchor="middle",B.dominantBaseline="middle",B.alignmentBaseline="middle";break;case"right":case"end":B.x=Math.round(B.x+B.width-B.textMargin),B.anchor="end",B.dominantBaseline="middle",B.alignmentBaseline="middle";break}for(let[f,l]of C.entries()){if(B.textMargin!==void 0&&B.textMargin===0&&D!==void 0)z=f*D;let b=u.append("text");if(b.attr("x",B.x),b.attr("y",k()),B.anchor!==void 0)b.attr("text-anchor",B.anchor).attr("dominant-baseline",B.dominantBaseline).attr("alignment-baseline",B.alignmentBaseline);if(B.fontFamily!==void 0)b.style("font-family",B.fontFamily);if(F!==void 0)b.style("font-size",F);if(B.fontWeight!==void 0)b.style("font-weight",B.fontWeight);if(B.fill!==void 0)b.attr("fill",B.fill);if(B.class!==void 0)b.attr("class",B.class);if(B.dy!==void 0)b.attr("dy",B.dy);else if(z!==0)b.attr("dy",z);let M=l||R40;if(B.tspan){let Z=b.append("tspan");if(Z.attr("x",B.x),B.fill!==void 0)Z.attr("fill",B.fill);Z.text(M)}else b.text(M);if(B.valign!==void 0&&B.textMargin!==void 0&&B.textMargin>0)A+=(b._groups||b)[0][0].getBBox().height,E=A;U.push(b)}return U},"drawText"),x9u=X(function(u,B){function E(C,D,F,U,z){return C+","+D+" "+(C+F)+","+D+" "+(C+F)+","+(D+U-z)+" "+(C+F-z*1.2)+","+(D+U)+" "+C+","+(D+U)}X(E,"genPoints");let A=u.append("polygon");return A.attr("points",E(B.x,B.y,B.width,B.height,7)),A.attr("class","labelBox"),B.y=B.y+B.height/2,nL(u,B),A},"drawLabel"),v9u=X((u,B,E,A)=>{if(!u.select)return;E.forEach((C)=>{let D=B.get(C),F=u.select("#actor"+D.actorCnt);if(!A.mirrorActors&&D.stopy)F.attr("y2",D.stopy+D.height/2);else if(A.mirrorActors)F.attr("y2",D.stopy)})},"fixLifeLineHeights"),$i4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+B.height,{look:z,theme:k,themeVariables:f}=E,{bkgColorArray:l,borderColorArray:b}=f,M=u.append("g").lower();var Z=M;if(!A){if(F1++,Object.keys(B.links||{}).length&&!E.forceMenus)Z.attr("onclick",Tc(`actor${F1}_popup`)).attr("cursor","pointer");if(Z.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),Z=M.append("g"),B.actorCnt=F1,B.links!=null)Z.attr("id","root-"+F1);if(z==="neo")Z.attr("data-look","neo")}let J=N7();var w="actor";if(B.properties?.class)w=B.properties.class;else J.fill="#eaeaea";if(A)w+=` ${vb}`;else w+=` ${xb}`;if(J.x=B.x,J.y=D,J.width=B.width,J.height=B.height,J.class=w,J.rx=3,J.ry=3,J.name=B.name,z==="neo")J.rx=6,J.ry=6;let K=TR(Z,J),Q=C.get(B.name)??0;if(Wk.has(k))K.style("stroke",b[Q%b.length]),K.style("fill",l[Q%b.length]);if(z==="neo")K.attr("filter","url(#drop-shadow)");if(B.rectData=J,B.properties?.icon){let L=B.properties.icon.trim();if(L.charAt(0)==="@")eh(Z,J.x+J.width-20,J.y+10,L.substr(1));else th(Z,J.x+J.width-20,J.y+10,L)}if(!A)Z.attr("data-et","participant"),Z.attr("data-type","participant"),Z.attr("data-id",B.name);Yk(E,A9(B.description))(B.description,Z,J.x,J.y,J.width,J.height,{class:`actor ${Rc}`},E);let G=B.height;if(K.node){let L=K.node().getBBox();B.height=L.height,G=L.height}return G},"drawActorTypeParticipant"),yi4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+B.height,{look:z,theme:k,themeVariables:f}=E,{bkgColorArray:l,borderColorArray:b}=f,M=u.append("g").lower();var Z=M;if(!A){if(F1++,Object.keys(B.links||{}).length&&!E.forceMenus)Z.attr("onclick",Tc(`actor${F1}_popup`)).attr("cursor","pointer");if(Z.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),Z=M.append("g"),B.actorCnt=F1,B.links!=null)Z.attr("id","root-"+F1);if(z==="neo")Z.attr("data-look","neo")}let J=N7();var w="actor";if(B.properties?.class)w=B.properties.class;else J.fill="#eaeaea";if(A)w+=` ${vb}`;else w+=` ${xb}`;J.x=B.x,J.y=D,J.width=B.width,J.height=B.height,J.class=w,J.name=B.name;let K=6,Q={...J,x:J.x+(A?-K:-K),y:J.y+(A?+K:+K),class:"actor"},G=TR(Z,J),L=TR(Z,Q);if(B.rectData=J,z==="neo")Z.attr("filter","url(#drop-shadow)");let H=C.get(B.name)??0;if(Wk.has(k))G.style("stroke",b[H%b.length]),G.style("fill",l[H%b.length]),L.style("stroke",b[H%b.length]),L.style("fill",l[H%b.length]);if(B.properties?.icon){let x=B.properties.icon.trim();if(x.charAt(0)==="@")eh(Z,J.x+J.width-20,J.y+10,x.substr(1));else th(Z,J.x+J.width-20,J.y+10,x)}Yk(E,A9(B.description))(B.description,Z,J.x-K,J.y+K,J.width,J.height,{class:`actor ${Rc}`},E);let q=B.height;if(G.node){let x=G.node().getBBox();B.height=x.height,q=x.height}if(!A)Z.attr("data-et","participant"),Z.attr("data-type","collections"),Z.attr("data-id",B.name);return q},"drawActorTypeCollections"),ci4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+B.height,{look:z,theme:k,themeVariables:f}=E,{bkgColorArray:l,borderColorArray:b}=f,M=u.append("g").lower(),Z=M;if(!A){if(F1++,Object.keys(B.links||{}).length&&!E.forceMenus)Z.attr("onclick",Tc(`actor${F1}_popup`)).attr("cursor","pointer");if(Z.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),Z=M.append("g"),B.actorCnt=F1,B.links!=null)Z.attr("id","root-"+F1);if(z==="neo")Z.attr("data-look","neo")}let J=N7(),w="actor";if(B.properties?.class)w=B.properties.class;else J.fill="#eaeaea";if(A)w+=` ${vb}`;else w+=` ${xb}`;Z.attr("class",w),J.x=B.x,J.y=D,J.width=B.width,J.height=B.height,J.name=B.name;let K=J.height/2,Q=K/(2.5+J.height/50),G=Z.append("g"),L=Z.append("g"),H=`M ${J.x},${J.y+K}
a ${Q},${K} 0 0 0 0,${J.height}
h ${J.width-2*Q}
a ${Q},${K} 0 0 0 0,-${J.height}
Z
`;if(G.append("path").attr("d",H),L.append("path").attr("d",`M ${J.x},${J.y+K}
a ${Q},${K} 0 0 0 0,${J.height}`),G.attr("transform",`translate(${Q}, ${-(J.height/2)})`),L.attr("transform",`translate(${J.width-Q}, ${-J.height/2})`),B.rectData=J,z==="neo")G.attr("filter","url(#drop-shadow)");let q=C.get(B.name)??0;if(Wk.has(k))G.style("stroke",b[q%b.length]),G.style("fill",l[q%b.length]),L.style("stroke",b[q%b.length]),L.style("fill",l[q%b.length]);if(B.properties?.icon){let W=B.properties.icon.trim(),S=J.x+J.width-20,T=J.y+10;if(W.charAt(0)==="@")eh(Z,S,T,W.substr(1));else th(Z,S,T,W)}Yk(E,A9(B.description))(B.description,Z,J.x,J.y,J.width,J.height,{class:`actor ${Rc}`},E);let x=B.height,v=G.select("path:last-child");if(v.node()){let W=v.node().getBBox();B.height=W.height,x=W.height}if(!A)Z.attr("data-et","participant"),Z.attr("data-type","queue"),Z.attr("data-id",B.name);return x},"drawActorTypeQueue"),gi4=X(function(u,B,E,A,C,D){let F=A?B.stopy:B.starty,U=B.x+B.width/2,z=F+75,{look:k,theme:f,themeVariables:l}=E,{bkgColorArray:b,borderColorArray:M,actorBorder:Z,actorBkg:J}=l,w=u.append("g").lower();if(!A)F1++,w.append("line").attr("id","actor"+F1).attr("x1",U).attr("y1",z).attr("x2",U).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),B.actorCnt=F1;let K=u.append("g"),Q=aw;if(A)Q+=` ${vb}`;else Q+=` ${xb}`;K.attr("class",Q),K.attr("name",B.name);let G=N7();G.x=B.x,G.y=F,G.fill="#eaeaea",G.width=B.width,G.height=B.height,G.class="actor";let L=B.x+B.width/2,H=F+32,q=22;K.append("defs").append("marker").attr("id",C+"-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"),K.append("circle").attr("cx",L).attr("cy",H).attr("r",q).attr("filter",`${k==="neo"?"url(#drop-shadow)":""}`),K.append("line").attr("marker-end","url(#"+C+"-filled-head-control)").attr("transform",`translate(${L}, ${H-q})`);let x=D.get(B.name)??0;if(Wk.has(f))K.style("stroke",M[x%M.length]),K.style("fill",b[x%M.length]);else K.style("stroke",Z),K.style("fill",J);let v=K.node().getBBox();if(B.height=v.height+2*(E?.sequence?.labelBoxHeight??0),Yk(E,A9(B.description))(B.description,K,G.x,G.y+q+(!A?12:5),G.width,G.height,{class:`actor ${aw}`},E),!A)K.attr("data-et","participant"),K.attr("data-type","control"),K.attr("data-id",B.name);return B.height},"drawActorTypeControl"),_i4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+75,{look:z,theme:k,themeVariables:f}=E,{bkgColorArray:l,borderColorArray:b}=f,M=u.append("g").lower(),Z=u.append("g"),J="actor";if(A)J+=` ${vb}`;else J+=` ${xb}`;Z.attr("class",J),Z.attr("name",B.name);let w=N7();w.x=B.x,w.y=D,w.fill="#eaeaea",w.width=B.width,w.height=B.height,w.class="actor";let K=B.x+B.width/2,Q=D+(!A?25:10),G=22;if(Z.append("circle").attr("cx",K).attr("cy",Q).attr("r",G).attr("width",B.width).attr("height",B.height),Z.append("line").attr("x1",K-G).attr("x2",K+G).attr("y1",Q+G).attr("y2",Q+G).attr("stroke-width",2),z==="neo")Z.attr("filter","url(#drop-shadow)");let L=C.get(B.name)??0;if(Wk.has(k))Z.style("stroke",b[L%b.length]),Z.style("fill",l[L%b.length]);let H=Z.node().getBBox();if(B.height=H.height+(E?.sequence?.labelBoxHeight??0),!A)F1++,M.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),B.actorCnt=F1;if(Yk(E,A9(B.description))(B.description,Z,w.x,w.y+(!A?30:15),w.width,w.height,{class:`actor ${aw}`},E),!A)Z.attr("transform",`translate(0, ${G/2-5})`),Z.attr("data-et","participant"),Z.attr("data-type","entity"),Z.attr("data-id",B.name);else Z.attr("transform",`translate(0, ${G})`);return B.height},"drawActorTypeEntity"),ni4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+B.height+2*E.boxTextMargin,{theme:z,themeVariables:k,look:f}=E,{bkgColorArray:l,borderColorArray:b,actorBorder:M}=k,Z=u.append("g").lower(),J=Z;if(!A){if(F1++,Object.keys(B.links||{}).length&&!E.forceMenus)J.attr("onclick",Tc(`actor${F1}_popup`)).attr("cursor","pointer");if(J.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),J=Z.append("g"),B.actorCnt=F1,B.links!=null)J.attr("id","root-"+F1);if(f==="neo")J.attr("data-look","neo")}let w=N7(),K="actor";if(B.properties?.class)K=B.properties.class;else w.fill="#eaeaea";if(A)K+=` ${vb}`;else K+=` ${xb}`;w.x=B.x,w.y=D,w.width=B.width,w.height=B.height,w.class=K,w.name=B.name,w.x=B.x,w.y=D;let Q=w.width/3,G=w.width/3,L=Q/2,H=L/(2.5+Q/50),q=J.append("g");q.attr("class",K);let x=`
M ${w.x},${w.y+H}
a ${L},${H} 0 0 0 ${Q},0
a ${L},${H} 0 0 0 -${Q},0
l 0,${G-2*H}
a ${L},${H} 0 0 0 ${Q},0
l 0,-${G-2*H}
`;if(q.append("path").attr("d",x),f==="neo")q.attr("filter","url(#drop-shadow)");let v=C.get(B.name)??0;if(Wk.has(z))q.style("stroke",b[v%b.length]),q.style("fill",l[v%b.length]);else q.style("stroke",M);q.attr("transform",`translate(${Q}, ${H})`),B.rectData=w,Yk(E,A9(B.description))(B.description,J,w.x,w.y+35,w.width,w.height,{class:`actor ${Rc}`},E);let W=q.select("path:last-child");if(W.node()){let S=W.node().getBBox();B.height=S.height+(E.sequence.labelBoxHeight??0)}if(!A)J.attr("data-et","participant"),J.attr("data-type","database"),J.attr("data-id",B.name);return B.height},"drawActorTypeDatabase"),pi4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+80,z=22,k=u.append("g").lower(),{look:f,theme:l,themeVariables:b}=E,{bkgColorArray:M,borderColorArray:Z,actorBorder:J}=b;if(!A)F1++,k.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),B.actorCnt=F1;let w=u.append("g"),K=aw;if(A)K+=` ${vb}`;else K+=` ${xb}`;w.attr("class",K),w.attr("name",B.name);let Q=N7();if(Q.x=B.x,Q.y=D,Q.fill="#eaeaea",Q.width=B.width,Q.height=B.height,Q.class="actor",w.append("line").attr("id","actor-man-torso"+F1).attr("x1",B.x+B.width/2-55).attr("y1",D+12).attr("x2",B.x+B.width/2-15).attr("y2",D+12),w.append("line").attr("id","actor-man-arms"+F1).attr("x1",B.x+B.width/2-55).attr("y1",D+2).attr("x2",B.x+B.width/2-55).attr("y2",D+22),w.append("circle").attr("cx",B.x+B.width/2).attr("cy",D+12).attr("r",22),f==="neo")w.attr("filter","url(#drop-shadow)");let G=C.get(B.name)??0;if(Wk.has(l))w.style("stroke",Z[G%Z.length]),w.style("fill",M[G%Z.length]);else w.style("stroke",J);let L=w.node().getBBox();if(B.height=L.height+(E.sequence.labelBoxHeight??0),Yk(E,A9(B.description))(B.description,w,Q.x,Q.y+15,Q.width,Q.height,{class:`actor ${aw}`},E),w.attr("transform","translate(0,21)"),!A)w.attr("data-et","participant"),w.attr("data-type","boundary"),w.attr("data-id",B.name);return B.height},"drawActorTypeBoundary"),di4=X(function(u,B,E,A,C){let D=A?B.stopy:B.starty,F=B.x+B.width/2,U=D+80,{look:z,theme:k,themeVariables:f}=E,{bkgColorArray:l,borderColorArray:b,actorBorder:M}=f,Z=u.append("g").lower();if(!A)F1++,Z.append("line").attr("id","actor"+F1).attr("x1",F).attr("y1",U).attr("x2",F).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",B.name).attr("data-et","life-line").attr("data-id",B.name),B.actorCnt=F1;let J=u.append("g"),w=aw;if(A)w+=` ${vb}`;else w+=` ${xb}`;if(J.attr("class",w),J.attr("name",B.name),!A)J.attr("data-et","participant").attr("data-type","actor").attr("data-id",B.name);let K=z==="neo"?0.5:1,Q=z==="neo"?D+(1-K)*30:D;J.append("line").attr("id","actor-man-torso"+F1).attr("x1",F).attr("y1",Q+25*K).attr("x2",F).attr("y2",Q+45*K),J.append("line").attr("id","actor-man-arms"+F1).attr("x1",F-iw/2*K).attr("y1",Q+33*K).attr("x2",F+iw/2*K).attr("y2",Q+33*K),J.append("line").attr("x1",F-iw/2*K).attr("y1",Q+60*K).attr("x2",F).attr("y2",Q+45*K),J.append("line").attr("x1",F).attr("y1",Q+45*K).attr("x2",F+(iw/2-2)*K).attr("y2",Q+60*K);let G=J.append("circle");G.attr("cx",B.x+B.width/2),G.attr("cy",Q+10*K),G.attr("r",15*K),G.attr("width",B.width*K),G.attr("height",B.height*K);let L=J.node().getBBox();B.height=L.height;let H=N7();H.x=B.x,H.y=Q,H.fill="#eaeaea",H.width=B.width,H.height=B.height/K,H.class="actor",H.rx=3,H.ry=3;let q=C.get(B.name)??0;if(Wk.has(k))J.style("stroke",b[q%b.length]),J.style("fill",l[q%b.length]);else J.style("stroke",M);return Yk(E,A9(B.description))(B.description,J,H.x,Q+35*K-(z==="neo"?10:0),H.width,H.height,{class:`actor ${aw}`},E),B.height},"drawActorTypeActor"),si4=X(async function(u,B,E,A,C,D,F){let U=F??new Map([...D.db.getActors().values()].map((z,k)=>[z.name,k]));switch(B.type){case"actor":return await di4(u,B,E,A,U);case"participant":return await $i4(u,B,E,A,U);case"boundary":return await pi4(u,B,E,A,U);case"control":return await gi4(u,B,E,A,C,U);case"entity":return await _i4(u,B,E,A,U);case"database":return await ni4(u,B,E,A,U);case"collections":return await yi4(u,B,E,A,U);case"queue":return await ci4(u,B,E,A,U)}},"drawActor"),oi4=X(function(u,B,E){let C=u.append("g");if(S9u(C,B),B.name)Yk(E)(B.name,C,B.x,B.y+E.boxTextMargin+(B.textMaxHeight||0)/2,B.width,0,{class:"text"},E);C.lower()},"drawBox"),ti4=X(function(u){return u.append("g")},"anchorElement"),ei4=X(function(u,B,E,A,C,D,F){let{theme:U,themeVariables:z}=A,{bkgColorArray:k,borderColorArray:f,mainBkg:l}=z,b=N7(),M=B.anchored,Z=B.actor;b.x=B.startx,b.y=B.starty,b.class="activation"+C%3,b.width=B.stopx-B.startx,b.height=E-B.starty;let J=TR(M,b),K=(F??new Map([...D.db.getActors().values()].map((Q,G)=>[Q.name,G]))).get(Z)??0;if(Wk.has(U))J.style("stroke",f[K%f.length]),J.style("fill",k[K%f.length]??l)},"drawActivation"),ua4=X(async function(u,B,E,A,C){let{boxMargin:D,boxTextMargin:F,labelBoxHeight:U,labelBoxWidth:z,messageFontFamily:k,messageFontSize:f,messageFontWeight:l}=A,b=u.append("g").attr("data-et","control-structure").attr("data-id","i"+C.id),M=X(function(w,K,Q,G){return b.append("line").attr("x1",w).attr("y1",K).attr("x2",Q).attr("y2",G).attr("class","loopLine")},"drawLoopLine");if(M(B.startx,B.starty,B.stopx,B.starty),M(B.stopx,B.starty,B.stopx,B.stopy),M(B.startx,B.stopy,B.stopx,B.stopy),M(B.startx,B.starty,B.startx,B.stopy),B.sections!==void 0)B.sections.forEach(function(w){M(B.startx,w.y,B.stopx,w.y).style("stroke-dasharray","3, 3")});let Z=um();Z.text=E,Z.x=B.startx,Z.y=B.starty,Z.fontFamily=k,Z.fontSize=f,Z.fontWeight=l,Z.anchor="middle",Z.valign="middle",Z.tspan=!1,Z.width=Math.max(z??0,50),Z.height=U+(A.look==="neo"?15:0)||20,Z.textMargin=F,Z.class="labelText",x9u(b,Z),Z=W9u(),Z.text=B.title,Z.x=B.startx+z/2+(B.stopx-B.startx)/2,Z.y=B.starty+D+F,Z.anchor="middle",Z.valign="middle",Z.textMargin=F,Z.class="loopText",Z.fontFamily=k,Z.fontSize=f,Z.fontWeight=l,Z.wrap=!0;let J=A9(Z.text)?await Yc(b,Z,B):nL(b,Z);if(B.sectionTitles!==void 0){for(let[w,K]of Object.entries(B.sectionTitles))if(K.message){if(Z.text=K.message,Z.x=B.startx+(B.stopx-B.startx)/2,Z.y=B.sections[w].y+D+F,Z.class="sectionTitle",Z.anchor="middle",Z.valign="middle",Z.tspan=!1,Z.fontFamily=k,Z.fontSize=f,Z.fontWeight=l,Z.wrap=B.wrap,A9(Z.text))B.starty=B.sections[w].y,await Yc(b,Z,B);else nL(b,Z);let Q=Math.round(J.map((G)=>(G._groups||G)[0][0].getBBox().height).reduce((G,L)=>G+L));B.sections[w].height+=Q-(D+F)}}return B.height=Math.round(B.stopy-B.starty),b},"drawLoop"),S9u=X(function(u,B){oh(u,B)},"drawBackgroundRect"),Ba4=X(function(u,B){u.append("defs").append("symbol").attr("id",B+"-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"),Ea4=X(function(u,B){u.append("defs").append("symbol").attr("id",B+"-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"),Aa4=X(function(u,B){u.append("defs").append("symbol").attr("id",B+"-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"),Ca4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),Da4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),Fa4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),Ua4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),za4=X(function(u,B){let{theme:E}=B;u.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",`${E==="redux"||E==="redux-color"?"#000000":"#FFFFFF"}`)},"insertDropShadow"),W9u=X(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"),ka4=X(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),Yk=function(){function u(D,F,U,z,k,f,l){let b=F.append("text").attr("x",U+k/2).attr("y",z+f/2+5).style("text-anchor","middle").text(D);C(b,l)}X(u,"byText");function B(D,F,U,z,k,f,l,b){let{actorFontSize:M,actorFontFamily:Z,actorFontWeight:J}=b,[w,K]=A8(M),Q=D.split(yu.lineBreakRegex);for(let G=0;G<Q.length;G++){let L=G*w-w*(Q.length-1)/2,H=F.append("text").attr("x",U+k/2).attr("y",z).style("text-anchor","middle").style("font-size",K).style("font-weight",J).style("font-family",Z);H.append("tspan").attr("x",U+k/2).attr("dy",L).text(Q[G]),H.attr("y",z+f/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),C(H,l)}}X(B,"byTspan");function E(D,F,U,z,k,f,l,b){let M=F.append("switch"),J=M.append("foreignObject").attr("x",U).attr("y",z).attr("width",k).attr("height",f).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");J.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(D),B(D,M,U,z,k,f,l,b),C(J,l)}X(E,"byFo");async function A(D,F,U,z,k,f,l,b){let M=await VQ(D,F4()),Z=F.append("switch"),w=Z.append("foreignObject").attr("x",U+k/2-M.width/2).attr("y",z+f/2-M.height/2).attr("width",M.width).attr("height",M.height).append("xhtml:div").style("height","100%").style("width","100%");w.append("div").style("text-align","center").style("vertical-align","middle").html(await hQ(D,F4())),B(D,Z,U,z,k,f,l,b),C(w,l)}X(A,"byKatex");function C(D,F){for(let U in F)if(F.hasOwnProperty(U))D.attr(U,F[U])}return X(C,"_setTextAttrs"),function(D,F=!1){if(F)return A;return D.textPlacement==="fo"?E:D.textPlacement==="old"?u:B}}(),fa4=function(){function u(C,D,F,U,z,k,f){let l=D.append("text").attr("x",F).attr("y",U).style("text-anchor","start").text(C);A(l,f)}X(u,"byText");function B(C,D,F,U,z,k,f,l){let{actorFontSize:b,actorFontFamily:M,actorFontWeight:Z}=l,J=C.split(yu.lineBreakRegex);for(let w=0;w<J.length;w++){let K=w*b-b*(J.length-1)/2,Q=D.append("text").attr("x",F).attr("y",U).style("text-anchor","start").style("font-size",b).style("font-weight",Z).style("font-family",M);Q.append("tspan").attr("x",F).attr("dy",K).text(J[w]),Q.attr("y",U+k/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),A(Q,f)}}X(B,"byTspan");function E(C,D,F,U,z,k,f,l){let b=D.append("switch"),Z=b.append("foreignObject").attr("x",F).attr("y",U).attr("width",z).attr("height",k).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");Z.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(C),B(C,b,F,U,z,k,f,l),A(Z,f)}X(E,"byFo");function A(C,D){for(let F in D)if(D.hasOwnProperty(F))C.attr(F,D[F])}return X(A,"_setTextAttrs"),function(C){return C.textPlacement==="fo"?E:C.textPlacement==="old"?u:B}}(),la4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),ba4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),Ma4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),Za4=X(function(u,B){u.append("defs").append("marker").attr("id",B+"-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"),P6={drawRect:TR,drawText:nL,drawLabel:x9u,drawActor:si4,drawBox:oi4,drawPopup:ri4,anchorElement:ti4,drawActivation:ei4,drawLoop:ua4,drawBackgroundRect:S9u,insertArrowHead:Ca4,insertArrowFilledHead:Da4,insertSequenceNumber:Fa4,insertArrowCrossHead:Ua4,insertDatabaseIcon:Ba4,insertComputerIcon:Ea4,insertClockIcon:Aa4,getTextObj:W9u,getNoteRect:ka4,fixLifeLineHeights:v9u,sanitizeUrl:YD0.sanitizeUrl,insertDropShadow:za4,insertSolidTopArrowHead:la4,insertSolidBottomArrowHead:ba4,insertStickTopArrowHead:Ma4,insertStickBottomArrowHead:Za4},Uu={},_u={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:X(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map((u)=>u.height||0))+(this.loops.length===0?0:this.loops.map((u)=>u.height||0).reduce((u,B)=>u+B))+(this.messages.length===0?0:this.messages.map((u)=>u.height||0).reduce((u,B)=>u+B))+(this.notes.length===0?0:this.notes.map((u)=>u.height||0).reduce((u,B)=>u+B))},"getHeight"),clear:X(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:X(function(u){this.boxes.push(u)},"addBox"),addActor:X(function(u){this.actors.push(u)},"addActor"),addLoop:X(function(u){this.loops.push(u)},"addLoop"),addMessage:X(function(u){this.messages.push(u)},"addMessage"),addNote:X(function(u){this.notes.push(u)},"addNote"),lastActor:X(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:X(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:X(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:X(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:X(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,T9u($0())},"init"),updateVal:X(function(u,B,E,A){if(u[B]===void 0)u[B]=E;else u[B]=A(E,u[B])},"updateVal"),updateBounds:X(function(u,B,E,A){let C=this,D=0;function F(U){return X(function(k){D++;let f=C.sequenceItems.length-D+1;if(C.updateVal(k,"starty",B-f*Uu.boxMargin,Math.min),C.updateVal(k,"stopy",A+f*Uu.boxMargin,Math.max),C.updateVal(_u.data,"startx",u-f*Uu.boxMargin,Math.min),C.updateVal(_u.data,"stopx",E+f*Uu.boxMargin,Math.max),U!=="activation")C.updateVal(k,"startx",u-f*Uu.boxMargin,Math.min),C.updateVal(k,"stopx",E+f*Uu.boxMargin,Math.max),C.updateVal(_u.data,"starty",B-f*Uu.boxMargin,Math.min),C.updateVal(_u.data,"stopy",A+f*Uu.boxMargin,Math.max)},"updateItemBounds")}X(F,"updateFn"),this.sequenceItems.forEach(F()),this.activations.forEach(F("activation"))},"updateBounds"),insert:X(function(u,B,E,A){let C=yu.getMin(u,E),D=yu.getMax(u,E),F=yu.getMin(B,A),U=yu.getMax(B,A);this.updateVal(_u.data,"startx",C,Math.min),this.updateVal(_u.data,"starty",F,Math.min),this.updateVal(_u.data,"stopx",D,Math.max),this.updateVal(_u.data,"stopy",U,Math.max),this.updateBounds(C,F,D,U)},"insert"),newActivation:X(function(u,B,E){let A=E.get(u.from),C=Oc(u.from).length||0,D=A.x+A.width/2+(C-1)*Uu.activationWidth/2;this.activations.push({startx:D,starty:this.verticalPos+2,stopx:D+Uu.activationWidth,stopy:void 0,actor:u.from,anchored:P6.anchorElement(B)})},"newActivation"),endActivation:X(function(u){let B=this.activations.map(function(E){return E.actor}).lastIndexOf(u.from);return this.activations.splice(B,1)[0]},"endActivation"),createLoop:X(function(u={message:void 0,wrap:!1,width:void 0},B){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:u.message,wrap:u.wrap,width:u.width,height:0,fill:B}},"createLoop"),newLoop:X(function(u={message:void 0,wrap:!1,width:void 0},B){this.sequenceItems.push(this.createLoop(u,B))},"newLoop"),endLoop:X(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:X(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:X(function(u){let B=this.sequenceItems.pop();B.sections=B.sections||[],B.sectionTitles=B.sectionTitles||[],B.sections.push({y:_u.getVerticalPos(),height:0}),B.sectionTitles.push(u),this.sequenceItems.push(B)},"addSectionToLoop"),saveVerticalPos:X(function(){if(this.isLoopOverlap())this.savedVerticalPos=this.verticalPos},"saveVerticalPos"),resetVerticalPos:X(function(){if(this.isLoopOverlap())this.verticalPos=this.savedVerticalPos},"resetVerticalPos"),bumpVerticalPos:X(function(u){this.verticalPos=this.verticalPos+u,this.data.stopy=yu.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:X(function(){return this.verticalPos},"getVerticalPos"),getBounds:X(function(){return{bounds:this.data,models:this.models}},"getBounds")},Ja4=X(async function(u,B,E){_u.bumpVerticalPos(Uu.boxMargin),B.height=Uu.boxMargin,B.starty=_u.getVerticalPos();let A=N7();A.x=B.startx,A.y=B.starty,A.width=B.width||Uu.width,A.class="note";let C=u.append("g");C.attr("data-et","note"),C.attr("data-id","i"+E);let D=P6.drawRect(C,A),F=um();F.x=B.startx,F.y=B.starty,F.width=A.width,F.dy="1em",F.text=B.message,F.class="noteText",F.fontFamily=Uu.noteFontFamily,F.fontSize=Uu.noteFontSize,F.fontWeight=Uu.noteFontWeight,F.anchor=Uu.noteAlign,F.textMargin=Uu.noteMargin,F.valign="center";let U=A9(F.text)?await Yc(C,F):nL(C,F),z=Math.round(U.map((k)=>(k._groups||k)[0][0].getBBox().height).reduce((k,f)=>k+f));D.attr("height",z+2*Uu.noteMargin),B.height+=z+2*Uu.noteMargin,_u.bumpVerticalPos(z+2*Uu.noteMargin),B.stopy=B.starty+z+2*Uu.noteMargin,B.stopx=B.startx+A.width,_u.insert(B.startx,B.starty,B.stopx,B.stopy),_u.models.addNote(B)},"drawNote"),q9u=X(function(u,B,E,A,C,D,F){let U=A.db.getActors(),z=U.get(B.from),k=U.get(B.to),f=E.sequenceVisible,l=z.x+z.width/2,b=k.x+k.width/2,M=l<=b,Z=j9u(B,A),J=u.append("g"),w=16.5,K=X((q,x)=>{let v=q?w:-w;return x?-v:v},"getCircleOffset"),Q=X((q)=>{J.append("circle").attr("cx",q).attr("cy",F).attr("r",5).attr("width",10).attr("height",10)},"drawCircle"),{CENTRAL_CONNECTION:G,CENTRAL_CONNECTION_REVERSE:L,CENTRAL_CONNECTION_DUAL:H}=A.db.LINETYPE;if(f)switch(B.centralConnection){case G:if(Z)b+=K(M,!0);break;case L:if(!Z)l+=K(M,!1);break;case H:if(Z)b+=K(M,!0);else l+=K(M,!1);break}switch(B.centralConnection){case G:Q(b);break;case L:Q(l);break;case H:Q(l),Q(b);break}},"drawCentralConnection"),Vw=X((u)=>{return{fontFamily:u.messageFontFamily,fontSize:u.messageFontSize,fontWeight:u.messageFontWeight}},"messageFont"),_L=X((u)=>{return{fontFamily:u.noteFontFamily,fontSize:u.noteFontSize,fontWeight:u.noteFontWeight}},"noteFont"),SD0=X((u)=>{return{fontFamily:u.actorFontFamily,fontSize:u.actorFontSize,fontWeight:u.actorFontWeight}},"actorFont");X(Y9u,"boundMessage");wa4=X(async function(u,B,E,A,C,D){let{startx:F,stopx:U,starty:z,message:k,type:f,sequenceIndex:l,sequenceVisible:b}=B,M=R4.calculateTextDimensions(k,Vw(Uu)),Z=um();if(Z.x=Math.min(F,U),Z.y=z+10,Z.width=Math.abs(U-F),Z.class="messageText",Z.dy="1em",Z.text=k,Z.fontFamily=Uu.messageFontFamily,Z.fontSize=Uu.messageFontSize,Z.fontWeight=Uu.messageFontWeight,Z.anchor=Uu.messageAlign,Z.valign="center",Z.textMargin=Uu.wrapPadding,Z.tspan=!1,A9(Z.text))await Yc(u,Z,{startx:F,stopx:U,starty:E});else nL(u,Z);let J=M.width,w;if(F===U){let Q=b||Uu.showSequenceNumbers,G=j9u(C,A),L=xa4(C,A),H=F+(Q&&(G||L)?10:0);if(Uu.rightAngles)w=u.append("path").attr("d",`M ${H},${E} H ${F+yu.getMax(Uu.width/2,J/2)} V ${E+25} H ${F}`);else w=u.append("path").attr("d","M "+H+","+E+" C "+(H+60)+","+(E-10)+" "+(F+60)+","+(E+30)+" "+F+","+(E+20));if(xD0(C,A))q9u(u,C,B,A,F,U,E)}else if(w=u.append("line"),w.attr("x1",F),w.attr("y1",E),w.attr("x2",U),w.attr("y2",E),xD0(C,A))q9u(u,C,B,A,F,U,E);if(f===A.db.LINETYPE.DOTTED||f===A.db.LINETYPE.DOTTED_CROSS||f===A.db.LINETYPE.DOTTED_POINT||f===A.db.LINETYPE.DOTTED_OPEN||f===A.db.LINETYPE.BIDIRECTIONAL_DOTTED||f===A.db.LINETYPE.SOLID_TOP_DOTTED||f===A.db.LINETYPE.SOLID_BOTTOM_DOTTED||f===A.db.LINETYPE.STICK_TOP_DOTTED||f===A.db.LINETYPE.STICK_BOTTOM_DOTTED||f===A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||f===A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||f===A.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||f===A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)w.style("stroke-dasharray","3, 3"),w.attr("class","messageLine1");else w.attr("class","messageLine0");w.attr("data-et","message"),w.attr("data-id","i"+B.id),w.attr("data-from",B.from),w.attr("data-to",B.to);let K="";if(Uu.arrowMarkerAbsolute)K=LZ(!0);if(w.attr("stroke-width",2),w.attr("stroke","none"),w.style("fill","none"),f===A.db.LINETYPE.SOLID_TOP||f===A.db.LINETYPE.SOLID_TOP_DOTTED)w.attr("marker-end","url("+K+"#"+D+"-solidTopArrowHead)");if(f===A.db.LINETYPE.SOLID_BOTTOM||f===A.db.LINETYPE.SOLID_BOTTOM_DOTTED)w.attr("marker-end","url("+K+"#"+D+"-solidBottomArrowHead)");if(f===A.db.LINETYPE.STICK_TOP||f===A.db.LINETYPE.STICK_TOP_DOTTED)w.attr("marker-end","url("+K+"#"+D+"-stickTopArrowHead)");if(f===A.db.LINETYPE.STICK_BOTTOM||f===A.db.LINETYPE.STICK_BOTTOM_DOTTED)w.attr("marker-end","url("+K+"#"+D+"-stickBottomArrowHead)");if(f===A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||f===A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED)w.attr("marker-start","url("+K+"#"+D+"-solidBottomArrowHead)");if(f===A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||f===A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED)w.attr("marker-start","url("+K+"#"+D+"-solidTopArrowHead)");if(f===A.db.LINETYPE.STICK_ARROW_TOP_REVERSE||f===A.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED)w.attr("marker-start","url("+K+"#"+D+"-stickBottomArrowHead)");if(f===A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||f===A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)w.attr("marker-start","url("+K+"#"+D+"-stickTopArrowHead)");if(f===A.db.LINETYPE.SOLID||f===A.db.LINETYPE.DOTTED)w.attr("marker-end","url("+K+"#"+D+"-arrowhead)");if(f===A.db.LINETYPE.BIDIRECTIONAL_SOLID||f===A.db.LINETYPE.BIDIRECTIONAL_DOTTED)w.attr("marker-start","url("+K+"#"+D+"-arrowhead)"),w.attr("marker-end","url("+K+"#"+D+"-arrowhead)");if(f===A.db.LINETYPE.SOLID_POINT||f===A.db.LINETYPE.DOTTED_POINT)w.attr("marker-end","url("+K+"#"+D+"-filled-head)");if(f===A.db.LINETYPE.SOLID_CROSS||f===A.db.LINETYPE.DOTTED_CROSS)w.attr("marker-end","url("+K+"#"+D+"-crosshead)");if(b||Uu.showSequenceNumbers){let Q=f===A.db.LINETYPE.BIDIRECTIONAL_SOLID||f===A.db.LINETYPE.BIDIRECTIONAL_DOTTED,G=f===A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||f===A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||f===A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||f===A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||f===A.db.LINETYPE.STICK_ARROW_TOP_REVERSE||f===A.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||f===A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||f===A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,L=6,H=xD0(C,A),q=F,x=U;if(Q){if(F<U)q=F+12;else q=F-6+(H?-5:0),q+=C?.centralConnection===A.db.LINETYPE.CENTRAL_CONNECTION_DUAL||C?.centralConnection===A.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0;w.attr("x1",q)}else if(G){if(U>F)x=U-12;else x=U-6,q+=C?.centralConnection===A.db.LINETYPE.CENTRAL_CONNECTION_DUAL||C?.centralConnection===A.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0;x+=H?15:0,w.attr("x2",x),w.attr("x1",q)}else w.attr("x1",F+6);let v=0,W=F===U,S=F<=U;if(W)v=B.fromBounds+1;else if(G)v=S?B.toBounds-1:B.fromBounds+1;else v=S?B.fromBounds+1:B.toBounds-1;let T="12px",R=l.toString().length;if(R>5)T="7px";else if(R>3)T="9px";u.append("line").attr("x1",v).attr("y1",E).attr("x2",v).attr("y2",E).attr("stroke-width",0).attr("marker-start","url("+K+"#"+D+"-sequencenumber)"),u.append("text").attr("x",v).attr("y",E+4).attr("font-family","sans-serif").attr("font-size",T).attr("text-anchor","middle").attr("class","sequenceNumber").text(l)}},"drawMessage"),Ka4=X(function(u,B,E,A,C,D,F){let U=0,z=0,k=void 0,f=0;for(let l of A){let b=B.get(l),M=b.box;if(k&&k!=M){if(!F)_u.models.addBox(k);z+=Uu.boxMargin+k.margin}if(M&&M!=k){if(!F)M.x=U+z,M.y=C;z+=M.margin}if(b.width=yu.getMax(b.width||Uu.width,Uu.width),b.height=yu.getMax(b.height||Uu.height,Uu.height),b.margin=b.margin||Uu.actorMargin,f=yu.getMax(f,b.height),E.get(b.name))z+=b.width/2;if(b.x=U+z,b.starty=_u.getVerticalPos(),_u.insert(b.x,C,b.x+b.width,b.height),U+=b.width+z,b.box)b.box.width=U+M.margin-b.box.x;z=b.margin,k=b.box,_u.models.addActor(b)}if(k&&!F)_u.models.addBox(k);_u.bumpVerticalPos(f)},"addActorRenderingData"),WD0=X(async function(u,B,E,A,C,D,F){if(!A)for(let U of E){let z=B.get(U);await P6.drawActor(u,z,Uu,!1,C,D,F)}else{let U=0;_u.bumpVerticalPos(Uu.boxMargin*2);for(let z of E){let k=B.get(z);if(!k.stopy)k.stopy=_u.getVerticalPos();let f=await P6.drawActor(u,k,Uu,!0,C,D,F);U=yu.getMax(U,f)}_u.bumpVerticalPos(U+Uu.boxMargin)}},"drawActors"),R9u=X(function(u,B,E,A){let C=0,D=0;for(let F of E){let U=B.get(F),z=Ga4(U),k=P6.drawPopup(u,U,z,Uu,Uu.forceMenus,A);if(k.height>C)C=k.height;if(k.width+U.x>D)D=k.width+U.x}return{maxHeight:C,maxWidth:D}},"drawActorsPopup"),T9u=X(function(u){if(E9(Uu,u),u.fontFamily)Uu.actorFontFamily=Uu.noteFontFamily=Uu.messageFontFamily=u.fontFamily;if(u.fontSize)Uu.actorFontSize=Uu.noteFontSize=Uu.messageFontSize=u.fontSize;if(u.fontWeight)Uu.actorFontWeight=Uu.noteFontWeight=Uu.messageFontWeight=u.fontWeight},"setConf"),Oc=X(function(u){return _u.activations.filter(function(B){return B.actor===u})},"actorActivations"),X9u=X(function(u,B){let E=B.get(u),A=Oc(u),C=A.reduce(function(F,U){return yu.getMin(F,U.startx)},E.x+E.width/2-1),D=A.reduce(function(F,U){return yu.getMax(F,U.stopx)},E.x+E.width/2+1);return[C,D]},"activationBounds");X(cC,"adjustLoopHeightForWrap");X(O9u,"adjustCreatedDestroyedData");Qa4=X(async function(u,B,E,A){let{securityLevel:C,sequence:D,look:F,themeVariables:U}=$0();Uu=D;let z;if(C==="sandbox")z=Ku("#i"+B);let k=C==="sandbox"?Ku(z.nodes()[0].contentDocument.body):Ku("body"),f=C==="sandbox"?z.nodes()[0].contentDocument:document;_u.init(),z0.debug(A.db);let l=C==="sandbox"?k.select(`[id="${B}"]`):Ku(`[id="${B}"]`),b=A.db.getActors(),M=A.db.getCreatedActors(),Z=A.db.getDestroyedActors(),J=A.db.getBoxes(),w=A.db.getActorKeys(),K=A.db.getMessages(),Q=A.db.getDiagramTitle(),G=A.db.hasAtLeastOneBox(),L=A.db.hasAtLeastOneBoxWithTitle(),H=await I9u(b,K,A);if(Uu.height=await P9u(b,H,J),P6.insertComputerIcon(l,B),P6.insertDatabaseIcon(l,B),P6.insertClockIcon(l,B),G){if(_u.bumpVerticalPos(Uu.boxMargin),L)_u.bumpVerticalPos(J[0].textMaxHeight)}if(Uu.hideUnusedParticipants===!0){let m=new Set;K.forEach(($)=>{m.add($.from),m.add($.to)}),w=w.filter(($)=>m.has($))}let q=new Map(w.map((m,$)=>[b.get(m)?.name??m,$]));Ka4(l,b,M,w,0,K,!1);let x=await Sa4(K,b,H,A);if(P6.insertArrowHead(l,B),P6.insertArrowCrossHead(l,B),P6.insertArrowFilledHead(l,B),P6.insertSequenceNumber(l,B),P6.insertSolidTopArrowHead(l,B),P6.insertSolidBottomArrowHead(l,B),P6.insertStickTopArrowHead(l,B),P6.insertStickBottomArrowHead(l,B),F==="neo")P6.insertDropShadow(l,Uu);function v(m,$){let y=_u.endActivation(m);if(y.starty+18>$)y.starty=$-6,$+=12;P6.drawActivation(l,y,$,Uu,Oc(m.from).length,A,q),_u.insert(y.startx,$-10,y.stopx,$)}X(v,"activeEnd");let W=1,S=1,T=[],R=[],Y=0;for(let m of K){let $,y,p;switch(m.type){case A.db.LINETYPE.NOTE:_u.resetVerticalPos(),y=m.noteModel,await Ja4(l,y,m.id);break;case A.db.LINETYPE.ACTIVE_START:_u.newActivation(m,l,b);break;case A.db.LINETYPE.CENTRAL_CONNECTION:_u.newActivation(m,l,b);break;case A.db.LINETYPE.CENTRAL_CONNECTION_REVERSE:_u.newActivation(m,l,b);break;case A.db.LINETYPE.ACTIVE_END:v(m,_u.getVerticalPos());break;case A.db.LINETYPE.LOOP_START:cC(x,m,Uu.boxMargin,Uu.boxMargin+Uu.boxTextMargin,(e)=>_u.newLoop(e));break;case A.db.LINETYPE.LOOP_END:$=_u.endLoop(),await P6.drawLoop(l,$,"loop",Uu,m),_u.bumpVerticalPos($.stopy-_u.getVerticalPos()),_u.models.addLoop($);break;case A.db.LINETYPE.RECT_START:cC(x,m,Uu.boxMargin,Uu.boxMargin,(e)=>{let _=e.message;if(!_)_=U?.rectBkgColor||U?.actorBkg||"rgba(128, 128, 128, 0.5)";_u.newLoop(void 0,_)});break;case A.db.LINETYPE.RECT_END:$=_u.endLoop(),R.push($),_u.models.addLoop($),_u.bumpVerticalPos($.stopy-_u.getVerticalPos());break;case A.db.LINETYPE.OPT_START:cC(x,m,Uu.boxMargin,Uu.boxMargin+Uu.boxTextMargin,(e)=>_u.newLoop(e));break;case A.db.LINETYPE.OPT_END:$=_u.endLoop(),await P6.drawLoop(l,$,"opt",Uu,m),_u.bumpVerticalPos($.stopy-_u.getVerticalPos()),_u.models.addLoop($);break;case A.db.LINETYPE.ALT_START:cC(x,m,Uu.boxMargin,Uu.boxMargin+Uu.boxTextMargin,(e)=>_u.newLoop(e));break;case A.db.LINETYPE.ALT_ELSE:cC(x,m,Uu.boxMargin+Uu.boxTextMargin,Uu.boxMargin,(e)=>_u.addSectionToLoop(e));break;case A.db.LINETYPE.ALT_END:$=_u.endLoop(),await P6.drawLoop(l,$,"alt",Uu,m),_u.bumpVerticalPos($.stopy-_u.getVerticalPos()),_u.models.addLoop($);break;case A.db.LINETYPE.PAR_START:case A.db.LINETYPE.PAR_OVER_START:cC(x,m,Uu.boxMargin,Uu.boxMargin+Uu.boxTextMargin,(e)=>_u.newLoop(e)),_u.saveVerticalPos();break;case A.db.LINETYPE.PAR_AND:cC(x,m,Uu.boxMargin+Uu.boxTextMargin,Uu.boxMargin,(e)=>_u.addSectionToLoop(e));break;case A.db.LINETYPE.PAR_END:$=_u.endLoop(),await P6.drawLoop(l,$,"par",Uu,m),_u.bumpVerticalPos($.stopy-_u.getVerticalPos()),_u.models.addLoop($);break;case A.db.LINETYPE.AUTONUMBER:if(W=m.message.start||W,S=m.message.step||S,m.message.visible)A.db.enableSequenceNumbers();else A.db.disableSequenceNumbers();break;case A.db.LINETYPE.CRITICAL_START:cC(x,m,Uu.boxMargin,Uu.boxMargin+Uu.boxTextMargin,(e)=>_u.newLoop(e));break;case A.db.LINETYPE.CRITICAL_OPTION:cC(x,m,Uu.boxMargin+Uu.boxTextMargin,Uu.boxMargin,(e)=>_u.addSectionToLoop(e));break;case A.db.LINETYPE.CRITICAL_END:$=_u.endLoop(),await P6.drawLoop(l,$,"critical",Uu,m),_u.bumpVerticalPos($.stopy-_u.getVerticalPos()),_u.models.addLoop($);break;case A.db.LINETYPE.BREAK_START:cC(x,m,Uu.boxMargin,Uu.boxMargin+Uu.boxTextMargin,(e)=>_u.newLoop(e));break;case A.db.LINETYPE.BREAK_END:$=_u.endLoop(),await P6.drawLoop(l,$,"break",Uu,m),_u.bumpVerticalPos($.stopy-_u.getVerticalPos()),_u.models.addLoop($);break;default:try{p=m.msgModel,p.starty=_u.getVerticalPos(),p.sequenceIndex=W,p.sequenceVisible=A.db.showSequenceNumbers(),p.id=m.id,p.from=m.from,p.to=m.to;let e=await Y9u(l,p);O9u(m,p,e,Y,b,M,Z),T.push({messageModel:p,lineStartY:e,msg:m}),_u.models.addMessage(p)}catch(e){z0.error("error while drawing message",e)}}if([A.db.LINETYPE.SOLID_OPEN,A.db.LINETYPE.DOTTED_OPEN,A.db.LINETYPE.SOLID,A.db.LINETYPE.SOLID_TOP,A.db.LINETYPE.SOLID_BOTTOM,A.db.LINETYPE.STICK_TOP,A.db.LINETYPE.STICK_BOTTOM,A.db.LINETYPE.SOLID_TOP_DOTTED,A.db.LINETYPE.SOLID_BOTTOM_DOTTED,A.db.LINETYPE.STICK_TOP_DOTTED,A.db.LINETYPE.STICK_BOTTOM_DOTTED,A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,A.db.LINETYPE.STICK_ARROW_TOP_REVERSE,A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,A.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,A.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,A.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,A.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,A.db.LINETYPE.DOTTED,A.db.LINETYPE.SOLID_CROSS,A.db.LINETYPE.DOTTED_CROSS,A.db.LINETYPE.SOLID_POINT,A.db.LINETYPE.DOTTED_POINT,A.db.LINETYPE.BIDIRECTIONAL_SOLID,A.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(m.type))W=Math.round((W+S)*100)/100;Y++}z0.debug("createdActors",M),z0.debug("destroyedActors",Z),await WD0(l,b,w,!1,B,A,q);for(let m of T)await wa4(l,m.messageModel,m.lineStartY,A,m.msg,B);if(Uu.mirrorActors)await WD0(l,b,w,!0,B,A,q);R.forEach((m)=>P6.drawBackgroundRect(l,m)),v9u(l,b,w,Uu);for(let m of _u.models.boxes){m.height=_u.getVerticalPos()-m.y,_u.insert(m.x,m.y,m.x+m.width,m.height);let $=Uu.boxMargin*2;m.startx=m.x-$,m.starty=m.y-$*0.25,m.stopx=m.startx+m.width+2*$,m.stopy=m.starty+m.height+$*0.75,m.stroke="rgb(0,0,0, 0.5)",P6.drawBox(l,m,Uu)}if(G)_u.bumpVerticalPos(Uu.boxMargin);let a=R9u(l,b,w,f),{bounds:I}=_u.getBounds();if(I.startx===void 0)I.startx=0;if(I.starty===void 0)I.starty=0;if(I.stopx===void 0)I.stopx=0;if(I.stopy===void 0)I.stopy=0;let O=I.stopy-I.starty;if(O<a.maxHeight)O=a.maxHeight;let i=O+2*Uu.diagramMarginY;if(Uu.mirrorActors)i=i-Uu.boxMargin+Uu.bottomMarginAdj;let N=I.stopx-I.startx;if(N<a.maxWidth)N=a.maxWidth;let V=N+2*Uu.diagramMarginX;if(Q)l.append("text").text(Q).attr("x",(I.stopx-I.startx)/2-2*Uu.diagramMarginX).attr("y",-25);y3(l,i,V,Uu.useMaxWidth);let h=Q?40:0,r=b.size&&F==="neo"?30:0;l.attr("viewBox",I.startx-Uu.diagramMarginX+" -"+(Uu.diagramMarginY+h)+" "+V+" "+(i+h+r)),z0.debug("models:",_u.models)},"draw");X(I9u,"getMaxMessageWidthPerActor");Ga4=X(function(u){let B=0,E=SD0(Uu);for(let A in u.links){let D=R4.calculateTextDimensions(A,E).width+2*Uu.wrapPadding+2*Uu.boxMargin;if(B<D)B=D}return B},"getRequiredPopupWidth");X(P9u,"calculateActorMargins");Ha4=X(async function(u,B,E){let A=B.get(u.from),C=B.get(u.to),D=A.x,F=C.x,U=u.wrap&&u.message,z=A9(u.message)?await VQ(u.message,$0()):R4.calculateTextDimensions(U?R4.wrapLabel(u.message,Uu.width,_L(Uu)):u.message,_L(Uu)),k={width:U?Uu.width:yu.getMax(Uu.width,z.width+2*Uu.noteMargin),height:0,startx:A.x,stopx:0,starty:0,stopy:0,message:u.message};if(u.placement===E.db.PLACEMENT.RIGHTOF)k.width=U?yu.getMax(Uu.width,z.width):yu.getMax(A.width/2+C.width/2,z.width+2*Uu.noteMargin),k.startx=D+(A.width+Uu.actorMargin)/2;else if(u.placement===E.db.PLACEMENT.LEFTOF)k.width=U?yu.getMax(Uu.width,z.width+2*Uu.noteMargin):yu.getMax(A.width/2+C.width/2,z.width+2*Uu.noteMargin),k.startx=D-k.width+(A.width-Uu.actorMargin)/2;else if(u.to===u.from)z=R4.calculateTextDimensions(U?R4.wrapLabel(u.message,yu.getMax(Uu.width,A.width),_L(Uu)):u.message,_L(Uu)),k.width=U?yu.getMax(Uu.width,A.width):yu.getMax(A.width,Uu.width,z.width+2*Uu.noteMargin),k.startx=D+(A.width-k.width)/2;else k.width=Math.abs(D+A.width/2-(F+C.width/2))+Uu.actorMargin,k.startx=D<F?D+A.width/2-Uu.actorMargin/2:F+C.width/2-Uu.actorMargin/2;if(U)k.message=R4.wrapLabel(u.message,k.width-2*Uu.wrapPadding,_L(Uu));return z0.debug(`NM:[${k.startx},${k.stopx},${k.starty},${k.stopy}:${k.width},${k.height}=${u.message}]`),k},"buildNoteModel"),xD0=X(function(u,B){let{CENTRAL_CONNECTION:E,CENTRAL_CONNECTION_REVERSE:A,CENTRAL_CONNECTION_DUAL:C}=B.db.LINETYPE;return[E,A,C].includes(u.centralConnection)},"hasCentralConnection"),Xa4=X(function(u,B,E){let{CENTRAL_CONNECTION_REVERSE:A,CENTRAL_CONNECTION_DUAL:C,BIDIRECTIONAL_SOLID:D,BIDIRECTIONAL_DOTTED:F}=B.db.LINETYPE,U=0;if(u.centralConnection===A||u.centralConnection===C)U+=La4;if((u.centralConnection===A||u.centralConnection===C)&&(u.type===D||u.type===F))U+=E?0:-qa4;return U},"calculateCentralConnectionOffset"),j9u=X(function(u,B){let{SOLID_ARROW_TOP_REVERSE:E,SOLID_ARROW_TOP_REVERSE_DOTTED:A,SOLID_ARROW_BOTTOM_REVERSE:C,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:D,STICK_ARROW_TOP_REVERSE:F,STICK_ARROW_TOP_REVERSE_DOTTED:U,STICK_ARROW_BOTTOM_REVERSE:z,STICK_ARROW_BOTTOM_REVERSE_DOTTED:k}=B.db.LINETYPE;return[E,A,C,D,F,U,z,k].includes(u.type)},"isReverseArrowType"),xa4=X(function(u,B){let{BIDIRECTIONAL_SOLID:E,BIDIRECTIONAL_DOTTED:A}=B.db.LINETYPE;return[E,A].includes(u.type)},"isBidirectionalArrowType"),va4=X(function(u,B,E){let{look:A}=$0();if(![E.db.LINETYPE.SOLID_OPEN,E.db.LINETYPE.DOTTED_OPEN,E.db.LINETYPE.SOLID,E.db.LINETYPE.SOLID_TOP,E.db.LINETYPE.SOLID_BOTTOM,E.db.LINETYPE.STICK_TOP,E.db.LINETYPE.STICK_BOTTOM,E.db.LINETYPE.SOLID_TOP_DOTTED,E.db.LINETYPE.SOLID_BOTTOM_DOTTED,E.db.LINETYPE.STICK_TOP_DOTTED,E.db.LINETYPE.STICK_BOTTOM_DOTTED,E.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,E.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,E.db.LINETYPE.STICK_ARROW_TOP_REVERSE,E.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,E.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,E.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,E.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,E.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,E.db.LINETYPE.DOTTED,E.db.LINETYPE.SOLID_CROSS,E.db.LINETYPE.DOTTED_CROSS,E.db.LINETYPE.SOLID_POINT,E.db.LINETYPE.DOTTED_POINT,E.db.LINETYPE.BIDIRECTIONAL_SOLID,E.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(u.type))return{};let[C,D]=X9u(u.from,B),[F,U]=X9u(u.to,B),z=C<=F,k=z?D:C,f=z?F:U;if(A==="neo"){if(u.type!==E.db.LINETYPE.SOLID_OPEN)f+=z?-3:3;if(u.type===E.db.LINETYPE.BIDIRECTIONAL_SOLID||u.type===E.db.LINETYPE.BIDIRECTIONAL_DOTTED)k+=z?3:-3}k+=Xa4(u,E,z);let l=Math.abs(F-U)>2,b=X((w)=>{return z?-w:w},"adjustValue");if(u.from===u.to)f=k;else{if(u.activate&&!l)f+=b(Uu.activationWidth/2-1);if(![E.db.LINETYPE.SOLID_OPEN,E.db.LINETYPE.DOTTED_OPEN,E.db.LINETYPE.STICK_TOP,E.db.LINETYPE.STICK_BOTTOM,E.db.LINETYPE.STICK_TOP_DOTTED,E.db.LINETYPE.STICK_BOTTOM_DOTTED,E.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,E.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,E.db.LINETYPE.STICK_ARROW_TOP_REVERSE,E.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,E.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,E.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,E.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,E.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(u.type))f+=b(3);if([E.db.LINETYPE.BIDIRECTIONAL_SOLID,E.db.LINETYPE.BIDIRECTIONAL_DOTTED,E.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,E.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,E.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,E.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(u.type))k-=b(3)}let M=[C,D,F,U],Z=Math.abs(k-f);if(u.wrap&&u.message)u.message=R4.wrapLabel(u.message,yu.getMax(Z+2*Uu.wrapPadding,Uu.width),Vw(Uu));let J=R4.calculateTextDimensions(u.message,Vw(Uu));return{width:yu.getMax(u.wrap?0:J.width+2*Uu.wrapPadding,Z+2*Uu.wrapPadding,Uu.width),height:0,startx:k,stopx:f,starty:0,stopy:0,message:u.message,type:u.type,wrap:u.wrap,fromBounds:Math.min.apply(null,M),toBounds:Math.max.apply(null,M)}},"buildMessageModel"),Sa4=X(async function(u,B,E,A){let C={},D=[],F,U,z;for(let k of u){switch(k.type){case A.db.LINETYPE.LOOP_START:case A.db.LINETYPE.ALT_START:case A.db.LINETYPE.OPT_START:case A.db.LINETYPE.PAR_START:case A.db.LINETYPE.PAR_OVER_START:case A.db.LINETYPE.CRITICAL_START:case A.db.LINETYPE.BREAK_START:D.push({id:k.id,msg:k.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case A.db.LINETYPE.ALT_ELSE:case A.db.LINETYPE.PAR_AND:case A.db.LINETYPE.CRITICAL_OPTION:if(k.message)F=D.pop(),C[F.id]=F,C[k.id]=F,D.push(F);break;case A.db.LINETYPE.LOOP_END:case A.db.LINETYPE.ALT_END:case A.db.LINETYPE.OPT_END:case A.db.LINETYPE.PAR_END:case A.db.LINETYPE.CRITICAL_END:case A.db.LINETYPE.BREAK_END:F=D.pop(),C[F.id]=F;break;case A.db.LINETYPE.ACTIVE_START:{let l=B.get(k.from?k.from:k.to.actor),b=Oc(k.from?k.from:k.to.actor).length,M=l.x+l.width/2+(b-1)*Uu.activationWidth/2,Z={startx:M,stopx:M+Uu.activationWidth,actor:k.from,enabled:!0};_u.activations.push(Z)}break;case A.db.LINETYPE.ACTIVE_END:{let l=_u.activations.map((b)=>b.actor).lastIndexOf(k.from);_u.activations.splice(l,1).splice(0,1)}break}if(k.placement!==void 0)U=await Ha4(k,B,A),k.noteModel=U,D.forEach((l)=>{F=l,F.from=yu.getMin(F.from,U.startx),F.to=yu.getMax(F.to,U.startx+U.width),F.width=yu.getMax(F.width,Math.abs(F.from-F.to))-Uu.labelBoxWidth});else if(z=va4(k,B,A),k.msgModel=z,z.startx&&z.stopx&&D.length>0)D.forEach((l)=>{if(F=l,z.startx===z.stopx){let b=B.get(k.from),M=B.get(k.to);F.from=yu.getMin(b.x-z.width/2,b.x-b.width/2,F.from),F.to=yu.getMax(M.x+z.width/2,M.x+b.width/2,F.to),F.width=yu.getMax(F.width,Math.abs(F.to-F.from))-Uu.labelBoxWidth}else F.from=yu.getMin(z.startx,F.from),F.to=yu.getMax(z.stopx,F.to),F.width=yu.getMax(F.width,z.width)-Uu.labelBoxWidth})}return _u.activations=[],z0.debug("Loop type widths:",C),C},"calculateLoopBounds"),Wa4={bounds:_u,drawActors:WD0,drawActorsPopup:R9u,setConf:T9u,draw:Qa4},Ya4={parser:ji4,get db(){return new Vi4},renderer:Wa4,styles:mi4,init:X((u)=>{if(!u.sequence)u.sequence={};if(u.wrap)u.sequence.wrap=u.wrap,Av({sequence:{wrap:u.wrap}})},"init")}});var RD0,Pc,a9u,V9u,Ic="classId-",h9u=0,hw,jc,Ra4,Nc,Ta4,Oa4,Ia4,ic;var TD0=g(()=>{_F();ME();Q8();J8();bE();t3();s4();o4();Y4();i3();WQ();RD0=function(){var u=X(function(Y0,h0,J0,n){for(J0=J0||{},n=Y0.length;n--;J0[Y0[n]]=h0);return J0},"o"),B=[1,18],E=[1,19],A=[1,20],C=[1,41],D=[1,26],F=[1,42],U=[1,24],z=[1,25],k=[1,32],f=[1,33],l=[1,34],b=[1,45],M=[1,35],Z=[1,36],J=[1,37],w=[1,38],K=[1,27],Q=[1,28],G=[1,29],L=[1,30],H=[1,31],q=[1,44],x=[1,46],v=[1,43],W=[1,47],S=[1,9],T=[1,8,9],R=[1,58],Y=[1,59],a=[1,60],I=[1,61],O=[1,62],i=[1,63],N=[1,64],V=[1,8,9,41],h=[1,77],r=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],m=[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],$=[13,60,86,100,102,103],y=[13,60,73,74,86,100,102,103],p=[13,60,68,69,70,71,72,86,100,102,103],e=[1,103],_=[1,121],b0=[1,117],B0=[1,113],k0=[1,119],f0=[1,114],D0=[1,115],P0=[1,116],q0=[1,118],m0=[1,120],a0=[22,50,60,61,82,86,87,88,89,90],_0=[1,128],w0=[12,39],v0=[1,8,9,39,41,44,46],T0=[1,8,9,22],Z0=[1,153],F0=[1,8,9,61],u0=[1,8,9,22,50,60,61,82,86,87,88,89,90],M0={trace:X(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:X(function(h0,J0,n,d,H0,o,L0){var E0=o.length-1;switch(H0){case 8:this.$=o[E0-1];break;case 9:case 10:case 13:case 15:this.$=o[E0];break;case 11:case 14:this.$=o[E0-2]+"."+o[E0];break;case 12:case 16:this.$=o[E0-1]+o[E0];break;case 17:case 18:this.$=o[E0-1]+"~"+o[E0]+"~";break;case 19:d.addRelation(o[E0]);break;case 20:o[E0-1].title=d.cleanupLabel(o[E0]),d.addRelation(o[E0-1]);break;case 31:this.$=o[E0].trim(),d.setAccTitle(this.$);break;case 32:case 33:this.$=o[E0].trim(),d.setAccDescription(this.$);break;case 34:d.addClassesToNamespace(o[E0-3],o[E0-1][0],o[E0-1][1]),d.popNamespace();break;case 35:d.addClassesToNamespace(o[E0-4],o[E0-1][0],o[E0-1][1]),d.popNamespace();break;case 36:this.$=d.addNamespace(o[E0]);break;case 37:this.$=d.addNamespace(o[E0-1],o[E0]);break;case 38:this.$=[[o[E0]],[]];break;case 39:this.$=[[o[E0-1]],[]];break;case 40:o[E0][0].unshift(o[E0-2]),this.$=o[E0];break;case 41:this.$=[[],[o[E0]]];break;case 42:this.$=[[],[o[E0-1]]];break;case 43:o[E0][1].unshift(o[E0-2]),this.$=o[E0];break;case 44:case 45:this.$=[[],[]];break;case 46:this.$=o[E0];break;case 48:d.setCssClass(o[E0-2],o[E0]);break;case 49:d.addMembers(o[E0-3],o[E0-1]);break;case 51:d.setCssClass(o[E0-5],o[E0-3]),d.addMembers(o[E0-5],o[E0-1]);break;case 52:d.addAnnotation(o[E0-3],o[E0-1]);break;case 53:d.addAnnotation(o[E0-6],o[E0-4]),d.addMembers(o[E0-6],o[E0-1]);break;case 54:d.addAnnotation(o[E0-5],o[E0-3]);break;case 55:this.$=o[E0],d.addClass(o[E0]);break;case 56:this.$=o[E0-1],d.addClass(o[E0-1]),d.setClassLabel(o[E0-1],o[E0]);break;case 60:d.addAnnotation(o[E0],o[E0-2]);break;case 61:case 74:this.$=[o[E0]];break;case 62:o[E0].push(o[E0-1]),this.$=o[E0];break;case 63:break;case 64:d.addMember(o[E0-1],d.cleanupLabel(o[E0]));break;case 65:break;case 66:break;case 67:this.$={id1:o[E0-2],id2:o[E0],relation:o[E0-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:o[E0-3],id2:o[E0],relation:o[E0-1],relationTitle1:o[E0-2],relationTitle2:"none"};break;case 69:this.$={id1:o[E0-3],id2:o[E0],relation:o[E0-2],relationTitle1:"none",relationTitle2:o[E0-1]};break;case 70:this.$={id1:o[E0-4],id2:o[E0],relation:o[E0-2],relationTitle1:o[E0-3],relationTitle2:o[E0-1]};break;case 71:this.$=d.addNote(o[E0],o[E0-1]);break;case 72:this.$=d.addNote(o[E0]);break;case 73:this.$=o[E0-2],d.defineClass(o[E0-1],o[E0]);break;case 75:this.$=o[E0-2].concat([o[E0]]);break;case 76:d.setDirection("TB");break;case 77:d.setDirection("BT");break;case 78:d.setDirection("RL");break;case 79:d.setDirection("LR");break;case 80:this.$={type1:o[E0-2],type2:o[E0],lineType:o[E0-1]};break;case 81:this.$={type1:"none",type2:o[E0],lineType:o[E0-1]};break;case 82:this.$={type1:o[E0-1],type2:"none",lineType:o[E0]};break;case 83:this.$={type1:"none",type2:"none",lineType:o[E0]};break;case 84:this.$=d.relationType.AGGREGATION;break;case 85:this.$=d.relationType.EXTENSION;break;case 86:this.$=d.relationType.COMPOSITION;break;case 87:this.$=d.relationType.DEPENDENCY;break;case 88:this.$=d.relationType.LOLLIPOP;break;case 89:this.$=d.lineType.LINE;break;case 90:this.$=d.lineType.DOTTED_LINE;break;case 91:case 97:this.$=o[E0-2],d.setClickEvent(o[E0-1],o[E0]);break;case 92:case 98:this.$=o[E0-3],d.setClickEvent(o[E0-2],o[E0-1]),d.setTooltip(o[E0-2],o[E0]);break;case 93:this.$=o[E0-2],d.setLink(o[E0-1],o[E0]);break;case 94:this.$=o[E0-3],d.setLink(o[E0-2],o[E0-1],o[E0]);break;case 95:this.$=o[E0-3],d.setLink(o[E0-2],o[E0-1]),d.setTooltip(o[E0-2],o[E0]);break;case 96:this.$=o[E0-4],d.setLink(o[E0-3],o[E0-2],o[E0]),d.setTooltip(o[E0-3],o[E0-1]);break;case 99:this.$=o[E0-3],d.setClickEvent(o[E0-2],o[E0-1],o[E0]);break;case 100:this.$=o[E0-4],d.setClickEvent(o[E0-3],o[E0-2],o[E0-1]),d.setTooltip(o[E0-3],o[E0]);break;case 101:this.$=o[E0-3],d.setLink(o[E0-2],o[E0]);break;case 102:this.$=o[E0-4],d.setLink(o[E0-3],o[E0-1],o[E0]);break;case 103:this.$=o[E0-4],d.setLink(o[E0-3],o[E0-1]),d.setTooltip(o[E0-3],o[E0]);break;case 104:this.$=o[E0-5],d.setLink(o[E0-4],o[E0-2],o[E0]),d.setTooltip(o[E0-4],o[E0-1]);break;case 105:this.$=o[E0-2],d.setCssStyle(o[E0-1],o[E0]);break;case 106:d.setCssClass(o[E0-1],o[E0]);break;case 107:this.$=[o[E0]];break;case 108:o[E0-2].push(o[E0]),this.$=o[E0-2];break;case 110:this.$=o[E0-1]+o[E0];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:B,35:E,37:A,38:22,42:C,43:23,46:D,48:F,51:U,52:z,54:k,56:f,57:l,60:b,62:M,63:Z,64:J,65:w,75:K,76:Q,78:G,82:L,83:H,86:q,100:x,102:v,103:W},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},u(S,[2,5],{8:[1,48]}),{8:[1,49]},u(T,[2,19],{22:[1,50]}),u(T,[2,21]),u(T,[2,22]),u(T,[2,23]),u(T,[2,24]),u(T,[2,25]),u(T,[2,26]),u(T,[2,27]),u(T,[2,28]),u(T,[2,29]),u(T,[2,30]),{34:[1,51]},{36:[1,52]},u(T,[2,33]),u(T,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:R,69:Y,70:a,71:I,72:O,73:i,74:N}),{39:[1,65]},u(V,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),u(T,[2,65]),u(T,[2,66]),{16:69,60:b,86:q,100:x,102:v},{16:39,17:40,19:70,60:b,86:q,100:x,102:v,103:W},{16:39,17:40,19:71,60:b,86:q,100:x,102:v,103:W},{16:39,17:40,19:72,60:b,86:q,100:x,102:v,103:W},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:b,86:q,100:x,102:v,103:W},{13:h,55:76},{58:78,60:[1,79]},u(T,[2,76]),u(T,[2,77]),u(T,[2,78]),u(T,[2,79]),u(r,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:b,86:q,100:x,102:v,103:W}),u(r,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:b,86:q,100:x,102:v,103:W},{16:39,17:40,19:87,60:b,86:q,100:x,102:v,103:W},u(m,[2,133]),u(m,[2,134]),u(m,[2,135]),u(m,[2,136]),u([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),u(S,[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:B,35:E,37:A,42:C,46:D,48:F,51:U,52:z,54:k,56:f,57:l,60:b,62:M,63:Z,64:J,65:w,75:K,76:Q,78:G,82:L,83:H,86:q,100:x,102:v,103:W}),{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:B,35:E,37:A,38:22,42:C,43:23,46:D,48:F,51:U,52:z,54:k,56:f,57:l,60:b,62:M,63:Z,64:J,65:w,75:K,76:Q,78:G,82:L,83:H,86:q,100:x,102:v,103:W},u(T,[2,20]),u(T,[2,31]),u(T,[2,32]),{13:[1,91],16:39,17:40,19:90,60:b,86:q,100:x,102:v,103:W},{53:92,66:56,67:57,68:R,69:Y,70:a,71:I,72:O,73:i,74:N},u(T,[2,64]),{67:93,73:i,74:N},u($,[2,83],{66:94,68:R,69:Y,70:a,71:I,72:O}),u(y,[2,84]),u(y,[2,85]),u(y,[2,86]),u(y,[2,87]),u(y,[2,88]),u(p,[2,89]),u(p,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:C,43:23,48:F,54:k,56:f},{16:100,60:b,86:q,100:x,102:v},{41:[1,102],45:101,51:e},{16:104,60:b,86:q,100:x,102:v},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:_,50:b0,59:110,60:B0,82:k0,84:111,85:112,86:f0,87:D0,88:P0,89:q0,90:m0},{60:[1,122]},{13:h,55:123},u(V,[2,72]),u(V,[2,138]),{22:_,50:b0,59:124,60:B0,61:[1,125],82:k0,84:111,85:112,86:f0,87:D0,88:P0,89:q0,90:m0},u(a0,[2,74]),{16:39,17:40,19:126,60:b,86:q,100:x,102:v,103:W},u(r,[2,16]),u(r,[2,17]),u(r,[2,18]),{11:127,12:_0,39:[2,36]},u(w0,[2,9],{16:85,17:86,15:130,18:[1,129],60:b,86:q,100:x,102:v,103:W}),u(w0,[2,10]),u(v0,[2,55],{11:131,12:_0}),u(S,[2,7]),{9:[1,132]},u(T0,[2,67]),{16:39,17:40,19:133,60:b,86:q,100:x,102:v,103:W},{13:[1,135],16:39,17:40,19:134,60:b,86:q,100:x,102:v,103:W},u($,[2,82],{66:136,68:R,69:Y,70:a,71:I,72:O}),u($,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:C,43:23,48:F,54:k,56:f},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},u(V,[2,48],{39:[1,142]}),{41:[1,143]},u(V,[2,50]),{41:[2,61],45:144,51:e},{47:[1,145]},{16:39,17:40,19:146,60:b,86:q,100:x,102:v,103:W},u(T,[2,91],{13:[1,147]}),u(T,[2,93],{13:[1,149],77:[1,148]}),u(T,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},u(T,[2,105],{61:Z0}),u(F0,[2,107],{85:154,22:_,50:b0,60:B0,82:k0,86:f0,87:D0,88:P0,89:q0,90:m0}),u(u0,[2,109]),u(u0,[2,111]),u(u0,[2,112]),u(u0,[2,113]),u(u0,[2,114]),u(u0,[2,115]),u(u0,[2,116]),u(u0,[2,117]),u(u0,[2,118]),u(u0,[2,119]),u(T,[2,106]),u(V,[2,71]),u(T,[2,73],{61:Z0}),{60:[1,155]},u(r,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:b,86:q,100:x,102:v,103:W},u(w0,[2,12]),u(v0,[2,56]),{1:[2,4]},u(T0,[2,69]),u(T0,[2,68]),{16:39,17:40,19:158,60:b,86:q,100:x,102:v,103:W},u($,[2,80]),u(V,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:C,43:23,48:F,54:k,56:f},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:C,43:23,48:F,54:k,56:f},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:C,43:23,48:F,54:k,56:f},{45:163,51:e},u(V,[2,49]),{41:[2,62]},u(V,[2,52],{39:[1,164]}),u(T,[2,60]),u(T,[2,92]),u(T,[2,94]),u(T,[2,95],{77:[1,165]}),u(T,[2,98]),u(T,[2,99],{13:[1,166]}),u(T,[2,101],{13:[1,168],77:[1,167]}),{22:_,50:b0,60:B0,82:k0,84:169,85:112,86:f0,87:D0,88:P0,89:q0,90:m0},u(u0,[2,110]),u(a0,[2,75]),{14:[1,170]},u(w0,[2,11]),u(T0,[2,70]),u(V,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:e},u(T,[2,96]),u(T,[2,100]),u(T,[2,102]),u(T,[2,103],{77:[1,174]}),u(F0,[2,108],{85:154,22:_,50:b0,60:B0,82:k0,86:f0,87:D0,88:P0,89:q0,90:m0}),u(v0,[2,8]),u(V,[2,51]),{41:[1,175]},u(V,[2,54]),u(T,[2,104]),u(V,[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:X(function(h0,J0){if(J0.recoverable)this.trace(h0);else{var n=Error(h0);throw n.hash=J0,n}},"parseError"),parse:X(function(h0){var J0=this,n=[0],d=[],H0=[null],o=[],L0=this.table,E0="",r0=0,c0=0,p0=0,g0=2,Bu=1,n0=o.slice.call(arguments,1),e0=Object.create(this.lexer),t0={yy:{}};for(var zu in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,zu))t0.yy[zu]=this.yy[zu];if(e0.setInput(h0,t0.yy),t0.yy.lexer=e0,t0.yy.parser=this,typeof e0.yylloc>"u")e0.yylloc={};var W0=e0.yylloc;o.push(W0);var $u=e0.options&&e0.options.ranges;if(typeof t0.yy.parseError==="function")this.parseError=t0.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function i0(Ru){n.length=n.length-2*Ru,H0.length=H0.length-Ru,o.length=o.length-Ru}X(i0,"popStack");function vu(){var Ru=d.pop()||e0.lex()||Bu;if(typeof Ru!=="number"){if(Ru instanceof Array)d=Ru,Ru=d.pop();Ru=J0.symbols_[Ru]||Ru}return Ru}X(vu,"lex");var cu,Du,Nu,du,Iu,x0,Tu={},Vu,Zu,I0,lu;while(!0){if(Nu=n[n.length-1],this.defaultActions[Nu])du=this.defaultActions[Nu];else{if(cu===null||typeof cu>"u")cu=vu();du=L0[Nu]&&L0[Nu][cu]}if(typeof du>"u"||!du.length||!du[0]){var Hu="";lu=[];for(Vu in L0[Nu])if(this.terminals_[Vu]&&Vu>g0)lu.push("'"+this.terminals_[Vu]+"'");if(e0.showPosition)Hu="Parse error on line "+(r0+1)+`:
`+e0.showPosition()+`
Expecting `+lu.join(", ")+", got '"+(this.terminals_[cu]||cu)+"'";else Hu="Parse error on line "+(r0+1)+": Unexpected "+(cu==Bu?"end of input":"'"+(this.terminals_[cu]||cu)+"'");this.parseError(Hu,{text:e0.match,token:this.terminals_[cu]||cu,line:e0.yylineno,loc:W0,expected:lu})}if(du[0]instanceof Array&&du.length>1)throw Error("Parse Error: multiple actions possible at state: "+Nu+", token: "+cu);switch(du[0]){case 1:if(n.push(cu),H0.push(e0.yytext),o.push(e0.yylloc),n.push(du[1]),cu=null,!Du){if(c0=e0.yyleng,E0=e0.yytext,r0=e0.yylineno,W0=e0.yylloc,p0>0)p0--}else cu=Du,Du=null;break;case 2:if(Zu=this.productions_[du[1]][1],Tu.$=H0[H0.length-Zu],Tu._$={first_line:o[o.length-(Zu||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(Zu||1)].first_column,last_column:o[o.length-1].last_column},$u)Tu._$.range=[o[o.length-(Zu||1)].range[0],o[o.length-1].range[1]];if(x0=this.performAction.apply(Tu,[E0,c0,r0,t0.yy,du[1],H0,o].concat(n0)),typeof x0<"u")return x0;if(Zu)n=n.slice(0,-1*Zu*2),H0=H0.slice(0,-1*Zu),o=o.slice(0,-1*Zu);n.push(this.productions_[du[1]][0]),H0.push(Tu.$),o.push(Tu._$),I0=L0[n[n.length-2]][n[n.length-1]],n.push(I0);break;case 3:return!0}}return!0},"parse")},X0=function(){var Y0={EOF:1,parseError:X(function(J0,n){if(this.yy.parser)this.yy.parser.parseError(J0,n);else throw Error(J0)},"parseError"),setInput:X(function(h0,J0){if(this.yy=J0||this.yy||{},this._input=h0,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:X(function(){var h0=this._input[0];this.yytext+=h0,this.yyleng++,this.offset++,this.match+=h0,this.matched+=h0;var J0=h0.match(/(?:\r\n?|\n).*/g);if(J0)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),h0},"input"),unput:X(function(h0){var J0=h0.length,n=h0.split(/(?:\r\n?|\n)/g);this._input=h0+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J0),this.offset-=J0;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),n.length-1)this.yylineno-=n.length-1;var H0=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:n?(n.length===d.length?this.yylloc.first_column:0)+d[d.length-n.length].length-n[0].length:this.yylloc.first_column-J0},this.options.ranges)this.yylloc.range=[H0[0],H0[0]+this.yyleng-J0];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(h0){this.unput(this.match.slice(h0))},"less"),pastInput:X(function(){var h0=this.matched.substr(0,this.matched.length-this.match.length);return(h0.length>20?"...":"")+h0.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var h0=this.match;if(h0.length<20)h0+=this._input.substr(0,20-h0.length);return(h0.substr(0,20)+(h0.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var h0=this.pastInput(),J0=Array(h0.length+1).join("-");return h0+this.upcomingInput()+`
`+J0+"^"},"showPosition"),test_match:X(function(h0,J0){var n,d,H0;if(this.options.backtrack_lexer){if(H0={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)H0.yylloc.range=this.yylloc.range.slice(0)}if(d=h0[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+h0[0].length},this.yytext+=h0[0],this.match+=h0[0],this.matches=h0,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(h0[0].length),this.matched+=h0[0],n=this.performAction.call(this,this.yy,this,J0,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(n)return n;else if(this._backtrack){for(var o in H0)this[o]=H0[o];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var h0,J0,n,d;if(!this._more)this.yytext="",this.match="";var H0=this._currentRules();for(var o=0;o<H0.length;o++)if(n=this._input.match(this.rules[H0[o]]),n&&(!J0||n[0].length>J0[0].length)){if(J0=n,d=o,this.options.backtrack_lexer)if(h0=this.test_match(n,H0[o]),h0!==!1)return h0;else if(this._backtrack){J0=!1;continue}else return!1;else if(!this.options.flex)break}if(J0){if(h0=this.test_match(J0,H0[d]),h0!==!1)return h0;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:X(function(){var J0=this.next();if(J0)return J0;else return this.lex()},"lex"),begin:X(function(J0){this.conditionStack.push(J0)},"begin"),popState:X(function(){var J0=this.conditionStack.length-1;if(J0>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(J0){if(J0=this.conditionStack.length-1-Math.abs(J0||0),J0>=0)return this.conditionStack[J0];else return"INITIAL"},"topState"),pushState:X(function(J0){this.begin(J0)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:X(function(J0,n,d,H0){var o=H0;switch(d){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 Y0}();M0.lexer=X0;function S0(){this.yy={}}return X(S0,"Parser"),S0.prototype=M0,M0.Parser=S0,new S0}();RD0.parser=RD0;Pc=RD0,a9u=["#","+","~","-",""],V9u=class{static{X(this,"ClassMember")}constructor(u,B){this.memberType=B,this.visibility="",this.classifier="",this.text="";let E=C3(u,$0());this.parseMember(E)}getDisplayDetails(){let u=this.visibility+UF(this.id);if(this.memberType==="method"){if(u+=`(${UF(this.parameters.trim())})`,this.returnType)u+=" : "+UF(this.returnType)}u=u.trim();let B=this.parseClassifier();return{displayText:u,cssStyle:B}}parseMember(u){let B="";if(this.memberType==="method"){let C=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(u);if(C){let D=C[1]?C[1].trim():"";if(a9u.includes(D))this.visibility=D;if(this.id=C[2],this.parameters=C[3]?C[3].trim():"",B=C[4]?C[4].trim():"",this.returnType=C[5]?C[5].trim():"",B===""){let F=this.returnType.substring(this.returnType.length-1);if(/[$*]/.exec(F))B=F,this.returnType=this.returnType.substring(0,this.returnType.length-1)}}}else{let A=u.length,C=u.substring(0,1),D=u.substring(A-1);if(a9u.includes(C))this.visibility=C;if(/[$*]/.exec(D))B=D;this.id=u.substring(this.visibility===""?0:1,B===""?A:A-1)}this.classifier=B,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let E=`${this.visibility?"\\"+this.visibility:""}${UF(this.id)}${this.memberType==="method"?`(${UF(this.parameters)})${this.returnType?" : "+UF(this.returnType):""}`:""}`;if(this.text=E.replaceAll("<","&lt;").replaceAll(">","&gt;"),this.text.startsWith("\\&lt;"))this.text=this.text.replace("\\&lt;","~")}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},hw=X((u)=>yu.sanitizeText(u,$0()),"sanitizeText"),jc=class u{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=X((B)=>{let E=yH();Ku(B).select("svg").selectAll("g").filter(function(){return Ku(this).attr("title")!==null}).on("mouseover",(D)=>{let F=Ku(D.currentTarget),U=F.attr("title");if(!U)return;let z=D.currentTarget.getBoundingClientRect();E.transition().duration(200).style("opacity",".9"),E.html(oB.sanitize(U)).style("left",`${window.scrollX+z.left+z.width/2}px`).style("top",`${window.scrollY+z.bottom+4}px`),F.classed("hover",!0)}).on("mouseout",(D)=>{E.transition().duration(500).style("opacity",0),Ku(D.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=w3,this.getAccTitle=H3,this.setAccDescription=L3,this.getAccDescription=q3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,this.getConfig=X(()=>$0().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{X(this,"ClassDB")}splitClassNameAndType(B){let E=yu.sanitizeText(B,$0()),A="",C=E;if(E.indexOf("~")>0){let D=E.split("~");C=hw(D[0]),A=hw(D[1])}return{className:C,type:A}}setClassLabel(B,E){let A=yu.sanitizeText(B,$0());if(E)E=hw(E);let{className:C}=this.splitClassNameAndType(A);this.classes.get(C).label=E,this.classes.get(C).text=`${E}${this.classes.get(C).type?`<${this.classes.get(C).type}>`:""}`}addClass(B){let E=yu.sanitizeText(B,$0()),{className:A,type:C}=this.splitClassNameAndType(E);if(this.classes.has(A))return;let D=yu.sanitizeText(A,$0());this.classes.set(D,{id:D,type:C,label:D,text:`${D}${C?`&lt;${C}&gt;`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:Ic+D+"-"+h9u}),h9u++}addInterface(B,E){let A={id:`interface${this.interfaces.length}`,label:B,classId:E};this.interfaces.push(A)}setDiagramId(B){this.diagramId=B}lookUpDomId(B){let E=yu.sanitizeText(B,$0());if(this.classes.has(E)){let A=this.classes.get(E).domId;return this.diagramId?`${this.diagramId}-${A}`:A}throw Error("Class not found: "+E)}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",D3()}getClass(B){return this.classes.get(B)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(B){let E=typeof B==="number"?`note${B}`:B;return this.notes.get(E)}getNotes(){return this.notes}addRelation(B){z0.debug("Adding relation: "+JSON.stringify(B));let E=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];if(B.relation.type1===this.relationType.LOLLIPOP&&!E.includes(B.relation.type2))this.addClass(B.id2),this.addInterface(B.id1,B.id2),B.id1=`interface${this.interfaces.length-1}`;else if(B.relation.type2===this.relationType.LOLLIPOP&&!E.includes(B.relation.type1))this.addClass(B.id1),this.addInterface(B.id2,B.id1),B.id2=`interface${this.interfaces.length-1}`;else this.addClass(B.id1),this.addClass(B.id2);B.id1=this.splitClassNameAndType(B.id1).className,B.id2=this.splitClassNameAndType(B.id2).className,B.relationTitle1=yu.sanitizeText(B.relationTitle1.trim(),$0()),B.relationTitle2=yu.sanitizeText(B.relationTitle2.trim(),$0()),this.relations.push(B)}addAnnotation(B,E){let A=this.splitClassNameAndType(B).className;this.classes.get(A).annotations.push(E)}addMember(B,E){this.addClass(B);let A=this.splitClassNameAndType(B).className,C=this.classes.get(A);if(typeof E==="string"){let D=E.trim();if(D.startsWith("<<")&&D.endsWith(">>"))C.annotations.push(hw(D.substring(2,D.length-2)));else if(D.indexOf(")")>0)C.methods.push(new V9u(D,"method"));else if(D)C.members.push(new V9u(D,"attribute"))}}addMembers(B,E){if(Array.isArray(E))E.reverse(),E.forEach((A)=>this.addMember(B,A))}addNote(B,E){let A=this.notes.size,C={id:`note${A}`,class:E,text:B,index:A};return this.notes.set(C.id,C),C.id}cleanupLabel(B){if(B.startsWith(":"))B=B.substring(1);return hw(B.trim())}setCssClass(B,E){B.split(",").forEach((A)=>{let C=A;if(/\d/.exec(A[0]))C=Ic+C;C=this.splitClassNameAndType(C).className;let D=this.classes.get(C);if(D)D.cssClasses+=" "+E})}defineClass(B,E){for(let A of B){let C=this.styleClasses.get(A);if(C===void 0)C={id:A,styles:[],textStyles:[]},this.styleClasses.set(A,C);if(E)E.forEach((D)=>{if(/color/.exec(D)){let F=D.replace("fill","bgFill");C.textStyles.push(F)}C.styles.push(D)});this.classes.forEach((D)=>{if(D.cssClasses.includes(A))D.styles.push(...E.flatMap((F)=>F.split(",")))})}}setTooltip(B,E){B.split(",").forEach((A)=>{if(E!==void 0){let C=this.splitClassNameAndType(A).className,D=this.classes.get(C);if(D)D.tooltip=hw(E)}})}getTooltip(B,E){if(E&&this.namespaces.has(E))return this.namespaces.get(E).classes.get(B).tooltip;return this.classes.get(B).tooltip}setLink(B,E,A){let C=$0();B.split(",").forEach((D)=>{let F=D;if(/\d/.exec(D[0]))F=Ic+F;F=this.splitClassNameAndType(F).className;let U=this.classes.get(F);if(U)if(U.link=R4.formatUrl(E,C),C.securityLevel==="sandbox")U.linkTarget="_top";else if(typeof A==="string")U.linkTarget=hw(A);else U.linkTarget="_blank"}),this.setCssClass(B,"clickable")}setClickEvent(B,E,A){B.split(",").forEach((C)=>{this.setClickFunc(C,E,A);let D=this.splitClassNameAndType(C).className,F=this.classes.get(D);if(F)F.haveCallback=!0}),this.setCssClass(B,"clickable")}setClickFunc(B,E,A){let C=yu.sanitizeText(B,$0());if($0().securityLevel!=="loose")return;if(E===void 0)return;let F=this.splitClassNameAndType(C).className;if(this.classes.has(F)){let U=[];if(typeof A==="string"){U=A.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let z=0;z<U.length;z++){let k=U[z].trim();if(k.startsWith('"')&&k.endsWith('"'))k=k.substr(1,k.length-2);U[z]=k}}if(U.length===0)U.push(F);this.functions.push(()=>{let z=this.lookUpDomId(F),k=document.querySelector(`[id="${z}"]`);if(k!==null)k.addEventListener("click",()=>{R4.runFunc(E,...U)},!1)})}}bindFunctions(B){this.functions.forEach((E)=>{E(B)})}escapeHtml(B){return B.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}getDirection(){return this.direction}setDirection(B){this.direction=B}static resolveQualifiedId(B,E){let A=E.at(-1);return A?`${A}.${B}`:B}static getAncestorIds(B){let E=B.split("."),A=Array(E.length);A[0]=E[0];for(let C=1;C<E.length;C++)A[C]=`${A[C-1]}.${E[C]}`;return A}createNamespaceNode(B,E,A,C=!1){return{id:B,label:E,classes:new Map,notes:new Map,children:new Map,domId:Ic+B+"-"+this.namespaceCounter++,parent:A,explicit:C}}linkParentChild(B,E){let A=this.namespaces.get(B),C=this.namespaces.get(E);if(!A||!C)return;if(!A.children.has(E))A.children.set(E,C);C.parent??=B}addNamespace(B,E){let A=u.resolveQualifiedId(B,this.namespaceStack);if(this.namespaceStack.push(A),this.namespaces.has(A)){let F=this.namespaces.get(A);if(F.explicit=!0,E)F.label=E;return A}let C=A.split("."),D=u.getAncestorIds(A);for(let F=0;F<D.length;F++){let U=D[F],z=F>0?D[F-1]:void 0,k=F===D.length-1,f=k&&E?E:C[F];if(!this.namespaces.has(U))this.namespaces.set(U,this.createNamespaceNode(U,f,z,k));else if(k)this.namespaces.get(U).explicit=!0;if(z)this.linkParentChild(z,U)}return A}popNamespace(){this.namespaceStack.pop()}getNamespace(B){return this.namespaces.get(B)}getNamespaces(){return this.namespaces}addClassesToNamespace(B,E,A){if(!this.namespaces.has(B))return;for(let C of E){let{className:D}=this.splitClassNameAndType(C),F=this.getClass(D);F.parent=B,this.namespaces.get(B).classes.set(D,F)}for(let C of A){let D=this.getNote(C);D.parent=B,this.namespaces.get(B).notes.set(C,D)}}setCssStyle(B,E){let A=this.classes.get(B);if(!E||!A)return;for(let C of E)if(C.includes(","))A.styles.push(...C.split(","));else A.styles.push(C)}getArrowMarker(B){let E;switch(B){case 0:E="aggregation";break;case 1:E="extension";break;case 2:E="composition";break;case 3:E="dependency";break;case 4:E="lollipop";break;default:E="none"}return E}resolveExplicitAncestor(B){let E=B;while(E){let A=this.namespaces.get(E);if(!A)return;if(A.explicit)return E;E=A.parent}return}getData(){let B=[],E=[],A=$0(),C=A.class?.hierarchicalNamespaces??!0;for(let F of this.namespaces.values()){if(!C&&!F.explicit)continue;let U={id:F.id,label:C?F.label:F.id,isGroup:!0,padding:A.class.padding??16,shape:"rect",cssStyles:[],look:A.look,parentId:C?F.parent:void 0};B.push(U)}for(let F of this.classes.values()){let U=C?F.parent:this.resolveExplicitAncestor(F.parent),z={...F,type:void 0,isGroup:!1,parentId:U,look:A.look};B.push(z)}for(let F of this.notes.values()){let U=C?F.parent:this.resolveExplicitAncestor(F.parent),z={id:F.id,label:F.text,isGroup:!1,shape:"note",padding:A.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${A.themeVariables.noteBkgColor}`,`stroke: ${A.themeVariables.noteBorderColor}`],look:A.look,parentId:U,labelType:"markdown"};B.push(z);let k=this.classes.get(F.class)?.id;if(k){let f={id:`edgeNote${F.index}`,start:F.id,end:k,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:A.look};E.push(f)}}for(let F of this.interfaces){let U={id:F.id,label:F.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:A.look};B.push(U)}let D=0;for(let F of this.relations){D++;let U={id:QF(F.id1,F.id2,{prefix:"id",counter:D}),start:F.id1,end:F.id2,type:"normal",label:F.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(F.relation.type1),arrowTypeEnd:this.getArrowMarker(F.relation.type2),startLabelRight:F.relationTitle1==="none"?"":F.relationTitle1,endLabelLeft:F.relationTitle2==="none"?"":F.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:F.style||"",pattern:F.relation.lineType==1?"dashed":"solid",look:A.look,labelType:"markdown"};E.push(U)}return{nodes:B,edges:E,other:{},config:A,direction:this.getDirection()}}},Ra4=X((u)=>`g.classGroup text {
fill: ${u.nodeBorder||u.classText};
stroke: none;
font-family: ${u.fontFamily};
font-size: 10px;
.title {
font-weight: bolder;
}
}
.cluster-label text {
fill: ${u.titleColor};
}
.cluster-label span {
color: ${u.titleColor};
}
.cluster-label span p {
background-color: transparent;
}
.cluster rect {
fill: ${u.clusterBkg};
stroke: ${u.clusterBorder};
stroke-width: 1px;
}
.cluster text {
fill: ${u.titleColor};
}
.cluster span {
color: ${u.titleColor};
}
.nodeLabel, .edgeLabel {
color: ${u.classText};
}
.noteLabel .nodeLabel, .noteLabel .edgeLabel {
color: ${u.noteTextColor};
}
.edgeLabel .label rect {
fill: ${u.mainBkg};
}
.label text {
fill: ${u.classText};
}
.labelBkg {
background: ${u.mainBkg};
}
.edgeLabel .label span {
background: ${u.mainBkg};
}
.classTitle {
font-weight: bolder;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
stroke-width: ${u.strokeWidth};
}
.divider {
stroke: ${u.nodeBorder};
stroke-width: 1;
}
g.clickable {
cursor: pointer;
}
g.classGroup rect {
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
}
g.classGroup line {
stroke: ${u.nodeBorder};
stroke-width: 1;
}
.classLabel .box {
stroke: none;
stroke-width: 0;
fill: ${u.mainBkg};
opacity: 0.5;
}
.classLabel .label {
fill: ${u.nodeBorder};
font-size: 10px;
}
.relation {
stroke: ${u.lineColor};
stroke-width: ${u.strokeWidth};
fill: none;
}
.dashed-line{
stroke-dasharray: 3;
}
.dotted-line{
stroke-dasharray: 1 2;
}
[id$="-compositionStart"], .composition {
fill: ${u.lineColor} !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-compositionEnd"], .composition {
fill: ${u.lineColor} !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-dependencyStart"], .dependency {
fill: ${u.lineColor} !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-dependencyEnd"], .dependency {
fill: ${u.lineColor} !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-extensionStart"], .extension {
fill: transparent !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-extensionEnd"], .extension {
fill: transparent !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-aggregationStart"], .aggregation {
fill: transparent !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-aggregationEnd"], .aggregation {
fill: transparent !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-lollipopStart"], .lollipop {
fill: ${u.mainBkg} !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
[id$="-lollipopEnd"], .lollipop {
fill: ${u.mainBkg} !important;
stroke: ${u.lineColor} !important;
stroke-width: 1;
}
.edgeTerminals {
font-size: 11px;
line-height: initial;
}
.classTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${u.textColor};
}
.edgeLabel[data-look="neo"] {
background-color: ${u.edgeLabelBackground};
p {
background-color: ${u.edgeLabelBackground};
}
rect {
opacity: 0.5;
background-color: ${u.edgeLabelBackground};
fill: ${u.edgeLabelBackground};
}
text-align: center;
}
${gF()}
`,"getStyles"),Nc=Ra4,Ta4=X((u,B="TB")=>{if(!u.doc)return B;let E=B;for(let A of u.doc)if(A.stmt==="dir")E=A.value;return E},"getDir"),Oa4=X(function(u,B){return B.db.getClasses()},"getClasses"),Ia4=X(async function(u,B,E,A){z0.info("REF0:"),z0.info("Drawing class diagram (v3)",B);let{securityLevel:C,state:D,layout:F}=$0();A.db.setDiagramId(B);let U=A.db.getData(),z=ZA(B,C);U.type=A.type,U.layoutAlgorithm=$F(F),U.nodeSpacing=D?.nodeSpacing||50,U.rankSpacing=D?.rankSpacing||50,U.markers=["aggregation","extension","composition","dependency","lollipop"],U.diagramId=B,await kA(U,z);let k=8;R4.insertTitle(z,"classDiagramTitleText",D?.titleTopMargin??25,A.db.getDiagramTitle()),K8(z,k,"classDiagram",D?.useMaxWidth??!0)},"draw"),ic={getClasses:Oa4,draw:Ia4,getDir:Ta4}});var m9u={};ju(m9u,{diagram:()=>Pa4});var Pa4;var r9u=g(()=>{TD0();_F();ME();Q8();J8();bE();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();Pa4={parser:Pc,get db(){return new jc},renderer:ic,styles:Nc,init:X((u)=>{if(!u.class)u.class={};u.class.arrowMarkerAbsolute=u.arrowMarkerAbsolute},"init")}});var $9u={};ju($9u,{diagram:()=>ja4});var ja4;var y9u=g(()=>{TD0();_F();ME();Q8();J8();bE();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();ja4={parser:Pc,get db(){return new jc},renderer:ic,styles:Nc,init:X((u)=>{if(!u.class)u.class={};u.class.arrowMarkerAbsolute=u.arrowMarkerAbsolute},"init")}});function hc(u="",B=0,E="",A=ND0){let C=E!==null&&E.length>0?`${A}${E}`:"";return`${ea4}-${u}${C}-${B}`}function OR(u,B,E){if(!B.id||B.id==="</join></fork>"||B.id==="</choice>")return;if(B.cssClasses){if(!Array.isArray(B.cssCompiledStyles))B.cssCompiledStyles=[];B.cssClasses.split(" ").forEach((C)=>{let D=E.get(C);if(D)B.cssCompiledStyles=[...B.cssCompiledStyles??[],...D.styles]})}let A=u.find((C)=>C.id===B.id);if(A)Object.assign(A,B);else u.push(B)}function k2u(u){return u?.classes?.join(" ")??""}function f2u(u){return u?.styles??[]}var PD0,mc,Na4="TB",o9u="TB",c9u="dir",dL="state",pL="root",jD0="relation",ia4="classDef",aa4="style",Va4="applyClass",PR="default",t9u="divider",e9u="fill:none",u2u="fill: #333",B2u="c",E2u="markdown",A2u="normal",OD0="rect",ID0="rectWithTitle",ha4="stateStart",ma4="stateEnd",g9u="divider",_9u="roundedWithTitle",ra4="note",$a4="noteGroup",jR="statediagram",ya4="state",ca4,C2u="transition",ga4="note",_a4="note-edge",na4,pa4,da4="cluster",sa4,oa4="cluster-alt",ta4,D2u="parent",F2u="note",ea4="state",ND0="----",uV4,n9u,U2u,BV4,EV4,z2u,Vc,Sb=0,AV4,p9u,IR,CV4,IB,d9u,s9u,ac,Rk,DV4,rc;var iD0=g(()=>{ME();Q8();J8();bE();t3();s4();o4();Y4();i3();WQ();PD0=function(){var u=X(function(V,h,r,m){for(r=r||{},m=V.length;m--;r[V[m]]=h);return r},"o"),B=[1,2],E=[1,3],A=[1,4],C=[2,4],D=[1,9],F=[1,11],U=[1,16],z=[1,17],k=[1,18],f=[1,19],l=[1,33],b=[1,20],M=[1,21],Z=[1,22],J=[1,23],w=[1,24],K=[1,26],Q=[1,27],G=[1,28],L=[1,29],H=[1,30],q=[1,31],x=[1,32],v=[1,35],W=[1,36],S=[1,37],T=[1,38],R=[1,34],Y=[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],a=[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],I=[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],O={trace:X(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:X(function(h,r,m,$,y,p,e){var _=p.length-1;switch(y){case 3:return $.setRootDoc(p[_]),p[_];break;case 4:this.$=[];break;case 5:if(p[_]!="nl")p[_-1].push(p[_]),this.$=p[_-1];break;case 6:case 7:this.$=p[_];break;case 8:this.$="nl";break;case 12:this.$=p[_];break;case 13:let f0=p[_-1];f0.description=$.trimColon(p[_]),this.$=f0;break;case 14:this.$={stmt:"relation",state1:p[_-2],state2:p[_]};break;case 15:let D0=$.trimColon(p[_]);this.$={stmt:"relation",state1:p[_-3],state2:p[_-1],description:D0};break;case 19:this.$={stmt:"state",id:p[_-3],type:"default",description:"",doc:p[_-1]};break;case 20:var b0=p[_],B0=p[_-2].trim();if(p[_].match(":")){var k0=p[_].split(":");b0=k0[0],B0=[B0,k0[1]]}this.$={stmt:"state",id:b0,type:"default",description:B0};break;case 21:this.$={stmt:"state",id:p[_-3],type:"default",description:p[_-5],doc:p[_-1]};break;case 22:this.$={stmt:"state",id:p[_],type:"fork"};break;case 23:this.$={stmt:"state",id:p[_],type:"join"};break;case 24:this.$={stmt:"state",id:p[_],type:"choice"};break;case 25:this.$={stmt:"state",id:$.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:p[_-1].trim(),note:{position:p[_-2].trim(),text:p[_].trim()}};break;case 29:this.$=p[_].trim(),$.setAccTitle(this.$);break;case 30:case 31:this.$=p[_].trim(),$.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:p[_-3],url:p[_-2],tooltip:p[_-1]};break;case 33:this.$={stmt:"click",id:p[_-3],url:p[_-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:p[_-1].trim(),classes:p[_].trim()};break;case 36:this.$={stmt:"style",id:p[_-1].trim(),styleClass:p[_].trim()};break;case 37:this.$={stmt:"applyClass",id:p[_-1].trim(),styleClass:p[_].trim()};break;case 38:$.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:$.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:$.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:$.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:p[_].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:p[_-2].trim(),classes:[p[_].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:p[_-2].trim(),classes:[p[_].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:B,5:E,6:A},{1:[3]},{3:5,4:B,5:E,6:A},{3:6,4:B,5:E,6:A},u([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],C,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:D,5:F,8:8,9:10,10:12,11:13,12:14,13:15,16:U,17:z,19:k,22:f,24:l,25:b,26:M,27:Z,28:J,29:w,32:25,33:K,35:Q,37:G,38:L,41:H,45:q,48:x,51:v,52:W,53:S,54:T,57:R},u(Y,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:U,17:z,19:k,22:f,24:l,25:b,26:M,27:Z,28:J,29:w,32:25,33:K,35:Q,37:G,38:L,41:H,45:q,48:x,51:v,52:W,53:S,54:T,57:R},u(Y,[2,7]),u(Y,[2,8]),u(Y,[2,9]),u(Y,[2,10]),u(Y,[2,11]),u(Y,[2,12],{14:[1,40],15:[1,41]}),u(Y,[2,16]),{18:[1,42]},u(Y,[2,18],{20:[1,43]}),{23:[1,44]},u(Y,[2,22]),u(Y,[2,23]),u(Y,[2,24]),u(Y,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},u(Y,[2,28]),{34:[1,49]},{36:[1,50]},u(Y,[2,31]),{13:51,24:l,57:R},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},u(a,[2,44],{58:[1,56]}),u(a,[2,45],{58:[1,57]}),u(Y,[2,38]),u(Y,[2,39]),u(Y,[2,40]),u(Y,[2,41]),u(Y,[2,6]),u(Y,[2,13]),{13:58,24:l,57:R},u(Y,[2,17]),u(I,C,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},u(Y,[2,29]),u(Y,[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]},u(Y,[2,14],{14:[1,71]}),{4:D,5:F,8:8,9:10,10:12,11:13,12:14,13:15,16:U,17:z,19:k,21:[1,72],22:f,24:l,25:b,26:M,27:Z,28:J,29:w,32:25,33:K,35:Q,37:G,38:L,41:H,45:q,48:x,51:v,52:W,53:S,54:T,57:R},u(Y,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},u(Y,[2,34]),u(Y,[2,35]),u(Y,[2,36]),u(Y,[2,37]),u(a,[2,46]),u(a,[2,47]),u(Y,[2,15]),u(Y,[2,19]),u(I,C,{7:78}),u(Y,[2,26]),u(Y,[2,27]),{5:[1,79]},{5:[1,80]},{4:D,5:F,8:8,9:10,10:12,11:13,12:14,13:15,16:U,17:z,19:k,21:[1,81],22:f,24:l,25:b,26:M,27:Z,28:J,29:w,32:25,33:K,35:Q,37:G,38:L,41:H,45:q,48:x,51:v,52:W,53:S,54:T,57:R},u(Y,[2,32]),u(Y,[2,33]),u(Y,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:X(function(h,r){if(r.recoverable)this.trace(h);else{var m=Error(h);throw m.hash=r,m}},"parseError"),parse:X(function(h){var r=this,m=[0],$=[],y=[null],p=[],e=this.table,_="",b0=0,B0=0,k0=0,f0=2,D0=1,P0=p.slice.call(arguments,1),q0=Object.create(this.lexer),m0={yy:{}};for(var a0 in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,a0))m0.yy[a0]=this.yy[a0];if(q0.setInput(h,m0.yy),m0.yy.lexer=q0,m0.yy.parser=this,typeof q0.yylloc>"u")q0.yylloc={};var _0=q0.yylloc;p.push(_0);var w0=q0.options&&q0.options.ranges;if(typeof m0.yy.parseError==="function")this.parseError=m0.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function v0(o){m.length=m.length-2*o,y.length=y.length-o,p.length=p.length-o}X(v0,"popStack");function T0(){var o=$.pop()||q0.lex()||D0;if(typeof o!=="number"){if(o instanceof Array)$=o,o=$.pop();o=r.symbols_[o]||o}return o}X(T0,"lex");var Z0,F0,u0,M0,X0,S0,Y0={},h0,J0,n,d;while(!0){if(u0=m[m.length-1],this.defaultActions[u0])M0=this.defaultActions[u0];else{if(Z0===null||typeof Z0>"u")Z0=T0();M0=e[u0]&&e[u0][Z0]}if(typeof M0>"u"||!M0.length||!M0[0]){var H0="";d=[];for(h0 in e[u0])if(this.terminals_[h0]&&h0>f0)d.push("'"+this.terminals_[h0]+"'");if(q0.showPosition)H0="Parse error on line "+(b0+1)+`:
`+q0.showPosition()+`
Expecting `+d.join(", ")+", got '"+(this.terminals_[Z0]||Z0)+"'";else H0="Parse error on line "+(b0+1)+": Unexpected "+(Z0==D0?"end of input":"'"+(this.terminals_[Z0]||Z0)+"'");this.parseError(H0,{text:q0.match,token:this.terminals_[Z0]||Z0,line:q0.yylineno,loc:_0,expected:d})}if(M0[0]instanceof Array&&M0.length>1)throw Error("Parse Error: multiple actions possible at state: "+u0+", token: "+Z0);switch(M0[0]){case 1:if(m.push(Z0),y.push(q0.yytext),p.push(q0.yylloc),m.push(M0[1]),Z0=null,!F0){if(B0=q0.yyleng,_=q0.yytext,b0=q0.yylineno,_0=q0.yylloc,k0>0)k0--}else Z0=F0,F0=null;break;case 2:if(J0=this.productions_[M0[1]][1],Y0.$=y[y.length-J0],Y0._$={first_line:p[p.length-(J0||1)].first_line,last_line:p[p.length-1].last_line,first_column:p[p.length-(J0||1)].first_column,last_column:p[p.length-1].last_column},w0)Y0._$.range=[p[p.length-(J0||1)].range[0],p[p.length-1].range[1]];if(S0=this.performAction.apply(Y0,[_,B0,b0,m0.yy,M0[1],y,p].concat(P0)),typeof S0<"u")return S0;if(J0)m=m.slice(0,-1*J0*2),y=y.slice(0,-1*J0),p=p.slice(0,-1*J0);m.push(this.productions_[M0[1]][0]),y.push(Y0.$),p.push(Y0._$),n=e[m[m.length-2]][m[m.length-1]],m.push(n);break;case 3:return!0}}return!0},"parse")},i=function(){var V={EOF:1,parseError:X(function(r,m){if(this.yy.parser)this.yy.parser.parseError(r,m);else throw Error(r)},"parseError"),setInput:X(function(h,r){if(this.yy=r||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:X(function(){var h=this._input[0];this.yytext+=h,this.yyleng++,this.offset++,this.match+=h,this.matched+=h;var r=h.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),h},"input"),unput:X(function(h){var r=h.length,m=h.split(/(?:\r\n?|\n)/g);this._input=h+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-r),this.offset-=r;var $=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 y=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===$.length?this.yylloc.first_column:0)+$[$.length-m.length].length-m[0].length:this.yylloc.first_column-r},this.options.ranges)this.yylloc.range=[y[0],y[0]+this.yyleng-r];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(h){this.unput(this.match.slice(h))},"less"),pastInput:X(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:X(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:X(function(){var h=this.pastInput(),r=Array(h.length+1).join("-");return h+this.upcomingInput()+`
`+r+"^"},"showPosition"),test_match:X(function(h,r){var m,$,y;if(this.options.backtrack_lexer){if(y={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)y.yylloc.range=this.yylloc.range.slice(0)}if($=h[0].match(/(?:\r\n?|\n).*/g),$)this.yylineno+=$.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:$?$[$.length-1].length-$[$.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],m=this.performAction.call(this,this.yy,this,r,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(m)return m;else if(this._backtrack){for(var p in y)this[p]=y[p];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var h,r,m,$;if(!this._more)this.yytext="",this.match="";var y=this._currentRules();for(var p=0;p<y.length;p++)if(m=this._input.match(this.rules[y[p]]),m&&(!r||m[0].length>r[0].length)){if(r=m,$=p,this.options.backtrack_lexer)if(h=this.test_match(m,y[p]),h!==!1)return h;else if(this._backtrack){r=!1;continue}else return!1;else if(!this.options.flex)break}if(r){if(h=this.test_match(r,y[$]),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:X(function(){var r=this.next();if(r)return r;else return this.lex()},"lex"),begin:X(function(r){this.conditionStack.push(r)},"begin"),popState:X(function(){var r=this.conditionStack.length-1;if(r>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(r){if(r=this.conditionStack.length-1-Math.abs(r||0),r>=0)return this.conditionStack[r];else return"INITIAL"},"topState"),pushState:X(function(r){this.begin(r)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(r,m,$,y){function p(){let _=m.yytext.indexOf("%%");if(_===0)return!1;if(_>0){let b0=m.yytext.slice(0,_),B0=m.yytext.slice(_);if(B0)r.lexer.unput(B0);m.yytext=b0}return!0}X(p,"processId");var e=y;switch($){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(),m.yytext=m.yytext.slice(0,-8).trim(),25;break;case 38:return this.popState(),m.yytext=m.yytext.slice(0,-8).trim(),26;break;case 39:return this.popState(),m.yytext=m.yytext.slice(0,-10).trim(),27;break;case 40:return this.popState(),m.yytext=m.yytext.slice(0,-8).trim(),25;break;case 41:return this.popState(),m.yytext=m.yytext.slice(0,-8).trim(),26;break;case 42:return this.popState(),m.yytext=m.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(!p())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: "'+m.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(!p())return;return this.popState(),"ID";break;case 66:if(!p())return;return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 67:return this.popState(),m.yytext=m.yytext.substr(2).trim(),31;break;case 68:return this.popState(),m.yytext=m.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(!p())return;return 24;case 74:return m.yytext=m.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 V}();O.lexer=i;function N(){this.yy={}}return X(N,"Parser"),N.prototype=O,O.Parser=N,new N}();PD0.parser=PD0;mc=PD0,ca4=`${jR}-${ya4}`,na4=`${C2u} ${_a4}`,pa4=`${jR}-${ga4}`,sa4=`${jR}-${da4}`,ta4=`${jR}-${oa4}`,uV4=`${ND0}${F2u}`,n9u=`${ND0}${D2u}`,U2u=X((u,B=o9u)=>{if(!u.doc)return B;let E=B;for(let A of u.doc)if(A.stmt==="dir")E=A.value;return E},"getDir"),BV4=X(function(u,B){return B.db.getClasses()},"getClasses"),EV4=X(async function(u,B,E,A){z0.info("REF0:"),z0.info("Drawing state diagram (v2)",B);let{securityLevel:C,state:D,layout:F}=$0();A.db.extract(A.db.getRootDocV2());let U=A.db.getData(),z=ZA(B,C);if(U.type=A.type,U.layoutAlgorithm=F,U.nodeSpacing=D?.nodeSpacing||50,U.rankSpacing=D?.rankSpacing||50,$0().look==="neo")U.markers=["barbNeo"];else U.markers=["barb"];U.diagramId=B,await kA(U,z);let f=8;try{(typeof A.db.getLinks==="function"?A.db.getLinks():new Map).forEach((b,M)=>{let Z=typeof M==="string"?M:typeof M?.id==="string"?M.id:"",J=U.nodes.find((H)=>H.id===Z);if(!Z){z0.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(M));return}let w=z.node()?.querySelectorAll("g.node, g.rough-node"),K;if(w?.forEach((H)=>{let q=H.textContent?.trim();if(H.id===J?.domId||q===Z)K=H}),!K){z0.warn("⚠️ Could not find node matching text:",Z);return}let Q=K.parentNode;if(!Q){z0.warn("⚠️ Node has no parent, cannot wrap:",Z);return}let G=document.createElementNS("http://www.w3.org/2000/svg","a"),L=b.url.replace(/^"+|"+$/g,"");if(G.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",L),G.setAttribute("target","_blank"),b.tooltip){let H=b.tooltip.replace(/^"+|"+$/g,"");G.setAttribute("title",H),K.setAttribute("title",H)}Q.replaceChild(G,K),G.appendChild(K),z0.info("\uD83D\uDD17 Wrapped node in <a> tag for:",Z,b.url)})}catch(l){z0.error("❌ Error injecting clickable links:",l)}R4.insertTitle(z,"statediagramTitleText",D?.titleTopMargin??25,A.db.getDiagramTitle()),K8(z,f,jR,D?.useMaxWidth??!0)},"draw"),z2u={getClasses:BV4,draw:EV4,getDir:U2u},Vc=new Map;X(hc,"stateDomId");AV4=X((u,B,E,A,C,D,F,U)=>{z0.trace("items",B),B.forEach((z)=>{switch(z.stmt){case dL:IR(u,z,E,A,C,D,F,U);break;case PR:IR(u,z,E,A,C,D,F,U);break;case jD0:{IR(u,z.state1,E,A,C,D,F,U),IR(u,z.state2,E,A,C,D,F,U);let k=F==="neo",f={id:"edge"+Sb,start:z.state1.id,end:z.state2.id,arrowhead:"normal",arrowTypeEnd:k?"arrow_barb_neo":"arrow_barb",style:e9u,labelStyle:"",label:yu.sanitizeText(z.description??"",$0()),arrowheadStyle:u2u,labelpos:B2u,labelType:E2u,thickness:A2u,classes:C2u,look:F};C.push(f),Sb++}break}})},"setupDoc"),p9u=X((u,B=o9u)=>{let E=B;if(u.doc){for(let A of u.doc)if(A.stmt==="dir")E=A.value}return E},"getDir");X(OR,"insertOrUpdateNode");X(k2u,"getClassesFromDbInfo");X(f2u,"getStylesFromDbInfo");IR=X((u,B,E,A,C,D,F,U)=>{let z=B.id,k=E.get(z),f=k2u(k),l=f2u(k),b=$0();if(z0.info("dataFetcher parsedItem",B,k,l),z!=="root"){let M=OD0;if(B.start===!0)M=ha4;else if(B.start===!1)M=ma4;if(B.type!==PR)M=B.type;if(!Vc.get(z))Vc.set(z,{id:z,shape:M,description:yu.sanitizeText(z,b),cssClasses:`${f} ${ca4}`,cssStyles:l});let Z=Vc.get(z);if(B.description){if(Array.isArray(Z.description))Z.shape=ID0,Z.description.push(B.description);else if(Z.description?.length&&Z.description.length>0)if(Z.shape=ID0,Z.description===z)Z.description=[B.description];else Z.description=[Z.description,B.description];else Z.shape=OD0,Z.description=B.description;Z.description=yu.sanitizeTextOrArray(Z.description,b)}if(Z.description?.length===1&&Z.shape===ID0)if(Z.type==="group")Z.shape=_9u;else Z.shape=OD0;if(!Z.type&&B.doc)z0.info("Setting cluster for XCX",z,p9u(B)),Z.type="group",Z.isGroup=!0,Z.dir=p9u(B),Z.explicitDir=B.doc.some((w)=>w.stmt==="dir"),Z.shape=B.type===t9u?g9u:_9u,Z.cssClasses=`${Z.cssClasses} ${sa4} ${D?ta4:""}`;let J={labelStyle:"",shape:Z.shape,label:Z.description,cssClasses:Z.cssClasses,cssCompiledStyles:[],cssStyles:Z.cssStyles,id:z,dir:Z.dir,domId:hc(z,Sb),type:Z.type,isGroup:Z.type==="group",padding:8,rx:10,ry:10,look:F,labelType:"markdown"};if(J.shape===g9u)J.label="";if(u&&u.id!=="root")z0.trace("Setting node ",z," to be child of its parent ",u.id),J.parentId=u.id;if(J.centerLabel=!0,B.note){let w={labelStyle:"",shape:ra4,label:B.note.text,labelType:"markdown",cssClasses:pa4,cssStyles:[],cssCompiledStyles:[],id:z+uV4+"-"+Sb,domId:hc(z,Sb,F2u),type:Z.type,isGroup:Z.type==="group",padding:b.flowchart?.padding,look:F,position:B.note.position},K=z+n9u,Q={labelStyle:"",shape:$a4,label:B.note.text,cssClasses:Z.cssClasses,cssStyles:[],id:z+n9u,domId:hc(z,Sb,D2u),type:"group",isGroup:!0,padding:16,look:F,position:B.note.position};Sb++,Q.id=K,w.parentId=K,OR(A,Q,U),OR(A,w,U),OR(A,J,U);let G=z,L=w.id;if(B.note.position==="left of")G=w.id,L=z;C.push({id:G+"-"+L,start:G,end:L,arrowhead:"none",arrowTypeEnd:"",style:e9u,labelStyle:"",classes:na4,arrowheadStyle:u2u,labelpos:B2u,labelType:E2u,thickness:A2u,look:F})}else OR(A,J,U)}if(B.doc)z0.trace("Adding nodes children "),AV4(B,B.doc,E,A,C,!D,F,U)},"dataFetcher"),CV4=X(()=>{Vc.clear(),Sb=0},"reset"),IB={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},d9u=X(()=>new Map,"newClassesList"),s9u=X(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),ac=X((u)=>JSON.parse(JSON.stringify(u)),"clone"),Rk=class{constructor(u){this.version=u,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=d9u(),this.documents={root:s9u()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=H3,this.setAccTitle=w3,this.getAccDescription=q3,this.setAccDescription=L3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,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{X(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(u){this.clear(!0);for(let A of Array.isArray(u)?u:u.doc)switch(A.stmt){case dL:this.addState(A.id.trim(),A.type,A.doc,A.description,A.note);break;case jD0:this.addRelation(A.state1,A.state2,A.description);break;case ia4:this.addStyleClass(A.id.trim(),A.classes);break;case aa4:this.handleStyleDef(A);break;case Va4:this.setCssClass(A.id.trim(),A.styleClass);break;case"click":this.addLink(A.id,A.url,A.tooltip);break}let B=this.getStates(),E=$0();CV4(),IR(void 0,this.getRootDocV2(),B,this.nodes,this.edges,!0,E.look,this.classes);for(let A of this.nodes){if(!Array.isArray(A.label))continue;if(A.description=A.label.slice(1),A.isGroup&&A.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${A.id}]`);A.label=A.label[0]}}handleStyleDef(u){let B=u.id.trim().split(","),E=u.styleClass.split(",");for(let A of B){let C=this.getState(A);if(!C){let D=A.trim();this.addState(D),C=this.getState(D)}if(C)C.styles=E.map((D)=>D.replace(/;/g,"")?.trim())}}setRootDoc(u){if(z0.info("Setting root doc",u),this.rootDoc=u,this.version===1)this.extract(u);else this.extract(this.getRootDocV2())}docTranslator(u,B,E){if(B.stmt===jD0){this.docTranslator(u,B.state1,!0),this.docTranslator(u,B.state2,!1);return}if(B.stmt===dL)if(B.id===IB.START_NODE)B.id=u.id+(E?"_start":"_end"),B.start=E;else B.id=B.id.trim();if(B.stmt!==pL&&B.stmt!==dL||!B.doc)return;let A=[],C=[];for(let D of B.doc)if(D.type===t9u){let F=ac(D);F.doc=ac(C),A.push(F),C=[]}else C.push(D);if(A.length>0&&C.length>0){let D={stmt:dL,id:I40(),type:"divider",doc:ac(C)};A.push(ac(D)),B.doc=A}B.doc.forEach((D)=>this.docTranslator(B,D,!0))}getRootDocV2(){return this.docTranslator({id:pL,stmt:pL},{id:pL,stmt:pL,doc:this.rootDoc},!0),{id:pL,doc:this.rootDoc}}addState(u,B=PR,E=void 0,A=void 0,C=void 0,D=void 0,F=void 0,U=void 0){let z=u?.trim();if(!this.currentDocument.states.has(z))z0.info("Adding state ",z,A),this.currentDocument.states.set(z,{stmt:dL,id:z,descriptions:[],type:B,doc:E,note:C,classes:[],styles:[],textStyles:[]});else{let k=this.currentDocument.states.get(z);if(!k)throw Error(`State not found: ${z}`);if(!k.doc)k.doc=E;if(!k.type)k.type=B}if(A)z0.info("Setting state description",z,A),(Array.isArray(A)?A:[A]).forEach((f)=>this.addDescription(z,f.trim()));if(C){let k=this.currentDocument.states.get(z);if(!k)throw Error(`State not found: ${z}`);k.note=C,k.note.text=yu.sanitizeText(k.note.text,$0())}if(D)z0.info("Setting state classes",z,D),(Array.isArray(D)?D:[D]).forEach((f)=>this.setCssClass(z,f.trim()));if(F)z0.info("Setting state styles",z,F),(Array.isArray(F)?F:[F]).forEach((f)=>this.setStyle(z,f.trim()));if(U)z0.info("Setting state styles",z,F),(Array.isArray(U)?U:[U]).forEach((f)=>this.setTextStyle(z,f.trim()))}clear(u){if(this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:s9u()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=d9u(),!u)this.links=new Map,D3()}getState(u){return this.currentDocument.states.get(u)}getStates(){return this.currentDocument.states}logDocuments(){z0.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(u,B,E){this.links.set(u,{url:B,tooltip:E}),z0.warn("Adding link",u,B,E)}getLinks(){return this.links}startIdIfNeeded(u=""){if(u===IB.START_NODE)return this.startEndCount++,`${IB.START_TYPE}${this.startEndCount}`;return u}startTypeIfNeeded(u="",B=PR){return u===IB.START_NODE?IB.START_TYPE:B}endIdIfNeeded(u=""){if(u===IB.END_NODE)return this.startEndCount++,`${IB.END_TYPE}${this.startEndCount}`;return u}endTypeIfNeeded(u="",B=PR){return u===IB.END_NODE?IB.END_TYPE:B}addRelationObjs(u,B,E=""){let A=this.startIdIfNeeded(u.id.trim()),C=this.startTypeIfNeeded(u.id.trim(),u.type),D=this.startIdIfNeeded(B.id.trim()),F=this.startTypeIfNeeded(B.id.trim(),B.type);this.addState(A,C,u.doc,u.description,u.note,u.classes,u.styles,u.textStyles),this.addState(D,F,B.doc,B.description,B.note,B.classes,B.styles,B.textStyles),this.currentDocument.relations.push({id1:A,id2:D,relationTitle:yu.sanitizeText(E,$0())})}addRelation(u,B,E){if(typeof u==="object"&&typeof B==="object")this.addRelationObjs(u,B,E);else if(typeof u==="string"&&typeof B==="string"){let A=this.startIdIfNeeded(u.trim()),C=this.startTypeIfNeeded(u),D=this.endIdIfNeeded(B.trim()),F=this.endTypeIfNeeded(B);this.addState(A,C),this.addState(D,F),this.currentDocument.relations.push({id1:A,id2:D,relationTitle:E?yu.sanitizeText(E,$0()):void 0})}}addDescription(u,B){let E=this.currentDocument.states.get(u),A=B.startsWith(":")?B.replace(":","").trim():B;E?.descriptions?.push(yu.sanitizeText(A,$0()))}cleanupLabel(u){return u.startsWith(":")?u.slice(2).trim():u.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(u,B=""){if(!this.classes.has(u))this.classes.set(u,{id:u,styles:[],textStyles:[]});let E=this.classes.get(u);if(B&&E)B.split(IB.STYLECLASS_SEP).forEach((A)=>{let C=A.replace(/([^;]*);/,"$1").trim();if(RegExp(IB.COLOR_KEYWORD).exec(A)){let F=C.replace(IB.FILL_KEYWORD,IB.BG_FILL).replace(IB.COLOR_KEYWORD,IB.FILL_KEYWORD);E.textStyles.push(F)}E.styles.push(C)})}getClasses(){return this.classes}setupToolTips(u){let B=yH();Ku(u).select("svg").selectAll("g.node, g.rough-node").on("mouseover",(C)=>{let D=Ku(C.currentTarget),F=D.attr("title");if(F===null)return;let U=C.currentTarget?.getBoundingClientRect();B.transition().duration(200).style("opacity",".9"),B.style("left",window.scrollX+U.left+(U.right-U.left)/2+"px").style("top",window.scrollY+U.bottom+"px"),B.html(oB.sanitize(F)),D.classed("hover",!0)}).on("mouseout",(C)=>{B.transition().duration(500).style("opacity",0),Ku(C.currentTarget).classed("hover",!1)})}setCssClass(u,B){u.split(",").forEach((E)=>{let A=this.getState(E);if(!A){let C=E.trim();this.addState(C),A=this.getState(C)}A?.classes?.push(B)})}setStyle(u,B){this.getState(u)?.styles?.push(B)}setTextStyle(u,B){this.getState(u)?.textStyles?.push(B)}bindFunctions(u){this.funs.forEach((B)=>{B(u)})}getDirectionStatement(){return this.rootDoc.find((u)=>u.stmt===c9u)}getDirection(){return this.getDirectionStatement()?.value??Na4}setDirection(u){let B=this.getDirectionStatement();if(B)B.value=u;else this.rootDoc.unshift({stmt:c9u,value:u})}trimColon(u){return u.startsWith(":")?u.slice(1).trim():u.trim()}getData(){let u=$0();return{nodes:this.nodes,edges:this.edges,other:{},config:u,direction:U2u(this.getRootDocV2())}}getConfig(){return $0().state}},DV4=X((u)=>`
defs [id$="-barbEnd"] {
fill: ${u.transitionColor};
stroke: ${u.transitionColor};
}
g.stateGroup text {
fill: ${u.nodeBorder};
stroke: none;
font-size: 10px;
}
g.stateGroup text {
fill: ${u.textColor};
stroke: none;
font-size: 10px;
}
g.stateGroup .state-title {
font-weight: bolder;
fill: ${u.stateLabelColor};
}
g.stateGroup rect {
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
}
g.stateGroup line {
stroke: ${u.lineColor};
stroke-width: ${u.strokeWidth||1};
}
.transition {
stroke: ${u.transitionColor};
stroke-width: ${u.strokeWidth||1};
fill: none;
}
.stateGroup .composit {
fill: ${u.background};
border-bottom: 1px
}
.stateGroup .alt-composit {
fill: #e0e0e0;
border-bottom: 1px
}
.state-note {
stroke: ${u.noteBorderColor};
fill: ${u.noteBkgColor};
text {
fill: ${u.noteTextColor};
stroke: none;
font-size: 10px;
}
}
.stateLabel .box {
stroke: none;
stroke-width: 0;
fill: ${u.mainBkg};
opacity: 0.5;
}
.edgeLabel .label rect {
fill: ${u.labelBackgroundColor};
opacity: 0.5;
}
.edgeLabel {
background-color: ${u.edgeLabelBackground};
p {
background-color: ${u.edgeLabelBackground};
}
rect {
opacity: 0.5;
background-color: ${u.edgeLabelBackground};
fill: ${u.edgeLabelBackground};
}
text-align: center;
}
.edgeLabel .label text {
fill: ${u.transitionLabelColor||u.tertiaryTextColor};
}
.label div .edgeLabel {
color: ${u.transitionLabelColor||u.tertiaryTextColor};
}
.stateLabel text {
fill: ${u.stateLabelColor};
font-size: 10px;
font-weight: bold;
}
.node circle.state-start {
fill: ${u.specialStateColor};
stroke: ${u.specialStateColor};
}
.node .fork-join {
fill: ${u.specialStateColor};
stroke: ${u.specialStateColor};
}
.node circle.state-end {
fill: ${u.innerEndBackground};
stroke: ${u.background};
stroke-width: 1.5
}
.end-state-inner {
fill: ${u.compositeBackground||u.background};
// stroke: ${u.background};
stroke-width: 1.5
}
.node rect {
fill: ${u.stateBkg||u.mainBkg};
stroke: ${u.stateBorder||u.nodeBorder};
stroke-width: ${u.strokeWidth||1}px;
}
.node polygon {
fill: ${u.mainBkg};
stroke: ${u.stateBorder||u.nodeBorder};;
stroke-width: ${u.strokeWidth||1}px;
}
[id$="-barbEnd"] {
fill: ${u.lineColor};
}
.statediagram-cluster rect {
fill: ${u.compositeTitleBackground};
stroke: ${u.stateBorder||u.nodeBorder};
stroke-width: ${u.strokeWidth||1}px;
}
.cluster-label, .nodeLabel {
color: ${u.stateLabelColor};
// line-height: 1;
}
.statediagram-cluster rect.outer {
rx: 5px;
ry: 5px;
}
.statediagram-state .divider {
stroke: ${u.stateBorder||u.nodeBorder};
}
.statediagram-state .title-state {
rx: 5px;
ry: 5px;
}
.statediagram-cluster.statediagram-cluster .inner {
fill: ${u.compositeBackground||u.background};
}
.statediagram-cluster.statediagram-cluster-alt .inner {
fill: ${u.altBackground?u.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: ${u.altBackground?u.altBackground:"#efefef"};
}
.note-edge {
stroke-dasharray: 5;
}
.statediagram-note rect {
fill: ${u.noteBkgColor};
stroke: ${u.noteBorderColor};
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note rect {
fill: ${u.noteBkgColor};
stroke: ${u.noteBorderColor};
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note text {
fill: ${u.noteTextColor};
}
.statediagram-note .nodeLabel {
color: ${u.noteTextColor};
}
.statediagram .edgeLabel {
color: red; // ${u.noteTextColor};
}
[id$="-dependencyStart"], [id$="-dependencyEnd"] {
fill: ${u.lineColor};
stroke: ${u.lineColor};
stroke-width: ${u.strokeWidth||1};
}
.statediagramTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${u.textColor};
}
[data-look="neo"].statediagram-cluster rect {
fill: ${u.mainBkg};
stroke: ${u.useGradient?"url("+u.svgId+"-gradient)":u.stateBorder||u.nodeBorder};
stroke-width: ${u.strokeWidth??1};
}
[data-look="neo"].statediagram-cluster rect.outer {
rx: ${u.radius}px;
ry: ${u.radius}px;
filter: ${u.dropShadow?u.dropShadow.replace("url(#drop-shadow)",`url(${u.svgId}-drop-shadow)`):"none"}
}
`,"getStyles"),rc=DV4});var Z2u={};ju(Z2u,{diagram:()=>LV4});var FV4,UV4,zV4,kV4,fV4,lV4,bV4,MV4,ZV4,l2u,b2u=0,JV4,qE,aD0,wV4,KV4,QV4,GV4,M2u,HV4,LV4;var J2u=g(()=>{iD0();ME();Q8();J8();bE();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();i3();u60();kE();i3();FV4=X((u)=>u.append("circle").attr("class","start-state").attr("r",$0().state.sizeUnit).attr("cx",$0().state.padding+$0().state.sizeUnit).attr("cy",$0().state.padding+$0().state.sizeUnit),"drawStartState"),UV4=X((u)=>u.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",$0().state.textHeight).attr("class","divider").attr("x2",$0().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),zV4=X((u,B)=>{let E=u.append("text").attr("x",2*$0().state.padding).attr("y",$0().state.textHeight+2*$0().state.padding).attr("font-size",$0().state.fontSize).attr("class","state-title").text(B.id),A=E.node().getBBox();return u.insert("rect",":first-child").attr("x",$0().state.padding).attr("y",$0().state.padding).attr("width",A.width+2*$0().state.padding).attr("height",A.height+2*$0().state.padding).attr("rx",$0().state.radius),E},"drawSimpleState"),kV4=X((u,B)=>{let E=X(function(b,M,Z){let J=b.append("tspan").attr("x",2*$0().state.padding).text(M);if(!Z)J.attr("dy",$0().state.textHeight)},"addTspan"),C=u.append("text").attr("x",2*$0().state.padding).attr("y",$0().state.textHeight+1.3*$0().state.padding).attr("font-size",$0().state.fontSize).attr("class","state-title").text(B.descriptions[0]).node().getBBox(),D=C.height,F=u.append("text").attr("x",$0().state.padding).attr("y",D+$0().state.padding*0.4+$0().state.dividerMargin+$0().state.textHeight).attr("class","state-description"),U=!0,z=!0;B.descriptions.forEach(function(b){if(!U)E(F,b,z),z=!1;U=!1});let k=u.append("line").attr("x1",$0().state.padding).attr("y1",$0().state.padding+D+$0().state.dividerMargin/2).attr("y2",$0().state.padding+D+$0().state.dividerMargin/2).attr("class","descr-divider"),f=F.node().getBBox(),l=Math.max(f.width,C.width);return k.attr("x2",l+3*$0().state.padding),u.insert("rect",":first-child").attr("x",$0().state.padding).attr("y",$0().state.padding).attr("width",l+2*$0().state.padding).attr("height",f.height+D+2*$0().state.padding).attr("rx",$0().state.radius),u},"drawDescrState"),fV4=X((u,B,E)=>{let A=$0().state.padding,C=2*$0().state.padding,D=u.node().getBBox(),F=D.width,U=D.x,z=u.append("text").attr("x",0).attr("y",$0().state.titleShift).attr("font-size",$0().state.fontSize).attr("class","state-title").text(B.id),f=z.node().getBBox().width+C,l=Math.max(f,F);if(l===F)l=l+C;let b,M=u.node().getBBox();if(B.doc);if(b=U-A,f>F)b=(F-l)/2+A;if(Math.abs(U-M.x)<A&&f>F)b=U-(f-F)/2;let Z=1-$0().state.textHeight;if(u.insert("rect",":first-child").attr("x",b).attr("y",Z).attr("class",E?"alt-composit":"composit").attr("width",l).attr("height",M.height+$0().state.textHeight+$0().state.titleShift+1).attr("rx","0"),z.attr("x",b+A),f<=F)z.attr("x",U+(l-C)/2-f/2+A);return u.insert("rect",":first-child").attr("x",b).attr("y",$0().state.titleShift-$0().state.textHeight-$0().state.padding).attr("width",l).attr("height",$0().state.textHeight*3).attr("rx",$0().state.radius),u.insert("rect",":first-child").attr("x",b).attr("y",$0().state.titleShift-$0().state.textHeight-$0().state.padding).attr("width",l).attr("height",M.height+3+2*$0().state.textHeight).attr("rx",$0().state.radius),u},"addTitleAndBox"),lV4=X((u)=>{return u.append("circle").attr("class","end-state-outer").attr("r",$0().state.sizeUnit+$0().state.miniPadding).attr("cx",$0().state.padding+$0().state.sizeUnit+$0().state.miniPadding).attr("cy",$0().state.padding+$0().state.sizeUnit+$0().state.miniPadding),u.append("circle").attr("class","end-state-inner").attr("r",$0().state.sizeUnit).attr("cx",$0().state.padding+$0().state.sizeUnit+2).attr("cy",$0().state.padding+$0().state.sizeUnit+2)},"drawEndState"),bV4=X((u,B)=>{let E=$0().state.forkWidth,A=$0().state.forkHeight;if(B.parentId){let C=E;E=A,A=C}return u.append("rect").style("stroke","black").style("fill","black").attr("width",E).attr("height",A).attr("x",$0().state.padding).attr("y",$0().state.padding)},"drawForkJoinState"),MV4=X((u,B,E,A)=>{let C=0,D=A.append("text");D.style("text-anchor","start"),D.attr("class","noteText");let F=u.replace(/\r\n/g,"<br/>");F=F.replace(/\n/g,"<br/>");let U=F.split(yu.lineBreakRegex),z=1.25*$0().state.noteMargin;for(let k of U){let f=k.trim();if(f.length>0){let l=D.append("tspan");if(l.text(f),z===0){let b=l.node().getBBox();z+=b.height}C+=z,l.attr("x",B+$0().state.noteMargin),l.attr("y",E+C+1.25*$0().state.noteMargin)}}return{textWidth:D.node().getBBox().width,textHeight:C}},"_drawLongText"),ZV4=X((u,B)=>{B.attr("class","state-note");let E=B.append("rect").attr("x",0).attr("y",$0().state.padding),A=B.append("g"),{textWidth:C,textHeight:D}=MV4(u,0,0,A);return E.attr("height",D+2*$0().state.noteMargin),E.attr("width",C+$0().state.noteMargin*2),E},"drawNote"),l2u=X(function(u,B){let E=B.id,A={id:E,label:B.id,width:0,height:0},C=u.append("g").attr("id",E).attr("class","stateGroup");if(B.type==="start")FV4(C);if(B.type==="end")lV4(C);if(B.type==="fork"||B.type==="join")bV4(C,B);if(B.type==="note")ZV4(B.note.text,C);if(B.type==="divider")UV4(C);if(B.type==="default"&&B.descriptions.length===0)zV4(C,B);if(B.type==="default"&&B.descriptions.length>0)kV4(C,B);let D=C.node().getBBox();return A.width=D.width+2*$0().state.padding,A.height=D.height+2*$0().state.padding,A},"drawState"),JV4=X(function(u,B,E){let A=X(function(z){switch(z){case Rk.relationType.AGGREGATION:return"aggregation";case Rk.relationType.EXTENSION:return"extension";case Rk.relationType.COMPOSITION:return"composition";case Rk.relationType.DEPENDENCY:return"dependency"}},"getRelationType");B.points=B.points.filter((z)=>!Number.isNaN(z.y));let C=B.points,D=wC().x(function(z){return z.x}).y(function(z){return z.y}).curve(KC),F=u.append("path").attr("d",D(C)).attr("id","edge"+b2u).attr("class","transition"),U="";if($0().state.arrowMarkerAbsolute)U=LZ(!0);if(F.attr("marker-end","url("+U+"#"+A(Rk.relationType.DEPENDENCY)+"End)"),E.title!==void 0){let z=u.append("g").attr("class","stateLabel"),{x:k,y:f}=R4.calcLabelPosition(B.points),l=yu.getRows(E.title),b=0,M=[],Z=0,J=0;for(let Q=0;Q<=l.length;Q++){let G=z.append("text").attr("text-anchor","middle").text(l[Q]).attr("x",k).attr("y",f+b),L=G.node().getBBox();if(Z=Math.max(Z,L.width),J=Math.min(J,L.x),z0.info(L.x,k,f+b),b===0)b=G.node().getBBox().height,z0.info("Title height",b,f);M.push(G)}let w=b*l.length;if(l.length>1){let Q=(l.length-1)*b*0.5;M.forEach((G,L)=>G.attr("y",f+L*b-Q)),w=b*l.length}let K=z.node().getBBox();z.insert("rect",":first-child").attr("class","box").attr("x",k-Z/2-$0().state.padding/2).attr("y",f-w/2-$0().state.padding/2-3.5).attr("width",Z+$0().state.padding).attr("height",w+$0().state.padding),z0.info(K)}b2u++},"drawEdge"),aD0={},wV4=X(function(){},"setConf"),KV4=X(function(u){u.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"),QV4=X(function(u,B,E,A){qE=$0().state;let C=$0().securityLevel,D;if(C==="sandbox")D=Ku("#i"+B);let F=C==="sandbox"?Ku(D.nodes()[0].contentDocument.body):Ku("body"),U=C==="sandbox"?D.nodes()[0].contentDocument:document;z0.debug("Rendering diagram "+u);let z=F.select(`[id='${B}']`);KV4(z);let k=A.db.getRootDoc(),f=z.append("g").attr("id",B+"-root");M2u(k,f,void 0,!1,F,U,A);let l=qE.padding,b=z.node().getBBox(),M=b.width+l*2,Z=b.height+l*2,J=M*1.75;y3(z,Z,J,qE.useMaxWidth),z.attr("viewBox",`${b.x-qE.padding} ${b.y-qE.padding} `+M+" "+Z)},"draw"),GV4=X((u)=>{return u?u.length*qE.fontSizeFactor:1},"getLabelWidth"),M2u=X((u,B,E,A,C,D,F)=>{let U=new V1({compound:!0,multigraph:!0}),z,k=!0;for(z=0;z<u.length;z++)if(u[z].stmt==="relation"){k=!1;break}if(E)U.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:k?1:qE.edgeLengthFactor,nodeSep:k?1:50,isMultiGraph:!0});else U.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:k?1:qE.edgeLengthFactor,nodeSep:k?1:50,ranker:"tight-tree",isMultiGraph:!0});U.setDefaultEdgeLabel(function(){return{}});let f=F.db.getStates(),l=F.db.getRelations(),b=Object.keys(f),M=!0;for(let Q of b){let G=f[Q];if(E)G.parentId=E;let L;if(G.doc){let H=B.append("g").attr("id",G.id).attr("class","stateGroup");if(L=M2u(G.doc,H,G.id,!A,C,D,F),M){H=fV4(H,G,A);let q=H.node().getBBox();L.width=q.width,L.height=q.height+qE.padding/2,aD0[G.id]={y:qE.compositTitleSize}}else{let q=H.node().getBBox();L.width=q.width,L.height=q.height}}else L=l2u(B,G,U);if(G.note){let H={descriptions:[],id:G.id+"-note",note:G.note,type:"note"},q=l2u(B,H,U);if(G.note.position==="left of")U.setNode(L.id+"-note",q),U.setNode(L.id,L);else U.setNode(L.id,L),U.setNode(L.id+"-note",q);U.setParent(L.id,L.id+"-group"),U.setParent(L.id+"-note",L.id+"-group")}else U.setNode(L.id,L)}z0.debug("Count=",U.nodeCount(),U);let Z=0;l.forEach(function(Q){Z++,z0.debug("Setting edge",Q),U.setEdge(Q.id1,Q.id2,{relation:Q,width:GV4(Q.title),height:qE.labelHeight*yu.getRows(Q.title).length,labelpos:"c"},"id"+Z)}),tS(U),z0.debug("Graph after layout",U.nodes());let J=B.node();U.nodes().forEach(function(Q){if(Q!==void 0&&U.node(Q)!==void 0)z0.warn("Node "+Q+": "+JSON.stringify(U.node(Q))),C.select("#"+J.id+" #"+Q).attr("transform","translate("+(U.node(Q).x-U.node(Q).width/2)+","+(U.node(Q).y+(aD0[Q]?aD0[Q].y:0)-U.node(Q).height/2)+" )"),C.select("#"+J.id+" #"+Q).attr("data-x-shift",U.node(Q).x-U.node(Q).width/2),D.querySelectorAll("#"+J.id+" #"+Q+" .divider").forEach((L)=>{let H=L.parentElement,q=0,x=0;if(H){if(H.parentElement)q=H.parentElement.getBBox().width;if(x=parseInt(H.getAttribute("data-x-shift"),10),Number.isNaN(x))x=0}L.setAttribute("x1",0-x+8),L.setAttribute("x2",q-x-8)});else z0.debug("No Node "+Q+": "+JSON.stringify(U.node(Q)))});let w=J.getBBox();U.edges().forEach(function(Q){if(Q!==void 0&&U.edge(Q)!==void 0)z0.debug("Edge "+Q.v+" -> "+Q.w+": "+JSON.stringify(U.edge(Q))),JV4(B,U.edge(Q),U.edge(Q).relation)}),w=J.getBBox();let K={id:E?E:"root",label:E?E:"root",width:0,height:0};return K.width=w.width+2*qE.padding,K.height=w.height+2*qE.padding,z0.debug("Doc rendered",K,U),K},"renderDoc"),HV4={setConf:wV4,draw:QV4},LV4={parser:mc,get db(){return new Rk(1)},renderer:HV4,styles:rc,init:X((u)=>{if(!u.state)u.state={};u.state.arrowMarkerAbsolute=u.arrowMarkerAbsolute},"init")}});var w2u={};ju(w2u,{diagram:()=>qV4});var qV4;var K2u=g(()=>{iD0();ME();Q8();J8();bE();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();qV4={parser:mc,get db(){return new Rk(2)},renderer:z2u,styles:rc,init:X((u)=>{if(!u.state)u.state={};u.state.arrowMarkerAbsolute=u.arrowMarkerAbsolute},"init")}});var S2u={};ju(S2u,{diagram:()=>yV4});function v2u(u){let B=$0().journey,E=B.maxLabelWidth;$c=0;let A=60;Object.keys(Tk).forEach((C)=>{let D=Tk[C].color,F={cx:20,cy:A,r:7,fill:D,stroke:"#000",pos:Tk[C].position};aR.drawCircle(u,F);let U=u.append("text").attr("visibility","hidden").text(C),z=U.node().getBoundingClientRect().width;U.remove();let k=[];if(z<=E)k=[C];else{let f=C.split(" "),l="";if(U=u.append("text").attr("visibility","hidden"),f.forEach((b)=>{let M=l?`${l} ${b}`:b;if(U.text(M),U.node().getBoundingClientRect().width>E){if(l)k.push(l);if(l=b,U.text(b),U.node().getBoundingClientRect().width>E){let J="";for(let w of b)if(J+=w,U.text(J+"-"),U.node().getBoundingClientRect().width>E)k.push(J.slice(0,-1)+"-"),J=w;l=J}}else l=M}),l)k.push(l);U.remove()}k.forEach((f,l)=>{let b={x:40,y:A+7+l*20,fill:"#666",text:f,textMargin:B.boxTextMargin??5},Z=aR.drawText(u,b).node().getBoundingClientRect().width;if(Z>$c&&Z>B.leftMargin-Z)$c=Z}),A+=Math.max(20,k.length*20)})}var hD0,XV4,sL="",rD0,NR,iR,xV4,vV4,SV4,WV4,YV4,RV4,TV4,Q2u,OV4,G2u,IV4,PV4,$D0,jV4,q2u,X2u,NV4,iV4,mD0=-1,aV4,VV4,x2u,hV4,aR,mV4,Tk,$c=0,gC,Wb=0,rV4,qA,VD0,H2u,$V4,L2u,yV4;var W2u=g(()=>{_F();bE();s4();o4();Y4();i3();i3();hD0=function(){var u=X(function(l,b,M,Z){for(M=M||{},Z=l.length;Z--;M[l[Z]]=b);return M},"o"),B=[6,8,10,11,12,14,16,17,18],E=[1,9],A=[1,10],C=[1,11],D=[1,12],F=[1,13],U=[1,14],z={trace:X(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:X(function(b,M,Z,J,w,K,Q){var G=K.length-1;switch(w){case 1:return K[G-1];case 2:this.$=[];break;case 3:K[G-1].push(K[G]),this.$=K[G-1];break;case 4:case 5:this.$=K[G];break;case 6:case 7:this.$=[];break;case 8:J.setDiagramTitle(K[G].substr(6)),this.$=K[G].substr(6);break;case 9:this.$=K[G].trim(),J.setAccTitle(this.$);break;case 10:case 11:this.$=K[G].trim(),J.setAccDescription(this.$);break;case 12:J.addSection(K[G].substr(8)),this.$=K[G].substr(8);break;case 13:J.addTask(K[G-1],K[G]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},u(B,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:E,12:A,14:C,16:D,17:F,18:U},u(B,[2,7],{1:[2,1]}),u(B,[2,3]),{9:15,11:E,12:A,14:C,16:D,17:F,18:U},u(B,[2,5]),u(B,[2,6]),u(B,[2,8]),{13:[1,16]},{15:[1,17]},u(B,[2,11]),u(B,[2,12]),{19:[1,18]},u(B,[2,4]),u(B,[2,9]),u(B,[2,10]),u(B,[2,13])],defaultActions:{},parseError:X(function(b,M){if(M.recoverable)this.trace(b);else{var Z=Error(b);throw Z.hash=M,Z}},"parseError"),parse:X(function(b){var M=this,Z=[0],J=[],w=[null],K=[],Q=this.table,G="",L=0,H=0,q=0,x=2,v=1,W=K.slice.call(arguments,1),S=Object.create(this.lexer),T={yy:{}};for(var R in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,R))T.yy[R]=this.yy[R];if(S.setInput(b,T.yy),T.yy.lexer=S,T.yy.parser=this,typeof S.yylloc>"u")S.yylloc={};var Y=S.yylloc;K.push(Y);var a=S.options&&S.options.ranges;if(typeof T.yy.parseError==="function")this.parseError=T.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function I(B0){Z.length=Z.length-2*B0,w.length=w.length-B0,K.length=K.length-B0}X(I,"popStack");function O(){var B0=J.pop()||S.lex()||v;if(typeof B0!=="number"){if(B0 instanceof Array)J=B0,B0=J.pop();B0=M.symbols_[B0]||B0}return B0}X(O,"lex");var i,N,V,h,r,m,$={},y,p,e,_;while(!0){if(V=Z[Z.length-1],this.defaultActions[V])h=this.defaultActions[V];else{if(i===null||typeof i>"u")i=O();h=Q[V]&&Q[V][i]}if(typeof h>"u"||!h.length||!h[0]){var b0="";_=[];for(y in Q[V])if(this.terminals_[y]&&y>x)_.push("'"+this.terminals_[y]+"'");if(S.showPosition)b0="Parse error on line "+(L+1)+`:
`+S.showPosition()+`
Expecting `+_.join(", ")+", got '"+(this.terminals_[i]||i)+"'";else b0="Parse error on line "+(L+1)+": Unexpected "+(i==v?"end of input":"'"+(this.terminals_[i]||i)+"'");this.parseError(b0,{text:S.match,token:this.terminals_[i]||i,line:S.yylineno,loc:Y,expected:_})}if(h[0]instanceof Array&&h.length>1)throw Error("Parse Error: multiple actions possible at state: "+V+", token: "+i);switch(h[0]){case 1:if(Z.push(i),w.push(S.yytext),K.push(S.yylloc),Z.push(h[1]),i=null,!N){if(H=S.yyleng,G=S.yytext,L=S.yylineno,Y=S.yylloc,q>0)q--}else i=N,N=null;break;case 2:if(p=this.productions_[h[1]][1],$.$=w[w.length-p],$._$={first_line:K[K.length-(p||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(p||1)].first_column,last_column:K[K.length-1].last_column},a)$._$.range=[K[K.length-(p||1)].range[0],K[K.length-1].range[1]];if(m=this.performAction.apply($,[G,H,L,T.yy,h[1],w,K].concat(W)),typeof m<"u")return m;if(p)Z=Z.slice(0,-1*p*2),w=w.slice(0,-1*p),K=K.slice(0,-1*p);Z.push(this.productions_[h[1]][0]),w.push($.$),K.push($._$),e=Q[Z[Z.length-2]][Z[Z.length-1]],Z.push(e);break;case 3:return!0}}return!0},"parse")},k=function(){var l={EOF:1,parseError:X(function(M,Z){if(this.yy.parser)this.yy.parser.parseError(M,Z);else throw Error(M)},"parseError"),setInput:X(function(b,M){if(this.yy=M||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:X(function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var M=b.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),b},"input"),unput:X(function(b){var M=b.length,Z=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-M),this.offset-=M;var J=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),Z.length-1)this.yylineno-=Z.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:Z?(Z.length===J.length?this.yylloc.first_column:0)+J[J.length-Z.length].length-Z[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:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(b){this.unput(this.match.slice(b))},"less"),pastInput:X(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:X(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:X(function(){var b=this.pastInput(),M=Array(b.length+1).join("-");return b+this.upcomingInput()+`
`+M+"^"},"showPosition"),test_match:X(function(b,M){var Z,J,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(J=b[0].match(/(?:\r\n?|\n).*/g),J)this.yylineno+=J.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:J?J[J.length-1].length-J[J.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],Z=this.performAction.call(this,this.yy,this,M,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(Z)return Z;else if(this._backtrack){for(var K in w)this[K]=w[K];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var b,M,Z,J;if(!this._more)this.yytext="",this.match="";var w=this._currentRules();for(var K=0;K<w.length;K++)if(Z=this._input.match(this.rules[w[K]]),Z&&(!M||Z[0].length>M[0].length)){if(M=Z,J=K,this.options.backtrack_lexer)if(b=this.test_match(Z,w[K]),b!==!1)return b;else if(this._backtrack){M=!1;continue}else return!1;else if(!this.options.flex)break}if(M){if(b=this.test_match(M,w[J]),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:X(function(){var M=this.next();if(M)return M;else return this.lex()},"lex"),begin:X(function(M){this.conditionStack.push(M)},"begin"),popState:X(function(){var M=this.conditionStack.length-1;if(M>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(M){if(M=this.conditionStack.length-1-Math.abs(M||0),M>=0)return this.conditionStack[M];else return"INITIAL"},"topState"),pushState:X(function(M){this.begin(M)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(M,Z,J,w){var K=w;switch(J){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 l}();z.lexer=k;function f(){this.yy={}}return X(f,"Parser"),f.prototype=z,z.Parser=f,new f}();hD0.parser=hD0;XV4=hD0,rD0=[],NR=[],iR=[],xV4=X(function(){rD0.length=0,NR.length=0,sL="",iR.length=0,D3()},"clear"),vV4=X(function(u){sL=u,rD0.push(u)},"addSection"),SV4=X(function(){return rD0},"getSections"),WV4=X(function(){let u=Q2u(),B=100,E=0;while(!u&&E<B)u=Q2u(),E++;return NR.push(...iR),NR},"getTasks"),YV4=X(function(){let u=[];return NR.forEach((E)=>{if(E.people)u.push(...E.people)}),[...new Set(u)].sort()},"updateActors"),RV4=X(function(u,B){let E=B.substr(1).split(":"),A=0,C=[];if(E.length===1)A=Number(E[0]),C=[];else A=Number(E[0]),C=E[1].split(",");let D=C.map((U)=>U.trim()),F={section:sL,type:sL,people:D,task:u,score:A};iR.push(F)},"addTask"),TV4=X(function(u){let B={section:sL,type:sL,description:u,task:u,classes:[]};NR.push(B)},"addTaskOrg"),Q2u=X(function(){let u=X(function(E){return iR[E].processed},"compileTask"),B=!0;for(let[E,A]of iR.entries())u(E),B=B&&A.processed;return B},"compileTasks"),OV4=X(function(){return YV4()},"getActors"),G2u={getConfig:X(()=>$0().journey,"getConfig"),clear:xV4,setDiagramTitle:T3,getDiagramTitle:X3,setAccTitle:w3,getAccTitle:H3,setAccDescription:L3,getAccDescription:q3,addSection:vV4,getSections:SV4,getTasks:WV4,addTask:RV4,addTaskOrg:TV4,getActors:OV4},IV4=X((u)=>`.label {
font-family: ${u.fontFamily};
color: ${u.textColor};
}
.mouth {
stroke: #666;
}
line {
stroke: ${u.textColor}
}
.legend {
fill: ${u.textColor};
font-family: ${u.fontFamily};
}
.label text {
fill: #333;
}
.label {
color: ${u.textColor}
}
.face {
${u.faceColor?`fill: ${u.faceColor}`:"fill: #FFF8DC"};
stroke: #999;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${u.mainBkg};
stroke: ${u.nodeBorder};
stroke-width: 1px;
}
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${u.arrowheadColor};
}
.edgePath .path {
stroke: ${u.lineColor};
stroke-width: 1.5px;
}
.flowchart-link {
stroke: ${u.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${u.edgeLabelBackground};
rect {
opacity: 0.5;
}
text-align: center;
}
.cluster rect {
}
.cluster text {
fill: ${u.titleColor};
}
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${u.fontFamily};
font-size: 12px;
background: ${u.tertiaryColor};
border: 1px solid ${u.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.task-type-0, .section-type-0 {
${u.fillType0?`fill: ${u.fillType0}`:""};
}
.task-type-1, .section-type-1 {
${u.fillType0?`fill: ${u.fillType1}`:""};
}
.task-type-2, .section-type-2 {
${u.fillType0?`fill: ${u.fillType2}`:""};
}
.task-type-3, .section-type-3 {
${u.fillType0?`fill: ${u.fillType3}`:""};
}
.task-type-4, .section-type-4 {
${u.fillType0?`fill: ${u.fillType4}`:""};
}
.task-type-5, .section-type-5 {
${u.fillType0?`fill: ${u.fillType5}`:""};
}
.task-type-6, .section-type-6 {
${u.fillType0?`fill: ${u.fillType6}`:""};
}
.task-type-7, .section-type-7 {
${u.fillType0?`fill: ${u.fillType7}`:""};
}
.actor-0 {
${u.actor0?`fill: ${u.actor0}`:""};
}
.actor-1 {
${u.actor1?`fill: ${u.actor1}`:""};
}
.actor-2 {
${u.actor2?`fill: ${u.actor2}`:""};
}
.actor-3 {
${u.actor3?`fill: ${u.actor3}`:""};
}
.actor-4 {
${u.actor4?`fill: ${u.actor4}`:""};
}
.actor-5 {
${u.actor5?`fill: ${u.actor5}`:""};
}
${gF()}
`,"getStyles"),PV4=IV4,$D0=X(function(u,B){return RJ(u,B)},"drawRect"),jV4=X(function(u,B){let A=u.append("circle").attr("cx",B.cx).attr("cy",B.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),C=u.append("g");C.append("circle").attr("cx",B.cx-5).attr("cy",B.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),C.append("circle").attr("cx",B.cx+5).attr("cy",B.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function D(z){let k=JC().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);z.append("path").attr("class","mouth").attr("d",k).attr("transform","translate("+B.cx+","+(B.cy+2)+")")}X(D,"smile");function F(z){let k=JC().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);z.append("path").attr("class","mouth").attr("d",k).attr("transform","translate("+B.cx+","+(B.cy+7)+")")}X(F,"sad");function U(z){z.append("line").attr("class","mouth").attr("stroke",2).attr("x1",B.cx-5).attr("y1",B.cy+7).attr("x2",B.cx+5).attr("y2",B.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(X(U,"ambivalent"),B.score>3)D(C);else if(B.score<3)F(C);else U(C);return A},"drawFace"),q2u=X(function(u,B){let E=u.append("circle");if(E.attr("cx",B.cx),E.attr("cy",B.cy),E.attr("class","actor-"+B.pos),E.attr("fill",B.fill),E.attr("stroke",B.stroke),E.attr("r",B.r),E.class!==void 0)E.attr("class",E.class);if(B.title!==void 0)E.append("title").text(B.title);return E},"drawCircle"),X2u=X(function(u,B){return ec0(u,B)},"drawText"),NV4=X(function(u,B){function E(C,D,F,U,z){return C+","+D+" "+(C+F)+","+D+" "+(C+F)+","+(D+U-z)+" "+(C+F-z*1.2)+","+(D+U)+" "+C+","+(D+U)}X(E,"genPoints");let A=u.append("polygon");A.attr("points",E(B.x,B.y,50,20,7)),A.attr("class","labelBox"),B.y=B.y+B.labelMargin,B.x=B.x+0.5*B.labelMargin,X2u(u,B)},"drawLabel"),iV4=X(function(u,B,E){let A=u.append("g"),C=N7();C.x=B.x,C.y=B.y,C.fill=B.fill,C.width=E.width*B.taskCount+E.diagramMarginX*(B.taskCount-1),C.height=E.height,C.class="journey-section section-type-"+B.num,C.rx=3,C.ry=3,$D0(A,C),x2u(E)(B.text,A,C.x,C.y,C.width,C.height,{class:"journey-section section-type-"+B.num},E,B.colour)},"drawSection"),aV4=X(function(u,B,E,A){let C=B.x+E.width/2,D=u.append("g");mD0++;let F=450;D.append("line").attr("id",A+"-task"+mD0).attr("x1",C).attr("y1",B.y).attr("x2",C).attr("y2",F).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),jV4(D,{cx:C,cy:300+(5-B.score)*30,score:B.score});let U=N7();U.x=B.x,U.y=B.y,U.fill=B.fill,U.width=E.width,U.height=E.height,U.class="task task-type-"+B.num,U.rx=3,U.ry=3,$D0(D,U);let z=B.x+14;B.people.forEach((k)=>{let f=B.actors[k].color,l={cx:z,cy:B.y,r:7,fill:f,stroke:"#000",title:k,pos:B.actors[k].position};q2u(D,l),z+=10}),x2u(E)(B.task,D,U.x,U.y,U.width,U.height,{class:"task"},E,B.colour)},"drawTask"),VV4=X(function(u,B){oh(u,B)},"drawBackgroundRect"),x2u=function(){function u(C,D,F,U,z,k,f,l){let b=D.append("text").attr("x",F+z/2).attr("y",U+k/2+5).style("font-color",l).style("text-anchor","middle").text(C);A(b,f)}X(u,"byText");function B(C,D,F,U,z,k,f,l,b){let{taskFontSize:M,taskFontFamily:Z}=l,J=C.split(/<br\s*\/?>/gi);for(let w=0;w<J.length;w++){let K=w*M-M*(J.length-1)/2,Q=D.append("text").attr("x",F+z/2).attr("y",U).attr("fill",b).style("text-anchor","middle").style("font-size",M).style("font-family",Z);Q.append("tspan").attr("x",F+z/2).attr("dy",K).text(J[w]),Q.attr("y",U+k/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),A(Q,f)}}X(B,"byTspan");function E(C,D,F,U,z,k,f,l){let b=D.append("switch"),Z=b.append("foreignObject").attr("x",F).attr("y",U).attr("width",z).attr("height",k).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");Z.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(C),B(C,b,F,U,z,k,f,l),A(Z,f)}X(E,"byFo");function A(C,D){for(let F in D)if(F in D)C.attr(F,D[F])}return X(A,"_setTextAttrs"),function(C){return C.textPlacement==="fo"?E:C.textPlacement==="old"?u:B}}(),hV4=X(function(u,B){mD0=-1,u.append("defs").append("marker").attr("id",B+"-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"),aR={drawRect:$D0,drawCircle:q2u,drawSection:iV4,drawText:X2u,drawLabel:NV4,drawTask:aV4,drawBackgroundRect:VV4,initGraphics:hV4},mV4=X(function(u){Object.keys(u).forEach(function(E){gC[E]=u[E]})},"setConf"),Tk={};X(v2u,"drawActorLegend");gC=$0().journey,rV4=X(function(u,B,E,A){let C=$0(),D=C.journey.titleColor,F=C.journey.titleFontSize,U=C.journey.titleFontFamily,z=C.securityLevel,k;if(z==="sandbox")k=Ku("#i"+B);let f=z==="sandbox"?Ku(k.nodes()[0].contentDocument.body):Ku("body");qA.init();let l=f.select("#"+B);aR.initGraphics(l,B);let b=A.db.getTasks(),M=A.db.getDiagramTitle(),Z=A.db.getActors();for(let L in Tk)delete Tk[L];let J=0;Z.forEach((L)=>{Tk[L]={color:gC.actorColours[J%gC.actorColours.length],position:J},J++}),v2u(l),Wb=gC.leftMargin+$c,qA.insert(0,0,Wb,Object.keys(Tk).length*50),$V4(l,b,0,B);let w=qA.getBounds();if(M)l.append("text").text(M).attr("x",Wb).attr("font-size",F).attr("font-weight","bold").attr("y",25).attr("fill",D).attr("font-family",U);let K=w.stopy-w.starty+2*gC.diagramMarginY,Q=Wb+w.stopx+2*gC.diagramMarginX;y3(l,K,Q,gC.useMaxWidth),l.append("line").attr("x1",Wb).attr("y1",gC.height*4).attr("x2",Q-Wb-4).attr("y2",gC.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#"+B+"-arrowhead)");let G=M?70:0;l.attr("viewBox",`${w.startx} -25 ${Q} ${K+G}`),l.attr("preserveAspectRatio","xMinYMin meet"),l.attr("height",K+G+25)},"draw"),qA={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:X(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:X(function(u,B,E,A){if(u[B]===void 0)u[B]=E;else u[B]=A(E,u[B])},"updateVal"),updateBounds:X(function(u,B,E,A){let C=$0().journey,D=this,F=0;function U(z){return X(function(f){F++;let l=D.sequenceItems.length-F+1;if(D.updateVal(f,"starty",B-l*C.boxMargin,Math.min),D.updateVal(f,"stopy",A+l*C.boxMargin,Math.max),D.updateVal(qA.data,"startx",u-l*C.boxMargin,Math.min),D.updateVal(qA.data,"stopx",E+l*C.boxMargin,Math.max),z!=="activation")D.updateVal(f,"startx",u-l*C.boxMargin,Math.min),D.updateVal(f,"stopx",E+l*C.boxMargin,Math.max),D.updateVal(qA.data,"starty",B-l*C.boxMargin,Math.min),D.updateVal(qA.data,"stopy",A+l*C.boxMargin,Math.max)},"updateItemBounds")}X(U,"updateFn"),this.sequenceItems.forEach(U())},"updateBounds"),insert:X(function(u,B,E,A){let C=Math.min(u,E),D=Math.max(u,E),F=Math.min(B,A),U=Math.max(B,A);this.updateVal(qA.data,"startx",C,Math.min),this.updateVal(qA.data,"starty",F,Math.min),this.updateVal(qA.data,"stopx",D,Math.max),this.updateVal(qA.data,"stopy",U,Math.max),this.updateBounds(C,F,D,U)},"insert"),bumpVerticalPos:X(function(u){this.verticalPos=this.verticalPos+u,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:X(function(){return this.verticalPos},"getVerticalPos"),getBounds:X(function(){return this.data},"getBounds")},VD0=gC.sectionFills,H2u=gC.sectionColours,$V4=X(function(u,B,E,A){let C=$0().journey,D="",F=C.height*2+C.diagramMarginY,U=E+F,z=0,k="#CCC",f="black",l=0;for(let[b,M]of B.entries()){if(D!==M.section){k=VD0[z%VD0.length],l=z%VD0.length,f=H2u[z%H2u.length];let J=0,w=M.section;for(let Q=b;Q<B.length;Q++)if(B[Q].section==w)J=J+1;else break;let K={x:b*C.taskMargin+b*C.width+Wb,y:50,text:M.section,fill:k,num:l,colour:f,taskCount:J};aR.drawSection(u,K,C),D=M.section,z++}let Z=M.people.reduce((J,w)=>{if(Tk[w])J[w]=Tk[w];return J},{});M.x=b*C.taskMargin+b*C.width+Wb,M.y=U,M.width=C.diagramMarginX,M.height=C.diagramMarginY,M.colour=f,M.fill=k,M.num=l,M.actors=Z,aR.drawTask(u,M,C,A),qA.insert(M.x,M.y,M.x+M.width+C.taskMargin,450)}},"drawTasks"),L2u={setConf:mV4,draw:rV4},yV4={parser:XV4,db:G2u,renderer:L2u,styles:PV4,init:X((u)=>{L2u.setConf(u.journey),G2u.clear()},"init")}});var o2u={};ju(o2u,{diagram:()=>Kh4});function pD0(u,B){u.each(function(){var E=Ku(this),A=E.text().split(/(\s+|<br>)/).reverse(),C,D=[],F=1.1,U=E.attr("y"),z=parseFloat(E.attr("dy")),k=E.text(null).append("tspan").attr("x",0).attr("y",U).attr("dy",z+"em");for(let f=0;f<A.length;f++)if(C=A[A.length-1-f],D.push(C),k.text(D.join(" ").trim()),k.node().getComputedTextLength()>B||C==="<br>"){if(D.pop(),k.text(D.join(" ").trim()),C==="<br>")D=[""];else D=[C];k=E.append("tspan").attr("x",0).attr("y",U).attr("dy",F+"em").text(C)}})}var yD0,cV4,P2u,oL="",j2u=0,gD0="LR",_D0,yc,tL,N2u,i2u,a2u,V2u,h2u,m2u,r2u,$2u,y2u,c2u,Y2u,gV4,g2u=0,cc,_V4,nV4,_2u,pV4,dV4,cD0=-1,sV4,oV4,tV4,nD0,n2u,eV4,uh4,Bh4,Eh4,Y8,Ah4,R2u,Ch4,Dh4,gc=200,Ok=5,Fh4,dD0,Uh4,p2u=10,zh4=0,T2u=20,d2u=20,O2u=30,s2u=50,kh4,I2u,fh4,lh4,bh4,Mh4,Zh4,Jh4,wh4,Kh4;var t2u=g(()=>{E2();t3();s4();o4();Y4();i3();i3();K2();yD0=function(){var u=X(function(b,M,Z,J){for(Z=Z||{},J=b.length;J--;Z[b[J]]=M);return Z},"o"),B=[6,11,13,14,15,17,19,20,23,24],E=[1,12],A=[1,13],C=[1,14],D=[1,15],F=[1,16],U=[1,19],z=[1,20],k={trace:X(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:X(function(M,Z,J,w,K,Q,G){var L=Q.length-1;switch(K){case 1:return Q[L-1];case 3:w.setDirection("LR");break;case 4:w.setDirection("TD");break;case 5:this.$=[];break;case 6:Q[L-1].push(Q[L]),this.$=Q[L-1];break;case 7:case 8:this.$=Q[L];break;case 9:case 10:this.$=[];break;case 11:w.getCommonDb().setDiagramTitle(Q[L].substr(6)),this.$=Q[L].substr(6);break;case 12:this.$=Q[L].trim(),w.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=Q[L].trim(),w.getCommonDb().setAccDescription(this.$);break;case 15:w.addSection(Q[L].substr(8)),this.$=Q[L].substr(8);break;case 18:w.addTask(Q[L],0,""),this.$=Q[L];break;case 19:w.addEvent(Q[L].substr(2)),this.$=Q[L];break}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},u(B,[2,5],{5:6}),u(B,[2,2]),u(B,[2,3]),u(B,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:E,15:A,17:C,19:D,20:F,21:17,22:18,23:U,24:z},u(B,[2,10],{1:[2,1]}),u(B,[2,6]),{12:21,14:E,15:A,17:C,19:D,20:F,21:17,22:18,23:U,24:z},u(B,[2,8]),u(B,[2,9]),u(B,[2,11]),{16:[1,22]},{18:[1,23]},u(B,[2,14]),u(B,[2,15]),u(B,[2,16]),u(B,[2,17]),u(B,[2,18]),u(B,[2,19]),u(B,[2,7]),u(B,[2,12]),u(B,[2,13])],defaultActions:{},parseError:X(function(M,Z){if(Z.recoverable)this.trace(M);else{var J=Error(M);throw J.hash=Z,J}},"parseError"),parse:X(function(M){var Z=this,J=[0],w=[],K=[null],Q=[],G=this.table,L="",H=0,q=0,x=0,v=2,W=1,S=Q.slice.call(arguments,1),T=Object.create(this.lexer),R={yy:{}};for(var Y in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Y))R.yy[Y]=this.yy[Y];if(T.setInput(M,R.yy),R.yy.lexer=T,R.yy.parser=this,typeof T.yylloc>"u")T.yylloc={};var a=T.yylloc;Q.push(a);var I=T.options&&T.options.ranges;if(typeof R.yy.parseError==="function")this.parseError=R.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function O(k0){J.length=J.length-2*k0,K.length=K.length-k0,Q.length=Q.length-k0}X(O,"popStack");function i(){var k0=w.pop()||T.lex()||W;if(typeof k0!=="number"){if(k0 instanceof Array)w=k0,k0=w.pop();k0=Z.symbols_[k0]||k0}return k0}X(i,"lex");var N,V,h,r,m,$,y={},p,e,_,b0;while(!0){if(h=J[J.length-1],this.defaultActions[h])r=this.defaultActions[h];else{if(N===null||typeof N>"u")N=i();r=G[h]&&G[h][N]}if(typeof r>"u"||!r.length||!r[0]){var B0="";b0=[];for(p in G[h])if(this.terminals_[p]&&p>v)b0.push("'"+this.terminals_[p]+"'");if(T.showPosition)B0="Parse error on line "+(H+1)+`:
`+T.showPosition()+`
Expecting `+b0.join(", ")+", got '"+(this.terminals_[N]||N)+"'";else B0="Parse error on line "+(H+1)+": Unexpected "+(N==W?"end of input":"'"+(this.terminals_[N]||N)+"'");this.parseError(B0,{text:T.match,token:this.terminals_[N]||N,line:T.yylineno,loc:a,expected:b0})}if(r[0]instanceof Array&&r.length>1)throw Error("Parse Error: multiple actions possible at state: "+h+", token: "+N);switch(r[0]){case 1:if(J.push(N),K.push(T.yytext),Q.push(T.yylloc),J.push(r[1]),N=null,!V){if(q=T.yyleng,L=T.yytext,H=T.yylineno,a=T.yylloc,x>0)x--}else N=V,V=null;break;case 2:if(e=this.productions_[r[1]][1],y.$=K[K.length-e],y._$={first_line:Q[Q.length-(e||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(e||1)].first_column,last_column:Q[Q.length-1].last_column},I)y._$.range=[Q[Q.length-(e||1)].range[0],Q[Q.length-1].range[1]];if($=this.performAction.apply(y,[L,q,H,R.yy,r[1],K,Q].concat(S)),typeof $<"u")return $;if(e)J=J.slice(0,-1*e*2),K=K.slice(0,-1*e),Q=Q.slice(0,-1*e);J.push(this.productions_[r[1]][0]),K.push(y.$),Q.push(y._$),_=G[J[J.length-2]][J[J.length-1]],J.push(_);break;case 3:return!0}}return!0},"parse")},f=function(){var b={EOF:1,parseError:X(function(Z,J){if(this.yy.parser)this.yy.parser.parseError(Z,J);else throw Error(Z)},"parseError"),setInput:X(function(M,Z){if(this.yy=Z||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:X(function(){var M=this._input[0];this.yytext+=M,this.yyleng++,this.offset++,this.match+=M,this.matched+=M;var Z=M.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),M},"input"),unput:X(function(M){var Z=M.length,J=M.split(/(?:\r\n?|\n)/g);this._input=M+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Z),this.offset-=Z;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),J.length-1)this.yylineno-=J.length-1;var K=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:J?(J.length===w.length?this.yylloc.first_column:0)+w[w.length-J.length].length-J[0].length:this.yylloc.first_column-Z},this.options.ranges)this.yylloc.range=[K[0],K[0]+this.yyleng-Z];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(M){this.unput(this.match.slice(M))},"less"),pastInput:X(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:X(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:X(function(){var M=this.pastInput(),Z=Array(M.length+1).join("-");return M+this.upcomingInput()+`
`+Z+"^"},"showPosition"),test_match:X(function(M,Z){var J,w,K;if(this.options.backtrack_lexer){if(K={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)K.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],J=this.performAction.call(this,this.yy,this,Z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(J)return J;else if(this._backtrack){for(var Q in K)this[Q]=K[Q];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var M,Z,J,w;if(!this._more)this.yytext="",this.match="";var K=this._currentRules();for(var Q=0;Q<K.length;Q++)if(J=this._input.match(this.rules[K[Q]]),J&&(!Z||J[0].length>Z[0].length)){if(Z=J,w=Q,this.options.backtrack_lexer)if(M=this.test_match(J,K[Q]),M!==!1)return M;else if(this._backtrack){Z=!1;continue}else return!1;else if(!this.options.flex)break}if(Z){if(M=this.test_match(Z,K[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:X(function(){var Z=this.next();if(Z)return Z;else return this.lex()},"lex"),begin:X(function(Z){this.conditionStack.push(Z)},"begin"),popState:X(function(){var Z=this.conditionStack.length-1;if(Z>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(Z){if(Z=this.conditionStack.length-1-Math.abs(Z||0),Z>=0)return this.conditionStack[Z];else return"INITIAL"},"topState"),pushState:X(function(Z){this.begin(Z)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(Z,J,w,K){var Q=K;switch(w){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 b}();k.lexer=f;function l(){this.yy={}}return X(l,"Parser"),l.prototype=k,k.Parser=l,new l}();yD0.parser=yD0;cV4=yD0,P2u={};Gf(P2u,{addEvent:()=>y2u,addSection:()=>h2u,addTask:()=>$2u,addTaskOrg:()=>c2u,clear:()=>i2u,default:()=>gV4,getCommonDb:()=>N2u,getDirection:()=>V2u,getSections:()=>m2u,getTasks:()=>r2u,setDirection:()=>a2u});_D0=[],yc=[],tL=[],N2u=X(()=>Xj,"getCommonDb"),i2u=X(function(){_D0.length=0,yc.length=0,oL="",tL.length=0,gD0="LR",D3()},"clear"),a2u=X(function(u){gD0=u},"setDirection"),V2u=X(function(){return gD0},"getDirection"),h2u=X(function(u){oL=u,_D0.push(u)},"addSection"),m2u=X(function(){return _D0},"getSections"),r2u=X(function(){let u=Y2u(),B=100,E=0;while(!u&&E<B)u=Y2u(),E++;return yc.push(...tL),yc},"getTasks"),$2u=X(function(u,B,E){let A={id:j2u++,section:oL,type:oL,task:u,score:B?B:0,events:E?[E]:[]};tL.push(A)},"addTask"),y2u=X(function(u){tL.find((E)=>E.id===j2u-1).events.push(u)},"addEvent"),c2u=X(function(u){let B={section:oL,type:oL,description:u,task:u,classes:[]};yc.push(B)},"addTaskOrg"),Y2u=X(function(){let u=X(function(E){return tL[E].processed},"compileTask"),B=!0;for(let[E,A]of tL.entries())u(E),B=B&&A.processed;return B},"compileTasks"),gV4={clear:i2u,getCommonDb:N2u,getDirection:V2u,setDirection:a2u,addSection:h2u,getSections:m2u,getTasks:r2u,addTask:$2u,addTaskOrg:c2u,addEvent:y2u},cc=X(function(u,B){let E=u.append("rect");if(E.attr("x",B.x),E.attr("y",B.y),E.attr("fill",B.fill),E.attr("stroke",B.stroke),E.attr("width",B.width),E.attr("height",B.height),E.attr("rx",B.rx),E.attr("ry",B.ry),B.class!==void 0)E.attr("class",B.class);return E},"drawRect"),_V4=X(function(u,B){let A=u.append("circle").attr("cx",B.cx).attr("cy",B.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),C=u.append("g");C.append("circle").attr("cx",B.cx-5).attr("cy",B.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),C.append("circle").attr("cx",B.cx+5).attr("cy",B.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function D(z){let k=JC().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);z.append("path").attr("class","mouth").attr("d",k).attr("transform","translate("+B.cx+","+(B.cy+2)+")")}X(D,"smile");function F(z){let k=JC().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);z.append("path").attr("class","mouth").attr("d",k).attr("transform","translate("+B.cx+","+(B.cy+7)+")")}X(F,"sad");function U(z){z.append("line").attr("class","mouth").attr("stroke",2).attr("x1",B.cx-5).attr("y1",B.cy+7).attr("x2",B.cx+5).attr("y2",B.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(X(U,"ambivalent"),B.score>3)D(C);else if(B.score<3)F(C);else U(C);return A},"drawFace"),nV4=X(function(u,B){let E=u.append("circle");if(E.attr("cx",B.cx),E.attr("cy",B.cy),E.attr("class","actor-"+B.pos),E.attr("fill",B.fill),E.attr("stroke",B.stroke),E.attr("r",B.r),E.class!==void 0)E.attr("class",E.class);if(B.title!==void 0)E.append("title").text(B.title);return E},"drawCircle"),_2u=X(function(u,B){let E=B.text.replace(/<br\s*\/?>/gi," "),A=u.append("text");if(A.attr("x",B.x),A.attr("y",B.y),A.attr("class","legend"),A.style("text-anchor",B.anchor),B.class!==void 0)A.attr("class",B.class);let C=A.append("tspan");return C.attr("x",B.x+B.textMargin*2),C.text(E),A},"drawText"),pV4=X(function(u,B){function E(C,D,F,U,z){return C+","+D+" "+(C+F)+","+D+" "+(C+F)+","+(D+U-z)+" "+(C+F-z*1.2)+","+(D+U)+" "+C+","+(D+U)}X(E,"genPoints");let A=u.append("polygon");A.attr("points",E(B.x,B.y,50,20,7)),A.attr("class","labelBox"),B.y=B.y+B.labelMargin,B.x=B.x+0.5*B.labelMargin,_2u(u,B)},"drawLabel"),dV4=X(function(u,B,E){let A=u.append("g"),C=nD0();C.x=B.x,C.y=B.y,C.fill=B.fill,C.width=E.width,C.height=E.height,C.class="journey-section section-type-"+B.num,C.rx=3,C.ry=3,cc(A,C),n2u(E)(B.text,A,C.x,C.y,C.width,C.height,{class:"journey-section section-type-"+B.num},E,B.colour)},"drawSection"),sV4=X(function(u,B,E,A){let C=B.x+E.width/2,D=u.append("g");cD0++;let F=450;D.append("line").attr("id",A+"-task"+cD0).attr("x1",C).attr("y1",B.y).attr("x2",C).attr("y2",F).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),_V4(D,{cx:C,cy:300+(5-B.score)*30,score:B.score});let U=nD0();U.x=B.x,U.y=B.y,U.fill=B.fill,U.width=E.width,U.height=E.height,U.class="task task-type-"+B.num,U.rx=3,U.ry=3,cc(D,U),n2u(E)(B.task,D,U.x,U.y,U.width,U.height,{class:"task"},E,B.colour)},"drawTask"),oV4=X(function(u,B){cc(u,{x:B.startx,y:B.starty,width:B.stopx-B.startx,height:B.stopy-B.starty,fill:B.fill,class:"rect"}).lower()},"drawBackgroundRect"),tV4=X(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),nD0=X(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),n2u=function(){function u(C,D,F,U,z,k,f,l){let b=D.append("text").attr("x",F+z/2).attr("y",U+k/2+5).style("font-color",l).style("text-anchor","middle").text(C);A(b,f)}X(u,"byText");function B(C,D,F,U,z,k,f,l,b){let{taskFontSize:M,taskFontFamily:Z}=l,J=C.split(/<br\s*\/?>/gi);for(let w=0;w<J.length;w++){let K=w*M-M*(J.length-1)/2,Q=D.append("text").attr("x",F+z/2).attr("y",U).attr("fill",b).style("text-anchor","middle").style("font-size",M).style("font-family",Z);Q.append("tspan").attr("x",F+z/2).attr("dy",K).text(J[w]),Q.attr("y",U+k/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),A(Q,f)}}X(B,"byTspan");function E(C,D,F,U,z,k,f,l){let b=D.append("switch"),Z=b.append("foreignObject").attr("x",F).attr("y",U).attr("width",z).attr("height",k).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");Z.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(C),B(C,b,F,U,z,k,f,l),A(Z,f)}X(E,"byFo");function A(C,D){for(let F in D)if(F in D)C.attr(F,D[F])}return X(A,"_setTextAttrs"),function(C){return C.textPlacement==="fo"?E:C.textPlacement==="old"?u:B}}(),eV4=X(function(u,B){g2u=0,cD0=-1,u.append("defs").append("marker").attr("id",B+"-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");X(pD0,"wrap");uh4=X(function(u,B,E,A,C,D=!1){let{theme:F,look:U}=A,z=F?.includes("redux"),k=A?.themeVariables?.THEME_COLOR_LIMIT??12,f=E%k-1,l=u.append("g");B.section=f,l.attr("class",(B.class?B.class+" ":"")+"timeline-node "+("section-"+f));let b=l.append("g"),M=l.append("g"),J=M.append("text").text(B.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(pD0,B.width).node().getBBox(),w=A.fontSize?.replace?A.fontSize.replace("px",""):A.fontSize;if(B.height=J.height+w*1.1*0.5+B.padding,B.height=Math.max(B.height,B.maxHeight),B.width=B.width+2*B.padding,M.attr("transform","translate("+B.width/2+", "+B.padding/2+")"),z)M.attr("transform",`translate(${B.width/2}, ${D?B.padding/2+3:B.padding})`);if(Eh4(b,B,f,C,A),U==="neo"){if(l.attr("data-look","neo"),z){let K=F.includes("dark"),Q=u.node()?.ownerSVGElement??u.node(),G=Ku(Q),L=G.attr("id")??"",H=L?`${L}-drop-shadow`:"drop-shadow";if(G.select(`#${H}`).empty()){let q=G.select("defs");(q.empty()?G.append("defs"):q).append("filter").attr("id",H).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",K?"0.2":"0.06").attr("flood-color",K?"#FFFFFF":"#000000")}}}return B},"drawNode"),Bh4=X(function(u,B,E){let A=u.append("g"),D=A.append("text").text(B.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(pD0,B.width).node().getBBox(),F=E.fontSize?.replace?E.fontSize.replace("px",""):E.fontSize;return A.remove(),D.height+F*1.1*0.5+B.padding},"getVirtualNodeHeight"),Eh4=X(function(u,B,E,A,C){let{theme:D}=C,F=D?.includes("redux")?0:5,U=5,z=F>0?`M0 ${B.height-5} v${-B.height+10} q0,-${F},${F},-${F} h${B.width-10} q${F},0,${F},${F} v${B.height-5} H0 Z`:`M0 ${B.height-5} v${-(B.height-5)} h${B.width} v${B.height} H0 Z`;if(u.append("path").attr("id",A+"-node-"+g2u++).attr("class","node-bkg node-"+B.type).attr("d",z),!D?.includes("redux"))u.append("line").attr("class","node-line-"+E).attr("x1",0).attr("y1",B.height).attr("x2",B.width).attr("y2",B.height)},"defaultBkg"),Y8={drawRect:cc,drawCircle:nV4,drawSection:dV4,drawText:_2u,drawLabel:pV4,drawTask:sV4,drawBackgroundRect:oV4,getTextObj:tV4,getNoteRect:nD0,initGraphics:eV4,drawNode:uh4,getVirtualNodeHeight:Bh4},Ah4=X(function(u,B,E,A){let C=$0(),{look:D,theme:F,themeVariables:U}=C,{useGradient:z,gradientStart:k,gradientStop:f}=U,l=C.timeline?.leftMargin??50;z0.debug("timeline",A.db);let b=C.securityLevel,M;if(b==="sandbox")M=Ku("#i"+B);let J=(b==="sandbox"?Ku(M.nodes()[0].contentDocument.body):Ku("body")).select("#"+B);J.append("g");let w=A.db.getTasks(),K=A.db.getCommonDb().getDiagramTitle();z0.debug("task",w),Y8.initGraphics(J,B);let Q=A.db.getSections();z0.debug("sections",Q);let G=0,L=0,H=0,q=0,x=50+l,v=50;q=50;let W=0,S=!0;Q.forEach(function(I){let O={number:W,descr:I,section:W,width:150,padding:20,maxHeight:G},i=Y8.getVirtualNodeHeight(J,O,C);z0.debug("sectionHeight before draw",i),G=Math.max(G,i+20)});let T=0,R=0;z0.debug("tasks.length",w.length);for(let[I,O]of w.entries()){let i={number:I,descr:O,section:O.section,width:150,padding:20,maxHeight:L},N=Y8.getVirtualNodeHeight(J,i,C);z0.debug("taskHeight before draw",N),L=Math.max(L,N+20),T=Math.max(T,O.events.length);let V=0;for(let h of O.events){let r={descr:h,section:O.section,number:O.section,width:150,padding:20,maxHeight:50};V+=Y8.getVirtualNodeHeight(J,r,C)}if(O.events.length>0)V+=(O.events.length-1)*10;R=Math.max(R,V)}if(z0.debug("maxSectionHeight before draw",G),z0.debug("maxTaskHeight before draw",L),Q&&Q.length>0)Q.forEach((I)=>{let O=w.filter((h)=>h.section===I),i={number:W,descr:I,section:W,width:200*Math.max(O.length,1)-50,padding:20,maxHeight:G};z0.debug("sectionNode",i);let N=J.append("g"),V=Y8.drawNode(N,i,W,C,B);if(z0.debug("sectionNode output",V),N.attr("transform",`translate(${x}, ${q})`),v+=G+50,O.length>0)R2u(J,O,W,x,v,L,C,T,R,G,!1,B);x+=200*Math.max(O.length,1),v=q,W++});else S=!1,R2u(J,w,W,x,v,L,C,T,R,G,!0,B);let Y=J.node().getBBox();if(z0.debug("bounds",Y),K)J.append("text").text(K).attr("x",D==="neo"?Y.x*2+l:Y.width/2-l).attr("font-size","4ex").attr("font-weight","bold").attr("y",20);if(H=S?G+L+150:L+100,J.append("g").attr("class","lineWrapper").append("line").attr("x1",l).attr("y1",H).attr("x2",Y.width+3*l).attr("y2",H).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${B}-arrowhead)`),D==="neo"&&z&&F!=="neutral"){let I=J.select("defs"),i=(I.empty()?J.append("defs"):I).append("linearGradient").attr("id",J.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");i.append("stop").attr("offset","0%").attr("stop-color",k).attr("stop-opacity",1),i.append("stop").attr("offset","100%").attr("stop-color",f).attr("stop-opacity",1)}zF(void 0,J,C.timeline?.padding??50,C.timeline?.useMaxWidth??!1)},"draw"),R2u=X(function(u,B,E,A,C,D,F,U,z,k,f,l){for(let b of B){let M={descr:b.task,section:E,number:E,width:150,padding:20,maxHeight:D};z0.debug("taskNode",M);let Z=u.append("g").attr("class","taskWrapper"),w=Y8.drawNode(Z,M,E,F,l).height;if(z0.debug("taskHeight after draw",w),Z.attr("transform",`translate(${A}, ${C})`),D=Math.max(D,w),b.events){let K=u.append("g").attr("class","lineWrapper"),Q=D;C+=100,Q=Q+Ch4(u,b.events,E,A,C,F,l),C-=100,K.append("line").attr("x1",A+95).attr("y1",C+D).attr("x2",A+95).attr("y2",C+D+100+z+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${l}-arrowhead)`).attr("stroke-dasharray","5,5")}if(A=A+200,f&&!F.timeline?.disableMulticolor)E++}C=C-10},"drawTasks"),Ch4=X(function(u,B,E,A,C,D,F){let U=0,z=C;C=C+100;for(let k of B){let f={descr:k,section:E,number:E,width:150,padding:20,maxHeight:50};z0.debug("eventNode",f);let l=u.append("g").attr("class","eventWrapper"),M=Y8.drawNode(l,f,E,D,F,!0).height;U=U+M,l.attr("transform",`translate(${A}, ${C})`),C=C+10+M}return C=z,U},"drawEvents"),Dh4={setConf:X(()=>{},"setConf"),draw:Ah4},Fh4=gc+Ok*2,dD0=gc+100,Uh4=dD0+Ok*2,kh4=X(function(u,B,E,A){let C=$0(),D=C.timeline?.leftMargin??50;z0.debug("timeline",A.db);let F=N1(B);F.append("g");let U=A.db.getTasks(),z=A.db.getCommonDb().getDiagramTitle();z0.debug("task",U),Y8.initGraphics(F);let k=A.db.getSections();z0.debug("sections",k);let f=0,l=0,b=50+D,M=50,Z=M,J=b,w=Fh4+d2u,K=Uh4+s2u,Q=J+w,G=0,L=k&&k.length>0,H=L?Q:b+w,q=Math.max(50,w+K-Ok*2);k.forEach(function(I){let O={number:G,descr:I,section:G,width:q,padding:Ok,maxHeight:f},i=Y8.getVirtualNodeHeight(F,O,C);z0.debug("sectionHeight before draw",i),f=Math.max(f,i)});let x=0;z0.debug("tasks.length",U.length);for(let[I,O]of U.entries()){let i={number:I,descr:O,section:O.section,width:gc,padding:Ok,maxHeight:l},N=Y8.getVirtualNodeHeight(F,i,C);z0.debug("taskHeight before draw",N),l=Math.max(l,N);let V=0;for(let h of O.events){let r={descr:h,section:O.section,number:O.section,width:dD0,padding:Ok,maxHeight:50};V+=Y8.getVirtualNodeHeight(F,r,C)}if(O.events.length>0)V+=(O.events.length-1)*p2u;x=Math.max(x,V)+zh4}z0.debug("maxSectionHeight before draw",f),z0.debug("maxTaskHeight before draw",l);let W=Math.max(l,x)+O2u;if(L)k.forEach((I)=>{let O=U.filter((y)=>y.section===I),i={number:G,descr:I,section:G,width:q,padding:Ok,maxHeight:f};z0.debug("sectionNode",i);let N=F.append("g"),V=Y8.drawNode(N,i,G,C);z0.debug("sectionNode output",V);let h=H-w;N.attr("transform",`translate(${h}, ${M})`);let r=M+V.height+T2u;if(O.length>0)I2u(F,O,G,H,r,l,C,W,!1);let m=O.length,$=V.height+T2u+W*Math.max(m,1)-(m>0?O2u*2:0);M+=$,G++});else I2u(F,U,G,H,M,l,C,W,!0);let S=F.node()?.getBBox();if(!S)throw Error("bbox not found");if(z0.debug("bounds",S),z){if(F.append("text").text(z).attr("x",S.width/2-D).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),S=F.node()?.getBBox(),!S)throw Error("bbox not found");z0.debug("bounds after title",S)}let[T]=A8(C.fontSize),R=(T??16)*2,Y=(T??16)*0.5+20,a=F.append("g").attr("class","lineWrapper");a.append("line").attr("x1",H).attr("y1",Z-R).attr("x2",H).attr("y2",S.y+S.height+Y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),a.lower(),zF(void 0,F,C.timeline?.padding??50,C.timeline?.useMaxWidth??!1)},"draw"),I2u=X(function(u,B,E,A,C,D,F,U,z){for(let k of B){let f={descr:k.task,section:E,number:E,width:gc,padding:Ok,maxHeight:D};z0.debug("taskNode",f);let l=u.append("g").attr("class","taskWrapper"),b=Y8.drawNode(l,f,E,F),M=b.height;z0.debug("taskHeight after draw",M);let Z=A-d2u-b.width;if(l.attr("transform",`translate(${Z}, ${C})`),D=Math.max(D,M),k.events&&k.events.length>0){let J=C,w=A+s2u;fh4(u,k.events,E,A,w,J,F)}if(C=C+U,z&&!F.timeline?.disableMulticolor)E++}},"drawTasks"),fh4=X(function(u,B,E,A,C,D,F){let U=D;for(let z of B){let k={descr:z,section:E,number:E,width:dD0,padding:Ok,maxHeight:0};z0.debug("eventNode",k);let f=u.append("g").attr("class","eventWrapper"),b=Y8.drawNode(f,k,E,F).height;f.attr("transform",`translate(${C}, ${U})`);let M=u.append("g").attr("class","lineWrapper"),Z=U+b/2;M.append("line").attr("x1",A).attr("y1",Z).attr("x2",C).attr("y2",Z).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),U=U+b+p2u}return U-D},"drawEvents"),lh4={setConf:X(()=>{},"setConf"),draw:kh4},bh4=X((u)=>{let{theme:B}=F4(),E=B?.includes("dark"),A=B?.includes("color"),C=u.svgId?.replace(/^#/,"")??"",D=C?`url(#${C}-drop-shadow)`:u.dropShadow??"none",F="";for(let U=0;U<u.THEME_COLOR_LIMIT;U++){let z=`${17-3*U}`,k=A?u.borderColorArray[U]:u.mainBkg,f=A?u.borderColorArray[U]:u.nodeBorder;F+=`
.section-${U-1} rect,
.section-${U-1} path,
.section-${U-1} circle {
fill: ${E&&A?u.mainBkg:k};
stroke: ${f};
stroke-width: ${u.strokeWidth};
filter: ${D};
}
.section-${U-1} text {
fill: ${u.nodeBorder};
font-weight: ${u.fontWeight}
}
.node-icon-${U-1} {
font-size: 40px;
color: ${u["cScaleLabel"+U]};
}
.section-edge-${U-1} {
stroke: ${u["cScale"+U]};
}
.edge-depth-${U-1} {
stroke-width: ${z};
}
.section-${U-1} line {
stroke: ${u["cScaleInv"+U]};
stroke-width: 3;
}
.lineWrapper line {
stroke: ${u.nodeBorder};
stroke-width:${u.strokeWidth}
}
.disabled,
.disabled circle,
.disabled text {
fill: ${u.tertiaryColor??"lightgray"};
}
.disabled text {
fill: ${u.clusterBorder??"#efefef"};
}
`}return F},"genReduxSections"),Mh4=X((u)=>{let B="";for(let E=0;E<u.THEME_COLOR_LIMIT;E++)if(u["lineColor"+E]=u["lineColor"+E]||u["cScaleInv"+E],_1(u["lineColor"+E]))u["lineColor"+E]=Ju(u["lineColor"+E],20);else u["lineColor"+E]=wu(u["lineColor"+E],20);for(let E=0;E<u.THEME_COLOR_LIMIT;E++){let A=""+(17-3*E);B+=`
.section-${E-1} rect, .section-${E-1} path, .section-${E-1} circle, .section-${E-1} path {
fill: ${u["cScale"+E]};
}
.section-${E-1} text {
fill: ${u["cScaleLabel"+E]};
}
.node-icon-${E-1} {
font-size: 40px;
color: ${u["cScaleLabel"+E]};
}
.section-edge-${E-1}{
stroke: ${u["cScale"+E]};
}
.edge-depth-${E-1}{
stroke-width: ${A};
}
.section-${E-1} line {
stroke: ${u["cScaleInv"+E]} ;
stroke-width: 3;
}
.lineWrapper line{
stroke: ${u["cScaleLabel"+E]} ;
}
.disabled, .disabled circle, .disabled text {
fill: ${u.tertiaryColor??"lightgray"};
}
.disabled text {
fill: ${u.clusterBorder??"#efefef"};
}
`}return B},"genSections"),Zh4=X((u)=>{let{theme:B}=F4(),E=B?.includes("redux"),A=B==="neutral",C=u.svgId?.replace(/^#/,"")??"",D="";if(u.useGradient&&C&&u.THEME_COLOR_LIMIT&&!A)for(let F=0;F<u.THEME_COLOR_LIMIT;F++)D+=`
.section-${F-1}[data-look="neo"] rect,
.section-${F-1}[data-look="neo"] path,
.section-${F-1}[data-look="neo"] circle {
fill: ${u.mainBkg};
stroke: url(#${C}-gradient);
stroke-width: 2;
}
.section-${F-1}[data-look="neo"] line {
stroke: url(#${C}-gradient);
stroke-width: 2;
}`;return`
.edge {
stroke-width: 3;
}
${E?bh4(u):Mh4(u)}
${D}
.section-root rect, .section-root path, .section-root circle {
fill: ${u.git0};
}
.section-root text {
fill: ${u.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.eventWrapper {
filter: brightness(120%);
}
`},"getStyles"),Jh4=Zh4,wh4={setConf:X(()=>{},"setConf"),draw:X((u,B,E,A)=>{if((A?.db?.getDirection?.()??"LR")==="TD")return lh4.draw(u,B,E,A);return Dh4.draw(u,B,E,A)},"draw")},Kh4={db:P2u,renderer:wh4,parser:cV4,styles:Jh4}});function sD0(){return crypto.getRandomValues(Qh4)}var Qh4;var e2u=g(()=>{Qh4=new Uint8Array(16)});function u5u(u,B=0){return(M7[u[B+0]]+M7[u[B+1]]+M7[u[B+2]]+M7[u[B+3]]+"-"+M7[u[B+4]]+M7[u[B+5]]+"-"+M7[u[B+6]]+M7[u[B+7]]+"-"+M7[u[B+8]]+M7[u[B+9]]+"-"+M7[u[B+10]]+M7[u[B+11]]+M7[u[B+12]]+M7[u[B+13]]+M7[u[B+14]]+M7[u[B+15]]).toLowerCase()}var M7;var B5u=g(()=>{M7=[];for(let u=0;u<256;++u)M7.push((u+256).toString(16).slice(1))});function Gh4(u,B,E){if(!B&&!u&&crypto.randomUUID)return crypto.randomUUID();return Hh4(u,B,E)}function Hh4(u,B,E){u=u||{};let A=u.random??u.rng?.()??sD0();if(A.length<16)throw Error("Random bytes length must be >= 16");if(A[6]=A[6]&15|64,A[8]=A[8]&63|128,B){if(E=E||0,E<0||E+16>B.length)throw RangeError(`UUID byte range ${E}:${E+15} is out of buffer bounds`);for(let C=0;C<16;++C)B[E+C]=A[C];return B}return u5u(A)}var oD0;var E5u=g(()=>{e2u();B5u();oD0=Gh4});var A5u=g(()=>{E5u()});var C5u={};ju(C5u,{diagram:()=>Th4});var tD0,Lh4,qh4=12,Ik,Xh4,xh4,vh4,Sh4,Wh4,Yh4,Rh4,Th4;var D5u=g(()=>{ME();Q8();J8();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();A5u();K2();tD0=function(){var u=X(function(L,H,q,x){for(q=q||{},x=L.length;x--;q[L[x]]=H);return q},"o"),B=[1,4],E=[1,13],A=[1,12],C=[1,15],D=[1,16],F=[1,20],U=[1,19],z=[6,7,8],k=[1,26],f=[1,24],l=[1,25],b=[6,7,11],M=[1,6,13,15,16,19,22],Z=[1,33],J=[1,34],w=[1,6,7,11,13,15,16,19,22],K={trace:X(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:X(function(H,q,x,v,W,S,T){var R=S.length-1;switch(W){case 6:case 7:return v;case 8:v.getLogger().trace("Stop NL ");break;case 9:v.getLogger().trace("Stop EOF ");break;case 11:v.getLogger().trace("Stop NL2 ");break;case 12:v.getLogger().trace("Stop EOF2 ");break;case 15:v.getLogger().info("Node: ",S[R].id),v.addNode(S[R-1].length,S[R].id,S[R].descr,S[R].type);break;case 16:v.getLogger().trace("Icon: ",S[R]),v.decorateNode({icon:S[R]});break;case 17:case 21:v.decorateNode({class:S[R]});break;case 18:v.getLogger().trace("SPACELIST");break;case 19:v.getLogger().trace("Node: ",S[R].id),v.addNode(0,S[R].id,S[R].descr,S[R].type);break;case 20:v.decorateNode({icon:S[R]});break;case 25:v.getLogger().trace("node found ..",S[R-2]),this.$={id:S[R-1],descr:S[R-1],type:v.getType(S[R-2],S[R])};break;case 26:this.$={id:S[R],descr:S[R],type:v.nodeType.DEFAULT};break;case 27:v.getLogger().trace("node found ..",S[R-3]),this.$={id:S[R-3],descr:S[R-1],type:v.getType(S[R-2],S[R])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:B},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:B},{6:E,7:[1,10],9:9,12:11,13:A,14:14,15:C,16:D,17:17,18:18,19:F,22:U},u(z,[2,3]),{1:[2,2]},u(z,[2,4]),u(z,[2,5]),{1:[2,6],6:E,12:21,13:A,14:14,15:C,16:D,17:17,18:18,19:F,22:U},{6:E,9:22,12:11,13:A,14:14,15:C,16:D,17:17,18:18,19:F,22:U},{6:k,7:f,10:23,11:l},u(b,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:F,22:U}),u(b,[2,18]),u(b,[2,19]),u(b,[2,20]),u(b,[2,21]),u(b,[2,23]),u(b,[2,24]),u(b,[2,26],{19:[1,30]}),{20:[1,31]},{6:k,7:f,10:32,11:l},{1:[2,7],6:E,12:21,13:A,14:14,15:C,16:D,17:17,18:18,19:F,22:U},u(M,[2,14],{7:Z,11:J}),u(w,[2,8]),u(w,[2,9]),u(w,[2,10]),u(b,[2,15]),u(b,[2,16]),u(b,[2,17]),{20:[1,35]},{21:[1,36]},u(M,[2,13],{7:Z,11:J}),u(w,[2,11]),u(w,[2,12]),{21:[1,37]},u(b,[2,25]),u(b,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:X(function(H,q){if(q.recoverable)this.trace(H);else{var x=Error(H);throw x.hash=q,x}},"parseError"),parse:X(function(H){var q=this,x=[0],v=[],W=[null],S=[],T=this.table,R="",Y=0,a=0,I=0,O=2,i=1,N=S.slice.call(arguments,1),V=Object.create(this.lexer),h={yy:{}};for(var r in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,r))h.yy[r]=this.yy[r];if(V.setInput(H,h.yy),h.yy.lexer=V,h.yy.parser=this,typeof V.yylloc>"u")V.yylloc={};var m=V.yylloc;S.push(m);var $=V.options&&V.options.ranges;if(typeof h.yy.parseError==="function")this.parseError=h.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function y(w0){x.length=x.length-2*w0,W.length=W.length-w0,S.length=S.length-w0}X(y,"popStack");function p(){var w0=v.pop()||V.lex()||i;if(typeof w0!=="number"){if(w0 instanceof Array)v=w0,w0=v.pop();w0=q.symbols_[w0]||w0}return w0}X(p,"lex");var e,_,b0,B0,k0,f0,D0={},P0,q0,m0,a0;while(!0){if(b0=x[x.length-1],this.defaultActions[b0])B0=this.defaultActions[b0];else{if(e===null||typeof e>"u")e=p();B0=T[b0]&&T[b0][e]}if(typeof B0>"u"||!B0.length||!B0[0]){var _0="";a0=[];for(P0 in T[b0])if(this.terminals_[P0]&&P0>O)a0.push("'"+this.terminals_[P0]+"'");if(V.showPosition)_0="Parse error on line "+(Y+1)+`:
`+V.showPosition()+`
Expecting `+a0.join(", ")+", got '"+(this.terminals_[e]||e)+"'";else _0="Parse error on line "+(Y+1)+": Unexpected "+(e==i?"end of input":"'"+(this.terminals_[e]||e)+"'");this.parseError(_0,{text:V.match,token:this.terminals_[e]||e,line:V.yylineno,loc:m,expected:a0})}if(B0[0]instanceof Array&&B0.length>1)throw Error("Parse Error: multiple actions possible at state: "+b0+", token: "+e);switch(B0[0]){case 1:if(x.push(e),W.push(V.yytext),S.push(V.yylloc),x.push(B0[1]),e=null,!_){if(a=V.yyleng,R=V.yytext,Y=V.yylineno,m=V.yylloc,I>0)I--}else e=_,_=null;break;case 2:if(q0=this.productions_[B0[1]][1],D0.$=W[W.length-q0],D0._$={first_line:S[S.length-(q0||1)].first_line,last_line:S[S.length-1].last_line,first_column:S[S.length-(q0||1)].first_column,last_column:S[S.length-1].last_column},$)D0._$.range=[S[S.length-(q0||1)].range[0],S[S.length-1].range[1]];if(f0=this.performAction.apply(D0,[R,a,Y,h.yy,B0[1],W,S].concat(N)),typeof f0<"u")return f0;if(q0)x=x.slice(0,-1*q0*2),W=W.slice(0,-1*q0),S=S.slice(0,-1*q0);x.push(this.productions_[B0[1]][0]),W.push(D0.$),S.push(D0._$),m0=T[x[x.length-2]][x[x.length-1]],x.push(m0);break;case 3:return!0}}return!0},"parse")},Q=function(){var L={EOF:1,parseError:X(function(q,x){if(this.yy.parser)this.yy.parser.parseError(q,x);else throw Error(q)},"parseError"),setInput:X(function(H,q){if(this.yy=q||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:X(function(){var H=this._input[0];this.yytext+=H,this.yyleng++,this.offset++,this.match+=H,this.matched+=H;var q=H.match(/(?:\r\n?|\n).*/g);if(q)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:X(function(H){var q=H.length,x=H.split(/(?:\r\n?|\n)/g);this._input=H+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-q),this.offset-=q;var v=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),x.length-1)this.yylineno-=x.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:x?(x.length===v.length?this.yylloc.first_column:0)+v[v.length-x.length].length-x[0].length:this.yylloc.first_column-q},this.options.ranges)this.yylloc.range=[W[0],W[0]+this.yyleng-q];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(H){this.unput(this.match.slice(H))},"less"),pastInput:X(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:X(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:X(function(){var H=this.pastInput(),q=Array(H.length+1).join("-");return H+this.upcomingInput()+`
`+q+"^"},"showPosition"),test_match:X(function(H,q){var x,v,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(v=H[0].match(/(?:\r\n?|\n).*/g),v)this.yylineno+=v.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.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],x=this.performAction.call(this,this.yy,this,q,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(x)return x;else if(this._backtrack){for(var S in W)this[S]=W[S];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var H,q,x,v;if(!this._more)this.yytext="",this.match="";var W=this._currentRules();for(var S=0;S<W.length;S++)if(x=this._input.match(this.rules[W[S]]),x&&(!q||x[0].length>q[0].length)){if(q=x,v=S,this.options.backtrack_lexer)if(H=this.test_match(x,W[S]),H!==!1)return H;else if(this._backtrack){q=!1;continue}else return!1;else if(!this.options.flex)break}if(q){if(H=this.test_match(q,W[v]),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:X(function(){var q=this.next();if(q)return q;else return this.lex()},"lex"),begin:X(function(q){this.conditionStack.push(q)},"begin"),popState:X(function(){var q=this.conditionStack.length-1;if(q>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(q){if(q=this.conditionStack.length-1-Math.abs(q||0),q>=0)return this.conditionStack[q];else return"INITIAL"},"topState"),pushState:X(function(q){this.begin(q)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(q,x,v,W){var S=W;switch(v){case 0:return q.getLogger().trace("Found comment",x.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:q.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return q.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:q.getLogger().trace("end icon"),this.popState();break;case 10:return q.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return q.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return q.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return q.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:q.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return q.getLogger().trace("description:",x.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),q.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),q.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),q.getLogger().trace("node end ...",x.yytext),"NODE_DEND";break;case 30:return this.popState(),q.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),q.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),q.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),q.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),q.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return q.getLogger().trace("Long description:",x.yytext),20;break;case 36:return q.getLogger().trace("Long description:",x.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 L}();K.lexer=Q;function G(){this.yy={}}return X(G,"Parser"),G.prototype=K,K.Parser=G,new G}();tD0.parser=tD0;Lh4=tD0,Ik={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Xh4=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=Ik,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{X(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(u){for(let B=this.nodes.length-1;B>=0;B--)if(this.nodes[B].level<u)return this.nodes[B];return null}getMindmap(){return this.nodes.length>0?this.nodes[0]:null}addNode(u,B,E,A){z0.info("addNode",u,B,E,A);let C=!1;if(this.nodes.length===0)this.baseLevel=u,u=0,C=!0;else if(this.baseLevel!==void 0)u=u-this.baseLevel,C=!1;let D=$0(),F=D.mindmap?.padding??t4.mindmap.padding;switch(A){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:F*=2;break}let U={id:this.count++,nodeId:C3(B,D),level:u,descr:C3(E,D),type:A,children:[],width:D.mindmap?.maxNodeWidth??t4.mindmap.maxNodeWidth,padding:F,isRoot:C},z=this.getParent(u);if(z)z.children.push(U),this.nodes.push(U);else if(C)this.nodes.push(U);else throw Error(`There can be only one root. No parent could be found for ("${U.descr}")`)}getType(u,B){switch(z0.debug("In get type",u,B),u){case"[":return this.nodeType.RECT;case"(":return B===")"?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(u,B){this.elements[u]=B}getElementById(u){return this.elements[u]}decorateNode(u){if(!u)return;let B=$0(),E=this.nodes[this.nodes.length-1];if(u.icon)E.icon=C3(u.icon,B);if(u.class)E.class=C3(u.class,B)}type2Str(u){switch(u){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(u,B){if(u.level===0)u.section=void 0;else u.section=B;if(u.children)for(let[E,A]of u.children.entries()){let C=u.level===0?E%(qh4-1):B;this.assignSections(A,C)}}flattenNodes(u,B){let E=$0(),A=["mindmap-node"];if(u.isRoot===!0)A.push("section-root","section--1");else if(u.section!==void 0)A.push(`section-${u.section}`);if(u.class)A.push(u.class);let C=A.join(" "),D=X((U)=>{let k=(E.theme?.toLowerCase()??"").includes("redux");switch(U){case Ik.CIRCLE:return"mindmapCircle";case Ik.RECT:return"rect";case Ik.ROUNDED_RECT:return"rounded";case Ik.CLOUD:return"cloud";case Ik.BANG:return"bang";case Ik.HEXAGON:return"hexagon";case Ik.DEFAULT:return k?"rounded":"defaultMindmapNode";case Ik.NO_BORDER:default:return"rect"}},"getShapeFromType"),F={id:u.id.toString(),domId:"node_"+u.id.toString(),label:u.descr,labelType:"markdown",isGroup:!1,shape:D(u.type),width:u.width,height:u.height??0,padding:u.padding,cssClasses:C,cssStyles:[],look:E.look,icon:u.icon,x:u.x,y:u.y,level:u.level,nodeId:u.nodeId,type:u.type,section:u.section};if(B.push(F),u.children)for(let U of u.children)this.flattenNodes(U,B)}generateEdges(u,B){if(!u.children)return;let E=$0();for(let A of u.children){let C="edge";if(A.section!==void 0)C+=` section-edge-${A.section}`;let D=u.level+1;C+=` edge-depth-${D}`;let F={id:`edge_${u.id}_${A.id}`,start:u.id.toString(),end:A.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:E.look,classes:C,depth:u.level,section:A.section};B.push(F),this.generateEdges(A,B)}}getData(){let u=this.getMindmap(),B=$0(),A=Hj().layout!==void 0,C=B;if(!A)C.layout="cose-bilkent";if(!u)return{nodes:[],edges:[],config:C};z0.debug("getData: mindmapRoot",u,B),this.assignSections(u);let D=[],F=[];this.flattenNodes(u,D),this.generateEdges(u,F),z0.debug(`getData: processed ${D.length} nodes and ${F.length} edges`);let U=new Map;for(let z of D)U.set(z.id,{shape:z.shape,width:z.width,height:z.height,padding:z.padding});return{nodes:D,edges:F,config:C,rootNode:u,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(U),type:"mindmap",diagramId:"mindmap-"+oD0()}}getLogger(){return z0}},xh4=X(async(u,B,E,A)=>{z0.debug(`Rendering mindmap diagram
`+u);let C=A.db,D=C.getData(),F=ZA(B,D.config.securityLevel);if(D.type=A.type,D.layoutAlgorithm=$F(D.config.layout,{fallback:"cose-bilkent"}),D.diagramId=B,!C.getMindmap())return;D.nodes.forEach((b)=>{if(b.shape==="rounded")b.radius=15,b.taper=15,b.stroke="none",b.width=0,b.padding=15;else if(b.shape==="circle")b.padding=10;else if(b.shape==="rect")b.width=0,b.padding=10;else if(b.shape==="hexagon")b.width=0,b.height=0}),await kA(D,F);let{themeVariables:z}=F4(),{useGradient:k,gradientStart:f,gradientStop:l}=z;if(k&&f&&l){let b=F.attr("id"),M=F.append("defs").append("linearGradient").attr("id",`${b}-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",f).attr("stop-opacity",1),M.append("stop").attr("offset","100%").attr("stop-color",l).attr("stop-opacity",1)}K8(F,D.config.mindmap?.padding??t4.mindmap.padding,"mindmapDiagram",D.config.mindmap?.useMaxWidth??t4.mindmap.useMaxWidth)},"draw"),vh4={draw:xh4},Sh4=X((u)=>{let{theme:B,look:E}=u,A="";for(let C=0;C<u.THEME_COLOR_LIMIT;C++)if(u["lineColor"+C]=u["lineColor"+C]||u["cScaleInv"+C],_1(u["lineColor"+C]))u["lineColor"+C]=Ju(u["lineColor"+C],20);else u["lineColor"+C]=wu(u["lineColor"+C],20);for(let C=0;C<u.THEME_COLOR_LIMIT;C++){let D=""+(E==="neo"?Math.max(10-(C-1)*2,2):17-3*C);A+=`
.section-${C-1} rect, .section-${C-1} path, .section-${C-1} circle, .section-${C-1} polygon, .section-${C-1} path {
fill: ${u["cScale"+C]};
}
.section-${C-1} text {
fill: ${u["cScaleLabel"+C]};
}
.section-${C-1} span {
color: ${u["cScaleLabel"+C]};
}
.node-icon-${C-1} {
font-size: 40px;
color: ${u["cScaleLabel"+C]};
}
.section-edge-${C-1}{
stroke: ${u["cScale"+C]};
}
.edge-depth-${C-1}{
stroke-width: ${D};
}
.section-${C-1} line {
stroke: ${u["cScaleInv"+C]} ;
stroke-width: 3;
}
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
[data-look="neo"].mindmap-node.section-${C-1} rect, [data-look="neo"].mindmap-node.section-${C-1} path, [data-look="neo"].mindmap-node.section-${C-1} circle, [data-look="neo"].mindmap-node.section-${C-1} polygon {
fill: ${B==="redux"||B==="redux-dark"||B==="neutral"?u.mainBkg:u["cScale"+C]};
stroke: ${B==="redux"||B==="redux-dark"?u.nodeBorder:u["cScale"+C]};
stroke-width: ${u.strokeWidth??2}px;
}
[data-look="neo"].section-edge-${C-1}{
stroke: ${B?.includes("redux")||B==="neo-dark"?u.nodeBorder:u["cScale"+C]};
}
[data-look="neo"].mindmap-node.section-${C-1} text {
fill: ${B==="redux"||B==="redux-dark"?u.nodeBorder:u["cScaleLabel"+(B==="neutral"?1:C)]};
}
`}return A},"genSections"),Wh4=X((u,B,E)=>{let A="";for(let C=0;C<u;C++)A+=`
[data-look="neo"].mindmap-node.section-${C-1} rect, [data-look="neo"].mindmap-node.section-${C-1} path, [data-look="neo"].mindmap-node.section-${C-1} circle, [data-look="neo"].mindmap-node.section-${C-1} polygon {
stroke: url(${B}-gradient);
fill: ${E};
}
.section-${C-1} line {
stroke-width: 0;
}`;return A},"genGradient"),Yh4=X((u)=>{let{theme:B}=u,E=u.svgId,A=u.dropShadow?u.dropShadow.replace("url(#drop-shadow)",`url(${E}-drop-shadow)`):"none";return`
.edge {
stroke-width: 3;
}
${Sh4(u)}
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
fill: ${u.git0};
}
.section-root text {
fill: ${u.gitBranchLabel0};
}
.section-root span {
color: ${B?.includes("redux")?u.nodeBorder:u.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: ${A};
}
[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: ${B?.includes("redux")?u.mainBkg:u.git0};
}
[data-look="neo"].mindmap-node.section-root .text-inner-tspan {
fill: ${B?.includes("redux")?u.nodeBorder:u["cScaleLabel"+(B==="neutral"?1:0)]};
}
${u.useGradient&&E&&u.mainBkg?Wh4(u.THEME_COLOR_LIMIT,E,u.mainBkg):""}
`},"getStyles"),Rh4=Yh4,Th4={get db(){return new Xh4},renderer:vh4,parser:Lh4,styles:Rh4}});var U5u={};ju(U5u,{diagram:()=>dh4});var eD0,Oh4,XA,BF0,uF0=0,EF0,Ih4,Ph4,F5u,jh4,Nh4,C5,ih4,ah4,Vh4,hh4,mh4,rh4,$h4,yh4,ch4,gh4,_h4,nh4,ph4,dh4;var z5u=g(()=>{E2();_F();mZ();B7();o5();e5();d2();q2();t3();s4();o4();Y4();K2();eD0=function(){var u=X(function(x,v,W,S){for(W=W||{},S=x.length;S--;W[x[S]]=v);return W},"o"),B=[1,4],E=[1,13],A=[1,12],C=[1,15],D=[1,16],F=[1,20],U=[1,19],z=[6,7,8],k=[1,26],f=[1,24],l=[1,25],b=[6,7,11],M=[1,31],Z=[6,7,11,24],J=[1,6,13,16,17,20,23],w=[1,35],K=[1,36],Q=[1,6,7,11,13,16,17,20,23],G=[1,38],L={trace:X(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:X(function(v,W,S,T,R,Y,a){var I=Y.length-1;switch(R){case 6:case 7:return T;case 8:T.getLogger().trace("Stop NL ");break;case 9:T.getLogger().trace("Stop EOF ");break;case 11:T.getLogger().trace("Stop NL2 ");break;case 12:T.getLogger().trace("Stop EOF2 ");break;case 15:T.getLogger().info("Node: ",Y[I-1].id),T.addNode(Y[I-2].length,Y[I-1].id,Y[I-1].descr,Y[I-1].type,Y[I]);break;case 16:T.getLogger().info("Node: ",Y[I].id),T.addNode(Y[I-1].length,Y[I].id,Y[I].descr,Y[I].type);break;case 17:T.getLogger().trace("Icon: ",Y[I]),T.decorateNode({icon:Y[I]});break;case 18:case 23:T.decorateNode({class:Y[I]});break;case 19:T.getLogger().trace("SPACELIST");break;case 20:T.getLogger().trace("Node: ",Y[I-1].id),T.addNode(0,Y[I-1].id,Y[I-1].descr,Y[I-1].type,Y[I]);break;case 21:T.getLogger().trace("Node: ",Y[I].id),T.addNode(0,Y[I].id,Y[I].descr,Y[I].type);break;case 22:T.decorateNode({icon:Y[I]});break;case 27:T.getLogger().trace("node found ..",Y[I-2]),this.$={id:Y[I-1],descr:Y[I-1],type:T.getType(Y[I-2],Y[I])};break;case 28:this.$={id:Y[I],descr:Y[I],type:0};break;case 29:T.getLogger().trace("node found ..",Y[I-3]),this.$={id:Y[I-3],descr:Y[I-1],type:T.getType(Y[I-2],Y[I])};break;case 30:this.$=Y[I-1]+Y[I];break;case 31:this.$=Y[I];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:B},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:B},{6:E,7:[1,10],9:9,12:11,13:A,14:14,16:C,17:D,18:17,19:18,20:F,23:U},u(z,[2,3]),{1:[2,2]},u(z,[2,4]),u(z,[2,5]),{1:[2,6],6:E,12:21,13:A,14:14,16:C,17:D,18:17,19:18,20:F,23:U},{6:E,9:22,12:11,13:A,14:14,16:C,17:D,18:17,19:18,20:F,23:U},{6:k,7:f,10:23,11:l},u(b,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:F,23:U}),u(b,[2,19]),u(b,[2,21],{15:30,24:M}),u(b,[2,22]),u(b,[2,23]),u(Z,[2,25]),u(Z,[2,26]),u(Z,[2,28],{20:[1,32]}),{21:[1,33]},{6:k,7:f,10:34,11:l},{1:[2,7],6:E,12:21,13:A,14:14,16:C,17:D,18:17,19:18,20:F,23:U},u(J,[2,14],{7:w,11:K}),u(Q,[2,8]),u(Q,[2,9]),u(Q,[2,10]),u(b,[2,16],{15:37,24:M}),u(b,[2,17]),u(b,[2,18]),u(b,[2,20],{24:G}),u(Z,[2,31]),{21:[1,39]},{22:[1,40]},u(J,[2,13],{7:w,11:K}),u(Q,[2,11]),u(Q,[2,12]),u(b,[2,15],{24:G}),u(Z,[2,30]),{22:[1,41]},u(Z,[2,27]),u(Z,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:X(function(v,W){if(W.recoverable)this.trace(v);else{var S=Error(v);throw S.hash=W,S}},"parseError"),parse:X(function(v){var W=this,S=[0],T=[],R=[null],Y=[],a=this.table,I="",O=0,i=0,N=0,V=2,h=1,r=Y.slice.call(arguments,1),m=Object.create(this.lexer),$={yy:{}};for(var y in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,y))$.yy[y]=this.yy[y];if(m.setInput(v,$.yy),$.yy.lexer=m,$.yy.parser=this,typeof m.yylloc>"u")m.yylloc={};var p=m.yylloc;Y.push(p);var e=m.options&&m.options.ranges;if(typeof $.yy.parseError==="function")this.parseError=$.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function _(Z0){S.length=S.length-2*Z0,R.length=R.length-Z0,Y.length=Y.length-Z0}X(_,"popStack");function b0(){var Z0=T.pop()||m.lex()||h;if(typeof Z0!=="number"){if(Z0 instanceof Array)T=Z0,Z0=T.pop();Z0=W.symbols_[Z0]||Z0}return Z0}X(b0,"lex");var B0,k0,f0,D0,P0,q0,m0={},a0,_0,w0,v0;while(!0){if(f0=S[S.length-1],this.defaultActions[f0])D0=this.defaultActions[f0];else{if(B0===null||typeof B0>"u")B0=b0();D0=a[f0]&&a[f0][B0]}if(typeof D0>"u"||!D0.length||!D0[0]){var T0="";v0=[];for(a0 in a[f0])if(this.terminals_[a0]&&a0>V)v0.push("'"+this.terminals_[a0]+"'");if(m.showPosition)T0="Parse error on line "+(O+1)+`:
`+m.showPosition()+`
Expecting `+v0.join(", ")+", got '"+(this.terminals_[B0]||B0)+"'";else T0="Parse error on line "+(O+1)+": Unexpected "+(B0==h?"end of input":"'"+(this.terminals_[B0]||B0)+"'");this.parseError(T0,{text:m.match,token:this.terminals_[B0]||B0,line:m.yylineno,loc:p,expected:v0})}if(D0[0]instanceof Array&&D0.length>1)throw Error("Parse Error: multiple actions possible at state: "+f0+", token: "+B0);switch(D0[0]){case 1:if(S.push(B0),R.push(m.yytext),Y.push(m.yylloc),S.push(D0[1]),B0=null,!k0){if(i=m.yyleng,I=m.yytext,O=m.yylineno,p=m.yylloc,N>0)N--}else B0=k0,k0=null;break;case 2:if(_0=this.productions_[D0[1]][1],m0.$=R[R.length-_0],m0._$={first_line:Y[Y.length-(_0||1)].first_line,last_line:Y[Y.length-1].last_line,first_column:Y[Y.length-(_0||1)].first_column,last_column:Y[Y.length-1].last_column},e)m0._$.range=[Y[Y.length-(_0||1)].range[0],Y[Y.length-1].range[1]];if(q0=this.performAction.apply(m0,[I,i,O,$.yy,D0[1],R,Y].concat(r)),typeof q0<"u")return q0;if(_0)S=S.slice(0,-1*_0*2),R=R.slice(0,-1*_0),Y=Y.slice(0,-1*_0);S.push(this.productions_[D0[1]][0]),R.push(m0.$),Y.push(m0._$),w0=a[S[S.length-2]][S[S.length-1]],S.push(w0);break;case 3:return!0}}return!0},"parse")},H=function(){var x={EOF:1,parseError:X(function(W,S){if(this.yy.parser)this.yy.parser.parseError(W,S);else throw Error(W)},"parseError"),setInput:X(function(v,W){if(this.yy=W||this.yy||{},this._input=v,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:X(function(){var v=this._input[0];this.yytext+=v,this.yyleng++,this.offset++,this.match+=v,this.matched+=v;var W=v.match(/(?:\r\n?|\n).*/g);if(W)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),v},"input"),unput:X(function(v){var W=v.length,S=v.split(/(?:\r\n?|\n)/g);this._input=v+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-W),this.offset-=W;var T=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),S.length-1)this.yylineno-=S.length-1;var R=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:S?(S.length===T.length?this.yylloc.first_column:0)+T[T.length-S.length].length-S[0].length:this.yylloc.first_column-W},this.options.ranges)this.yylloc.range=[R[0],R[0]+this.yyleng-W];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(v){this.unput(this.match.slice(v))},"less"),pastInput:X(function(){var v=this.matched.substr(0,this.matched.length-this.match.length);return(v.length>20?"...":"")+v.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var v=this.match;if(v.length<20)v+=this._input.substr(0,20-v.length);return(v.substr(0,20)+(v.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var v=this.pastInput(),W=Array(v.length+1).join("-");return v+this.upcomingInput()+`
`+W+"^"},"showPosition"),test_match:X(function(v,W){var S,T,R;if(this.options.backtrack_lexer){if(R={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)R.yylloc.range=this.yylloc.range.slice(0)}if(T=v[0].match(/(?:\r\n?|\n).*/g),T)this.yylineno+=T.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:T?T[T.length-1].length-T[T.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+v[0].length},this.yytext+=v[0],this.match+=v[0],this.matches=v,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(v[0].length),this.matched+=v[0],S=this.performAction.call(this,this.yy,this,W,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(S)return S;else if(this._backtrack){for(var Y in R)this[Y]=R[Y];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var v,W,S,T;if(!this._more)this.yytext="",this.match="";var R=this._currentRules();for(var Y=0;Y<R.length;Y++)if(S=this._input.match(this.rules[R[Y]]),S&&(!W||S[0].length>W[0].length)){if(W=S,T=Y,this.options.backtrack_lexer)if(v=this.test_match(S,R[Y]),v!==!1)return v;else if(this._backtrack){W=!1;continue}else return!1;else if(!this.options.flex)break}if(W){if(v=this.test_match(W,R[T]),v!==!1)return v;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:X(function(){var W=this.next();if(W)return W;else return this.lex()},"lex"),begin:X(function(W){this.conditionStack.push(W)},"begin"),popState:X(function(){var W=this.conditionStack.length-1;if(W>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(W){if(W=this.conditionStack.length-1-Math.abs(W||0),W>=0)return this.conditionStack[W];else return"INITIAL"},"topState"),pushState:X(function(W){this.begin(W)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(W,S,T,R){var Y=R;switch(T){case 0:return this.pushState("shapeData"),S.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let a=/\n\s*/g;return S.yytext=S.yytext.replace(a,"<br/>"),24;break;case 4:return 24;case 5:this.popState();break;case 6:return W.getLogger().trace("Found comment",S.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:W.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return W.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:W.getLogger().trace("end icon"),this.popState();break;case 16:return W.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return W.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return W.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return W.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:W.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return W.getLogger().trace("description:",S.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),W.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),W.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),W.getLogger().trace("node end ...",S.yytext),"NODE_DEND";break;case 36:return this.popState(),W.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),W.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),W.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),W.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),W.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return W.getLogger().trace("Long description:",S.yytext),21;break;case 42:return W.getLogger().trace("Long description:",S.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 x}();L.lexer=H;function q(){this.yy={}}return X(q,"Parser"),q.prototype=L,L.Parser=q,new q}();eD0.parser=eD0;Oh4=eD0,XA=[],BF0=[],EF0={},Ih4=X(()=>{XA=[],BF0=[],uF0=0,EF0={}},"clear"),Ph4=X((u)=>{if(XA.length===0)return null;let B=XA[0].level,E=null;for(let A=XA.length-1;A>=0;A--){if(XA[A].level===B&&!E)E=XA[A];if(XA[A].level<B)throw Error('Items without section detected, found section ("'+XA[A].label+'")')}if(u===E?.level)return null;return E},"getSection"),F5u=X(function(){return BF0},"getSections"),jh4=X(function(){let u=[],B=[],E=F5u(),A=$0();for(let C of E){let D={id:C.id,label:C3(C.label??"",A),labelType:"markdown",isGroup:!0,ticket:C.ticket,shape:"kanbanSection",level:C.level,look:A.look};B.push(D);let F=XA.filter((U)=>U.parentId===C.id);for(let U of F){let z={id:U.id,parentId:C.id,label:C3(U.label??"",A),labelType:"markdown",isGroup:!1,ticket:U?.ticket,priority:U?.priority,assigned:U?.assigned,icon:U?.icon,shape:"kanbanItem",level:U.level,rx:5,ry:5,cssStyles:["text-align: left"]};B.push(z)}}return{nodes:B,edges:u,other:{},config:$0()}},"getData"),Nh4=X((u,B,E,A,C)=>{let D=$0(),F=D.mindmap?.padding??t4.mindmap.padding;switch(A){case C5.ROUNDED_RECT:case C5.RECT:case C5.HEXAGON:F*=2}let U={id:C3(B,D)||"kbn"+uF0++,level:u,label:C3(E,D),width:D.mindmap?.maxNodeWidth??t4.mindmap.maxNodeWidth,padding:F,isGroup:!1};if(C!==void 0){let k;if(!C.includes(`
`))k=`{
`+C+`
}`;else k=C+`
`;let f=gf(k,{schema:cf});if(f.shape&&(f.shape!==f.shape.toLowerCase()||f.shape.includes("_")))throw Error(`No such shape: ${f.shape}. Shape names should be lowercase.`);if(f?.shape&&f.shape==="kanbanItem")U.shape=f?.shape;if(f?.label)U.label=f?.label;if(f?.icon)U.icon=f?.icon.toString();if(f?.assigned)U.assigned=f?.assigned.toString();if(f?.ticket)U.ticket=f?.ticket.toString();if(f?.priority)U.priority=f?.priority}let z=Ph4(u);if(z)U.parentId=z.id||"kbn"+uF0++;else BF0.push(U);XA.push(U)},"addNode"),C5={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},ih4=X((u,B)=>{switch(z0.debug("In get type",u,B),u){case"[":return C5.RECT;case"(":return B===")"?C5.ROUNDED_RECT:C5.CLOUD;case"((":return C5.CIRCLE;case")":return C5.CLOUD;case"))":return C5.BANG;case"{{":return C5.HEXAGON;default:return C5.DEFAULT}},"getType"),ah4=X((u,B)=>{EF0[u]=B},"setElementForId"),Vh4=X((u)=>{if(!u)return;let B=$0(),E=XA[XA.length-1];if(u.icon)E.icon=C3(u.icon,B);if(u.class)E.cssClasses=C3(u.class,B)},"decorateNode"),hh4=X((u)=>{switch(u){case C5.DEFAULT:return"no-border";case C5.RECT:return"rect";case C5.ROUNDED_RECT:return"rounded-rect";case C5.CIRCLE:return"circle";case C5.CLOUD:return"cloud";case C5.BANG:return"bang";case C5.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),mh4=X(()=>z0,"getLogger"),rh4=X((u)=>EF0[u],"getElementById"),$h4={clear:Ih4,addNode:Nh4,getSections:F5u,getData:jh4,nodeType:C5,getType:ih4,setElementForId:ah4,decorateNode:Vh4,type2Str:hh4,getLogger:mh4,getElementById:rh4},yh4=$h4,ch4=X(async(u,B,E,A)=>{z0.debug(`Rendering kanban diagram
`+u);let D=A.db.getData(),F=$0();F.htmlLabels=!1;let U=N1(B);for(let w of D.nodes)w.domId=`${B}-${w.id}`;let z=U.append("g");z.attr("class","sections");let k=U.append("g");k.attr("class","items");let f=D.nodes.filter((w)=>w.isGroup),l=0,b=10,M=[],Z=25;for(let w of f){let K=F?.kanban?.sectionWidth||200;l=l+1,w.x=K*l+(l-1)*b/2,w.width=K,w.y=0,w.height=K*3,w.rx=5,w.ry=5,w.cssClasses=w.cssClasses+" section-"+l;let Q=await of(z,w);Z=Math.max(Z,Q?.labelBBox?.height),M.push(Q)}let J=0;for(let w of f){let K=M[J];J=J+1;let Q=F?.kanban?.sectionWidth||200,G=-Q*3/2+Z,L=G,H=D.nodes.filter((v)=>v.parentId===w.id);for(let v of H){if(v.isGroup)throw Error("Groups within groups are not allowed in Kanban diagrams");v.x=w.x,v.width=Q-1.5*b;let S=(await Pz(k,v,{config:F})).node().getBBox();v.y=L+S.height/2,await dZ(v),L=v.y+S.height/2+b/2}let q=K.cluster.select("rect"),x=Math.max(L-G+3*b,50)+(Z-25);q.attr("height",x)}zF(void 0,U,F.mindmap?.padding??t4.kanban.padding,F.mindmap?.useMaxWidth??t4.kanban.useMaxWidth)},"draw"),gh4={draw:ch4},_h4=X((u)=>{let B="";for(let A=0;A<u.THEME_COLOR_LIMIT;A++)if(u["lineColor"+A]=u["lineColor"+A]||u["cScaleInv"+A],_1(u["lineColor"+A]))u["lineColor"+A]=Ju(u["lineColor"+A],20);else u["lineColor"+A]=wu(u["lineColor"+A],20);let E=X((A,C)=>u.darkMode?wu(A,C):Ju(A,C),"adjuster");for(let A=0;A<u.THEME_COLOR_LIMIT;A++){let C=""+(17-3*A);B+=`
.section-${A-1} rect, .section-${A-1} path, .section-${A-1} circle, .section-${A-1} polygon, .section-${A-1} path {
fill: ${E(u["cScale"+A],10)};
stroke: ${E(u["cScale"+A],10)};
}
.section-${A-1} text {
fill: ${u["cScaleLabel"+A]};
}
.node-icon-${A-1} {
font-size: 40px;
color: ${u["cScaleLabel"+A]};
}
.section-edge-${A-1}{
stroke: ${u["cScale"+A]};
}
.edge-depth-${A-1}{
stroke-width: ${C};
}
.section-${A-1} line {
stroke: ${u["cScaleInv"+A]} ;
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: ${u.background};
stroke: ${u.nodeBorder};
stroke-width: 1px;
}
.kanban-ticket-link {
fill: ${u.background};
stroke: ${u.nodeBorder};
text-decoration: underline;
}
`}return B},"genSections"),nh4=X((u)=>`
.edge {
stroke-width: 3;
}
${_h4(u)}
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
fill: ${u.git0};
}
.section-root text {
fill: ${u.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.cluster-label, .label {
color: ${u.textColor};
fill: ${u.textColor};
}
.kanban-label {
dy: 1em;
alignment-baseline: middle;
text-anchor: middle;
dominant-baseline: middle;
text-align: center;
}
${gF()}
`,"getStyles"),ph4=nh4,dh4={db:yh4,renderer:gh4,parser:Oh4,styles:ph4}});function VR(u,B){let E;if(B===void 0){for(let A of u)if(A!=null&&(E<A||E===void 0&&A>=A))E=A}else{let A=-1;for(let C of u)if((C=B(C,++A,u))!=null&&(E<C||E===void 0&&C>=C))E=C}return E}function eL(u,B){let E;if(B===void 0){for(let A of u)if(A!=null&&(E>A||E===void 0&&A>=A))E=A}else{let A=-1;for(let C of u)if((C=B(C,++A,u))!=null&&(E>C||E===void 0&&C>=C))E=C}return E}function uq(u,B){let E=0;if(B===void 0){for(let A of u)if(A=+A)E+=A}else{let A=-1;for(let C of u)if(C=+B(C,++A,u))E+=C}return E}var AF0=()=>{};function sh4(u){return u.target.depth}function CF0(u){return u.depth}function DF0(u,B){return B-1-u.height}function hR(u,B){return u.sourceLinks.length?u.depth:B-1}function FF0(u){return u.targetLinks.length?u.depth:u.sourceLinks.length?eL(u.sourceLinks,sh4)-1:0}var UF0=g(()=>{AF0()});function Bq(u){return function(){return u}}function k5u(u,B){return _c(u.source,B.source)||u.index-B.index}function f5u(u,B){return _c(u.target,B.target)||u.index-B.index}function _c(u,B){return u.y0-B.y0}function zF0(u){return u.value}function oh4(u){return u.index}function th4(u){return u.nodes}function eh4(u){return u.links}function l5u(u,B){let E=u.get(B);if(!E)throw Error("missing: "+B);return E}function b5u({nodes:u}){for(let B of u){let E=B.y0,A=E;for(let C of B.sourceLinks)C.y0=E+C.width/2,E+=C.width;for(let C of B.targetLinks)C.y1=A+C.width/2,A+=C.width}}function nc(){let u=0,B=0,E=1,A=1,C=24,D=8,F,U=oh4,z=hR,k,f,l=th4,b=eh4,M=6;function Z(){let I={nodes:l.apply(null,arguments),links:b.apply(null,arguments)};return J(I),w(I),K(I),Q(I),H(I),b5u(I),I}Z.update=function(I){return b5u(I),I},Z.nodeId=function(I){return arguments.length?(U=typeof I==="function"?I:Bq(I),Z):U},Z.nodeAlign=function(I){return arguments.length?(z=typeof I==="function"?I:Bq(I),Z):z},Z.nodeSort=function(I){return arguments.length?(k=I,Z):k},Z.nodeWidth=function(I){return arguments.length?(C=+I,Z):C},Z.nodePadding=function(I){return arguments.length?(D=F=+I,Z):D},Z.nodes=function(I){return arguments.length?(l=typeof I==="function"?I:Bq(I),Z):l},Z.links=function(I){return arguments.length?(b=typeof I==="function"?I:Bq(I),Z):b},Z.linkSort=function(I){return arguments.length?(f=I,Z):f},Z.size=function(I){return arguments.length?(u=B=0,E=+I[0],A=+I[1],Z):[E-u,A-B]},Z.extent=function(I){return arguments.length?(u=+I[0][0],E=+I[1][0],B=+I[0][1],A=+I[1][1],Z):[[u,B],[E,A]]},Z.iterations=function(I){return arguments.length?(M=+I,Z):M};function J({nodes:I,links:O}){for(let[N,V]of I.entries())V.index=N,V.sourceLinks=[],V.targetLinks=[];let i=new Map(I.map((N,V)=>[U(N,V,I),N]));for(let[N,V]of O.entries()){V.index=N;let{source:h,target:r}=V;if(typeof h!=="object")h=V.source=l5u(i,h);if(typeof r!=="object")r=V.target=l5u(i,r);h.sourceLinks.push(V),r.targetLinks.push(V)}if(f!=null)for(let{sourceLinks:N,targetLinks:V}of I)N.sort(f),V.sort(f)}function w({nodes:I}){for(let O of I)O.value=O.fixedValue===void 0?Math.max(uq(O.sourceLinks,zF0),uq(O.targetLinks,zF0)):O.fixedValue}function K({nodes:I}){let O=I.length,i=new Set(I),N=new Set,V=0;while(i.size){for(let h of i){h.depth=V;for(let{target:r}of h.sourceLinks)N.add(r)}if(++V>O)throw Error("circular link");i=N,N=new Set}}function Q({nodes:I}){let O=I.length,i=new Set(I),N=new Set,V=0;while(i.size){for(let h of i){h.height=V;for(let{source:r}of h.targetLinks)N.add(r)}if(++V>O)throw Error("circular link");i=N,N=new Set}}function G({nodes:I}){let O=VR(I,(V)=>V.depth)+1,i=(E-u-C)/(O-1),N=Array(O);for(let V of I){let h=Math.max(0,Math.min(O-1,Math.floor(z.call(null,V,O))));if(V.layer=h,V.x0=u+h*i,V.x1=V.x0+C,N[h])N[h].push(V);else N[h]=[V]}if(k)for(let V of N)V.sort(k);return N}function L(I){let O=eL(I,(i)=>(A-B-(i.length-1)*F)/uq(i,zF0));for(let i of I){let N=B;for(let V of i){V.y0=N,V.y1=N+V.value*O,N=V.y1+F;for(let h of V.sourceLinks)h.width=h.value*O}N=(A-N+F)/(i.length+1);for(let V=0;V<i.length;++V){let h=i[V];h.y0+=N*(V+1),h.y1+=N*(V+1)}R(i)}}function H(I){let O=G(I);F=Math.min(D,(A-B)/(VR(O,(i)=>i.length)-1)),L(O);for(let i=0;i<M;++i){let N=Math.pow(0.99,i),V=Math.max(1-N,(i+1)/M);x(O,N,V),q(O,N,V)}}function q(I,O,i){for(let N=1,V=I.length;N<V;++N){let h=I[N];for(let r of h){let m=0,$=0;for(let{source:p,value:e}of r.targetLinks){let _=e*(r.layer-p.layer);m+=Y(p,r)*_,$+=_}if(!($>0))continue;let y=(m/$-r.y0)*O;r.y0+=y,r.y1+=y,T(r)}if(k===void 0)h.sort(_c);v(h,i)}}function x(I,O,i){for(let N=I.length,V=N-2;V>=0;--V){let h=I[V];for(let r of h){let m=0,$=0;for(let{target:p,value:e}of r.sourceLinks){let _=e*(p.layer-r.layer);m+=a(r,p)*_,$+=_}if(!($>0))continue;let y=(m/$-r.y0)*O;r.y0+=y,r.y1+=y,T(r)}if(k===void 0)h.sort(_c);v(h,i)}}function v(I,O){let i=I.length>>1,N=I[i];S(I,N.y0-F,i-1,O),W(I,N.y1+F,i+1,O),S(I,A,I.length-1,O),W(I,B,0,O)}function W(I,O,i,N){for(;i<I.length;++i){let V=I[i],h=(O-V.y0)*N;if(h>0.000001)V.y0+=h,V.y1+=h;O=V.y1+F}}function S(I,O,i,N){for(;i>=0;--i){let V=I[i],h=(V.y1-O)*N;if(h>0.000001)V.y0-=h,V.y1-=h;O=V.y0-F}}function T({sourceLinks:I,targetLinks:O}){if(f===void 0){for(let{source:{sourceLinks:i}}of O)i.sort(f5u);for(let{target:{targetLinks:i}}of I)i.sort(k5u)}}function R(I){if(f===void 0)for(let{sourceLinks:O,targetLinks:i}of I)O.sort(f5u),i.sort(k5u)}function Y(I,O){let i=I.y0-(I.sourceLinks.length-1)*F/2;for(let{target:N,width:V}of I.sourceLinks){if(N===O)break;i+=V+F}for(let{source:N,width:V}of O.targetLinks){if(N===I)break;i-=V}return i}function a(I,O){let i=O.y0-(O.targetLinks.length-1)*F/2;for(let{source:N,width:V}of O.targetLinks){if(N===I)break;i+=V+F}for(let{target:N,width:V}of I.sourceLinks){if(N===O)break;i-=V}return i}return Z}var M5u=g(()=>{AF0();UF0()});function lF0(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Z5u(){return new lF0}var kF0,fF0,mw=0.000001,um4,bF0;var J5u=g(()=>{kF0=Math.PI,fF0=2*kF0,um4=fF0-mw;lF0.prototype=Z5u.prototype={constructor:lF0,moveTo:function(u,B){this._+="M"+(this._x0=this._x1=+u)+","+(this._y0=this._y1=+B)},closePath:function(){if(this._x1!==null)this._x1=this._x0,this._y1=this._y0,this._+="Z"},lineTo:function(u,B){this._+="L"+(this._x1=+u)+","+(this._y1=+B)},quadraticCurveTo:function(u,B,E,A){this._+="Q"+ +u+","+ +B+","+(this._x1=+E)+","+(this._y1=+A)},bezierCurveTo:function(u,B,E,A,C,D){this._+="C"+ +u+","+ +B+","+ +E+","+ +A+","+(this._x1=+C)+","+(this._y1=+D)},arcTo:function(u,B,E,A,C){u=+u,B=+B,E=+E,A=+A,C=+C;var D=this._x1,F=this._y1,U=E-u,z=A-B,k=D-u,f=F-B,l=k*k+f*f;if(C<0)throw Error("negative radius: "+C);if(this._x1===null)this._+="M"+(this._x1=u)+","+(this._y1=B);else if(!(l>mw));else if(!(Math.abs(f*U-z*k)>mw)||!C)this._+="L"+(this._x1=u)+","+(this._y1=B);else{var b=E-D,M=A-F,Z=U*U+z*z,J=b*b+M*M,w=Math.sqrt(Z),K=Math.sqrt(l),Q=C*Math.tan((kF0-Math.acos((Z+l-J)/(2*w*K)))/2),G=Q/K,L=Q/w;if(Math.abs(G-1)>mw)this._+="L"+(u+G*k)+","+(B+G*f);this._+="A"+C+","+C+",0,0,"+ +(f*b>k*M)+","+(this._x1=u+L*U)+","+(this._y1=B+L*z)}},arc:function(u,B,E,A,C,D){u=+u,B=+B,E=+E,D=!!D;var F=E*Math.cos(A),U=E*Math.sin(A),z=u+F,k=B+U,f=1^D,l=D?A-C:C-A;if(E<0)throw Error("negative radius: "+E);if(this._x1===null)this._+="M"+z+","+k;else if(Math.abs(this._x1-z)>mw||Math.abs(this._y1-k)>mw)this._+="L"+z+","+k;if(!E)return;if(l<0)l=l%fF0+fF0;if(l>um4)this._+="A"+E+","+E+",0,1,"+f+","+(u-F)+","+(B-U)+"A"+E+","+E+",0,1,"+f+","+(this._x1=z)+","+(this._y1=k);else if(l>mw)this._+="A"+E+","+E+",0,"+ +(l>=kF0)+","+f+","+(this._x1=u+E*Math.cos(C))+","+(this._y1=B+E*Math.sin(C))},rect:function(u,B,E,A){this._+="M"+(this._x0=this._x1=+u)+","+(this._y0=this._y1=+B)+"h"+ +E+"v"+ +A+"h"+-E+"Z"},toString:function(){return this._}};bF0=Z5u});var w5u=g(()=>{J5u()});var K5u;var Q5u=g(()=>{K5u=Array.prototype.slice});function pc(u){return function(){return u}}function G5u(u){return u[0]}function H5u(u){return u[1]}function Bm4(u){return u.source}function Em4(u){return u.target}function Am4(u){var B=Bm4,E=Em4,A=G5u,C=H5u,D=null;function F(){var U,z=K5u.call(arguments),k=B.apply(this,z),f=E.apply(this,z);if(!D)D=U=bF0();if(u(D,+A.apply(this,(z[0]=k,z)),+C.apply(this,z),+A.apply(this,(z[0]=f,z)),+C.apply(this,z)),U)return D=null,U+""||null}return F.source=function(U){return arguments.length?(B=U,F):B},F.target=function(U){return arguments.length?(E=U,F):E},F.x=function(U){return arguments.length?(A=typeof U==="function"?U:pc(+U),F):A},F.y=function(U){return arguments.length?(C=typeof U==="function"?U:pc(+U),F):C},F.context=function(U){return arguments.length?(D=U==null?null:U,F):D},F}function Cm4(u,B,E,A,C){u.moveTo(B,E),u.bezierCurveTo(B=(B+A)/2,E,B,C,A,C)}function MF0(){return Am4(Cm4)}var L5u=g(()=>{w5u();Q5u()});var q5u=g(()=>{L5u()});function Dm4(u){return[u.source.x1,u.y0]}function Fm4(u){return[u.target.x0,u.y1]}function dc(){return MF0().source(Dm4).target(Fm4)}var X5u=g(()=>{q5u()});var x5u=g(()=>{M5u();UF0();X5u()});var S5u={};ju(S5u,{diagram:()=>xm4});var ZF0,sc,tc,ec,oc,Um4,zm4,km4,fm4,lm4,bm4,Mm4,Zm4,Jm4,v5u,wm4,Km4,Qm4,Gm4,Hm4,Lm4,qm4,Xm4,xm4;var W5u=g(()=>{s4();o4();Y4();i3();x5u();ZF0=function(){var u=X(function(U,z,k,f){for(k=k||{},f=U.length;f--;k[U[f]]=z);return k},"o"),B=[1,9],E=[1,10],A=[1,5,10,12],C={trace:X(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:X(function(z,k,f,l,b,M,Z){var J=M.length-1;switch(b){case 7:let w=l.findOrCreateNode(M[J-4].trim().replaceAll('""','"')),K=l.findOrCreateNode(M[J-2].trim().replaceAll('""','"')),Q=parseFloat(M[J].trim());l.addLink(w,K,Q);break;case 8:case 9:case 11:this.$=M[J];break;case 10:this.$=M[J-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:B,20:E},{1:[2,6],7:11,10:[1,12]},u(E,[2,4],{9:13,5:[1,14]}),{12:[1,15]},u(A,[2,8]),u(A,[2,9]),{19:[1,16]},u(A,[2,11]),{1:[2,1]},{1:[2,5]},u(E,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:B,20:E},{15:18,16:7,17:8,18:B,20:E},{18:[1,19]},u(E,[2,3]),{12:[1,20]},u(A,[2,10]),{15:21,16:7,17:8,18:B,20:E},u([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:X(function(z,k){if(k.recoverable)this.trace(z);else{var f=Error(z);throw f.hash=k,f}},"parseError"),parse:X(function(z){var k=this,f=[0],l=[],b=[null],M=[],Z=this.table,J="",w=0,K=0,Q=0,G=2,L=1,H=M.slice.call(arguments,1),q=Object.create(this.lexer),x={yy:{}};for(var v in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,v))x.yy[v]=this.yy[v];if(q.setInput(z,x.yy),x.yy.lexer=q,x.yy.parser=this,typeof q.yylloc>"u")q.yylloc={};var W=q.yylloc;M.push(W);var S=q.options&&q.options.ranges;if(typeof x.yy.parseError==="function")this.parseError=x.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function T(p){f.length=f.length-2*p,b.length=b.length-p,M.length=M.length-p}X(T,"popStack");function R(){var p=l.pop()||q.lex()||L;if(typeof p!=="number"){if(p instanceof Array)l=p,p=l.pop();p=k.symbols_[p]||p}return p}X(R,"lex");var Y,a,I,O,i,N,V={},h,r,m,$;while(!0){if(I=f[f.length-1],this.defaultActions[I])O=this.defaultActions[I];else{if(Y===null||typeof Y>"u")Y=R();O=Z[I]&&Z[I][Y]}if(typeof O>"u"||!O.length||!O[0]){var y="";$=[];for(h in Z[I])if(this.terminals_[h]&&h>G)$.push("'"+this.terminals_[h]+"'");if(q.showPosition)y="Parse error on line "+(w+1)+`:
`+q.showPosition()+`
Expecting `+$.join(", ")+", got '"+(this.terminals_[Y]||Y)+"'";else y="Parse error on line "+(w+1)+": Unexpected "+(Y==L?"end of input":"'"+(this.terminals_[Y]||Y)+"'");this.parseError(y,{text:q.match,token:this.terminals_[Y]||Y,line:q.yylineno,loc:W,expected:$})}if(O[0]instanceof Array&&O.length>1)throw Error("Parse Error: multiple actions possible at state: "+I+", token: "+Y);switch(O[0]){case 1:if(f.push(Y),b.push(q.yytext),M.push(q.yylloc),f.push(O[1]),Y=null,!a){if(K=q.yyleng,J=q.yytext,w=q.yylineno,W=q.yylloc,Q>0)Q--}else Y=a,a=null;break;case 2:if(r=this.productions_[O[1]][1],V.$=b[b.length-r],V._$={first_line:M[M.length-(r||1)].first_line,last_line:M[M.length-1].last_line,first_column:M[M.length-(r||1)].first_column,last_column:M[M.length-1].last_column},S)V._$.range=[M[M.length-(r||1)].range[0],M[M.length-1].range[1]];if(N=this.performAction.apply(V,[J,K,w,x.yy,O[1],b,M].concat(H)),typeof N<"u")return N;if(r)f=f.slice(0,-1*r*2),b=b.slice(0,-1*r),M=M.slice(0,-1*r);f.push(this.productions_[O[1]][0]),b.push(V.$),M.push(V._$),m=Z[f[f.length-2]][f[f.length-1]],f.push(m);break;case 3:return!0}}return!0},"parse")},D=function(){var U={EOF:1,parseError:X(function(k,f){if(this.yy.parser)this.yy.parser.parseError(k,f);else throw Error(k)},"parseError"),setInput:X(function(z,k){if(this.yy=k||this.yy||{},this._input=z,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:X(function(){var z=this._input[0];this.yytext+=z,this.yyleng++,this.offset++,this.match+=z,this.matched+=z;var k=z.match(/(?:\r\n?|\n).*/g);if(k)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),z},"input"),unput:X(function(z){var k=z.length,f=z.split(/(?:\r\n?|\n)/g);this._input=z+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-k),this.offset-=k;var l=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 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:f?(f.length===l.length?this.yylloc.first_column:0)+l[l.length-f.length].length-f[0].length:this.yylloc.first_column-k},this.options.ranges)this.yylloc.range=[b[0],b[0]+this.yyleng-k];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(z){this.unput(this.match.slice(z))},"less"),pastInput:X(function(){var z=this.matched.substr(0,this.matched.length-this.match.length);return(z.length>20?"...":"")+z.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var z=this.match;if(z.length<20)z+=this._input.substr(0,20-z.length);return(z.substr(0,20)+(z.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var z=this.pastInput(),k=Array(z.length+1).join("-");return z+this.upcomingInput()+`
`+k+"^"},"showPosition"),test_match:X(function(z,k){var f,l,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(l=z[0].match(/(?:\r\n?|\n).*/g),l)this.yylineno+=l.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:l?l[l.length-1].length-l[l.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+z[0].length},this.yytext+=z[0],this.match+=z[0],this.matches=z,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(z[0].length),this.matched+=z[0],f=this.performAction.call(this,this.yy,this,k,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(f)return f;else if(this._backtrack){for(var M in b)this[M]=b[M];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var z,k,f,l;if(!this._more)this.yytext="",this.match="";var b=this._currentRules();for(var M=0;M<b.length;M++)if(f=this._input.match(this.rules[b[M]]),f&&(!k||f[0].length>k[0].length)){if(k=f,l=M,this.options.backtrack_lexer)if(z=this.test_match(f,b[M]),z!==!1)return z;else if(this._backtrack){k=!1;continue}else return!1;else if(!this.options.flex)break}if(k){if(z=this.test_match(k,b[l]),z!==!1)return z;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:X(function(){var k=this.next();if(k)return k;else return this.lex()},"lex"),begin:X(function(k){this.conditionStack.push(k)},"begin"),popState:X(function(){var k=this.conditionStack.length-1;if(k>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(k){if(k=this.conditionStack.length-1-Math.abs(k||0),k>=0)return this.conditionStack[k];else return"INITIAL"},"topState"),pushState:X(function(k){this.begin(k)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(k,f,l,b){var M=b;switch(l){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 U}();C.lexer=D;function F(){this.yy={}}return X(F,"Parser"),F.prototype=C,C.Parser=F,new F}();ZF0.parser=ZF0;sc=ZF0,tc=[],ec=[],oc=new Map,Um4=X(()=>{tc=[],ec=[],oc=new Map,D3()},"clear"),zm4=class{constructor(u,B,E=0){this.source=u,this.target=B,this.value=E}static{X(this,"SankeyLink")}},km4=X((u,B,E)=>{tc.push(new zm4(u,B,E))},"addLink"),fm4=class{constructor(u){this.ID=u}static{X(this,"SankeyNode")}},lm4=X((u)=>{u=yu.sanitizeText(u,$0());let B=oc.get(u);if(B===void 0)B=new fm4(u),oc.set(u,B),ec.push(B);return B},"findOrCreateNode"),bm4=X(()=>ec,"getNodes"),Mm4=X(()=>tc,"getLinks"),Zm4=X(()=>({nodes:ec.map((u)=>({id:u.ID})),links:tc.map((u)=>({source:u.source.ID,target:u.target.ID,value:u.value}))}),"getGraph"),Jm4={nodesMap:oc,getConfig:X(()=>$0().sankey,"getConfig"),getNodes:bm4,getLinks:Mm4,getGraph:Zm4,addLink:km4,findOrCreateNode:lm4,getAccTitle:H3,setAccTitle:w3,getAccDescription:q3,setAccDescription:L3,getDiagramTitle:X3,setDiagramTitle:T3,clear:Um4},v5u=class u{static{X(this,"Uid")}static{this.count=0}static next(B){return new u(B+ ++u.count)}constructor(B){this.id=B,this.href=`#${B}`}toString(){return"url("+this.href+")"}},wm4={left:CF0,right:DF0,center:FF0,justify:hR},Km4=X((u)=>{let B=0,E=0;for(let A of u){let C=A.value??0;if(C>B)B=C,E=A.layer??0}return E},"findCentralNodeLayer"),Qm4=X(function(u,B,E,A){let{securityLevel:C,sankey:D}=$0(),F=xj.sankey,U;if(C==="sandbox")U=Ku("#i"+B);let z=C==="sandbox"?Ku(U.nodes()[0].contentDocument.body):Ku("body"),k=C==="sandbox"?z.select(`[id="${B}"]`):Ku(`[id="${B}"]`),f=D?.width??F.width,l=D?.height??F.width,b=D?.useMaxWidth??F.useMaxWidth,M=D?.nodeAlignment??F.nodeAlignment,Z=D?.prefix??F.prefix,J=D?.suffix??F.suffix,w=D?.showValues??F.showValues,K=D?.nodeWidth??F.nodeWidth??10,Q=D?.nodePadding??F.nodePadding??12,G=D?.labelStyle??F.labelStyle??"legacy",L=D?.nodeColors??{},H=A.db.getGraph(),q=wm4[M];nc().nodeId((N)=>N.id).nodeWidth(K).nodePadding(Q+(w?15:0)).nodeAlign(q).extent([[0,0],[f,l]])(H);let v=Km4(H.nodes),W=e8(Tu0),S=X((N)=>{return L[N]??W(N)},"getNodeColor");k.append("g").attr("class","nodes").selectAll(".node").data(H.nodes).join("g").attr("class","node").attr("id",(N)=>(N.uid=v5u.next("node-")).id).attr("transform",function(N){return"translate("+N.x0+","+N.y0+")"}).attr("x",(N)=>N.x0).attr("y",(N)=>N.y0).append("rect").attr("height",(N)=>{return N.y1-N.y0}).attr("width",(N)=>N.x1-N.x0).attr("fill",(N)=>S(N.id));let T=X(({id:N,value:V})=>{if(!w)return N;return`${N}
${Z}${Math.round(V*100)/100}${J}`},"getText"),R=X((N)=>{if(G==="outlined"){if((N.layer??0)<v)return{x:N.x0-6,anchor:"end"};return{x:N.x1+6,anchor:"start"}}if(N.x0<f/2)return{x:N.x1+6,anchor:"start"};return{x:N.x0-6,anchor:"end"}},"getLabelPosition"),Y=k.append("g").attr("class","node-labels").attr("font-size",14),a=X((N)=>Y.selectAll(N?`.${N}`:"text").data(H.nodes).join("text").attr("class",N??null).attr("x",(V)=>R(V).x).attr("y",(V)=>(V.y1+V.y0)/2).attr("dy",`${w?"0":"0.35"}em`).attr("text-anchor",(V)=>R(V).anchor).text(T),"appendLabel");if(G==="outlined")a("sankey-label-bg"),a("sankey-label-fg");else a();let I=k.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",0.5).selectAll(".link").data(H.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),O=D?.linkColor??"gradient";if(O==="gradient"){let N=I.append("linearGradient").attr("id",(V)=>(V.uid=v5u.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",(V)=>V.source.x1).attr("x2",(V)=>V.target.x0);N.append("stop").attr("offset","0%").attr("stop-color",(V)=>S(V.source.id)),N.append("stop").attr("offset","100%").attr("stop-color",(V)=>S(V.target.id))}let i;switch(O){case"gradient":i=X((N)=>N.uid,"coloring");break;case"source":i=X((N)=>S(N.source.id),"coloring");break;case"target":i=X((N)=>S(N.target.id),"coloring");break;default:i=O}I.append("path").attr("d",dc()).attr("stroke",i).attr("stroke-width",(N)=>Math.max(1,N.width)),zF(void 0,k,0,b)},"draw"),Gm4={draw:Qm4},Hm4=X((u)=>{return u.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
`).trim()},"prepareTextForParsing"),Lm4=X((u)=>`.label {
font-family: ${u.fontFamily};
}
.node-labels {
font-family: ${u.fontFamily};
}
/* Outlined label style - background stroke for better readability */
.sankey-label-bg {
stroke: ${u.mainBkg||u.background||"#fff"};
stroke-width: 4px;
stroke-linejoin: round;
paint-order: stroke;
}
/* Foreground label text */
.sankey-label-fg {
fill: ${u.textColor};
}
/* Node styling */
.node rect {
shape-rendering: crispEdges;
}
/* Link styling */
.link {
fill: none;
stroke-opacity: 0.5;
mix-blend-mode: multiply;
}
`,"getStyles"),qm4=Lm4,Xm4=sc.parse.bind(sc);sc.parse=(u)=>Xm4(Hm4(u));xm4={styles:qm4,parser:sc,db:Jm4,renderer:Gm4}});var T5u={};ju(T5u,{diagram:()=>jm4});var vm4,Y5u,Sm4=1e4,Wm4,Ym4,R5u,Rm4,Tm4,Om4,Im4,Pm4,jm4;var O5u=g(()=>{LB();E2();t3();s4();o4();Y4();l7();vm4=t4.packet,Y5u=class{constructor(){this.packet=[],this.setAccTitle=w3,this.getAccTitle=H3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,this.getAccDescription=q3,this.setAccDescription=L3}static{X(this,"PacketDB")}getConfig(){let u=B1({...vm4,...F4().packet});if(u.showBits)u.paddingY+=10;return u}getPacket(){return this.packet}pushWord(u){if(u.length>0)this.packet.push(u)}clear(){D3(),this.packet=[]}},Wm4=X((u,B)=>{D6(u,B);let E=-1,A=[],C=1,{bitsPerRow:D}=B.getConfig();for(let{start:F,end:U,bits:z,label:k}of u.blocks){if(F!==void 0&&U!==void 0&&U<F)throw Error(`Packet block ${F} - ${U} is invalid. End must be greater than start.`);if(F??=E+1,F!==E+1)throw Error(`Packet block ${F} - ${U??F} is not contiguous. It should start from ${E+1}.`);if(z===0)throw Error(`Packet block ${F} is invalid. Cannot have a zero bit field.`);U??=F+(z??1)-1,z??=U-F+1,E=U,z0.debug(`Packet block ${F} - ${E} with label ${k}`);while(A.length<=D+1&&B.getPacket().length<Sm4){let[f,l]=Ym4({start:F,end:U,bits:z,label:k},C,D);if(A.push(f),f.end+1===C*D)B.pushWord(A),A=[],C++;if(!l)break;({start:F,end:U,bits:z,label:k}=l)}}B.pushWord(A)},"populate"),Ym4=X((u,B,E)=>{if(u.start===void 0)throw Error("start should have been set during first phase");if(u.end===void 0)throw Error("end should have been set during first phase");if(u.start>u.end)throw Error(`Block start ${u.start} is greater than block end ${u.end}.`);if(u.end+1<=B*E)return[u,void 0];let A=B*E-1,C=B*E;return[{start:u.start,end:A,label:u.label,bits:A-u.start},{start:C,end:u.end,label:u.label,bits:u.end-C}]},"getNextFittingBlock"),R5u={parser:{yy:void 0},parse:X(async(u)=>{let B=await X9("packet",u),E=R5u.parser?.yy;if(!(E instanceof Y5u))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.");z0.debug(B),Wm4(B,E)},"parse")},Rm4=X((u,B,E,A)=>{let C=A.db,D=C.getConfig(),{rowHeight:F,paddingY:U,bitWidth:z,bitsPerRow:k}=D,f=C.getPacket(),l=C.getDiagramTitle(),b=F+U,M=b*(f.length+1)-(l?0:F),Z=z*k+2,J=N1(B);J.attr("viewBox",`0 0 ${Z} ${M}`),y3(J,M,Z,D.useMaxWidth);for(let[w,K]of f.entries())Tm4(J,K,w,D);J.append("text").text(l).attr("x",Z/2).attr("y",M-b/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),Tm4=X((u,B,E,{rowHeight:A,paddingX:C,paddingY:D,bitWidth:F,bitsPerRow:U,showBits:z})=>{let k=u.append("g"),f=E*(A+D)+D;for(let l of B){let b=l.start%U*F+1,M=(l.end-l.start+1)*F-C;if(k.append("rect").attr("x",b).attr("y",f).attr("width",M).attr("height",A).attr("class","packetBlock"),k.append("text").attr("x",b+M/2).attr("y",f+A/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(l.label),!z)continue;let Z=l.end===l.start,J=f-2;if(k.append("text").attr("x",b+(Z?M/2:0)).attr("y",J).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",Z?"middle":"start").text(l.start),!Z)k.append("text").attr("x",b+M).attr("y",J).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(l.end)}},"drawWord"),Om4={draw:Rm4},Im4={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},Pm4=X(({packet:u}={})=>{let B=B1(Im4,u);return`
.packetByte {
font-size: ${B.byteFontSize};
}
.packetByte.start {
fill: ${B.startByteColor};
}
.packetByte.end {
fill: ${B.endByteColor};
}
.packetLabel {
fill: ${B.labelColor};
font-size: ${B.labelFontSize};
}
.packetTitle {
fill: ${B.titleColor};
font-size: ${B.titleFontSize};
}
.packetBlock {
stroke: ${B.blockStrokeColor};
stroke-width: ${B.blockStrokeWidth};
fill: ${B.blockFillColor};
}
`},"styles"),jm4={parser:R5u,get db(){return new Y5u},renderer:Om4,styles:Pm4}});var V5u={};ju(V5u,{diagram:()=>ur4});function j5u(u,B,E,A,C,D,F){let U=B.length,z=Math.min(F.width,F.height)/2;E.forEach((k,f)=>{if(k.entries.length!==U)return;let l=k.entries.map((b,M)=>{let Z=2*Math.PI*M/U-Math.PI/2,J=N5u(b,A,C,z),w=J*Math.cos(Z),K=J*Math.sin(Z);return{x:w,y:K}});if(D==="circle")u.append("path").attr("d",i5u(l,F.curveTension)).attr("class",`radarCurve-${f}`);else if(D==="polygon")u.append("polygon").attr("points",l.map((b)=>`${b.x},${b.y}`).join(" ")).attr("class",`radarCurve-${f}`)})}function N5u(u,B,E,A){let C=Math.min(Math.max(u,B),E);return A*(C-B)/(E-B)}function i5u(u,B){let E=u.length,A=`M${u[0].x},${u[0].y}`;for(let C=0;C<E;C++){let D=u[(C-1+E)%E],F=u[C],U=u[(C+1)%E],z=u[(C+2)%E],k={x:F.x+(U.x-D.x)*B,y:F.y+(U.y-D.y)*B},f={x:U.x-(z.x-F.x)*B,y:U.y-(z.y-F.y)*B};A+=` C${k.x},${k.y} ${f.x},${f.y} ${U.x},${U.y}`}return`${A} Z`}function a5u(u,B,E,A){if(!E)return;let C=(A.width/2+A.marginRight)*3/4,D=-(A.height/2+A.marginTop)*3/4,F=20;B.forEach((U,z)=>{let k=u.append("g").attr("transform",`translate(${C}, ${D+z*F})`);k.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${z}`),k.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(U.label)})}var Eq,ug=32,I5u,fU,Nm4,im4,P5u,am4,Vm4,hm4,mm4,rm4,$m4,ym4,mR,cm4,gm4,_m4,nm4,pm4,dm4,sm4,om4,tm4,em4,ur4;var h5u=g(()=>{LB();E2();t3();s4();o4();Y4();l7();Eq={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},I5u={axes:[],curves:[],options:Eq},fU=structuredClone(I5u),Nm4=t4.radar,im4=X(()=>{return B1({...Nm4,...F4().radar})},"getConfig"),P5u=X(()=>fU.axes,"getAxes"),am4=X(()=>fU.curves,"getCurves"),Vm4=X(()=>fU.options,"getOptions"),hm4=X((u)=>{fU.axes=u.map((B)=>{return{name:B.name,label:B.label??B.name}})},"setAxes"),mm4=X((u)=>{fU.curves=u.map((B)=>{return{name:B.name,label:B.label??B.name,entries:rm4(B.entries)}})},"setCurves"),rm4=X((u)=>{if(u[0].axis==null)return u.map((E)=>E.value);let B=P5u();if(B.length===0)throw Error("Axes must be populated before curves for reference entries");return B.map((E)=>{let A=u.find((C)=>C.axis?.$refText===E.name);if(A===void 0)throw Error("Missing entry for axis "+E.label);return A.value})},"computeCurveEntries"),$m4=X((u)=>{let B=u.reduce((E,A)=>{return E[A.name]=A,E},{});if(fU.options={showLegend:B.showLegend?.value??Eq.showLegend,ticks:B.ticks?.value??Eq.ticks,max:B.max?.value??Eq.max,min:B.min?.value??Eq.min,graticule:B.graticule?.value??Eq.graticule},fU.options.ticks>ug)z0.warn(`Radar diagram ticks (${fU.options.ticks}) exceeds maximum allowed (${ug}). Using ${ug} instead.`),fU.options.ticks=ug},"setOptions"),ym4=X(()=>{D3(),fU=structuredClone(I5u)},"clear"),mR={getAxes:P5u,getCurves:am4,getOptions:Vm4,setAxes:hm4,setCurves:mm4,setOptions:$m4,getConfig:im4,clear:ym4,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,getAccDescription:q3,setAccDescription:L3},cm4=X((u)=>{D6(u,mR);let{axes:B,curves:E,options:A}=u;mR.setAxes(B),mR.setCurves(E),mR.setOptions(A)},"populate"),gm4={parse:X(async(u)=>{let B=await X9("radar",u);z0.debug(B),cm4(B)},"parse")},_m4=X((u,B,E,A)=>{let C=A.db,D=C.getAxes(),F=C.getCurves(),U=C.getOptions(),z=C.getConfig(),k=C.getDiagramTitle(),f=N1(B),l=nm4(f,z),b=U.max??Math.max(...F.map((J)=>Math.max(...J.entries))),M=U.min,Z=Math.min(z.width,z.height)/2;pm4(l,D,Z,U.ticks,U.graticule),dm4(l,D,Z,z),j5u(l,D,F,M,b,U.graticule,z),a5u(l,F,U.showLegend,z),l.append("text").attr("class","radarTitle").text(k).attr("x",0).attr("y",-z.height/2-z.marginTop)},"draw"),nm4=X((u,B)=>{let E=B.width+B.marginLeft+B.marginRight,A=B.height+B.marginTop+B.marginBottom,C={x:B.marginLeft+B.width/2,y:B.marginTop+B.height/2};return y3(u,A,E,B.useMaxWidth??!0),u.attr("viewBox",`0 0 ${E} ${A}`).attr("overflow","visible"),u.append("g").attr("transform",`translate(${C.x}, ${C.y})`)},"drawFrame"),pm4=X((u,B,E,A,C)=>{if(C==="circle")for(let D=0;D<A;D++){let F=E*(D+1)/A;u.append("circle").attr("r",F).attr("class","radarGraticule")}else if(C==="polygon"){let D=B.length;for(let F=0;F<A;F++){let U=E*(F+1)/A,z=B.map((k,f)=>{let l=2*f*Math.PI/D-Math.PI/2,b=U*Math.cos(l),M=U*Math.sin(l);return`${b},${M}`}).join(" ");u.append("polygon").attr("points",z).attr("class","radarGraticule")}}},"drawGraticule"),dm4=X((u,B,E,A)=>{let C=B.length;for(let D=0;D<C;D++){let F=B[D].label,U=2*D*Math.PI/C-Math.PI/2,z=Math.cos(U),k=Math.sin(U);u.append("line").attr("x1",0).attr("y1",0).attr("x2",E*A.axisScaleFactor*z).attr("y2",E*A.axisScaleFactor*k).attr("class","radarAxisLine");let f=z>0.01?"start":z<-0.01?"end":"middle",l=k>0.01?"hanging":k<-0.01?"auto":"central",b=4;u.append("text").text(F).attr("x",E*A.axisLabelFactor*z+b*z).attr("y",E*A.axisLabelFactor*k+b*k).attr("text-anchor",f).attr("dominant-baseline",l).attr("class","radarAxisLabel")}},"drawAxes");X(j5u,"drawCurves");X(N5u,"relativeRadius");X(i5u,"closedRoundCurve");X(a5u,"drawLegend");sm4={draw:_m4},om4=X((u,B)=>{let E="";for(let A=0;A<u.THEME_COLOR_LIMIT;A++){let C=u[`cScale${A}`];E+=`
.radarCurve-${A} {
color: ${C};
fill: ${C};
fill-opacity: ${B.curveOpacity};
stroke: ${C};
stroke-width: ${B.curveStrokeWidth};
}
.radarLegendBox-${A} {
fill: ${C};
fill-opacity: ${B.curveOpacity};
stroke: ${C};
}
`}return E},"genIndexStyles"),tm4=X((u)=>{let B=S7(),E=F4(),A=B1(B,E.themeVariables),C=B1(A.radar,u);return{themeVariables:A,radarOptions:C}},"buildRadarStyleOptions"),em4=X(({radar:u}={})=>{let{themeVariables:B,radarOptions:E}=tm4(u);return`
.radarTitle {
font-size: ${B.fontSize};
color: ${B.titleColor};
dominant-baseline: hanging;
text-anchor: middle;
}
.radarAxisLine {
stroke: ${E.axisColor};
stroke-width: ${E.axisStrokeWidth};
}
.radarAxisLabel {
font-size: ${E.axisLabelFontSize}px;
color: ${E.axisColor};
}
.radarGraticule {
fill: ${E.graticuleColor};
fill-opacity: ${E.graticuleOpacity};
stroke: ${E.graticuleColor};
stroke-width: ${E.graticuleStrokeWidth};
}
.radarLegendText {
text-anchor: start;
font-size: ${E.legendFontSize}px;
dominant-baseline: hanging;
}
${om4(B,E)}
`},"styles"),ur4={parser:gm4,db:mR,renderer:sm4,styles:em4}});var w7u={};ju(w7u,{diagram:()=>S$4});function o5u(u){switch(z0.debug("typeStr2Type",u),u){case"[]":return"square";case"()":return z0.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 t5u(u){switch(z0.debug("typeStr2Type",u),u){case"==":return"thick";default:return"normal"}}function e5u(u){switch(u.trim().slice(-1)){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}function u7u(u){switch(u.trim().charAt(0)){case"x":return"arrow_cross";case"o":return"arrow_circle";case"<":return"arrow_point";default:return"arrow_open"}}function B7u(u){return u.includes("==")?"thick":"normal"}function E7u(u){if(u.includes(".-"))return"dotted";return"solid"}function QF0(u,B){if(u===0||!Number.isInteger(u))throw Error("Columns must be an integer !== 0.");if(B<0||!Number.isInteger(B))throw Error("Position must be a non-negative integer."+B);if(u<0)return{px:B,py:0};if(u===1)return{px:0,py:B};let E=B%u,A=Math.floor(B/u);return{px:E,py:A}}function Ag(u,B,E=0,A=0,C=8){if(z0.debug("setBlockSizes abc95 (start)",u.id,u?.size?.x,"block width =",u?.size,"siblingWidth",E),!u?.size?.width)u.size={width:E,height:A,x:0,y:0};let D=0,F=0;if(u.children?.length>0){for(let Z of u.children)Ag(Z,B,0,0,C);let U=ir4(u);D=U.width,F=U.height,z0.debug("setBlockSizes abc95 maxWidth of",u.id,":s children is ",D,F);for(let Z of u.children)if(Z.size)z0.debug(`abc95 Setting size of children of ${u.id} id=${Z.id} ${D} ${F} ${JSON.stringify(Z.size)}`),Z.size.width=D*(Z.widthInColumns??1)+C*((Z.widthInColumns??1)-1),Z.size.height=F,Z.size.x=0,Z.size.y=0,z0.debug(`abc95 updating size of ${u.id} children child:${Z.id} maxWidth:${D} maxHeight:${F}`);for(let Z of u.children)Ag(Z,B,D,F,C);let z=u.columns??-1,k=0;for(let Z of u.children)k+=Z.widthInColumns??1;let f=u.children.length;if(z>0&&z<k)f=z;let l=Math.ceil(k/f),b=f*(D+C)+C,M=l*(F+C)+C;if(b<E){z0.debug(`Detected to small sibling: abc95 ${u.id} siblingWidth ${E} siblingHeight ${A} width ${b}`),b=E,M=A;let Z=(E-f*C-C)/f,J=(A-l*C-C)/l;z0.debug("Size indata abc88",u.id,"childWidth",Z,"maxWidth",D),z0.debug("Size indata abc88",u.id,"childHeight",J,"maxHeight",F),z0.debug("Size indata abc88 xSize",f,"padding",C);for(let w of u.children)if(w.size)w.size.width=Z,w.size.height=J,w.size.x=0,w.size.y=0}if(z0.debug(`abc95 (finale calc) ${u.id} xSize ${f} ySize ${l} columns ${z}${u.children.length} width=${Math.max(b,u.size?.width||0)}`),b<(u?.size?.width||0)){b=u?.size?.width||0;let Z=z>0?Math.min(u.children.length,z):u.children.length;if(Z>0){let J=(b-Z*C-C)/Z;z0.debug("abc95 (growing to fit) width",u.id,b,u.size?.width,J);for(let w of u.children)if(w.size)w.size.width=J}}u.size={width:b,height:M,x:0,y:0}}z0.debug("setBlockSizes abc94 (done)",u.id,u?.size?.x,u?.size?.width,u?.size?.y,u?.size?.height)}function xF0(u,B,E=8){z0.debug(`abc85 layout blocks (=>layoutBlocks) ${u.id} x: ${u?.size?.x} y: ${u?.size?.y} width: ${u?.size?.width}`);let A=u.columns??-1;if(z0.debug("layoutBlocks columns abc95",u.id,"=>",A,u),u.children&&u.children.length>0){let C=u?.children[0]?.size?.width??0,D=u.children.length*C+(u.children.length-1)*E;z0.debug("widthOfChildren 88",D,"posX");let F=new Map;{let l=0;for(let b of u.children){if(!b.size)continue;let{py:M}=QF0(A,l),Z=F.get(M)??0;if(b.size.height>Z)F.set(M,b.size.height);let J=b?.widthInColumns??1;if(A>0)J=Math.min(J,A-l%A);l+=J}}let U=new Map;{let l=0,b=[...F.keys()].sort((M,Z)=>M-Z);for(let M of b)U.set(M,l),l+=(F.get(M)??0)+E}let z=0;z0.debug("abc91 block?.size?.x",u.id,u?.size?.x);let k=u?.size?.x?u?.size?.x+(-u?.size?.width/2||0):-E,f=0;for(let l of u.children){let b=u;if(!l.size)continue;let{width:M,height:Z}=l.size,{px:J,py:w}=QF0(A,z);if(w!=f)f=w,k=u?.size?.x?u?.size?.x+(-u?.size?.width/2||0):-E,z0.debug("New row in layout for block",u.id," and child ",l.id,f);if(z0.debug(`abc89 layout blocks (child) id: ${l.id} Pos: ${z} (px, py) ${J},${w} (${b?.size?.x},${b?.size?.y}) parent: ${b.id} width: ${M}${E}`),b.size){let Q=M/2;l.size.x=k+E+Q,z0.debug(`abc91 layout blocks (calc) px, pyid:${l.id} startingPos=X${k} new startingPosX${l.size.x} ${Q} padding=${E} width=${M} halfWidth=${Q} => x:${l.size.x} y:${l.size.y} ${l.widthInColumns} (width * (child?.w || 1)) / 2 ${M*(l?.widthInColumns??1)/2}`),k=l.size.x+Q;let G=U.get(w)??0,L=F.get(w)??Z;l.size.y=b.size.y-b.size.height/2+G+L/2+E,z0.debug(`abc88 layout blocks (calc) px, pyid:${l.id}startingPosX${k}${E}${Q}=>x:${l.size.x}y:${l.size.y}${l.widthInColumns}(width * (child?.w || 1)) / 2${M*(l?.widthInColumns??1)/2}`)}if(l.children)xF0(l,B,E);let K=l?.widthInColumns??1;if(A>0)K=Math.min(K,A-z%A);z+=K,z0.debug("abc88 columnsPos",l,z)}}z0.debug(`layout blocks (<==layoutBlocks) ${u.id} x: ${u?.size?.x} y: ${u?.size?.y} width: ${u?.size?.width}`)}function vF0(u,{minX:B,minY:E,maxX:A,maxY:C}={minX:0,minY:0,maxX:0,maxY:0}){if(u.size&&u.id!=="root"){let{x:D,y:F,width:U,height:z}=u.size;if(D-U/2<B)B=D-U/2;if(F-z/2<E)E=F-z/2;if(D+U/2>A)A=D+U/2;if(F+z/2>C)C=F+z/2}if(u.children)for(let D of u.children)({minX:B,minY:E,maxX:A,maxY:C}=vF0(D,{minX:B,minY:E,maxX:A,maxY:C}));return{minX:B,minY:E,maxX:A,maxY:C}}function A7u(u){let B=u.getBlock("root");if(!B)return;let E=$0()?.block?.padding??8;Ag(B,u,0,0,E),xF0(B,u,E),z0.debug("getBlocks",JSON.stringify(B,null,2));let{minX:A,minY:C,maxX:D,maxY:F}=vF0(B),U=F-C,z=D-A;return{x:A,y:C,width:z,height:U}}function rR(u,B){if(w1($0())&&u)u.style.width=B.length*9+"px",u.style.height="12px"}function C7u(u,B){return u.intersect(B)}function D7u(u,B,E,A){var{x:C,y:D}=u,F=C-A.x,U=D-A.y,z=Math.sqrt(B*B*U*U+E*E*F*F),k=Math.abs(B*E*F/z);if(A.x<C)k=-k;var f=Math.abs(B*E*U/z);if(A.y<D)f=-f;return{x:C+k,y:D+f}}function U7u(u,B,E){return F7u(u,B,B,E)}function z7u(u,B,E,A){var C,D,F,U,z,k,f,l,b,M,Z,J,w,K,Q;if(C=B.y-u.y,F=u.x-B.x,z=B.x*u.y-u.x*B.y,b=C*E.x+F*E.y+z,M=C*A.x+F*A.y+z,b!==0&&M!==0&&HF0(b,M))return;if(D=A.y-E.y,U=E.x-A.x,k=A.x*E.y-E.x*A.y,f=D*u.x+U*u.y+k,l=D*B.x+U*B.y+k,f!==0&&l!==0&&HF0(f,l))return;if(Z=C*U-D*F,Z===0)return;return J=Math.abs(Z/2),w=F*k-U*z,K=w<0?(w-J)/Z:(w+J)/Z,w=D*z-C*k,Q=w<0?(w-J)/Z:(w+J)/Z,{x:K,y:Q}}function HF0(u,B){return u*B>0}function k7u(u,B,E){var{x:A,y:C}=u,D=[],F=Number.POSITIVE_INFINITY,U=Number.POSITIVE_INFINITY;if(typeof B.forEach==="function")B.forEach(function(Z){F=Math.min(F,Z.x),U=Math.min(U,Z.y)});else F=Math.min(F,B.x),U=Math.min(U,B.y);var z=A-u.width/2-F,k=C-u.height/2-U;for(var f=0;f<B.length;f++){var l=B[f],b=B[f<B.length-1?f+1:0],M=dr4(u,E,{x:z+l.x,y:k+l.y},{x:z+b.x,y:k+b.y});if(M)D.push(M)}if(!D.length)return u;if(D.length>1)D.sort(function(Z,J){var w=Z.x-E.x,K=Z.y-E.y,Q=Math.sqrt(w*w+K*K),G=J.x-E.x,L=J.y-E.y,H=Math.sqrt(G*G+L*L);return Q<H?-1:Q===H?0:1});return D[0]}function pC(u,B,E,A){return u.insert("polygon",":first-child").attr("points",A.map(function(C){return C.x+","+C.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-B/2+","+E/2+")")}function Cg(u,B,E,A){let C=[],D=X((U)=>{C.push(U,0)},"addBorder"),F=X((U)=>{C.push(0,U)},"skipBorder");if(B.includes("t"))z0.debug("add top border"),D(E);else F(E);if(B.includes("r"))z0.debug("add right border"),D(A);else F(A);if(B.includes("b"))z0.debug("add bottom border"),D(E);else F(E);if(B.includes("l"))z0.debug("add left border"),D(A);else F(A);u.attr("stroke-dasharray",C.join(" "))}function SF0(u,B,E=!1){let A=u,C="default";if((A?.classes?.length||0)>0)C=(A?.classes??[]).join(" ");C=C+" flowchart-label";let D=0,F="",U;switch(A.type){case"round":D=5,F="rect";break;case"composite":D=0,F="composite",U=0;break;case"square":F="rect";break;case"diamond":F="question";break;case"hexagon":F="hexagon";break;case"block_arrow":F="block_arrow";break;case"odd":F="rect_left_inv_arrow";break;case"lean_right":F="lean_right";break;case"lean_left":F="lean_left";break;case"trapezoid":F="trapezoid";break;case"inv_trapezoid":F="inv_trapezoid";break;case"rect_left_inv_arrow":F="rect_left_inv_arrow";break;case"circle":F="circle";break;case"ellipse":F="ellipse";break;case"stadium":F="stadium";break;case"subroutine":F="subroutine";break;case"cylinder":F="cylinder";break;case"group":F="rect";break;case"doublecircle":F="doublecircle";break;default:F="rect"}let z=Yi(A?.styles??[]),k=A.label,f=A.size??{width:0,height:0,x:0,y:0},l=B.getDiagramId();return{labelStyle:z.labelStyle,shape:F,labelText:k,rx:D,ry:D,class:C,style:z.style,id:A.id,domId:l?`${l}-${A.id}`:A.id,directions:A.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:E,intersect:void 0,type:A.type,padding:U??F4()?.block?.padding??0,widthInColumns:A.widthInColumns??1}}async function l7u(u,B,E){let A=SF0(B,E,!1);if(A.type==="group")return;let C=F4(),D=await f7u(u,A,{config:C}),F=D.node().getBBox(),U=E.getBlock(A.id);U.size={width:F.width,height:F.height,x:0,y:0,node:D},E.setBlock(U),D.remove()}async function b7u(u,B,E){let A=SF0(B,E,!0);if(E.getBlock(A.id).type!=="space"){let D=F4();await f7u(u,A,{config:D}),B.intersect=A?.intersect,q$4(A)}}async function Dg(u,B,E,A){for(let C of B)if(await A(u,C,E),C.children)await Dg(u,C.children,E,A)}async function M7u(u,B,E){await Dg(u,B,E,l7u)}async function Z7u(u,B,E){await Dg(u,B,E,b7u)}async function J7u(u,B,E,A,C){let D=new V1({multigraph:!0,compound:!0});D.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let F of E)if(F.size)D.setNode(F.id,{width:F.size.width,height:F.size.height,intersect:F.intersect});for(let F of B)if(F.start&&F.end){let U=A.getBlock(F.start),z=A.getBlock(F.end);if(U?.size&&z?.size){let k=U.size,f=z.size,l=[{x:k.x,y:k.y},{x:k.x+(f.x-k.x)/2,y:k.y+(f.y-k.y)/2},{x:f.x,y:f.y}],b=C?`${C}-${F.id}`:F.id,M=F.thickness==="thick"?"edge-thickness-thick":"edge-thickness-normal",Z=F.pattern==="dotted"?"edge-pattern-dotted":"edge-pattern-solid",J=`${M} ${Z} flowchart-link LS-a1 LE-b1`;if(cr4(u,{v:F.start,w:F.end,name:b},{...F,id:b,arrowTypeEnd:F.arrowTypeEnd,arrowTypeStart:F.arrowTypeStart,points:l,classes:J},void 0,"block",D,C),F.label)await mr4(u,{...F,label:F.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:F.arrowTypeEnd,arrowTypeStart:F.arrowTypeStart,points:l,classes:J}),rr4({...F,x:l[1].x,y:l[1].y},{originalPath:l})}}}var wF0,Br4,nC,LF0,KF0,m5u="color",r5u="fill",Er4="bgFill",d5u=",",Eg,qF0="",Ar4,Cr4,Dr4,Fr4,s5u,XF0,$R,Ur4,$5u=0,zr4,kr4,fr4,lr4,br4,Mr4,Zr4,Jr4,wr4,Kr4,Qr4,Gr4,Hr4,Lr4,JF0,qr4,Xr4,xr4,vr4,Sr4,Wr4,Yr4,Rr4,Tr4,Or4,Ir4,Pr4,jr4,Nr4,ir4,ar4,_C,Vr4,hr4,y5u,GF0,a7,mr4,rr4,$r4,yr4,c5u,cr4,gr4,_r4,nr4,F7u,pr4,dr4,sr4,or4,tr4,U9,N5,c9,er4,u$4,g5u,XE,_5u,B$4,E$4,A$4,C$4,D$4,F$4,U$4,z$4,k$4,f$4,l$4,b$4,M$4,Z$4,J$4,w$4,K$4,Q$4,G$4,n5u,H$4,L$4,p5u,Bg,f7u,q$4,X$4,x$4,v$4,S$4;var K7u=g(()=>{_F();bB();e5();d2();q2();t3();s4();o4();Y4();xi();K2();i3();kE();i3();i3();i3();wF0=function(){var u=X(function(G,L,H,q){for(H=H||{},q=G.length;q--;H[G[q]]=L);return H},"o"),B=[1,15],E=[1,7],A=[1,13],C=[1,14],D=[1,19],F=[1,16],U=[1,17],z=[1,18],k=[8,30],f=[8,10,21,28,29,30,31,39,43,46],l=[1,23],b=[1,24],M=[8,10,15,16,21,28,29,30,31,39,43,46],Z=[8,10,15,16,21,27,28,29,30,31,39,43,46],J=[1,49],w={trace:X(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:X(function(L,H,q,x,v,W,S){var T=W.length-1;switch(v){case 4:x.getLogger().debug("Rule: separator (NL) ");break;case 5:x.getLogger().debug("Rule: separator (Space) ");break;case 6:x.getLogger().debug("Rule: separator (EOF) ");break;case 7:x.getLogger().debug("Rule: hierarchy: ",W[T-1]),x.setHierarchy(W[T-1]);break;case 8:x.getLogger().debug("Stop NL ");break;case 9:x.getLogger().debug("Stop EOF ");break;case 10:x.getLogger().debug("Stop NL2 ");break;case 11:x.getLogger().debug("Stop EOF2 ");break;case 12:x.getLogger().debug("Rule: statement: ",W[T]),typeof W[T].length==="number"?this.$=W[T]:this.$=[W[T]];break;case 13:x.getLogger().debug("Rule: statement #2: ",W[T-1]),this.$=[W[T-1]].concat(W[T]);break;case 14:x.getLogger().debug("Rule: link: ",W[T],L),this.$={edgeTypeStr:W[T],label:""};break;case 15:x.getLogger().debug("Rule: LABEL link: ",W[T-3],W[T-1],W[T]),this.$={edgeTypeStr:W[T],label:W[T-1]};break;case 18:let R=parseInt(W[T]),Y=x.generateId();this.$={id:Y,type:"space",label:"",width:R,children:[]};break;case 23:x.getLogger().debug("Rule: (nodeStatement link node) ",W[T-2],W[T-1],W[T]," typestr: ",W[T-1].edgeTypeStr);let a=x.edgeStrToEdgeData(W[T-1].edgeTypeStr),I=x.edgeStrToEdgeStartData(W[T-1].edgeTypeStr),O=x.edgeStrToThickness(W[T-1].edgeTypeStr),i=x.edgeStrToPattern(W[T-1].edgeTypeStr);this.$=[{id:W[T-2].id,label:W[T-2].label,type:W[T-2].type,directions:W[T-2].directions},{id:W[T-2].id+"-"+W[T].id,start:W[T-2].id,end:W[T].id,label:W[T-1].label,type:"edge",thickness:O,pattern:i,directions:W[T].directions,arrowTypeEnd:a,arrowTypeStart:I},{id:W[T].id,label:W[T].label,type:x.typeStr2Type(W[T].typeStr),directions:W[T].directions}];break;case 24:x.getLogger().debug("Rule: nodeStatement (abc88 node size) ",W[T-1],W[T]),this.$={id:W[T-1].id,label:W[T-1].label,type:x.typeStr2Type(W[T-1].typeStr),directions:W[T-1].directions,widthInColumns:parseInt(W[T],10)};break;case 25:x.getLogger().debug("Rule: nodeStatement (node) ",W[T]),this.$={id:W[T].id,label:W[T].label,type:x.typeStr2Type(W[T].typeStr),directions:W[T].directions,widthInColumns:1};break;case 26:x.getLogger().debug("APA123",this?this:"na"),x.getLogger().debug("COLUMNS: ",W[T]),this.$={type:"column-setting",columns:W[T]==="auto"?-1:parseInt(W[T])};break;case 27:x.getLogger().debug("Rule: id-block statement : ",W[T-2],W[T-1]);let N=x.generateId();this.$={...W[T-2],type:"composite",children:W[T-1]};break;case 28:x.getLogger().debug("Rule: blockStatement : ",W[T-2],W[T-1],W[T]);let V=x.generateId();this.$={id:V,type:"composite",label:"",children:W[T-1]};break;case 29:x.getLogger().debug("Rule: node (NODE_ID separator): ",W[T]),this.$={id:W[T]};break;case 30:x.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",W[T-1],W[T]),this.$={id:W[T-1],label:W[T].label,typeStr:W[T].typeStr,directions:W[T].directions};break;case 31:x.getLogger().debug("Rule: dirList: ",W[T]),this.$=[W[T]];break;case 32:x.getLogger().debug("Rule: dirList: ",W[T-1],W[T]),this.$=[W[T-1]].concat(W[T]);break;case 33:x.getLogger().debug("Rule: nodeShapeNLabel: ",W[T-2],W[T-1],W[T]),this.$={typeStr:W[T-2]+W[T],label:W[T-1]};break;case 34:x.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",W[T-3],W[T-2]," #3:",W[T-1],W[T]),this.$={typeStr:W[T-3]+W[T],label:W[T-2],directions:W[T-1]};break;case 35:case 36:this.$={type:"classDef",id:W[T-1].trim(),css:W[T].trim()};break;case 37:this.$={type:"applyClass",id:W[T-1].trim(),styleClass:W[T].trim()};break;case 38:this.$={type:"applyStyles",id:W[T-1].trim(),stylesStr:W[T].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:B,11:3,13:4,19:5,20:6,21:E,22:8,23:9,24:10,25:11,26:12,28:A,29:C,31:D,39:F,43:U,46:z},{8:[1,20]},u(k,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:B,21:E,28:A,29:C,31:D,39:F,43:U,46:z}),u(f,[2,16],{14:22,15:l,16:b}),u(f,[2,17]),u(f,[2,18]),u(f,[2,19]),u(f,[2,20]),u(f,[2,21]),u(f,[2,22]),u(M,[2,25],{27:[1,25]}),u(f,[2,26]),{19:26,26:12,31:D},{10:B,11:27,13:4,19:5,20:6,21:E,22:8,23:9,24:10,25:11,26:12,28:A,29:C,31:D,39:F,43:U,46:z},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},u(Z,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},u(k,[2,13]),{26:35,31:D},{31:[2,14]},{17:[1,36]},u(M,[2,24]),{10:B,11:37,13:4,14:22,15:l,16:b,19:5,20:6,21:E,22:8,23:9,24:10,25:11,26:12,28:A,29:C,31:D,39:F,43:U,46:z},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},u(Z,[2,30]),{18:[1,43]},{18:[1,44]},u(M,[2,23]),{18:[1,45]},{30:[1,46]},u(f,[2,28]),u(f,[2,35]),u(f,[2,36]),u(f,[2,37]),u(f,[2,38]),{36:[1,47]},{33:48,34:J},{15:[1,50]},u(f,[2,27]),u(Z,[2,33]),{38:[1,51]},{33:52,34:J,38:[2,31]},{31:[2,15]},u(Z,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:X(function(L,H){if(H.recoverable)this.trace(L);else{var q=Error(L);throw q.hash=H,q}},"parseError"),parse:X(function(L){var H=this,q=[0],x=[],v=[null],W=[],S=this.table,T="",R=0,Y=0,a=0,I=2,O=1,i=W.slice.call(arguments,1),N=Object.create(this.lexer),V={yy:{}};for(var h in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,h))V.yy[h]=this.yy[h];if(N.setInput(L,V.yy),V.yy.lexer=N,V.yy.parser=this,typeof N.yylloc>"u")N.yylloc={};var r=N.yylloc;W.push(r);var m=N.options&&N.options.ranges;if(typeof V.yy.parseError==="function")this.parseError=V.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function $(_0){q.length=q.length-2*_0,v.length=v.length-_0,W.length=W.length-_0}X($,"popStack");function y(){var _0=x.pop()||N.lex()||O;if(typeof _0!=="number"){if(_0 instanceof Array)x=_0,_0=x.pop();_0=H.symbols_[_0]||_0}return _0}X(y,"lex");var p,e,_,b0,B0,k0,f0={},D0,P0,q0,m0;while(!0){if(_=q[q.length-1],this.defaultActions[_])b0=this.defaultActions[_];else{if(p===null||typeof p>"u")p=y();b0=S[_]&&S[_][p]}if(typeof b0>"u"||!b0.length||!b0[0]){var a0="";m0=[];for(D0 in S[_])if(this.terminals_[D0]&&D0>I)m0.push("'"+this.terminals_[D0]+"'");if(N.showPosition)a0="Parse error on line "+(R+1)+`:
`+N.showPosition()+`
Expecting `+m0.join(", ")+", got '"+(this.terminals_[p]||p)+"'";else a0="Parse error on line "+(R+1)+": Unexpected "+(p==O?"end of input":"'"+(this.terminals_[p]||p)+"'");this.parseError(a0,{text:N.match,token:this.terminals_[p]||p,line:N.yylineno,loc:r,expected:m0})}if(b0[0]instanceof Array&&b0.length>1)throw Error("Parse Error: multiple actions possible at state: "+_+", token: "+p);switch(b0[0]){case 1:if(q.push(p),v.push(N.yytext),W.push(N.yylloc),q.push(b0[1]),p=null,!e){if(Y=N.yyleng,T=N.yytext,R=N.yylineno,r=N.yylloc,a>0)a--}else p=e,e=null;break;case 2:if(P0=this.productions_[b0[1]][1],f0.$=v[v.length-P0],f0._$={first_line:W[W.length-(P0||1)].first_line,last_line:W[W.length-1].last_line,first_column:W[W.length-(P0||1)].first_column,last_column:W[W.length-1].last_column},m)f0._$.range=[W[W.length-(P0||1)].range[0],W[W.length-1].range[1]];if(k0=this.performAction.apply(f0,[T,Y,R,V.yy,b0[1],v,W].concat(i)),typeof k0<"u")return k0;if(P0)q=q.slice(0,-1*P0*2),v=v.slice(0,-1*P0),W=W.slice(0,-1*P0);q.push(this.productions_[b0[1]][0]),v.push(f0.$),W.push(f0._$),q0=S[q[q.length-2]][q[q.length-1]],q.push(q0);break;case 3:return!0}}return!0},"parse")},K=function(){var G={EOF:1,parseError:X(function(H,q){if(this.yy.parser)this.yy.parser.parseError(H,q);else throw Error(H)},"parseError"),setInput:X(function(L,H){if(this.yy=H||this.yy||{},this._input=L,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:X(function(){var L=this._input[0];this.yytext+=L,this.yyleng++,this.offset++,this.match+=L,this.matched+=L;var H=L.match(/(?:\r\n?|\n).*/g);if(H)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),L},"input"),unput:X(function(L){var H=L.length,q=L.split(/(?:\r\n?|\n)/g);this._input=L+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-H),this.offset-=H;var x=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),q.length-1)this.yylineno-=q.length-1;var v=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:q?(q.length===x.length?this.yylloc.first_column:0)+x[x.length-q.length].length-q[0].length:this.yylloc.first_column-H},this.options.ranges)this.yylloc.range=[v[0],v[0]+this.yyleng-H];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(L){this.unput(this.match.slice(L))},"less"),pastInput:X(function(){var L=this.matched.substr(0,this.matched.length-this.match.length);return(L.length>20?"...":"")+L.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var L=this.match;if(L.length<20)L+=this._input.substr(0,20-L.length);return(L.substr(0,20)+(L.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var L=this.pastInput(),H=Array(L.length+1).join("-");return L+this.upcomingInput()+`
`+H+"^"},"showPosition"),test_match:X(function(L,H){var q,x,v;if(this.options.backtrack_lexer){if(v={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)v.yylloc.range=this.yylloc.range.slice(0)}if(x=L[0].match(/(?:\r\n?|\n).*/g),x)this.yylineno+=x.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:x?x[x.length-1].length-x[x.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+L[0].length},this.yytext+=L[0],this.match+=L[0],this.matches=L,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(L[0].length),this.matched+=L[0],q=this.performAction.call(this,this.yy,this,H,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(q)return q;else if(this._backtrack){for(var W in v)this[W]=v[W];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var L,H,q,x;if(!this._more)this.yytext="",this.match="";var v=this._currentRules();for(var W=0;W<v.length;W++)if(q=this._input.match(this.rules[v[W]]),q&&(!H||q[0].length>H[0].length)){if(H=q,x=W,this.options.backtrack_lexer)if(L=this.test_match(q,v[W]),L!==!1)return L;else if(this._backtrack){H=!1;continue}else return!1;else if(!this.options.flex)break}if(H){if(L=this.test_match(H,v[x]),L!==!1)return L;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:X(function(){var H=this.next();if(H)return H;else return this.lex()},"lex"),begin:X(function(H){this.conditionStack.push(H)},"begin"),popState:X(function(){var H=this.conditionStack.length-1;if(H>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(H){if(H=this.conditionStack.length-1-Math.abs(H||0),H>=0)return this.conditionStack[H];else return"INITIAL"},"topState"),pushState:X(function(H){this.begin(H)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:X(function(H,q,x,v){var W=v;switch(x){case 0:return H.getLogger().debug("Found block-beta"),10;break;case 1:return H.getLogger().debug("Found id-block"),29;break;case 2:return H.getLogger().debug("Found block"),10;break;case 3:H.getLogger().debug(".",q.yytext);break;case 4:H.getLogger().debug("_",q.yytext);break;case 5:return 5;case 6:return q.yytext=-1,28;break;case 7:return q.yytext=q.yytext.replace(/columns\s+/,""),H.getLogger().debug("COLUMNS (LEX)",q.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:H.getLogger().debug("LEX: POPPING STR:",q.yytext),this.popState();break;case 13:return H.getLogger().debug("LEX: STR end:",q.yytext),"STR";break;case 14:return q.yytext=q.yytext.replace(/space\:/,""),H.getLogger().debug("SPACE NUM (LEX)",q.yytext),21;break;case 15:return q.yytext="1",H.getLogger().debug("COLUMNS (LEX)",q.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(),H.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),H.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),H.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),H.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),H.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),H.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),H.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),H.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),H.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),H.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),H.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),H.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),H.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),H.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),H.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),H.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),H.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return H.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return H.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return H.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return H.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return H.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return H.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return H.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return H.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return H.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return H.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return H.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 H.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),H.getLogger().debug("LEX ARR START"),37;break;case 74:return H.getLogger().debug("Lex: NODE_ID",q.yytext),31;break;case 75:return H.getLogger().debug("Lex: EOF",q.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:H.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:H.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return H.getLogger().debug("LEX: NODE_DESCR:",q.yytext),"NODE_DESCR";break;case 83:H.getLogger().debug("LEX POPPING"),this.popState();break;case 84:H.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return q.yytext=q.yytext.replace(/^,\s*/,""),H.getLogger().debug("Lex (right): dir:",q.yytext),"DIR";break;case 86:return q.yytext=q.yytext.replace(/^,\s*/,""),H.getLogger().debug("Lex (left):",q.yytext),"DIR";break;case 87:return q.yytext=q.yytext.replace(/^,\s*/,""),H.getLogger().debug("Lex (x):",q.yytext),"DIR";break;case 88:return q.yytext=q.yytext.replace(/^,\s*/,""),H.getLogger().debug("Lex (y):",q.yytext),"DIR";break;case 89:return q.yytext=q.yytext.replace(/^,\s*/,""),H.getLogger().debug("Lex (up):",q.yytext),"DIR";break;case 90:return q.yytext=q.yytext.replace(/^,\s*/,""),H.getLogger().debug("Lex (down):",q.yytext),"DIR";break;case 91:return q.yytext="]>",H.getLogger().debug("Lex (ARROW_DIR end):",q.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return H.getLogger().debug("Lex: LINK","#"+q.yytext+"#"),15;break;case 93:return H.getLogger().debug("Lex: LINK",q.yytext),15;break;case 94:return H.getLogger().debug("Lex: LINK",q.yytext),15;break;case 95:return H.getLogger().debug("Lex: LINK",q.yytext),15;break;case 96:return H.getLogger().debug("Lex: START_LINK",q.yytext),this.pushState("LLABEL"),16;break;case 97:return H.getLogger().debug("Lex: START_LINK",q.yytext),this.pushState("LLABEL"),16;break;case 98:return H.getLogger().debug("Lex: START_LINK",q.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return H.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),H.getLogger().debug("Lex: LINK","#"+q.yytext+"#"),15;break;case 102:return this.popState(),H.getLogger().debug("Lex: LINK",q.yytext),15;break;case 103:return this.popState(),H.getLogger().debug("Lex: LINK",q.yytext),15;break;case 104:return H.getLogger().debug("Lex: COLON",q.yytext),q.yytext=q.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 G}();w.lexer=K;function Q(){this.yy={}}return X(Q,"Parser"),Q.prototype=w,w.Parser=Q,new Q}();wF0.parser=wF0;Br4=wF0,nC=new Map,LF0=[],KF0=new Map,Eg=new Map,Ar4=X((u)=>yu.sanitizeText(u,$0()),"sanitizeText"),Cr4=X(function(u,B=""){let E=Eg.get(u);if(!E)E={id:u,styles:[],textStyles:[]},Eg.set(u,E);if(B!==void 0&&B!==null)B.split(d5u).forEach((A)=>{let C=A.replace(/([^;]*);/,"$1").trim();if(RegExp(m5u).exec(A)){let F=C.replace(r5u,Er4).replace(m5u,r5u);E.textStyles.push(F)}E.styles.push(C)})},"addStyleClass"),Dr4=X(function(u,B=""){let E=nC.get(u);if(B!==void 0&&B!==null)E.styles=B.split(d5u)},"addStyle2Node"),Fr4=X(function(u,B){u.split(",").forEach(function(E){let A=nC.get(E);if(A===void 0){let C=E.trim();A={id:C,type:"na",children:[]},nC.set(C,A)}if(!A.classes)A.classes=[];A.classes.push(B)})},"setCssClass"),s5u=X((u,B)=>{let E=u.flat(),A=[],D=E.find((F)=>F?.type==="column-setting")?.columns??-1;for(let F of E){if(typeof D==="number"&&D>0&&F.type!=="column-setting"&&typeof F.widthInColumns==="number"&&F.widthInColumns>D)z0.warn(`Block ${F.id} width ${F.widthInColumns} exceeds configured column width ${D}`);if(F.label)F.label=Ar4(F.label);if(F.type==="classDef"){Cr4(F.id,F.css);continue}if(F.type==="applyClass"){Fr4(F.id,F?.styleClass??"");continue}if(F.type==="applyStyles"){if(F?.stylesStr)Dr4(F.id,F?.stylesStr);continue}if(F.type==="column-setting")B.columns=F.columns??-1;else if(F.type==="edge"){let U=(KF0.get(F.id)??0)+1;KF0.set(F.id,U),F.id=U+"-"+F.id,LF0.push(F)}else{if(!F.label)if(F.type==="composite")F.label="";else F.label=F.id;let U=nC.get(F.id);if(U===void 0)nC.set(F.id,F);else{if(F.type!=="na")U.type=F.type;if(F.label!==F.id)U.label=F.label}if(F.children)s5u(F.children,F);if(F.type==="space"){let z=F.width??1;for(let k=0;k<z;k++){let f=L40(F);f.id=f.id+"-"+k,nC.set(f.id,f),A.push(f)}}else if(U===void 0)A.push(F)}}B.children=A},"populateBlockDatabase"),XF0=[],$R={id:"root",type:"composite",children:[],columns:-1},Ur4=X(()=>{z0.debug("Clear called"),D3(),$R={id:"root",type:"composite",children:[],columns:-1},nC=new Map([["root",$R]]),XF0=[],Eg=new Map,LF0=[],KF0=new Map,qF0=""},"clear");X(o5u,"typeStr2Type");X(t5u,"edgeTypeStr2Type");X(e5u,"edgeStrToEdgeData");X(u7u,"edgeStrToEdgeStartData");X(B7u,"edgeStrToThickness");X(E7u,"edgeStrToPattern");zr4=X(()=>{return $5u++,"id-"+Math.random().toString(36).substr(2,12)+"-"+$5u},"generateId"),kr4=X((u)=>{$R.children=u,s5u(u,$R),XF0=$R.children},"setHierarchy"),fr4=X((u)=>{let B=nC.get(u);if(!B)return-1;if(B.columns)return B.columns;if(!B.children)return-1;return B.children.length},"getColumns"),lr4=X(()=>{return[...nC.values()]},"getBlocksFlat"),br4=X(()=>{return XF0||[]},"getBlocks"),Mr4=X(()=>{return LF0},"getEdges"),Zr4=X((u)=>{return nC.get(u)},"getBlock"),Jr4=X((u)=>{nC.set(u.id,u)},"setBlock"),wr4=X((u)=>{qF0=u},"setDiagramId"),Kr4=X(()=>qF0,"getDiagramId"),Qr4=X(()=>z0,"getLogger"),Gr4=X(function(){return Eg},"getClasses"),Hr4={getConfig:X(()=>F4().block,"getConfig"),typeStr2Type:o5u,edgeTypeStr2Type:t5u,edgeStrToEdgeData:e5u,edgeStrToEdgeStartData:u7u,edgeStrToThickness:B7u,edgeStrToPattern:E7u,getLogger:Qr4,getBlocksFlat:lr4,getBlocks:br4,getEdges:Mr4,setHierarchy:kr4,getBlock:Zr4,setBlock:Jr4,getColumns:fr4,getClasses:Gr4,clear:Ur4,generateId:zr4,setDiagramId:wr4,getDiagramId:Kr4},Lr4=Hr4,JF0=X((u,B)=>{let E=fZ,A=E(u,"r"),C=E(u,"g"),D=E(u,"b");return u2(A,C,D,B)},"fade"),qr4=X((u)=>`.label {
font-family: ${u.fontFamily};
color: ${u.nodeTextColor||u.textColor};
}
.cluster-label text {
fill: ${u.titleColor};
}
.cluster-label span,p {
color: ${u.titleColor};
}
.label text,span,p {
fill: ${u.nodeTextColor||u.textColor};
color: ${u.nodeTextColor||u.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${u.mainBkg};
stroke: ${u.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: ${u.arrowheadColor};
}
.edgePath .path {
stroke: ${u.lineColor};
stroke-width: 2.0px;
}
.flowchart-link {
stroke: ${u.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${u.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: ${u.edgeLabelBackground};
fill: ${u.edgeLabelBackground};
}
text-align: center;
}
/* For html labels only */
.labelBkg {
background-color: ${u.edgeLabelBackground};
}
.node .cluster {
// fill: ${JF0(u.mainBkg,0.5)};
fill: ${JF0(u.clusterBkg,0.5)};
stroke: ${JF0(u.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: ${u.titleColor};
}
.cluster span,p {
color: ${u.titleColor};
}
/* .cluster div {
color: ${u.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${u.fontFamily};
font-size: 12px;
background: ${u.tertiaryColor};
border: 1px solid ${u.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${u.textColor};
}
${gF()}
`,"getStyles"),Xr4=qr4,xr4=X((u,B,E,A)=>{B.forEach((C)=>{jr4[C](u,E,A)})},"insertMarkers"),vr4=X((u,B,E)=>{z0.trace("Making markers for ",E),u.append("defs").append("marker").attr("id",E+"_"+B+"-extensionStart").attr("class","marker extension "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-extensionEnd").attr("class","marker extension "+B).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"),Sr4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-compositionStart").attr("class","marker composition "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-compositionEnd").attr("class","marker composition "+B).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"),Wr4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-aggregationStart").attr("class","marker aggregation "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-aggregationEnd").attr("class","marker aggregation "+B).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"),Yr4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-dependencyStart").attr("class","marker dependency "+B).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"),u.append("defs").append("marker").attr("id",E+"_"+B+"-dependencyEnd").attr("class","marker dependency "+B).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"),Rr4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-lollipopStart").attr("class","marker lollipop "+B).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),u.append("defs").append("marker").attr("id",E+"_"+B+"-lollipopEnd").attr("class","marker lollipop "+B).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"),Tr4=X((u,B,E)=>{u.append("marker").attr("id",E+"_"+B+"-pointEnd").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-pointStart").attr("class","marker "+B).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"),Or4=X((u,B,E)=>{u.append("marker").attr("id",E+"_"+B+"-circleEnd").attr("class","marker "+B).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"),u.append("marker").attr("id",E+"_"+B+"-circleStart").attr("class","marker "+B).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"),Ir4=X((u,B,E)=>{u.append("marker").attr("id",E+"_"+B+"-crossEnd").attr("class","marker cross "+B).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"),u.append("marker").attr("id",E+"_"+B+"-crossStart").attr("class","marker cross "+B).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"),Pr4=X((u,B,E)=>{u.append("defs").append("marker").attr("id",E+"_"+B+"-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"),jr4={extension:vr4,composition:Sr4,aggregation:Wr4,dependency:Yr4,lollipop:Rr4,point:Tr4,circle:Or4,cross:Ir4,barb:Pr4},Nr4=xr4;X(QF0,"calculateBlockPosition");ir4=X((u)=>{let B=0,E=0;for(let A of u.children){let{width:C,height:D,x:F,y:U}=A.size??{width:0,height:0,x:0,y:0};if(z0.debug("getMaxChildSize abc95 child:",A.id,"width:",C,"height:",D,"x:",F,"y:",U,A.type),A.type==="space")continue;let z=C/(A.widthInColumns??1);if(z>B)B=z;if(D>E)E=D}return{width:B,height:E}},"getMaxChildSize");X(Ag,"setBlockSizes");X(xF0,"layoutBlocks");X(vF0,"findBounds");X(A7u,"layout");ar4=X(async(u,B,E,A=!1,C=!1)=>{let D=B||"";if(typeof D==="object")D=D[0];let F=$0(),U=w1(F);return await X2(u,D,{style:E,isTitle:A,useHtmlLabels:U,markdown:!1,isNode:C,width:Number.POSITIVE_INFINITY},F)},"createLabel"),_C=ar4,Vr4=X((u,B,E,A,C)=>{if(B.arrowTypeStart)y5u(u,"start",B.arrowTypeStart,E,A,C);if(B.arrowTypeEnd)y5u(u,"end",B.arrowTypeEnd,E,A,C)},"addEdgeMarkers"),hr4={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},y5u=X((u,B,E,A,C,D)=>{let F=hr4[E];if(!F){z0.warn(`Unknown arrow type: ${E}`);return}let U=B==="start"?"Start":"End";u.attr(`marker-${B}`,`url(${A}#${C}_${D}-${F}${U})`)},"addEdgeMarker"),GF0={},a7={},mr4=X(async(u,B)=>{let E=$0(),A=w1(E),C=u.insert("g").attr("class","edgeLabel"),D=C.insert("g").attr("class","label"),F=B.labelType==="markdown",U=await X2(u,B.label,{style:B.labelStyle,useHtmlLabels:A,addSvgBackground:F,isNode:!1,markdown:F,width:F?void 0:Number.POSITIVE_INFINITY},E);D.node().appendChild(U);let z=U.getBBox(),k=z;if(A){let l=U.children[0],b=Ku(U);z=l.getBoundingClientRect(),k=z,b.attr("width",z.width),b.attr("height",z.height)}else{let l=Ku(U).select("text").node();if(l&&typeof l.getBBox==="function")k=l.getBBox()}D.attr("transform",sE(k,A)),GF0[B.id]=C,B.width=z.width,B.height=z.height;let f;if(B.startLabelLeft){let l=u.insert("g").attr("class","edgeTerminals"),b=l.insert("g").attr("class","inner"),M=await _C(b,B.startLabelLeft,B.labelStyle);f=M;let Z=M.getBBox();if(A){let J=M.children[0],w=Ku(M);Z=J.getBoundingClientRect(),w.attr("width",Z.width),w.attr("height",Z.height)}if(b.attr("transform",sE(Z,A)),!a7[B.id])a7[B.id]={};a7[B.id].startLeft=l,rR(f,B.startLabelLeft)}if(B.startLabelRight){let l=u.insert("g").attr("class","edgeTerminals"),b=l.insert("g").attr("class","inner"),M=await _C(b,B.startLabelRight,B.labelStyle);f=M;let Z=M.getBBox();if(A){let J=M.children[0],w=Ku(M);Z=J.getBoundingClientRect(),w.attr("width",Z.width),w.attr("height",Z.height)}if(b.attr("transform",sE(Z,A)),!a7[B.id])a7[B.id]={};a7[B.id].startRight=l,rR(f,B.startLabelRight)}if(B.endLabelLeft){let l=u.insert("g").attr("class","edgeTerminals"),b=l.insert("g").attr("class","inner"),M=await _C(l,B.endLabelLeft,B.labelStyle);f=M;let Z=M.getBBox();if(A){let J=M.children[0],w=Ku(M);Z=J.getBoundingClientRect(),w.attr("width",Z.width),w.attr("height",Z.height)}if(b.attr("transform",sE(Z,A)),!a7[B.id])a7[B.id]={};a7[B.id].endLeft=l,rR(f,B.endLabelLeft)}if(B.endLabelRight){let l=u.insert("g").attr("class","edgeTerminals"),b=l.insert("g").attr("class","inner"),M=await _C(l,B.endLabelRight,B.labelStyle);f=M;let Z=M.getBBox();if(A){let J=M.children[0],w=Ku(M);Z=J.getBoundingClientRect(),w.attr("width",Z.width),w.attr("height",Z.height)}if(b.attr("transform",sE(Z,A)),!a7[B.id])a7[B.id]={};a7[B.id].endRight=l,rR(f,B.endLabelRight)}return U},"insertEdgeLabel");X(rR,"setTerminalWidth");rr4=X((u,B)=>{z0.debug("Moving label abc88 ",u.id,u.label,GF0[u.id],B);let E=B.updatedPath?B.updatedPath:B.originalPath,A=$0(),{subGraphTitleTotalMargin:C}=GC(A);if(u.label){let D=GF0[u.id],F=u.x,U=u.y;if(E){let z=R4.calcLabelPosition(E);if(z0.debug("Moving label "+u.label+" from (",F,",",U,") to (",z.x,",",z.y,") abc88"),B.updatedPath)F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U+C/2})`)}if(u.startLabelLeft){let D=a7[u.id].startLeft,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeStart?10:0,"start_left",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.startLabelRight){let D=a7[u.id].startRight,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeStart?10:0,"start_right",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.endLabelLeft){let D=a7[u.id].endLeft,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeEnd?10:0,"end_left",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}if(u.endLabelRight){let D=a7[u.id].endRight,F=u.x,U=u.y;if(E){let z=R4.calcTerminalLabelPosition(u.arrowTypeEnd?10:0,"end_right",E);F=z.x,U=z.y}D.attr("transform",`translate(${F}, ${U})`)}},"positionEdgeLabel"),$r4=X((u,B)=>{let{x:E,y:A}=u,C=Math.abs(B.x-E),D=Math.abs(B.y-A),F=u.width/2,U=u.height/2;if(C>=F||D>=U)return!0;return!1},"outsideNode"),yr4=X((u,B,E)=>{z0.debug(`intersection calc abc89:
outsidePoint: ${JSON.stringify(B)}
insidePoint : ${JSON.stringify(E)}
node : x:${u.x} y:${u.y} w:${u.width} h:${u.height}`);let{x:A,y:C}=u,D=Math.abs(A-E.x),F=u.width/2,U=E.x<B.x?F-D:F+D,z=u.height/2,k=Math.abs(B.y-E.y),f=Math.abs(B.x-E.x);if(Math.abs(C-B.y)*F>Math.abs(A-B.x)*z){let l=E.y<B.y?B.y-z-C:C-z-B.y;U=f*l/k;let b={x:E.x<B.x?E.x+U:E.x-f+U,y:E.y<B.y?E.y+k-l:E.y-k+l};if(U===0)b.x=B.x,b.y=B.y;if(f===0)b.x=B.x;if(k===0)b.y=B.y;return z0.debug(`abc89 topp/bott calc, Q ${k}, q ${l}, R ${f}, r ${U}`,b),b}else{if(E.x<B.x)U=B.x-F-A;else U=A-F-B.x;let l=k*U/f,b=E.x<B.x?E.x+f-U:E.x-f+U,M=E.y<B.y?E.y+l:E.y-l;if(z0.debug(`sides calc abc89, Q ${k}, q ${l}, R ${f}, r ${U}`,{_x:b,_y:M}),U===0)b=B.x,M=B.y;if(f===0)b=B.x;if(k===0)M=B.y;return{x:b,y:M}}},"intersection"),c5u=X((u,B)=>{z0.debug("abc88 cutPathAtIntersect",u,B);let E=[],A=u[0],C=!1;return u.forEach((D)=>{if(!$r4(B,D)&&!C){let F=yr4(B,A,D),U=!1;if(E.forEach((z)=>{U=U||z.x===F.x&&z.y===F.y}),!E.some((z)=>z.x===F.x&&z.y===F.y))E.push(F);C=!0}else if(A=D,!C)E.push(D)}),E},"cutPathAtIntersect"),cr4=X(function(u,B,E,A,C,D,F){let U=E.points;z0.debug("abc88 InsertEdge: edge=",E,"e=",B);let z=!1,k=D.node(B.v);var f=D.node(B.w);if(f?.intersect&&k?.intersect)U=U.slice(1,E.points.length-1),U.unshift(k.intersect(U[0])),U.push(f.intersect(U[U.length-1]));if(E.toCluster)z0.debug("to cluster abc88",A[E.toCluster]),U=c5u(E.points,A[E.toCluster].node),z=!0;if(E.fromCluster)z0.debug("from cluster abc88",A[E.fromCluster]),U=c5u(U.reverse(),A[E.fromCluster].node).reverse(),z=!0;let l=U.filter((L)=>!Number.isNaN(L.y)),b=KC;if(E.curve&&(C==="graph"||C==="flowchart"))b=E.curve;let{x:M,y:Z}=Ea(E),J=wC().x(M).y(Z).curve(b),w;switch(E.thickness){case"normal":w="edge-thickness-normal";break;case"thick":w="edge-thickness-thick";break;case"invisible":w="edge-thickness-thick";break;default:w=""}switch(E.pattern){case"solid":w+=" edge-pattern-solid";break;case"dotted":w+=" edge-pattern-dotted";break;case"dashed":w+=" edge-pattern-dashed";break}let K=u.append("path").attr("d",J(l)).attr("id",E.id).attr("class"," "+w+(E.classes?" "+E.classes:"")).attr("style",E.style),Q="";if($0().flowchart.arrowMarkerAbsolute||$0().state.arrowMarkerAbsolute)Q=LZ(!0);Vr4(K,E,Q,F,C);let G={};if(z)G.updatedPath=U;return G.originalPath=E.points,G},"insertEdge"),gr4=X((u)=>{let B=new Set;for(let E of u)switch(E){case"x":B.add("right"),B.add("left");break;case"y":B.add("up"),B.add("down");break;default:B.add(E);break}return B},"expandAndDeduplicateDirections"),_r4=X((u,B,E,A)=>{let C=gr4(u),D=2,F=B.height+2*E.padding,U=F/2,z=A??B.width+2*U+E.padding,k=E.padding/2;if(C.has("right")&&C.has("left")&&C.has("up")&&C.has("down"))return[{x:0,y:0},{x:U,y:0},{x:z/2,y:2*k},{x:z-U,y:0},{x:z,y:0},{x:z,y:-F/3},{x:z+2*k,y:-F/2},{x:z,y:-2*F/3},{x:z,y:-F},{x:z-U,y:-F},{x:z/2,y:-F-2*k},{x:U,y:-F},{x:0,y:-F},{x:0,y:-2*F/3},{x:-2*k,y:-F/2},{x:0,y:-F/3}];if(C.has("right")&&C.has("left")&&C.has("up"))return[{x:U,y:0},{x:z-U,y:0},{x:z,y:-F/2},{x:z-U,y:-F},{x:U,y:-F},{x:0,y:-F/2}];if(C.has("right")&&C.has("left")&&C.has("down"))return[{x:0,y:0},{x:U,y:-F},{x:z-U,y:-F},{x:z,y:0}];if(C.has("right")&&C.has("up")&&C.has("down"))return[{x:0,y:0},{x:z,y:-U},{x:z,y:-F+U},{x:0,y:-F}];if(C.has("left")&&C.has("up")&&C.has("down"))return[{x:z,y:0},{x:0,y:-U},{x:0,y:-F+U},{x:z,y:-F}];if(C.has("right")&&C.has("left"))return[{x:U,y:0},{x:U,y:-k},{x:z-U,y:-k},{x:z-U,y:0},{x:z,y:-F/2},{x:z-U,y:-F},{x:z-U,y:-F+k},{x:U,y:-F+k},{x:U,y:-F},{x:0,y:-F/2}];if(C.has("up")&&C.has("down"))return[{x:z/2,y:0},{x:0,y:-k},{x:U,y:-k},{x:U,y:-F+k},{x:0,y:-F+k},{x:z/2,y:-F},{x:z,y:-F+k},{x:z-U,y:-F+k},{x:z-U,y:-k},{x:z,y:-k}];if(C.has("right")&&C.has("up"))return[{x:0,y:0},{x:z,y:-U},{x:0,y:-F}];if(C.has("right")&&C.has("down"))return[{x:0,y:0},{x:z,y:0},{x:0,y:-F}];if(C.has("left")&&C.has("up"))return[{x:z,y:0},{x:0,y:-U},{x:z,y:-F}];if(C.has("left")&&C.has("down"))return[{x:z,y:0},{x:0,y:0},{x:z,y:-F}];if(C.has("right"))return[{x:U,y:-k},{x:U,y:-k},{x:z-U,y:-k},{x:z-U,y:0},{x:z,y:-F/2},{x:z-U,y:-F},{x:z-U,y:-F+k},{x:U,y:-F+k},{x:U,y:-F+k}];if(C.has("left"))return[{x:U,y:0},{x:U,y:-k},{x:z-U,y:-k},{x:z-U,y:-F+k},{x:U,y:-F+k},{x:U,y:-F},{x:0,y:-F/2}];if(C.has("up"))return[{x:U,y:-k},{x:U,y:-F+k},{x:0,y:-F+k},{x:z/2,y:-F},{x:z,y:-F+k},{x:z-U,y:-F+k},{x:z-U,y:-k}];if(C.has("down"))return[{x:z/2,y:0},{x:0,y:-k},{x:U,y:-k},{x:U,y:-F+k},{x:z-U,y:-F+k},{x:z-U,y:-k},{x:z,y:-k}];return[{x:0,y:0}]},"getArrowPoints");X(C7u,"intersectNode");nr4=C7u;X(D7u,"intersectEllipse");F7u=D7u;X(U7u,"intersectCircle");pr4=U7u;X(z7u,"intersectLine");X(HF0,"sameSign");dr4=z7u,sr4=k7u;X(k7u,"intersectPolygon");or4=X((u,B)=>{var{x:E,y:A}=u,C=B.x-E,D=B.y-A,F=u.width/2,U=u.height/2,z,k;if(Math.abs(D)*F>Math.abs(C)*U){if(D<0)U=-U;z=D===0?0:U*C/D,k=U}else{if(C<0)F=-F;z=F,k=C===0?0:F*D/C}return{x:E+z,y:A+k}},"intersectRect"),tr4=or4,U9={node:nr4,circle:pr4,ellipse:F7u,polygon:sr4,rect:tr4},N5=X(async(u,B,E,A)=>{let C=$0(),D,F=B.useHtmlLabels||w1(C);if(!E)D="node default";else D=E;let U=u.insert("g").attr("class",D).attr("id",B.domId||B.id),z=U.insert("g").attr("class","label").attr("style",B.labelStyle),k;if(B.labelText===void 0)k="";else k=typeof B.labelText==="string"?B.labelText:B.labelText[0];let f;if(B.labelType==="markdown")f=X2(z,C3(AE(k),C),{useHtmlLabels:F,width:B.width||C.flowchart.wrappingWidth,classes:"markdown-node-label"},C);else f=await _C(z,C3(AE(k),C),B.labelStyle,!1,A);let l=f.getBBox(),b=B.padding/2;if(w1(C)){let M=f.children[0],Z=Ku(f);await zS(M,k),l=M.getBoundingClientRect(),Z.attr("width",l.width),Z.attr("height",l.height)}if(F)z.attr("transform","translate("+-l.width/2+", "+-l.height/2+")");else z.attr("transform","translate(0, "+-l.height/2+")");if(B.centerLabel)z.attr("transform","translate("+-l.width/2+", "+-l.height/2+")");return z.insert("rect",":first-child"),{shapeSvg:U,bbox:l,halfPadding:b,label:z}},"labelHelper"),c9=X((u,B)=>{let E=B.node().getBBox();u.width=E.width,u.height=E.height},"updateNodeBounds");X(pC,"insertPolygonShape");er4=X(async(u,B)=>{if(!(B.useHtmlLabels||w1($0())))B.centerLabel=!0;let{shapeSvg:A,bbox:C,halfPadding:D}=await N5(u,B,"node "+B.classes,!0);z0.info("Classes = ",B.classes);let F=A.insert("rect",":first-child");return F.attr("rx",B.rx).attr("ry",B.ry).attr("x",-C.width/2-D).attr("y",-C.height/2-D).attr("width",C.width+B.padding).attr("height",C.height+B.padding),c9(B,F),B.intersect=function(U){return U9.rect(B,U)},A},"note"),u$4=er4,g5u=X((u)=>{if(u)return" "+u;return""},"formatClass"),XE=X((u,B)=>{return`${B?B:"node default"}${g5u(u.classes)} ${g5u(u.class)}`},"getClassesFromNode"),_5u=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=C+D,U=[{x:F/2,y:0},{x:F,y:-F/2},{x:F/2,y:-F},{x:0,y:-F/2}];z0.info("Question main (Circle)");let z=pC(E,F,F,U);return z.attr("style",B.style),c9(B,z),B.intersect=function(k){return z0.warn("Intersect called"),U9.polygon(B,U,k)},E},"question"),B$4=X((u,B)=>{let E=u.insert("g").attr("class","node default").attr("id",B.domId||B.id),A=28,C=[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}];return E.insert("polygon",":first-child").attr("points",C.map(function(F){return F.x+","+F.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),B.width=28,B.height=28,B.intersect=function(F){return U9.circle(B,14,F)},E},"choice"),E$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=4,D=B.positioned?B.height:A.height+B.padding,F=D/4,U=B.positioned?B.width:A.width+2*F+B.padding,z=[{x:F,y:0},{x:U-F,y:0},{x:U,y:-D/2},{x:U-F,y:-D},{x:F,y:-D},{x:0,y:-D/2}],k=pC(E,U,D,z);return k.attr("style",B.style),c9(B,k),B.intersect=function(f){return U9.polygon(B,z,f)},E},"hexagon"),A$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,void 0,!0),C=2,D=A.height+2*B.padding,F=D/2,U=A.width+2*F+B.padding,k=B.positioned&&(B.widthInColumns??1)>1&&B.width>U?B.width:U,f=_r4(B.directions,A,B,k),l=pC(E,k,D,f);return l.attr("style",B.style),c9(B,l),B.intersect=function(b){return U9.polygon(B,f,b)},E},"block_arrow"),C$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:-D/2,y:0},{x:C,y:0},{x:C,y:-D},{x:-D/2,y:-D},{x:0,y:-D/2}];return pC(E,C,D,F).attr("style",B.style),B.width=C+D,B.height=D,B.intersect=function(z){return U9.polygon(B,F,z)},E},"rect_left_inv_arrow"),D$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:-2*D/6,y:0},{x:C-D/6,y:0},{x:C+2*D/6,y:-D},{x:D/6,y:-D}],U=pC(E,C,D,F);return U.attr("style",B.style),c9(B,U),B.intersect=function(z){return U9.polygon(B,F,z)},E},"lean_right"),F$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:2*D/6,y:0},{x:C+D/6,y:0},{x:C-2*D/6,y:-D},{x:-D/6,y:-D}],U=pC(E,C,D,F);return U.attr("style",B.style),c9(B,U),B.intersect=function(z){return U9.polygon(B,F,z)},E},"lean_left"),U$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:-2*D/6,y:0},{x:C+2*D/6,y:0},{x:C-D/6,y:-D},{x:D/6,y:-D}],U=pC(E,C,D,F);return U.attr("style",B.style),c9(B,U),B.intersect=function(z){return U9.polygon(B,F,z)},E},"trapezoid"),z$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:D/6,y:0},{x:C-D/6,y:0},{x:C+2*D/6,y:-D},{x:-2*D/6,y:-D}],U=pC(E,C,D,F);return U.attr("style",B.style),c9(B,U),B.intersect=function(z){return U9.polygon(B,F,z)},E},"inv_trapezoid"),k$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:0,y:0},{x:C+D/2,y:0},{x:C,y:-D/2},{x:C+D/2,y:-D},{x:0,y:-D}],U=pC(E,C,D,F);return U.attr("style",B.style),c9(B,U),B.intersect=function(z){return U9.polygon(B,F,z)},E},"rect_right_inv_arrow"),f$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=C/2,F=D/(2.5+C/50),U=A.height+F+B.padding,z="M 0,"+F+" a "+D+","+F+" 0,0,0 "+C+" 0 a "+D+","+F+" 0,0,0 "+-C+" 0 l 0,"+U+" a "+D+","+F+" 0,0,0 "+C+" 0 l 0,"+-U,k=E.attr("label-offset-y",F).insert("path",":first-child").attr("style",B.style).attr("d",z).attr("transform","translate("+-C/2+","+-(U/2+F)+")");return c9(B,k),B.intersect=function(f){let l=U9.rect(B,f),b=l.x-B.x;if(D!=0&&(Math.abs(b)<B.width/2||Math.abs(b)==B.width/2&&Math.abs(l.y-B.y)>B.height/2-F)){let M=F*F*(1-b*b/(D*D));if(M!=0)M=Math.sqrt(M);if(M=F-M,f.y-B.y>0)M=-M;l.y+=M}return l},E},"cylinder"),l$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A,halfPadding:C}=await N5(u,B,"node "+B.classes+" "+B.class,!0),D=E.insert("rect",":first-child"),F=B.positioned?B.width:A.width+B.padding,U=B.positioned?B.height:A.height+B.padding,z=B.positioned?-F/2:-A.width/2-C,k=B.positioned?-U/2:-A.height/2-C;if(D.attr("class","basic label-container").attr("style",B.style).attr("rx",B.rx).attr("ry",B.ry).attr("x",z).attr("y",k).attr("width",F).attr("height",U),B.props){let f=new Set(Object.keys(B.props));if(B.props.borders)Cg(D,B.props.borders,F,U),f.delete("borders");f.forEach((l)=>{z0.warn(`Unknown node property ${l}`)})}return c9(B,D),B.intersect=function(f){return U9.rect(B,f)},E},"rect"),b$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A,halfPadding:C}=await N5(u,B,"node "+B.classes,!0),D=E.insert("rect",":first-child"),F=B.positioned?B.width:A.width+B.padding,U=B.positioned?B.height:A.height+B.padding,z=B.positioned?-F/2:-A.width/2-C,k=B.positioned?-U/2:-A.height/2-C;if(D.attr("class","basic cluster composite label-container").attr("style",B.style).attr("rx",B.rx).attr("ry",B.ry).attr("x",z).attr("y",k).attr("width",F).attr("height",U),B.props){let f=new Set(Object.keys(B.props));if(B.props.borders)Cg(D,B.props.borders,F,U),f.delete("borders");f.forEach((l)=>{z0.warn(`Unknown node property ${l}`)})}return c9(B,D),B.intersect=function(f){return U9.rect(B,f)},E},"composite"),M$4=X(async(u,B)=>{let{shapeSvg:E}=await N5(u,B,"label",!0);z0.trace("Classes = ",B.class);let A=E.insert("rect",":first-child"),C=0,D=0;if(A.attr("width",C).attr("height",D),E.attr("class","label edgeLabel"),B.props){let F=new Set(Object.keys(B.props));if(B.props.borders)Cg(A,B.props.borders,C,D),F.delete("borders");F.forEach((U)=>{z0.warn(`Unknown node property ${U}`)})}return c9(B,A),B.intersect=function(F){return U9.rect(B,F)},E},"labelRect");X(Cg,"applyNodePropertyBorders");Z$4=X(async(u,B)=>{let E;if(!B.classes)E="node default";else E="node "+B.classes;let A=u.insert("g").attr("class",E).attr("id",B.domId||B.id),C=A.insert("rect",":first-child"),D=A.insert("line"),F=A.insert("g").attr("class","label"),U=B.labelText.flat?B.labelText.flat():B.labelText,z="";if(typeof U==="object")z=U[0];else z=U;z0.info("Label text abc79",z,U,typeof U==="object");let k=await _C(F,z,B.labelStyle,!0,!0),f={width:0,height:0};if(w1($0())){let J=k.children[0],w=Ku(k);f=J.getBoundingClientRect(),w.attr("width",f.width),w.attr("height",f.height)}z0.info("Text 2",U);let l=U.slice(1,U.length),b=k.getBBox(),M=await _C(F,l.join?l.join("<br/>"):l,B.labelStyle,!0,!0);if(w1($0())){let J=M.children[0],w=Ku(M);f=J.getBoundingClientRect(),w.attr("width",f.width),w.attr("height",f.height)}let Z=B.padding/2;return Ku(M).attr("transform","translate( "+(f.width>b.width?0:(b.width-f.width)/2)+", "+(b.height+Z+5)+")"),Ku(k).attr("transform","translate( "+(f.width<b.width?0:-(b.width-f.width)/2)+", 0)"),f=F.node().getBBox(),F.attr("transform","translate("+-f.width/2+", "+(-f.height/2-Z+3)+")"),C.attr("class","outer title-state").attr("x",-f.width/2-Z).attr("y",-f.height/2-Z).attr("width",f.width+B.padding).attr("height",f.height+B.padding),D.attr("class","divider").attr("x1",-f.width/2-Z).attr("x2",f.width/2+Z).attr("y1",-f.height/2-Z+b.height+Z).attr("y2",-f.height/2-Z+b.height+Z),c9(B,C),B.intersect=function(J){return U9.rect(B,J)},A},"rectWithTitle"),J$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.height+B.padding,D=A.width+C/4+B.padding,F=E.insert("rect",":first-child").attr("style",B.style).attr("rx",C/2).attr("ry",C/2).attr("x",-D/2).attr("y",-C/2).attr("width",D).attr("height",C);return c9(B,F),B.intersect=function(U){return U9.rect(B,U)},E},"stadium"),w$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A,halfPadding:C}=await N5(u,B,XE(B,void 0),!0),D=E.insert("circle",":first-child");return D.attr("style",B.style).attr("rx",B.rx).attr("ry",B.ry).attr("r",A.width/2+C).attr("width",A.width+B.padding).attr("height",A.height+B.padding),z0.info("Circle main"),c9(B,D),B.intersect=function(F){return z0.info("Circle intersect",B,A.width/2+C,F),U9.circle(B,A.width/2+C,F)},E},"circle"),K$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A,halfPadding:C}=await N5(u,B,XE(B,void 0),!0),D=5,F=E.insert("g",":first-child"),U=F.insert("circle"),z=F.insert("circle");return F.attr("class",B.class),U.attr("style",B.style).attr("rx",B.rx).attr("ry",B.ry).attr("r",A.width/2+C+5).attr("width",A.width+B.padding+10).attr("height",A.height+B.padding+10),z.attr("style",B.style).attr("rx",B.rx).attr("ry",B.ry).attr("r",A.width/2+C).attr("width",A.width+B.padding).attr("height",A.height+B.padding),z0.info("DoubleCircle main"),c9(B,U),B.intersect=function(k){return z0.info("DoubleCircle intersect",B,A.width/2+C+5,k),U9.circle(B,A.width/2+C+5,k)},E},"doublecircle"),Q$4=X(async(u,B)=>{let{shapeSvg:E,bbox:A}=await N5(u,B,XE(B,void 0),!0),C=A.width+B.padding,D=A.height+B.padding,F=[{x:0,y:0},{x:C,y:0},{x:C,y:-D},{x:0,y:-D},{x:0,y:0},{x:-8,y:0},{x:C+8,y:0},{x:C+8,y:-D},{x:-8,y:-D},{x:-8,y:0}],U=pC(E,C,D,F);return U.attr("style",B.style),c9(B,U),B.intersect=function(z){return U9.polygon(B,F,z)},E},"subroutine"),G$4=X((u,B)=>{let E=u.insert("g").attr("class","node default").attr("id",B.domId||B.id),A=E.insert("circle",":first-child");return A.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),c9(B,A),B.intersect=function(C){return U9.circle(B,7,C)},E},"start"),n5u=X((u,B,E)=>{let A=u.insert("g").attr("class","node default").attr("id",B.domId||B.id),C=70,D=10;if(E==="LR")C=10,D=70;let F=A.append("rect").attr("x",-1*C/2).attr("y",-1*D/2).attr("width",C).attr("height",D).attr("class","fork-join");return c9(B,F),B.height=B.height+B.padding/2,B.width=B.width+B.padding/2,B.intersect=function(U){return U9.rect(B,U)},A},"forkJoin"),H$4=X((u,B)=>{let E=u.insert("g").attr("class","node default").attr("id",B.domId||B.id),A=E.insert("circle",":first-child"),C=E.insert("circle",":first-child");return C.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),A.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),c9(B,C),B.intersect=function(D){return U9.circle(B,7,D)},E},"end"),L$4=X(async(u,B)=>{let E=B.padding/2,A=4,C=8,D;if(!B.classes)D="node default";else D="node "+B.classes;let F=u.insert("g").attr("class",D).attr("id",B.domId||B.id),U=F.insert("rect",":first-child"),z=F.insert("line"),k=F.insert("line"),f=0,l=4,b=F.insert("g").attr("class","label"),M=0,Z=B.classData.annotations?.[0],J=B.classData.annotations[0]?"«"+B.classData.annotations[0]+"»":"",w=await _C(b,J,B.labelStyle,!0,!0),K=w.getBBox();if(w1($0())){let v=w.children[0],W=Ku(w);K=v.getBoundingClientRect(),W.attr("width",K.width),W.attr("height",K.height)}if(B.classData.annotations[0])l+=K.height+4,f+=K.width;let Q=B.classData.label;if(B.classData.type!==void 0&&B.classData.type!=="")if(w1($0()))Q+="&lt;"+B.classData.type+"&gt;";else Q+="<"+B.classData.type+">";let G=await _C(b,Q,B.labelStyle,!0,!0);Ku(G).attr("class","classTitle");let L=G.getBBox();if(w1($0())){let v=G.children[0],W=Ku(G);L=v.getBoundingClientRect(),W.attr("width",L.width),W.attr("height",L.height)}if(l+=L.height+4,L.width>f)f=L.width;let H=[];B.classData.members.forEach(async(v)=>{let W=v.getDisplayDetails(),S=W.displayText;if(w1($0()))S=S.replace(/</g,"&lt;").replace(/>/g,"&gt;");let T=await _C(b,S,W.cssStyle?W.cssStyle:B.labelStyle,!0,!0),R=T.getBBox();if(w1($0())){let Y=T.children[0],a=Ku(T);R=Y.getBoundingClientRect(),a.attr("width",R.width),a.attr("height",R.height)}if(R.width>f)f=R.width;l+=R.height+4,H.push(T)}),l+=8;let q=[];if(B.classData.methods.forEach(async(v)=>{let W=v.getDisplayDetails(),S=W.displayText;if(w1($0()))S=S.replace(/</g,"&lt;").replace(/>/g,"&gt;");let T=await _C(b,S,W.cssStyle?W.cssStyle:B.labelStyle,!0,!0),R=T.getBBox();if(w1($0())){let Y=T.children[0],a=Ku(T);R=Y.getBoundingClientRect(),a.attr("width",R.width),a.attr("height",R.height)}if(R.width>f)f=R.width;l+=R.height+4,q.push(T)}),l+=8,Z){let v=(f-K.width)/2;Ku(w).attr("transform","translate( "+(-1*f/2+v)+", "+-1*l/2+")"),M=K.height+4}let x=(f-L.width)/2;return Ku(G).attr("transform","translate( "+(-1*f/2+x)+", "+(-1*l/2+M)+")"),M+=L.height+4,z.attr("class","divider").attr("x1",-f/2-E).attr("x2",f/2+E).attr("y1",-l/2-E+8+M).attr("y2",-l/2-E+8+M),M+=8,H.forEach((v)=>{Ku(v).attr("transform","translate( "+-f/2+", "+(-1*l/2+M+4)+")");let W=v?.getBBox();M+=(W?.height??0)+4}),M+=8,k.attr("class","divider").attr("x1",-f/2-E).attr("x2",f/2+E).attr("y1",-l/2-E+8+M).attr("y2",-l/2-E+8+M),M+=8,q.forEach((v)=>{Ku(v).attr("transform","translate( "+-f/2+", "+(-1*l/2+M)+")");let W=v?.getBBox();M+=(W?.height??0)+4}),U.attr("style",B.style).attr("class","outer title-state").attr("x",-f/2-E).attr("y",-(l/2)-E).attr("width",f+B.padding).attr("height",l+B.padding),c9(B,U),B.intersect=function(v){return U9.rect(B,v)},F},"class_box"),p5u={rhombus:_5u,composite:b$4,question:_5u,rect:l$4,labelRect:M$4,rectWithTitle:Z$4,choice:B$4,circle:w$4,doublecircle:K$4,stadium:J$4,hexagon:E$4,block_arrow:A$4,rect_left_inv_arrow:C$4,lean_right:D$4,lean_left:F$4,trapezoid:U$4,inv_trapezoid:z$4,rect_right_inv_arrow:k$4,cylinder:f$4,start:G$4,end:H$4,note:u$4,subroutine:Q$4,fork:n5u,join:n5u,class_box:L$4},Bg={},f7u=X(async(u,B,E)=>{let A,C;if(B.link){let D;if($0().securityLevel==="sandbox")D="_top";else if(B.linkTarget)D=B.linkTarget||"_blank";A=u.insert("svg:a").attr("xlink:href",B.link).attr("target",D),C=await p5u[B.shape](A,B,E)}else C=await p5u[B.shape](u,B,E),A=C;if(B.tooltip)C.attr("title",B.tooltip);if(B.class)C.attr("class","node default "+B.class);if(Bg[B.id]=A,B.haveCallback)Bg[B.id].attr("class",Bg[B.id].attr("class")+" clickable");return A},"insertNode"),q$4=X((u)=>{let B=Bg[u.id];z0.trace("Transforming node",u.diff,u,"translate("+(u.x-u.width/2-5)+", "+u.width/2+")");let E=8,A=u.diff||0;if(u.clusterNode)B.attr("transform","translate("+(u.x+A-u.width/2)+", "+(u.y-u.height/2-E)+")");else B.attr("transform","translate("+u.x+", "+u.y+")");return A},"positionNode");X(SF0,"getNodeFromBlock");X(l7u,"calculateBlockSize");X(b7u,"insertBlockPositioned");X(Dg,"performOperations");X(M7u,"calculateBlockSizes");X(Z7u,"insertBlocks");X(J7u,"insertEdges");X$4=X(function(u,B){return B.db.getClasses()},"getClasses"),x$4=X(async function(u,B,E,A){let{securityLevel:C,block:D}=F4(),F=A.db;F.setDiagramId(B);let U;if(C==="sandbox")U=Ku("#i"+B);let z=C==="sandbox"?Ku(U.nodes()[0].contentDocument.body):Ku("body"),k=C==="sandbox"?z.select(`[id="${B}"]`):Ku(`[id="${B}"]`);Nr4(k,["point","circle","cross"],A.type,B);let l=F.getBlocks(),b=F.getBlocksFlat(),M=F.getEdges(),Z=k.insert("g").attr("class","block");await M7u(Z,l,F);let J=A7u(F);if(await Z7u(Z,l,F),await J7u(Z,M,b,F,B),J){let w=J,K=Math.max(1,Math.round(0.125*(w.width/w.height))),Q=w.height+K+10,G=w.width+10,{useMaxWidth:L}=D;y3(k,Q,G,!!L),z0.debug("Here Bounds",J,w),k.attr("viewBox",`${w.x-5} ${w.y-5} ${w.width+10} ${w.height+10}`)}},"draw"),v$4={draw:x$4,getClasses:X$4},S$4={parser:Br4,db:Lr4,renderer:v$4,styles:Xr4}});var T7u={};ju(T7u,{diagram:()=>d$4});function x7u(u){return u.some((B)=>q7u.test(B))}function v7u(u){for(let B of u){let E=X7u.exec(B);if(E?.index&&E.index>0)return E.index}return 4}function S7u(u,B){return u.replace(/\bline\s+(\d+)\b/gi,(E,A)=>{let C=parseInt(A,10),D=B.get(C);return D?`line ${D}`:E})}function W7u(u){let B=u.split(`
`),E=new Map,A=-1;for(let[z,k]of B.entries())if(k.trim()==="treeView-beta"){A=z;break}if(A===-1)return{text:u,lineMap:E};let C=[];for(let z=A+1;z<B.length;z++){let k=B[z];if(k.trim()===""||H7u.test(k)||G7u.test(k))continue;if(Q7u.test(k))continue;C.push(k.replace(/\t/g," "))}if(!x7u(C))return{text:u,lineMap:E};let D=v7u(C),F=[],U=0;for(let z=0;z<=A;z++)F.push(B[z]),U++,E.set(U,z+1);for(let z=A+1;z<B.length;z++){let k=B[z],f=k.trim(),l=z+1;if(f===""){F.push(k),U++,E.set(U,l);continue}if(H7u.test(k)){F.push(k),U++,E.set(U,l);continue}if(G7u.test(k)){F.push(k),U++,E.set(U,l);continue}if(Q7u.test(k))continue;let b=k.replace(/\t/g," "),M=X7u.exec(b);if(M?.index!==void 0){let Z=M.index,J=Math.round(Z/D)+1,w=Z+1;while(w<b.length&&W$4.test(b[w]))w++;while(w<b.length&&b[w]===" ")w++;let K=b.slice(w).trimEnd();if(!K)throw Error(`Line ${l}: Empty node — expected a filename or directory name after the box-drawing prefix`);let Q=Y$4.repeat(J);F.push(Q+K),U++,E.set(U,l)}else if(/^[\s─━│┃└┗├┣]+$/.test(b))continue;else if(q7u.test(b))F.push(k),U++,E.set(U,l);else if(/^\s+/.test(b))throw Error(`Line ${l}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);else F.push(k),U++,E.set(U,l)}return{text:F.join(`
`),lineMap:E}}function Y7u(u,B){let E=B?.filenameIcons?.[u];if(E)return E;let A=u.lastIndexOf(".");if(A>0){let C=u.substring(A).toLowerCase(),D=B?.extensionIcons;return D?.[C]??D?.[C.slice(1)]}return}function YF0(u,B){if(u.includes(":"))return u;if(u in yR.icons||!B)return`${yR.prefix}:${u}`;return`${B}:${u}`}function TF0(u,B){if(u.icon==="none")return;if(u.icon)return YF0(u.icon,B.defaultIconPack);if(!B.showIcons)return;if(u.nodeType==="file"){let E=Y7u(u.name,B);if(E==="none")return;if(E)return YF0(E,B.defaultIconPack)}return`${yR.prefix}:${u.nodeType==="directory"?"folder":"file"}`}var q7u,X7u,W$4,Q7u,G7u,H7u,Y$4=" ",lU,R$4,T$4,O$4,I$4,P$4,j$4,N$4,WF0,i$4,a$4,yR,RF0=14,V$4=4,h$4=16,R7u,m$4,r$4,L7u,$$4,y$4,c$4,g$4,_$4,n$4,p$4,d$4;var O7u=g(()=>{fm();LB();E2();q2();t3();s4();o4();Y4();l7();q7u=/[─━│┃└┗├┣]/,X7u=/[└┗├┣]/,W$4=/[─━]/,Q7u=/^[\s│┃]+$/,G7u=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,H7u=/^\s*%%/;X(x7u,"isBoxDrawingFormat");X(v7u,"inferSegmentWidth");X(S7u,"remapErrorLines");X(W7u,"preprocessBoxDrawing");lU=new cH(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),R$4=X(()=>{lU.reset(),D3()},"clear"),T$4=X(()=>{return lU.records.stack[0]},"getRoot"),O$4=X(()=>lU.records.cnt,"getCount"),I$4=t4.treeView,P$4=X(()=>{return B1(I$4,F4().treeView)},"getConfig"),j$4=X((u,B,E,A,C,D)=>{while(u<=lU.records.stack[lU.records.stack.length-1].level)lU.records.stack.pop();let F={id:lU.records.cnt++,level:u,name:B,nodeType:E,icon:C,cssClass:A,description:D,children:[]};lU.records.stack[lU.records.stack.length-1].children.push(F),lU.records.stack.push(F)},"addNode"),N$4={clear:R$4,addNode:j$4,getRoot:T$4,getCount:O$4,getConfig:P$4,getAccTitle:H3,getAccDescription:q3,getDiagramTitle:X3,setAccDescription:L3,setAccTitle:w3,setDiagramTitle:T3},WF0=N$4,i$4=X((u)=>{D6(u,WF0);for(let B of u.nodes){let E=typeof B.indent==="number"?B.indent:0,A=B.name,C=A.endsWith("/");if(C)A=A.slice(0,-1);let D=C?"directory":"file",F=B.classAnnotation||void 0,U=B.iconAnnotation,z=U!==void 0?U||"none":void 0,k=B.descAnnotation||void 0,f=k?C3(k,F4()):void 0;WF0.addNode(E,A,D,F,z,f)}},"populate"),a$4={parse:X(async(u)=>{let{text:B,lineMap:E}=W7u(u);try{let A=await X9("treeView",B);z0.debug(A),i$4(A)}catch(A){if(E.size>0&&A instanceof Error)A.message=S7u(A.message,E);throw A}},"parse")},yR={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"/>'}}};X(Y7u,"detectIcon");X(YF0,"qualifyIcon");X(TF0,"getNodeIcon");vG([{name:yR.prefix,icons:yR}]);R7u=X((u,B)=>`tv-icon-${u}-${B.replace(/[^\w-]/g,"-")}`,"iconSymbolId"),m$4=X(async(u,B,E,A)=>{let C=new Set,D=X((z)=>{let k=TF0(z,E);if(k)C.add(k);z.children.forEach(D)},"collect");if(D(B),C.size===0)return;let F=await Promise.all([...C].map(async(z)=>({icon:z,svg:await CE(z,{height:RF0,width:RF0})}))),U=u.append("defs");for(let{icon:z,svg:k}of F)U.append("g").attr("id",R7u(A,z)).html(k)},"injectIconDefs"),r$4=X((u,B,E,A,C,D)=>{let F=A.append("g"),U="treeView-node-label";if(E.nodeType==="directory")U+=" treeView-node-dir";if(E.cssClass)U+=` ${E.cssClass}`;let z=RF0+V$4,k=TF0(E,C),f=k!==void 0;if(k)F.append("use").attr("xlink:href",`#${R7u(D,k)}`).attr("x",u+C.paddingX).attr("y",B+C.paddingY).attr("class","treeView-node-icon");let l=F.append("text").text(E.name).attr("dominant-baseline","middle").attr("class",U),{height:b,width:M}=l.node().getBBox(),Z=b+C.paddingY*2,J=u+C.paddingX+(f?z:0);l.attr("x",J),l.attr("y",B+Z/2);let w=J+M,K=M+C.paddingX*2+(f?z:0);if(E.BBox={x:u,y:B,width:K,height:Z},E.cssClass?.split(/\s+/).includes("highlight"))F.insert("rect",":first-child").attr("x",u).attr("y",B+1).attr("width",0).attr("height",Z-2).attr("rx",3).attr("class","treeView-highlight-bg");return{node:E,nodeGroup:F,labelRightEdge:w,centerY:B+Z/2}},"positionLabel"),L7u=X((u,B,E,A,C,D)=>{return u.append("line").attr("x1",B).attr("y1",E).attr("x2",A).attr("y2",C).attr("stroke-width",D).attr("class","treeView-node-line")},"positionLine"),$$4=X((u,B,E,A)=>{let C=0,D=0,F=[],U=X((f,l,b,M)=>{let Z=M*(b.rowIndent+b.paddingX),J=r$4(Z,C,l,f,b,A);F.push(J);let{height:w,width:K}=l.BBox;L7u(f,Z-b.rowIndent,C+w/2,Z,C+w/2,b.lineThickness),D=Math.max(D,Z+K),C+=w},"drawNode"),z=X((f,l=0)=>{U(u,f,E,l),f.children.forEach((J)=>{z(J,l+1)});let{x:b,y:M,height:Z}=f.BBox;if(f.children.length){let{y:J,height:w}=f.children[f.children.length-1].BBox;L7u(u,b+E.paddingX,M+Z,b+E.paddingX,J+w/2+E.lineThickness/2,E.lineThickness)}},"processNode");z(B);let k=F.filter((f)=>f.node.description);if(k.length>0){let l=Math.max(...F.map((b)=>b.labelRightEdge))+h$4;for(let b of k){let Z=b.nodeGroup.append("text").text(b.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",l).attr("y",b.centerY).node().getBBox();D=Math.max(D,l+Z.width+E.paddingX)}}for(let f of F)if(f.node.cssClass?.split(/\s+/).includes("highlight")){let l=f.nodeGroup.select(".treeView-highlight-bg");if(!l.empty()){let b=D-f.node.BBox.x+8;l.attr("width",b),D=Math.max(D,f.node.BBox.x+b+2)}}return{totalHeight:C,totalWidth:D}},"drawTree"),y$4=X(async(u,B,E,A)=>{z0.debug(`Rendering treeView diagram
`+u);let C=A.db,D=C.getRoot(),F=C.getConfig(),U=N1(B);await m$4(U,D,F,B);let z=U.append("g");z.attr("class","tree-view");let{totalHeight:k,totalWidth:f}=$$4(z,D,F,B);U.attr("viewBox",`-${F.lineThickness/2} 0 ${f} ${k}`),y3(U,k,f,F.useMaxWidth)},"draw"),c$4={draw:y$4},g$4=c$4,_$4={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},n$4=X(({treeView:u})=>{let{labelFontSize:B,labelColor:E,lineColor:A,iconColor:C,descriptionColor:D,highlightBg:F,highlightStroke:U}=B1(_$4,u);return`
.treeView-node-label {
font-size: ${B};
fill: ${E};
white-space: pre;
}
.treeView-node-dir {
font-weight: bold;
}
.treeView-node-line {
stroke: ${A};
}
.treeView-node-icon {
color: ${C};
}
.treeView-node-description {
font-size: ${B};
fill: ${D};
font-style: italic;
white-space: pre;
}
.treeView-highlight-bg {
fill: ${F};
stroke: ${U};
stroke-width: 1;
}
`},"styles"),p$4=n$4,d$4={db:WF0,renderer:g$4,parser:a$4,styles:p$4}});var IF0=P1((cR,OF0)=>{(function(B,E){if(typeof cR==="object"&&typeof OF0==="object")OF0.exports=E();else if(typeof define==="function"&&define.amd)define([],E);else if(typeof cR==="object")cR.layoutBase=E();else B.layoutBase=E()})(cR,function(){return function(u){var B={};function E(A){if(B[A])return B[A].exports;var C=B[A]={i:A,l:!1,exports:{}};return u[A].call(C.exports,C,C.exports,E),C.l=!0,C.exports}return E.m=u,E.c=B,E.i=function(A){return A},E.d=function(A,C,D){if(!E.o(A,C))Object.defineProperty(A,C,{configurable:!1,enumerable:!0,get:D})},E.n=function(A){var C=A&&A.__esModule?function(){return A.default}:function(){return A};return E.d(C,"a",C),C},E.o=function(A,C){return Object.prototype.hasOwnProperty.call(A,C)},E.p="",E(E.s=28)}([function(u,B,E){function A(){}A.QUALITY=1,A.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,A.DEFAULT_INCREMENTAL=!1,A.DEFAULT_ANIMATION_ON_LAYOUT=!0,A.DEFAULT_ANIMATION_DURING_LAYOUT=!1,A.DEFAULT_ANIMATION_PERIOD=50,A.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,A.DEFAULT_GRAPH_MARGIN=15,A.NODE_DIMENSIONS_INCLUDE_LABELS=!1,A.SIMPLE_NODE_SIZE=40,A.SIMPLE_NODE_HALF_SIZE=A.SIMPLE_NODE_SIZE/2,A.EMPTY_COMPOUND_NODE_SIZE=40,A.MIN_EDGE_LENGTH=1,A.WORLD_BOUNDARY=1e6,A.INITIAL_WORLD_BOUNDARY=A.WORLD_BOUNDARY/1000,A.WORLD_CENTER_X=1200,A.WORLD_CENTER_Y=900,u.exports=A},function(u,B,E){var A=E(2),C=E(8),D=E(9);function F(z,k,f){A.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=z,this.target=k}F.prototype=Object.create(A.prototype);for(var U in A)F[U]=A[U];F.prototype.getSource=function(){return this.source},F.prototype.getTarget=function(){return this.target},F.prototype.isInterGraph=function(){return this.isInterGraph},F.prototype.getLength=function(){return this.length},F.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},F.prototype.getBendpoints=function(){return this.bendpoints},F.prototype.getLca=function(){return this.lca},F.prototype.getSourceInLca=function(){return this.sourceInLca},F.prototype.getTargetInLca=function(){return this.targetInLca},F.prototype.getOtherEnd=function(z){if(this.source===z)return this.target;else if(this.target===z)return this.source;else throw"Node is not incident with this edge"},F.prototype.getOtherEndInGraph=function(z,k){var f=this.getOtherEnd(z),l=k.getGraphManager().getRoot();while(!0){if(f.getOwner()==k)return f;if(f.getOwner()==l)break;f=f.getOwner().getParent()}return null},F.prototype.updateLength=function(){var z=[,,,,];if(this.isOverlapingSourceAndTarget=C.getIntersection(this.target.getRect(),this.source.getRect(),z),!this.isOverlapingSourceAndTarget){if(this.lengthX=z[0]-z[2],this.lengthY=z[1]-z[3],Math.abs(this.lengthX)<1)this.lengthX=D.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=D.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)}},F.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=D.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=D.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},u.exports=F},function(u,B,E){function A(C){this.vGraphObject=C}u.exports=A},function(u,B,E){var A=E(2),C=E(10),D=E(13),F=E(0),U=E(16),z=E(5);function k(l,b,M,Z){if(M==null&&Z==null)Z=b;if(A.call(this,Z),l.graphManager!=null)l=l.graphManager;if(this.estimatedSize=C.MIN_VALUE,this.inclusionTreeDepth=C.MAX_VALUE,this.vGraphObject=Z,this.edges=[],this.graphManager=l,M!=null&&b!=null)this.rect=new D(b.x,b.y,M.width,M.height);else this.rect=new D}k.prototype=Object.create(A.prototype);for(var f in A)k[f]=A[f];k.prototype.getEdges=function(){return this.edges},k.prototype.getChild=function(){return this.child},k.prototype.getOwner=function(){return this.owner},k.prototype.getWidth=function(){return this.rect.width},k.prototype.setWidth=function(l){this.rect.width=l},k.prototype.getHeight=function(){return this.rect.height},k.prototype.setHeight=function(l){this.rect.height=l},k.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},k.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},k.prototype.getCenter=function(){return new z(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},k.prototype.getLocation=function(){return new z(this.rect.x,this.rect.y)},k.prototype.getRect=function(){return this.rect},k.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},k.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},k.prototype.setRect=function(l,b){this.rect.x=l.x,this.rect.y=l.y,this.rect.width=b.width,this.rect.height=b.height},k.prototype.setCenter=function(l,b){this.rect.x=l-this.rect.width/2,this.rect.y=b-this.rect.height/2},k.prototype.setLocation=function(l,b){this.rect.x=l,this.rect.y=b},k.prototype.moveBy=function(l,b){this.rect.x+=l,this.rect.y+=b},k.prototype.getEdgeListToNode=function(l){var b=[],M,Z=this;return Z.edges.forEach(function(J){if(J.target==l){if(J.source!=Z)throw"Incorrect edge source!";b.push(J)}}),b},k.prototype.getEdgesBetween=function(l){var b=[],M,Z=this;return Z.edges.forEach(function(J){if(!(J.source==Z||J.target==Z))throw"Incorrect edge source and/or target";if(J.target==l||J.source==l)b.push(J)}),b},k.prototype.getNeighborsList=function(){var l=new Set,b=this;return b.edges.forEach(function(M){if(M.source==b)l.add(M.target);else{if(M.target!=b)throw"Incorrect incidency!";l.add(M.source)}}),l},k.prototype.withChildren=function(){var l=new Set,b,M;if(l.add(this),this.child!=null){var Z=this.child.getNodes();for(var J=0;J<Z.length;J++)b=Z[J],M=b.withChildren(),M.forEach(function(w){l.add(w)})}return l},k.prototype.getNoOfChildren=function(){var l=0,b;if(this.child==null)l=1;else{var M=this.child.getNodes();for(var Z=0;Z<M.length;Z++)b=M[Z],l+=b.getNoOfChildren()}if(l==0)l=1;return l},k.prototype.getEstimatedSize=function(){if(this.estimatedSize==C.MIN_VALUE)throw"assert failed";return this.estimatedSize},k.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},k.prototype.scatter=function(){var l,b,M=-F.INITIAL_WORLD_BOUNDARY,Z=F.INITIAL_WORLD_BOUNDARY;l=F.WORLD_CENTER_X+U.nextDouble()*(Z-M)+M;var J=-F.INITIAL_WORLD_BOUNDARY,w=F.INITIAL_WORLD_BOUNDARY;b=F.WORLD_CENTER_Y+U.nextDouble()*(w-J)+J,this.rect.x=l,this.rect.y=b},k.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var l=this.getChild();if(l.updateBounds(!0),this.rect.x=l.getLeft(),this.rect.y=l.getTop(),this.setWidth(l.getRight()-l.getLeft()),this.setHeight(l.getBottom()-l.getTop()),F.NODE_DIMENSIONS_INCLUDE_LABELS){var b=l.getRight()-l.getLeft(),M=l.getBottom()-l.getTop();if(this.labelWidth){if(this.labelPosHorizontal=="left")this.rect.x-=this.labelWidth,this.setWidth(b+this.labelWidth);else if(this.labelPosHorizontal=="center"&&this.labelWidth>b)this.rect.x-=(this.labelWidth-b)/2,this.setWidth(this.labelWidth);else if(this.labelPosHorizontal=="right")this.setWidth(b+this.labelWidth)}if(this.labelHeight){if(this.labelPosVertical=="top")this.rect.y-=this.labelHeight,this.setHeight(M+this.labelHeight);else if(this.labelPosVertical=="center"&&this.labelHeight>M)this.rect.y-=(this.labelHeight-M)/2,this.setHeight(this.labelHeight);else if(this.labelPosVertical=="bottom")this.setHeight(M+this.labelHeight)}}}},k.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==C.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},k.prototype.transform=function(l){var b=this.rect.x;if(b>F.WORLD_BOUNDARY)b=F.WORLD_BOUNDARY;else if(b<-F.WORLD_BOUNDARY)b=-F.WORLD_BOUNDARY;var M=this.rect.y;if(M>F.WORLD_BOUNDARY)M=F.WORLD_BOUNDARY;else if(M<-F.WORLD_BOUNDARY)M=-F.WORLD_BOUNDARY;var Z=new z(b,M),J=l.inverseTransformPoint(Z);this.setLocation(J.x,J.y)},k.prototype.getLeft=function(){return this.rect.x},k.prototype.getRight=function(){return this.rect.x+this.rect.width},k.prototype.getTop=function(){return this.rect.y},k.prototype.getBottom=function(){return this.rect.y+this.rect.height},k.prototype.getParent=function(){if(this.owner==null)return null;return this.owner.getParent()},u.exports=k},function(u,B,E){var A=E(0);function C(){}for(var D in A)C[D]=A[D];C.MAX_ITERATIONS=2500,C.DEFAULT_EDGE_LENGTH=50,C.DEFAULT_SPRING_STRENGTH=0.45,C.DEFAULT_REPULSION_STRENGTH=4500,C.DEFAULT_GRAVITY_STRENGTH=0.4,C.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,C.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,C.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,C.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,C.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,C.DEFAULT_COOLING_FACTOR_INCREMENTAL=0.3,C.COOLING_ADAPTATION_FACTOR=0.33,C.ADAPTATION_LOWER_NODE_LIMIT=1000,C.ADAPTATION_UPPER_NODE_LIMIT=5000,C.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,C.MAX_NODE_DISPLACEMENT=C.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,C.MIN_REPULSION_DIST=C.DEFAULT_EDGE_LENGTH/10,C.CONVERGENCE_CHECK_PERIOD=100,C.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=0.1,C.MIN_EDGE_LENGTH=1,C.GRID_CALCULATION_CHECK_PERIOD=10,u.exports=C},function(u,B,E){function A(C,D){if(C==null&&D==null)this.x=0,this.y=0;else this.x=C,this.y=D}A.prototype.getX=function(){return this.x},A.prototype.getY=function(){return this.y},A.prototype.setX=function(C){this.x=C},A.prototype.setY=function(C){this.y=C},A.prototype.getDifference=function(C){return new DimensionD(this.x-C.x,this.y-C.y)},A.prototype.getCopy=function(){return new A(this.x,this.y)},A.prototype.translate=function(C){return this.x+=C.width,this.y+=C.height,this},u.exports=A},function(u,B,E){var A=E(2),C=E(10),D=E(0),F=E(7),U=E(3),z=E(1),k=E(13),f=E(12),l=E(11);function b(Z,J,w){if(A.call(this,w),this.estimatedSize=C.MIN_VALUE,this.margin=D.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=Z,J!=null&&J instanceof F)this.graphManager=J;else if(J!=null&&J instanceof Layout)this.graphManager=J.graphManager}b.prototype=Object.create(A.prototype);for(var M in A)b[M]=A[M];b.prototype.getNodes=function(){return this.nodes},b.prototype.getEdges=function(){return this.edges},b.prototype.getGraphManager=function(){return this.graphManager},b.prototype.getParent=function(){return this.parent},b.prototype.getLeft=function(){return this.left},b.prototype.getRight=function(){return this.right},b.prototype.getTop=function(){return this.top},b.prototype.getBottom=function(){return this.bottom},b.prototype.isConnected=function(){return this.isConnected},b.prototype.add=function(Z,J,w){if(J==null&&w==null){var K=Z;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(K)>-1)throw"Node already in graph!";return K.owner=this,this.getNodes().push(K),K}else{var Q=Z;if(!(this.getNodes().indexOf(J)>-1&&this.getNodes().indexOf(w)>-1))throw"Source or target not in graph!";if(!(J.owner==w.owner&&J.owner==this))throw"Both owners must be this graph!";if(J.owner!=w.owner)return null;if(Q.source=J,Q.target=w,Q.isInterGraph=!1,this.getEdges().push(Q),J.edges.push(Q),w!=J)w.edges.push(Q);return Q}},b.prototype.remove=function(Z){var J=Z;if(Z instanceof U){if(J==null)throw"Node is null!";if(!(J.owner!=null&&J.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";var w=J.edges.slice(),K,Q=w.length;for(var G=0;G<Q;G++)if(K=w[G],K.isInterGraph)this.graphManager.remove(K);else K.source.owner.remove(K);var L=this.nodes.indexOf(J);if(L==-1)throw"Node not in owner node list!";this.nodes.splice(L,1)}else if(Z instanceof z){var K=Z;if(K==null)throw"Edge is null!";if(!(K.source!=null&&K.target!=null))throw"Source and/or target is null!";if(!(K.source.owner!=null&&K.target.owner!=null&&K.source.owner==this&&K.target.owner==this))throw"Source and/or target owner is invalid!";var H=K.source.edges.indexOf(K),q=K.target.edges.indexOf(K);if(!(H>-1&&q>-1))throw"Source and/or target doesn't know this edge!";if(K.source.edges.splice(H,1),K.target!=K.source)K.target.edges.splice(q,1);var L=K.source.owner.getEdges().indexOf(K);if(L==-1)throw"Not in owner's edge list!";K.source.owner.getEdges().splice(L,1)}},b.prototype.updateLeftTop=function(){var{MAX_VALUE:Z,MAX_VALUE:J}=C,w,K,Q,G=this.getNodes(),L=G.length;for(var H=0;H<L;H++){var q=G[H];if(w=q.getTop(),K=q.getLeft(),Z>w)Z=w;if(J>K)J=K}if(Z==C.MAX_VALUE)return null;if(G[0].getParent().paddingLeft!=null)Q=G[0].getParent().paddingLeft;else Q=this.margin;return this.left=J-Q,this.top=Z-Q,new f(this.left,this.top)},b.prototype.updateBounds=function(Z){var J=C.MAX_VALUE,w=-C.MAX_VALUE,K=C.MAX_VALUE,Q=-C.MAX_VALUE,G,L,H,q,x,v=this.nodes,W=v.length;for(var S=0;S<W;S++){var T=v[S];if(Z&&T.child!=null)T.updateBounds();if(G=T.getLeft(),L=T.getRight(),H=T.getTop(),q=T.getBottom(),J>G)J=G;if(w<L)w=L;if(K>H)K=H;if(Q<q)Q=q}var R=new k(J,K,w-J,Q-K);if(J==C.MAX_VALUE)this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom();if(v[0].getParent().paddingLeft!=null)x=v[0].getParent().paddingLeft;else x=this.margin;this.left=R.x-x,this.right=R.x+R.width+x,this.top=R.y-x,this.bottom=R.y+R.height+x},b.calculateBounds=function(Z){var J=C.MAX_VALUE,w=-C.MAX_VALUE,K=C.MAX_VALUE,Q=-C.MAX_VALUE,G,L,H,q,x=Z.length;for(var v=0;v<x;v++){var W=Z[v];if(G=W.getLeft(),L=W.getRight(),H=W.getTop(),q=W.getBottom(),J>G)J=G;if(w<L)w=L;if(K>H)K=H;if(Q<q)Q=q}var S=new k(J,K,w-J,Q-K);return S},b.prototype.getInclusionTreeDepth=function(){if(this==this.graphManager.getRoot())return 1;else return this.parent.getInclusionTreeDepth()},b.prototype.getEstimatedSize=function(){if(this.estimatedSize==C.MIN_VALUE)throw"assert failed";return this.estimatedSize},b.prototype.calcEstimatedSize=function(){var Z=0,J=this.nodes,w=J.length;for(var K=0;K<w;K++){var Q=J[K];Z+=Q.calcEstimatedSize()}if(Z==0)this.estimatedSize=D.EMPTY_COMPOUND_NODE_SIZE;else this.estimatedSize=Z/Math.sqrt(this.nodes.length);return this.estimatedSize},b.prototype.updateConnected=function(){var Z=this;if(this.nodes.length==0){this.isConnected=!0;return}var J=new l,w=new Set,K=this.nodes[0],Q,G,L=K.withChildren();L.forEach(function(S){J.push(S),w.add(S)});while(J.length!==0){K=J.shift(),Q=K.getEdges();var H=Q.length;for(var q=0;q<H;q++){var x=Q[q];if(G=x.getOtherEndInGraph(K,this),G!=null&&!w.has(G)){var v=G.withChildren();v.forEach(function(S){J.push(S),w.add(S)})}}}if(this.isConnected=!1,w.size>=this.nodes.length){var W=0;if(w.forEach(function(S){if(S.owner==Z)W++}),W==this.nodes.length)this.isConnected=!0}},u.exports=b},function(u,B,E){var A,C=E(1);function D(F){A=E(6),this.layout=F,this.graphs=[],this.edges=[]}D.prototype.addRoot=function(){var F=this.layout.newGraph(),U=this.layout.newNode(null),z=this.add(F,U);return this.setRootGraph(z),this.rootGraph},D.prototype.add=function(F,U,z,k,f){if(z==null&&k==null&&f==null){if(F==null)throw"Graph is null!";if(U==null)throw"Parent node is null!";if(this.graphs.indexOf(F)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(F),F.parent!=null)throw"Already has a parent!";if(U.child!=null)throw"Already has a child!";return F.parent=U,U.child=F,F}else{f=z,k=U,z=F;var l=k.getOwner(),b=f.getOwner();if(!(l!=null&&l.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(b!=null&&b.getGraphManager()==this))throw"Target not in this graph mgr!";if(l==b)return z.isInterGraph=!1,l.add(z,k,f);else{if(z.isInterGraph=!0,z.source=k,z.target=f,this.edges.indexOf(z)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(z),!(z.source!=null&&z.target!=null))throw"Edge source and/or target is null!";if(!(z.source.edges.indexOf(z)==-1&&z.target.edges.indexOf(z)==-1))throw"Edge already in source and/or target incidency list!";return z.source.edges.push(z),z.target.edges.push(z),z}}},D.prototype.remove=function(F){if(F instanceof A){var U=F;if(U.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(U==this.rootGraph||U.parent!=null&&U.parent.graphManager==this))throw"Invalid parent node!";var z=[];z=z.concat(U.getEdges());var k,f=z.length;for(var l=0;l<f;l++)k=z[l],U.remove(k);var b=[];b=b.concat(U.getNodes());var M;f=b.length;for(var l=0;l<f;l++)M=b[l],U.remove(M);if(U==this.rootGraph)this.setRootGraph(null);var Z=this.graphs.indexOf(U);this.graphs.splice(Z,1),U.parent=null}else if(F instanceof C){if(k=F,k==null)throw"Edge is null!";if(!k.isInterGraph)throw"Not an inter-graph edge!";if(!(k.source!=null&&k.target!=null))throw"Source and/or target is null!";if(!(k.source.edges.indexOf(k)!=-1&&k.target.edges.indexOf(k)!=-1))throw"Source and/or target doesn't know this edge!";var Z=k.source.edges.indexOf(k);if(k.source.edges.splice(Z,1),Z=k.target.edges.indexOf(k),k.target.edges.splice(Z,1),!(k.source.owner!=null&&k.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(k.source.owner.getGraphManager().edges.indexOf(k)==-1)throw"Not in owner graph manager's edge list!";var Z=k.source.owner.getGraphManager().edges.indexOf(k);k.source.owner.getGraphManager().edges.splice(Z,1)}},D.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},D.prototype.getGraphs=function(){return this.graphs},D.prototype.getAllNodes=function(){if(this.allNodes==null){var F=[],U=this.getGraphs(),z=U.length;for(var k=0;k<z;k++)F=F.concat(U[k].getNodes());this.allNodes=F}return this.allNodes},D.prototype.resetAllNodes=function(){this.allNodes=null},D.prototype.resetAllEdges=function(){this.allEdges=null},D.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},D.prototype.getAllEdges=function(){if(this.allEdges==null){var F=[],U=this.getGraphs(),z=U.length;for(var k=0;k<U.length;k++)F=F.concat(U[k].getEdges());F=F.concat(this.edges),this.allEdges=F}return this.allEdges},D.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},D.prototype.setAllNodesToApplyGravitation=function(F){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=F},D.prototype.getRoot=function(){return this.rootGraph},D.prototype.setRootGraph=function(F){if(F.getGraphManager()!=this)throw"Root not in this graph mgr!";if(this.rootGraph=F,F.parent==null)F.parent=this.layout.newNode("Root node")},D.prototype.getLayout=function(){return this.layout},D.prototype.isOneAncestorOfOther=function(F,U){if(!(F!=null&&U!=null))throw"assert failed";if(F==U)return!0;var z=F.getOwner(),k;do{if(k=z.getParent(),k==null)break;if(k==U)return!0;if(z=k.getOwner(),z==null)break}while(!0);z=U.getOwner();do{if(k=z.getParent(),k==null)break;if(k==F)return!0;if(z=k.getOwner(),z==null)break}while(!0);return!1},D.prototype.calcLowestCommonAncestors=function(){var F,U,z,k,f,l=this.getAllEdges(),b=l.length;for(var M=0;M<b;M++){if(F=l[M],U=F.source,z=F.target,F.lca=null,F.sourceInLca=U,F.targetInLca=z,U==z){F.lca=U.getOwner();continue}k=U.getOwner();while(F.lca==null){F.targetInLca=z,f=z.getOwner();while(F.lca==null){if(f==k){F.lca=f;break}if(f==this.rootGraph)break;if(F.lca!=null)throw"assert failed";F.targetInLca=f.getParent(),f=F.targetInLca.getOwner()}if(k==this.rootGraph)break;if(F.lca==null)F.sourceInLca=k.getParent(),k=F.sourceInLca.getOwner()}if(F.lca==null)throw"assert failed"}},D.prototype.calcLowestCommonAncestor=function(F,U){if(F==U)return F.getOwner();var z=F.getOwner();do{if(z==null)break;var k=U.getOwner();do{if(k==null)break;if(k==z)return k;k=k.getParent().getOwner()}while(!0);z=z.getParent().getOwner()}while(!0);return z},D.prototype.calcInclusionTreeDepths=function(F,U){if(F==null&&U==null)F=this.rootGraph,U=1;var z,k=F.getNodes(),f=k.length;for(var l=0;l<f;l++)if(z=k[l],z.inclusionTreeDepth=U,z.child!=null)this.calcInclusionTreeDepths(z.child,U+1)},D.prototype.includesInvalidEdge=function(){var F,U=[],z=this.edges.length;for(var k=0;k<z;k++)if(F=this.edges[k],this.isOneAncestorOfOther(F.source,F.target))U.push(F);for(var k=0;k<U.length;k++)this.remove(U[k]);return!1},u.exports=D},function(u,B,E){var A=E(12);function C(){}C.calcSeparationAmount=function(D,F,U,z){if(!D.intersects(F))throw"assert failed";var k=[,,];if(this.decideDirectionsForOverlappingNodes(D,F,k),U[0]=Math.min(D.getRight(),F.getRight())-Math.max(D.x,F.x),U[1]=Math.min(D.getBottom(),F.getBottom())-Math.max(D.y,F.y),D.getX()<=F.getX()&&D.getRight()>=F.getRight())U[0]+=Math.min(F.getX()-D.getX(),D.getRight()-F.getRight());else if(F.getX()<=D.getX()&&F.getRight()>=D.getRight())U[0]+=Math.min(D.getX()-F.getX(),F.getRight()-D.getRight());if(D.getY()<=F.getY()&&D.getBottom()>=F.getBottom())U[1]+=Math.min(F.getY()-D.getY(),D.getBottom()-F.getBottom());else if(F.getY()<=D.getY()&&F.getBottom()>=D.getBottom())U[1]+=Math.min(D.getY()-F.getY(),F.getBottom()-D.getBottom());var f=Math.abs((F.getCenterY()-D.getCenterY())/(F.getCenterX()-D.getCenterX()));if(F.getCenterY()===D.getCenterY()&&F.getCenterX()===D.getCenterX())f=1;var l=f*U[0],b=U[1]/f;if(U[0]<b)b=U[0];else l=U[1];U[0]=-1*k[0]*(b/2+z),U[1]=-1*k[1]*(l/2+z)},C.decideDirectionsForOverlappingNodes=function(D,F,U){if(D.getCenterX()<F.getCenterX())U[0]=-1;else U[0]=1;if(D.getCenterY()<F.getCenterY())U[1]=-1;else U[1]=1},C.getIntersection2=function(D,F,U){var z=D.getCenterX(),k=D.getCenterY(),f=F.getCenterX(),l=F.getCenterY();if(D.intersects(F))return U[0]=z,U[1]=k,U[2]=f,U[3]=l,!0;var b=D.getX(),M=D.getY(),Z=D.getRight(),J=D.getX(),w=D.getBottom(),K=D.getRight(),Q=D.getWidthHalf(),G=D.getHeightHalf(),L=F.getX(),H=F.getY(),q=F.getRight(),x=F.getX(),v=F.getBottom(),W=F.getRight(),S=F.getWidthHalf(),T=F.getHeightHalf(),R=!1,Y=!1;if(z===f){if(k>l)return U[0]=z,U[1]=M,U[2]=f,U[3]=v,!1;else if(k<l)return U[0]=z,U[1]=w,U[2]=f,U[3]=H,!1}else if(k===l){if(z>f)return U[0]=b,U[1]=k,U[2]=q,U[3]=l,!1;else if(z<f)return U[0]=Z,U[1]=k,U[2]=L,U[3]=l,!1}else{var a=D.height/D.width,I=F.height/F.width,O=(l-k)/(f-z),i=void 0,N=void 0,V=void 0,h=void 0,r=void 0,m=void 0;if(-a===O)if(z>f)U[0]=J,U[1]=w,R=!0;else U[0]=Z,U[1]=M,R=!0;else if(a===O)if(z>f)U[0]=b,U[1]=M,R=!0;else U[0]=K,U[1]=w,R=!0;if(-I===O)if(f>z)U[2]=x,U[3]=v,Y=!0;else U[2]=q,U[3]=H,Y=!0;else if(I===O)if(f>z)U[2]=L,U[3]=H,Y=!0;else U[2]=W,U[3]=v,Y=!0;if(R&&Y)return!1;if(z>f)if(k>l)i=this.getCardinalDirection(a,O,4),N=this.getCardinalDirection(I,O,2);else i=this.getCardinalDirection(-a,O,3),N=this.getCardinalDirection(-I,O,1);else if(k>l)i=this.getCardinalDirection(-a,O,1),N=this.getCardinalDirection(-I,O,3);else i=this.getCardinalDirection(a,O,2),N=this.getCardinalDirection(I,O,4);if(!R)switch(i){case 1:h=M,V=z+-G/O,U[0]=V,U[1]=h;break;case 2:V=K,h=k+Q*O,U[0]=V,U[1]=h;break;case 3:h=w,V=z+G/O,U[0]=V,U[1]=h;break;case 4:V=J,h=k+-Q*O,U[0]=V,U[1]=h;break}if(!Y)switch(N){case 1:m=H,r=f+-T/O,U[2]=r,U[3]=m;break;case 2:r=W,m=l+S*O,U[2]=r,U[3]=m;break;case 3:m=v,r=f+T/O,U[2]=r,U[3]=m;break;case 4:r=x,m=l+-S*O,U[2]=r,U[3]=m;break}}return!1},C.getCardinalDirection=function(D,F,U){if(D>F)return U;else return 1+U%4},C.getIntersection=function(D,F,U,z){if(z==null)return this.getIntersection2(D,F,U);var{x:k,y:f}=D,l=F.x,b=F.y,M=U.x,Z=U.y,J=z.x,w=z.y,K=void 0,Q=void 0,G=void 0,L=void 0,H=void 0,q=void 0,x=void 0,v=void 0,W=void 0;if(G=b-f,H=k-l,x=l*f-k*b,L=w-Z,q=M-J,v=J*Z-M*w,W=G*q-L*H,W===0)return null;return K=(H*v-q*x)/W,Q=(L*x-G*v)/W,new A(K,Q)},C.angleOfVector=function(D,F,U,z){var k=void 0;if(D!==U){if(k=Math.atan((z-F)/(U-D)),U<D)k+=Math.PI;else if(z<F)k+=this.TWO_PI}else if(z<F)k=this.ONE_AND_HALF_PI;else k=this.HALF_PI;return k},C.doIntersect=function(D,F,U,z){var{x:k,y:f}=D,l=F.x,b=F.y,M=U.x,Z=U.y,J=z.x,w=z.y,K=(l-k)*(w-Z)-(J-M)*(b-f);if(K===0)return!1;else{var Q=((w-Z)*(J-k)+(M-J)*(w-f))/K,G=((f-b)*(J-k)+(l-k)*(w-f))/K;return 0<Q&&Q<1&&0<G&&G<1}},C.findCircleLineIntersections=function(D,F,U,z,k,f,l){var b=(U-D)*(U-D)+(z-F)*(z-F),M=2*((D-k)*(U-D)+(F-f)*(z-F)),Z=(D-k)*(D-k)+(F-f)*(F-f)-l*l,J=M*M-4*b*Z;if(J>=0){var w=(-M+Math.sqrt(M*M-4*b*Z))/(2*b),K=(-M-Math.sqrt(M*M-4*b*Z))/(2*b),Q=null;if(w>=0&&w<=1)return[w];if(K>=0&&K<=1)return[K];return Q}else return null},C.HALF_PI=0.5*Math.PI,C.ONE_AND_HALF_PI=1.5*Math.PI,C.TWO_PI=2*Math.PI,C.THREE_PI=3*Math.PI,u.exports=C},function(u,B,E){function A(){}A.sign=function(C){if(C>0)return 1;else if(C<0)return-1;else return 0},A.floor=function(C){return C<0?Math.ceil(C):Math.floor(C)},A.ceil=function(C){return C<0?Math.floor(C):Math.ceil(C)},u.exports=A},function(u,B,E){function A(){}A.MAX_VALUE=2147483647,A.MIN_VALUE=-2147483648,u.exports=A},function(u,B,E){var A=function(){function k(f,l){for(var b=0;b<l.length;b++){var M=l[b];if(M.enumerable=M.enumerable||!1,M.configurable=!0,"value"in M)M.writable=!0;Object.defineProperty(f,M.key,M)}}return function(f,l,b){if(l)k(f.prototype,l);if(b)k(f,b);return f}}();function C(k,f){if(!(k instanceof f))throw TypeError("Cannot call a class as a function")}var D=function(f){return{value:f,next:null,prev:null}},F=function(f,l,b,M){if(f!==null)f.next=l;else M.head=l;if(b!==null)b.prev=l;else M.tail=l;return l.prev=f,l.next=b,M.length++,l},U=function(f,l){var{prev:b,next:M}=f;if(b!==null)b.next=M;else l.head=M;if(M!==null)M.prev=b;else l.tail=b;return f.prev=f.next=null,l.length--,f},z=function(){function k(f){var l=this;if(C(this,k),this.length=0,this.head=null,this.tail=null,f!=null)f.forEach(function(b){return l.push(b)})}return A(k,[{key:"size",value:function(){return this.length}},{key:"insertBefore",value:function(l,b){return F(b.prev,D(l),b,this)}},{key:"insertAfter",value:function(l,b){return F(b,D(l),b.next,this)}},{key:"insertNodeBefore",value:function(l,b){return F(b.prev,l,b,this)}},{key:"insertNodeAfter",value:function(l,b){return F(b,l,b.next,this)}},{key:"push",value:function(l){return F(this.tail,D(l),null,this)}},{key:"unshift",value:function(l){return F(null,D(l),this.head,this)}},{key:"remove",value:function(l){return U(l,this)}},{key:"pop",value:function(){return U(this.tail,this).value}},{key:"popNode",value:function(){return U(this.tail,this)}},{key:"shift",value:function(){return U(this.head,this).value}},{key:"shiftNode",value:function(){return U(this.head,this)}},{key:"get_object_at",value:function(l){if(l<=this.length()){var b=1,M=this.head;while(b<l)M=M.next,b++;return M.value}}},{key:"set_object_at",value:function(l,b){if(l<=this.length()){var M=1,Z=this.head;while(M<l)Z=Z.next,M++;Z.value=b}}}]),k}();u.exports=z},function(u,B,E){function A(C,D,F){if(this.x=null,this.y=null,C==null&&D==null&&F==null)this.x=0,this.y=0;else if(typeof C=="number"&&typeof D=="number"&&F==null)this.x=C,this.y=D;else if(C.constructor.name=="Point"&&D==null&&F==null)F=C,this.x=F.x,this.y=F.y}A.prototype.getX=function(){return this.x},A.prototype.getY=function(){return this.y},A.prototype.getLocation=function(){return new A(this.x,this.y)},A.prototype.setLocation=function(C,D,F){if(C.constructor.name=="Point"&&D==null&&F==null)F=C,this.setLocation(F.x,F.y);else if(typeof C=="number"&&typeof D=="number"&&F==null)if(parseInt(C)==C&&parseInt(D)==D)this.move(C,D);else this.x=Math.floor(C+0.5),this.y=Math.floor(D+0.5)},A.prototype.move=function(C,D){this.x=C,this.y=D},A.prototype.translate=function(C,D){this.x+=C,this.y+=D},A.prototype.equals=function(C){if(C.constructor.name=="Point"){var D=C;return this.x==D.x&&this.y==D.y}return this==C},A.prototype.toString=function(){return new A().constructor.name+"[x="+this.x+",y="+this.y+"]"},u.exports=A},function(u,B,E){function A(C,D,F,U){if(this.x=0,this.y=0,this.width=0,this.height=0,C!=null&&D!=null&&F!=null&&U!=null)this.x=C,this.y=D,this.width=F,this.height=U}A.prototype.getX=function(){return this.x},A.prototype.setX=function(C){this.x=C},A.prototype.getY=function(){return this.y},A.prototype.setY=function(C){this.y=C},A.prototype.getWidth=function(){return this.width},A.prototype.setWidth=function(C){this.width=C},A.prototype.getHeight=function(){return this.height},A.prototype.setHeight=function(C){this.height=C},A.prototype.getRight=function(){return this.x+this.width},A.prototype.getBottom=function(){return this.y+this.height},A.prototype.intersects=function(C){if(this.getRight()<C.x)return!1;if(this.getBottom()<C.y)return!1;if(C.getRight()<this.x)return!1;if(C.getBottom()<this.y)return!1;return!0},A.prototype.getCenterX=function(){return this.x+this.width/2},A.prototype.getMinX=function(){return this.getX()},A.prototype.getMaxX=function(){return this.getX()+this.width},A.prototype.getCenterY=function(){return this.y+this.height/2},A.prototype.getMinY=function(){return this.getY()},A.prototype.getMaxY=function(){return this.getY()+this.height},A.prototype.getWidthHalf=function(){return this.width/2},A.prototype.getHeightHalf=function(){return this.height/2},u.exports=A},function(u,B,E){var A=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(D){return typeof D}:function(D){return D&&typeof Symbol==="function"&&D.constructor===Symbol&&D!==Symbol.prototype?"symbol":typeof D};function C(){}C.lastID=0,C.createID=function(D){if(C.isPrimitive(D))return D;if(D.uniqueID!=null)return D.uniqueID;return D.uniqueID=C.getString(),C.lastID++,D.uniqueID},C.getString=function(D){if(D==null)D=C.lastID;return"Object#"+D},C.isPrimitive=function(D){var F=typeof D>"u"?"undefined":A(D);return D==null||F!="object"&&F!="function"},u.exports=C},function(u,B,E){function A(M){if(Array.isArray(M)){for(var Z=0,J=Array(M.length);Z<M.length;Z++)J[Z]=M[Z];return J}else return Array.from(M)}var C=E(0),D=E(7),F=E(3),U=E(1),z=E(6),k=E(5),f=E(17),l=E(29);function b(M){if(l.call(this),this.layoutQuality=C.QUALITY,this.createBendsAsNeeded=C.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=C.DEFAULT_INCREMENTAL,this.animationOnLayout=C.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=C.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=C.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=C.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new D(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,M!=null)this.isRemoteUse=M}b.RANDOM_SEED=1,b.prototype=Object.create(l.prototype),b.prototype.getGraphManager=function(){return this.graphManager},b.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},b.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},b.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},b.prototype.newGraphManager=function(){var M=new D(this);return this.graphManager=M,M},b.prototype.newGraph=function(M){return new z(null,this.graphManager,M)},b.prototype.newNode=function(M){return new F(this.graphManager,M)},b.prototype.newEdge=function(M){return new U(null,null,M)},b.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},b.prototype.runLayout=function(){if(this.isLayoutFinished=!1,this.tilingPreLayout)this.tilingPreLayout();this.initParameters();var M;if(this.checkLayoutSuccess())M=!1;else M=this.layout();if(C.ANIMATE==="during")return!1;if(M){if(!this.isSubLayout)this.doPostLayout()}if(this.tilingPostLayout)this.tilingPostLayout();return this.isLayoutFinished=!0,M},b.prototype.doPostLayout=function(){if(!this.incremental)this.transform();this.update()},b.prototype.update2=function(){if(this.createBendsAsNeeded)this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges();if(!this.isRemoteUse){var M,Z=this.graphManager.getAllEdges();for(var J=0;J<Z.length;J++)M=Z[J];var w,K=this.graphManager.getRoot().getNodes();for(var J=0;J<K.length;J++)w=K[J];this.update(this.graphManager.getRoot())}},b.prototype.update=function(M){if(M==null)this.update2();else if(M instanceof F){var Z=M;if(Z.getChild()!=null){var J=Z.getChild().getNodes();for(var w=0;w<J.length;w++)update(J[w])}if(Z.vGraphObject!=null){var K=Z.vGraphObject;K.update(Z)}}else if(M instanceof U){var Q=M;if(Q.vGraphObject!=null){var G=Q.vGraphObject;G.update(Q)}}else if(M instanceof z){var L=M;if(L.vGraphObject!=null){var H=L.vGraphObject;H.update(L)}}},b.prototype.initParameters=function(){if(!this.isSubLayout)this.layoutQuality=C.QUALITY,this.animationDuringLayout=C.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=C.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=C.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=C.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=C.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=C.DEFAULT_UNIFORM_LEAF_NODE_SIZES;if(this.animationDuringLayout)this.animationOnLayout=!1},b.prototype.transform=function(M){if(M==null)this.transform(new k(0,0));else{var Z=new f,J=this.graphManager.getRoot().updateLeftTop();if(J!=null){Z.setWorldOrgX(M.x),Z.setWorldOrgY(M.y),Z.setDeviceOrgX(J.x),Z.setDeviceOrgY(J.y);var w=this.getAllNodes(),K;for(var Q=0;Q<w.length;Q++)K=w[Q],K.transform(Z)}}},b.prototype.positionNodesRandomly=function(M){if(M==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else{var Z,J,w=M.getNodes();for(var K=0;K<w.length;K++)if(Z=w[K],J=Z.getChild(),J==null)Z.scatter();else if(J.getNodes().length==0)Z.scatter();else this.positionNodesRandomly(J),Z.updateBounds()}},b.prototype.getFlatForest=function(){var M=[],Z=!0,J=this.graphManager.getRoot().getNodes(),w=!0;for(var K=0;K<J.length;K++)if(J[K].getChild()!=null)w=!1;if(!w)return M;var Q=new Set,G=[],L=new Map,H=[];H=H.concat(J);while(H.length>0&&Z){G.push(H[0]);while(G.length>0&&Z){var q=G[0];G.splice(0,1),Q.add(q);var x=q.getEdges();for(var K=0;K<x.length;K++){var v=x[K].getOtherEnd(q);if(L.get(q)!=v)if(!Q.has(v))G.push(v),L.set(v,q);else{Z=!1;break}}}if(!Z)M=[];else{var W=[].concat(A(Q));M.push(W);for(var K=0;K<W.length;K++){var S=W[K],T=H.indexOf(S);if(T>-1)H.splice(T,1)}Q=new Set,L=new Map}}return M},b.prototype.createDummyNodesForBendpoints=function(M){var Z=[],J=M.source,w=this.graphManager.calcLowestCommonAncestor(M.source,M.target);for(var K=0;K<M.bendpoints.length;K++){var Q=this.newNode(null);Q.setRect(new Point(0,0),new Dimension(1,1)),w.add(Q);var G=this.newEdge(null);this.graphManager.add(G,J,Q),Z.add(Q),J=Q}var G=this.newEdge(null);if(this.graphManager.add(G,J,M.target),this.edgeToDummyNodes.set(M,Z),M.isInterGraph())this.graphManager.remove(M);else w.remove(M);return Z},b.prototype.createBendpointsFromDummyNodes=function(){var M=[];M=M.concat(this.graphManager.getAllEdges()),M=[].concat(A(this.edgeToDummyNodes.keys())).concat(M);for(var Z=0;Z<M.length;Z++){var J=M[Z];if(J.bendpoints.length>0){var w=this.edgeToDummyNodes.get(J);for(var K=0;K<w.length;K++){var Q=w[K],G=new k(Q.getCenterX(),Q.getCenterY()),L=J.bendpoints.get(K);L.x=G.x,L.y=G.y,Q.getOwner().remove(Q)}this.graphManager.add(J,J.source,J.target)}}},b.transform=function(M,Z,J,w){if(J!=null&&w!=null){var K=Z;if(M<=50){var Q=Z/J;K-=(Z-Q)/50*(50-M)}else{var G=Z*w;K+=(G-Z)/50*(M-50)}return K}else{var L,H;if(M<=50)L=9*Z/500,H=Z/10;else L=9*Z/50,H=-8*Z;return L*M+H}},b.findCenterOfTree=function(M){var Z=[];Z=Z.concat(M);var J=[],w=new Map,K=!1,Q=null;if(Z.length==1||Z.length==2)K=!0,Q=Z[0];for(var G=0;G<Z.length;G++){var L=Z[G],H=L.getNeighborsList().size;if(w.set(L,L.getNeighborsList().size),H==1)J.push(L)}var q=[];q=q.concat(J);while(!K){var x=[];x=x.concat(q),q=[];for(var G=0;G<Z.length;G++){var L=Z[G],v=Z.indexOf(L);if(v>=0)Z.splice(v,1);var W=L.getNeighborsList();W.forEach(function(R){if(J.indexOf(R)<0){var Y=w.get(R),a=Y-1;if(a==1)q.push(R);w.set(R,a)}})}if(J=J.concat(q),Z.length==1||Z.length==2)K=!0,Q=Z[0]}return Q},b.prototype.setGraphManager=function(M){this.graphManager=M},u.exports=b},function(u,B,E){function A(){}A.seed=1,A.x=0,A.nextDouble=function(){return A.x=Math.sin(A.seed++)*1e4,A.x-Math.floor(A.x)},u.exports=A},function(u,B,E){var A=E(5);function C(D,F){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}C.prototype.getWorldOrgX=function(){return this.lworldOrgX},C.prototype.setWorldOrgX=function(D){this.lworldOrgX=D},C.prototype.getWorldOrgY=function(){return this.lworldOrgY},C.prototype.setWorldOrgY=function(D){this.lworldOrgY=D},C.prototype.getWorldExtX=function(){return this.lworldExtX},C.prototype.setWorldExtX=function(D){this.lworldExtX=D},C.prototype.getWorldExtY=function(){return this.lworldExtY},C.prototype.setWorldExtY=function(D){this.lworldExtY=D},C.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},C.prototype.setDeviceOrgX=function(D){this.ldeviceOrgX=D},C.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},C.prototype.setDeviceOrgY=function(D){this.ldeviceOrgY=D},C.prototype.getDeviceExtX=function(){return this.ldeviceExtX},C.prototype.setDeviceExtX=function(D){this.ldeviceExtX=D},C.prototype.getDeviceExtY=function(){return this.ldeviceExtY},C.prototype.setDeviceExtY=function(D){this.ldeviceExtY=D},C.prototype.transformX=function(D){var F=0,U=this.lworldExtX;if(U!=0)F=this.ldeviceOrgX+(D-this.lworldOrgX)*this.ldeviceExtX/U;return F},C.prototype.transformY=function(D){var F=0,U=this.lworldExtY;if(U!=0)F=this.ldeviceOrgY+(D-this.lworldOrgY)*this.ldeviceExtY/U;return F},C.prototype.inverseTransformX=function(D){var F=0,U=this.ldeviceExtX;if(U!=0)F=this.lworldOrgX+(D-this.ldeviceOrgX)*this.lworldExtX/U;return F},C.prototype.inverseTransformY=function(D){var F=0,U=this.ldeviceExtY;if(U!=0)F=this.lworldOrgY+(D-this.ldeviceOrgY)*this.lworldExtY/U;return F},C.prototype.inverseTransformPoint=function(D){var F=new A(this.inverseTransformX(D.x),this.inverseTransformY(D.y));return F},u.exports=C},function(u,B,E){function A(l){if(Array.isArray(l)){for(var b=0,M=Array(l.length);b<l.length;b++)M[b]=l[b];return M}else return Array.from(l)}var C=E(15),D=E(4),F=E(0),U=E(8),z=E(9);function k(){C.call(this),this.useSmartIdealEdgeLengthCalculation=D.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.displacementThresholdPerNode=3*D.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=D.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=D.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=D.MAX_ITERATIONS}k.prototype=Object.create(C.prototype);for(var f in C)k[f]=C[f];k.prototype.initParameters=function(){C.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=D.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},k.prototype.calcIdealEdgeLengths=function(){var l,b,M,Z,J,w,K,Q=this.getGraphManager().getAllEdges();for(var G=0;G<Q.length;G++)if(l=Q[G],b=l.idealLength,l.isInterGraph){if(Z=l.getSource(),J=l.getTarget(),w=l.getSourceInLca().getEstimatedSize(),K=l.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation)l.idealLength+=w+K-2*F.SIMPLE_NODE_SIZE;M=l.getLca().getInclusionTreeDepth(),l.idealLength+=b*D.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(Z.getInclusionTreeDepth()+J.getInclusionTreeDepth()-2*M)}},k.prototype.initSpringEmbedder=function(){var l=this.getAllNodes().length;if(this.incremental){if(l>D.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(this.coolingFactor*D.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(l-D.ADAPTATION_LOWER_NODE_LIMIT)/(D.ADAPTATION_UPPER_NODE_LIMIT-D.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-D.COOLING_ADAPTATION_FACTOR));this.maxNodeDisplacement=D.MAX_NODE_DISPLACEMENT_INCREMENTAL}else{if(l>D.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(D.COOLING_ADAPTATION_FACTOR,1-(l-D.ADAPTATION_LOWER_NODE_LIMIT)/(D.ADAPTATION_UPPER_NODE_LIMIT-D.ADAPTATION_LOWER_NODE_LIMIT)*(1-D.COOLING_ADAPTATION_FACTOR));else this.coolingFactor=1;this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=D.MAX_NODE_DISPLACEMENT}this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*D.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},k.prototype.calcSpringForces=function(){var l=this.getAllEdges(),b;for(var M=0;M<l.length;M++)b=l[M],this.calcSpringForce(b,b.idealLength)},k.prototype.calcRepulsionForces=function(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,M,Z,J,w,K=this.getAllNodes(),Q;if(this.useFRGridVariant){if(this.totalIterations%D.GRID_CALCULATION_CHECK_PERIOD==1&&l)this.updateGrid();Q=new Set;for(M=0;M<K.length;M++)J=K[M],this.calculateRepulsionForceOfANode(J,Q,l,b),Q.add(J)}else for(M=0;M<K.length;M++){J=K[M];for(Z=M+1;Z<K.length;Z++){if(w=K[Z],J.getOwner()!=w.getOwner())continue;this.calcRepulsionForce(J,w)}}},k.prototype.calcGravitationalForces=function(){var l,b=this.getAllNodesToApplyGravitation();for(var M=0;M<b.length;M++)l=b[M],this.calcGravitationalForce(l)},k.prototype.moveNodes=function(){var l=this.getAllNodes(),b;for(var M=0;M<l.length;M++)b=l[M],b.move()},k.prototype.calcSpringForce=function(l,b){var M=l.getSource(),Z=l.getTarget(),J,w,K,Q;if(this.uniformLeafNodeSizes&&M.getChild()==null&&Z.getChild()==null)l.updateLengthSimple();else if(l.updateLength(),l.isOverlapingSourceAndTarget)return;if(J=l.getLength(),J==0)return;w=l.edgeElasticity*(J-b),K=w*(l.lengthX/J),Q=w*(l.lengthY/J),M.springForceX+=K,M.springForceY+=Q,Z.springForceX-=K,Z.springForceY-=Q},k.prototype.calcRepulsionForce=function(l,b){var M=l.getRect(),Z=b.getRect(),J=[,,],w=[,,,,],K,Q,G,L,H,q,x;if(M.intersects(Z)){U.calcSeparationAmount(M,Z,J,D.DEFAULT_EDGE_LENGTH/2),q=2*J[0],x=2*J[1];var v=l.noOfChildren*b.noOfChildren/(l.noOfChildren+b.noOfChildren);l.repulsionForceX-=v*q,l.repulsionForceY-=v*x,b.repulsionForceX+=v*q,b.repulsionForceY+=v*x}else{if(this.uniformLeafNodeSizes&&l.getChild()==null&&b.getChild()==null)K=Z.getCenterX()-M.getCenterX(),Q=Z.getCenterY()-M.getCenterY();else U.getIntersection(M,Z,w),K=w[2]-w[0],Q=w[3]-w[1];if(Math.abs(K)<D.MIN_REPULSION_DIST)K=z.sign(K)*D.MIN_REPULSION_DIST;if(Math.abs(Q)<D.MIN_REPULSION_DIST)Q=z.sign(Q)*D.MIN_REPULSION_DIST;G=K*K+Q*Q,L=Math.sqrt(G),H=(l.nodeRepulsion/2+b.nodeRepulsion/2)*l.noOfChildren*b.noOfChildren/G,q=H*K/L,x=H*Q/L,l.repulsionForceX-=q,l.repulsionForceY-=x,b.repulsionForceX+=q,b.repulsionForceY+=x}},k.prototype.calcGravitationalForce=function(l){var b,M,Z,J,w,K,Q,G;if(b=l.getOwner(),M=(b.getRight()+b.getLeft())/2,Z=(b.getTop()+b.getBottom())/2,J=l.getCenterX()-M,w=l.getCenterY()-Z,K=Math.abs(J)+l.getWidth()/2,Q=Math.abs(w)+l.getHeight()/2,l.getOwner()==this.graphManager.getRoot()){if(G=b.getEstimatedSize()*this.gravityRangeFactor,K>G||Q>G)l.gravitationForceX=-this.gravityConstant*J,l.gravitationForceY=-this.gravityConstant*w}else if(G=b.getEstimatedSize()*this.compoundGravityRangeFactor,K>G||Q>G)l.gravitationForceX=-this.gravityConstant*J*this.compoundGravityConstant,l.gravitationForceY=-this.gravityConstant*w*this.compoundGravityConstant},k.prototype.isConverged=function(){var l,b=!1;if(this.totalIterations>this.maxIterations/3)b=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2;return l=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,l||b},k.prototype.animate=function(){if(this.animationDuringLayout&&!this.isSubLayout)if(this.notAnimatedIterations==this.animationPeriod)this.update(),this.notAnimatedIterations=0;else this.notAnimatedIterations++},k.prototype.calcNoOfChildrenForAllNodes=function(){var l,b=this.graphManager.getAllNodes();for(var M=0;M<b.length;M++)l=b[M],l.noOfChildren=l.getNoOfChildren()},k.prototype.calcGrid=function(l){var b=0,M=0;b=parseInt(Math.ceil((l.getRight()-l.getLeft())/this.repulsionRange)),M=parseInt(Math.ceil((l.getBottom()-l.getTop())/this.repulsionRange));var Z=Array(b);for(var J=0;J<b;J++)Z[J]=Array(M);for(var J=0;J<b;J++)for(var w=0;w<M;w++)Z[J][w]=[];return Z},k.prototype.addNodeToGrid=function(l,b,M){var Z=0,J=0,w=0,K=0;Z=parseInt(Math.floor((l.getRect().x-b)/this.repulsionRange)),J=parseInt(Math.floor((l.getRect().width+l.getRect().x-b)/this.repulsionRange)),w=parseInt(Math.floor((l.getRect().y-M)/this.repulsionRange)),K=parseInt(Math.floor((l.getRect().height+l.getRect().y-M)/this.repulsionRange));for(var Q=Z;Q<=J;Q++)for(var G=w;G<=K;G++)this.grid[Q][G].push(l),l.setGridCoordinates(Z,J,w,K)},k.prototype.updateGrid=function(){var l,b,M=this.getAllNodes();this.grid=this.calcGrid(this.graphManager.getRoot());for(l=0;l<M.length;l++)b=M[l],this.addNodeToGrid(b,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},k.prototype.calculateRepulsionForceOfANode=function(l,b,M,Z){if(this.totalIterations%D.GRID_CALCULATION_CHECK_PERIOD==1&&M||Z){var J=new Set;l.surrounding=[];var w,K=this.grid;for(var Q=l.startX-1;Q<l.finishX+2;Q++)for(var G=l.startY-1;G<l.finishY+2;G++)if(!(Q<0||G<0||Q>=K.length||G>=K[0].length))for(var L=0;L<K[Q][G].length;L++){if(w=K[Q][G][L],l.getOwner()!=w.getOwner()||l==w)continue;if(!b.has(w)&&!J.has(w)){var H=Math.abs(l.getCenterX()-w.getCenterX())-(l.getWidth()/2+w.getWidth()/2),q=Math.abs(l.getCenterY()-w.getCenterY())-(l.getHeight()/2+w.getHeight()/2);if(H<=this.repulsionRange&&q<=this.repulsionRange)J.add(w)}}l.surrounding=[].concat(A(J))}for(Q=0;Q<l.surrounding.length;Q++)this.calcRepulsionForce(l,l.surrounding[Q])},k.prototype.calcRepulsionRange=function(){return 0},u.exports=k},function(u,B,E){var A=E(1),C=E(4);function D(U,z,k){A.call(this,U,z,k),this.idealLength=C.DEFAULT_EDGE_LENGTH,this.edgeElasticity=C.DEFAULT_SPRING_STRENGTH}D.prototype=Object.create(A.prototype);for(var F in A)D[F]=A[F];u.exports=D},function(u,B,E){var A=E(3),C=E(4);function D(U,z,k,f){A.call(this,U,z,k,f),this.nodeRepulsion=C.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=[]}D.prototype=Object.create(A.prototype);for(var F in A)D[F]=A[F];D.prototype.setGridCoordinates=function(U,z,k,f){this.startX=U,this.finishX=z,this.startY=k,this.finishY=f},u.exports=D},function(u,B,E){function A(C,D){if(this.width=0,this.height=0,C!==null&&D!==null)this.height=D,this.width=C}A.prototype.getWidth=function(){return this.width},A.prototype.setWidth=function(C){this.width=C},A.prototype.getHeight=function(){return this.height},A.prototype.setHeight=function(C){this.height=C},u.exports=A},function(u,B,E){var A=E(14);function C(){this.map={},this.keys=[]}C.prototype.put=function(D,F){var U=A.createID(D);if(!this.contains(U))this.map[U]=F,this.keys.push(D)},C.prototype.contains=function(D){var F=A.createID(D);return this.map[D]!=null},C.prototype.get=function(D){var F=A.createID(D);return this.map[F]},C.prototype.keySet=function(){return this.keys},u.exports=C},function(u,B,E){var A=E(14);function C(){this.set={}}C.prototype.add=function(D){var F=A.createID(D);if(!this.contains(F))this.set[F]=D},C.prototype.remove=function(D){delete this.set[A.createID(D)]},C.prototype.clear=function(){this.set={}},C.prototype.contains=function(D){return this.set[A.createID(D)]==D},C.prototype.isEmpty=function(){return this.size()===0},C.prototype.size=function(){return Object.keys(this.set).length},C.prototype.addAllTo=function(D){var F=Object.keys(this.set),U=F.length;for(var z=0;z<U;z++)D.push(this.set[F[z]])},C.prototype.size=function(){return Object.keys(this.set).length},C.prototype.addAll=function(D){var F=D.length;for(var U=0;U<F;U++){var z=D[U];this.add(z)}},u.exports=C},function(u,B,E){function A(){}A.multMat=function(C,D){var F=[];for(var U=0;U<C.length;U++){F[U]=[];for(var z=0;z<D[0].length;z++){F[U][z]=0;for(var k=0;k<C[0].length;k++)F[U][z]+=C[U][k]*D[k][z]}}return F},A.transpose=function(C){var D=[];for(var F=0;F<C[0].length;F++){D[F]=[];for(var U=0;U<C.length;U++)D[F][U]=C[U][F]}return D},A.multCons=function(C,D){var F=[];for(var U=0;U<C.length;U++)F[U]=C[U]*D;return F},A.minusOp=function(C,D){var F=[];for(var U=0;U<C.length;U++)F[U]=C[U]-D[U];return F},A.dotProduct=function(C,D){var F=0;for(var U=0;U<C.length;U++)F+=C[U]*D[U];return F},A.mag=function(C){return Math.sqrt(this.dotProduct(C,C))},A.normalize=function(C){var D=[],F=this.mag(C);for(var U=0;U<C.length;U++)D[U]=C[U]/F;return D},A.multGamma=function(C){var D=[],F=0;for(var U=0;U<C.length;U++)F+=C[U];F*=-1/C.length;for(var z=0;z<C.length;z++)D[z]=F+C[z];return D},A.multL=function(C,D,F){var U=[],z=[],k=[];for(var f=0;f<D[0].length;f++){var l=0;for(var b=0;b<D.length;b++)l+=-0.5*D[b][f]*C[b];z[f]=l}for(var M=0;M<F.length;M++){var Z=0;for(var J=0;J<F.length;J++)Z+=F[M][J]*z[J];k[M]=Z}for(var w=0;w<D.length;w++){var K=0;for(var Q=0;Q<D[0].length;Q++)K+=D[w][Q]*k[Q];U[w]=K}return U},u.exports=A},function(u,B,E){var A=function(){function U(z,k){for(var f=0;f<k.length;f++){var l=k[f];if(l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l)l.writable=!0;Object.defineProperty(z,l.key,l)}}return function(z,k,f){if(k)U(z.prototype,k);if(f)U(z,f);return z}}();function C(U,z){if(!(U instanceof z))throw TypeError("Cannot call a class as a function")}var D=E(11),F=function(){function U(z,k){if(C(this,U),k!==null||k!==void 0)this.compareFunction=this._defaultCompareFunction;var f=void 0;if(z instanceof D)f=z.size();else f=z.length;this._quicksort(z,0,f-1)}return A(U,[{key:"_quicksort",value:function(k,f,l){if(f<l){var b=this._partition(k,f,l);this._quicksort(k,f,b),this._quicksort(k,b+1,l)}}},{key:"_partition",value:function(k,f,l){var b=this._get(k,f),M=f,Z=l;while(!0){while(this.compareFunction(b,this._get(k,Z)))Z--;while(this.compareFunction(this._get(k,M),b))M++;if(M<Z)this._swap(k,M,Z),M++,Z--;else return Z}}},{key:"_get",value:function(k,f){if(k instanceof D)return k.get_object_at(f);else return k[f]}},{key:"_set",value:function(k,f,l){if(k instanceof D)k.set_object_at(f,l);else k[f]=l}},{key:"_swap",value:function(k,f,l){var b=this._get(k,f);this._set(k,f,this._get(k,l)),this._set(k,l,b)}},{key:"_defaultCompareFunction",value:function(k,f){return f>k}}]),U}();u.exports=F},function(u,B,E){function A(){}A.svd=function(C){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=C.length,this.n=C[0].length;var D=Math.min(this.m,this.n);this.s=function(du){var Iu=[];while(du-- >0)Iu.push(0);return Iu}(Math.min(this.m+1,this.n)),this.U=function(du){var Iu=function x0(Tu){if(Tu.length==0)return 0;else{var Vu=[];for(var Zu=0;Zu<Tu[0];Zu++)Vu.push(x0(Tu.slice(1)));return Vu}};return Iu(du)}([this.m,D]),this.V=function(du){var Iu=function x0(Tu){if(Tu.length==0)return 0;else{var Vu=[];for(var Zu=0;Zu<Tu[0];Zu++)Vu.push(x0(Tu.slice(1)));return Vu}};return Iu(du)}([this.n,this.n]);var F=function(du){var Iu=[];while(du-- >0)Iu.push(0);return Iu}(this.n),U=function(du){var Iu=[];while(du-- >0)Iu.push(0);return Iu}(this.m),z=!0,k=!0,f=Math.min(this.m-1,this.n),l=Math.max(0,Math.min(this.n-2,this.m));for(var b=0;b<Math.max(f,l);b++){if(b<f){this.s[b]=0;for(var M=b;M<this.m;M++)this.s[b]=A.hypot(this.s[b],C[M][b]);if(this.s[b]!==0){if(C[b][b]<0)this.s[b]=-this.s[b];for(var Z=b;Z<this.m;Z++)C[Z][b]/=this.s[b];C[b][b]+=1}this.s[b]=-this.s[b]}for(var J=b+1;J<this.n;J++){if(function(du,Iu){return du&&Iu}(b<f,this.s[b]!==0)){var w=0;for(var K=b;K<this.m;K++)w+=C[K][b]*C[K][J];w=-w/C[b][b];for(var Q=b;Q<this.m;Q++)C[Q][J]+=w*C[Q][b]}F[J]=C[b][J]}if(function(du,Iu){return du&&Iu}(z,b<f))for(var G=b;G<this.m;G++)this.U[G][b]=C[G][b];if(b<l){F[b]=0;for(var L=b+1;L<this.n;L++)F[b]=A.hypot(F[b],F[L]);if(F[b]!==0){if(F[b+1]<0)F[b]=-F[b];for(var H=b+1;H<this.n;H++)F[H]/=F[b];F[b+1]+=1}if(F[b]=-F[b],function(du,Iu){return du&&Iu}(b+1<this.m,F[b]!==0)){for(var q=b+1;q<this.m;q++)U[q]=0;for(var x=b+1;x<this.n;x++)for(var v=b+1;v<this.m;v++)U[v]+=F[x]*C[v][x];for(var W=b+1;W<this.n;W++){var S=-F[W]/F[b+1];for(var T=b+1;T<this.m;T++)C[T][W]+=S*U[T]}}if(k)for(var R=b+1;R<this.n;R++)this.V[R][b]=F[R]}}var Y=Math.min(this.n,this.m+1);if(f<this.n)this.s[f]=C[f][f];if(this.m<Y)this.s[Y-1]=0;if(l+1<Y)F[l]=C[l][Y-1];if(F[Y-1]=0,z){for(var a=f;a<D;a++){for(var I=0;I<this.m;I++)this.U[I][a]=0;this.U[a][a]=1}for(var O=f-1;O>=0;O--)if(this.s[O]!==0){for(var i=O+1;i<D;i++){var N=0;for(var V=O;V<this.m;V++)N+=this.U[V][O]*this.U[V][i];N=-N/this.U[O][O];for(var h=O;h<this.m;h++)this.U[h][i]+=N*this.U[h][O]}for(var r=O;r<this.m;r++)this.U[r][O]=-this.U[r][O];this.U[O][O]=1+this.U[O][O];for(var m=0;m<O-1;m++)this.U[m][O]=0}else{for(var $=0;$<this.m;$++)this.U[$][O]=0;this.U[O][O]=1}}if(k)for(var y=this.n-1;y>=0;y--){if(function(du,Iu){return du&&Iu}(y<l,F[y]!==0))for(var p=y+1;p<D;p++){var e=0;for(var _=y+1;_<this.n;_++)e+=this.V[_][y]*this.V[_][p];e=-e/this.V[y+1][y];for(var b0=y+1;b0<this.n;b0++)this.V[b0][p]+=e*this.V[b0][y]}for(var B0=0;B0<this.n;B0++)this.V[B0][y]=0;this.V[y][y]=1}var k0=Y-1,f0=0,D0=Math.pow(2,-52),P0=Math.pow(2,-966);while(Y>0){var q0=void 0,m0=void 0;for(q0=Y-2;q0>=-1;q0--){if(q0===-1)break;if(Math.abs(F[q0])<=P0+D0*(Math.abs(this.s[q0])+Math.abs(this.s[q0+1]))){F[q0]=0;break}}if(q0===Y-2)m0=4;else{var a0=void 0;for(a0=Y-1;a0>=q0;a0--){if(a0===q0)break;var _0=(a0!==Y?Math.abs(F[a0]):0)+(a0!==q0+1?Math.abs(F[a0-1]):0);if(Math.abs(this.s[a0])<=P0+D0*_0){this.s[a0]=0;break}}if(a0===q0)m0=3;else if(a0===Y-1)m0=1;else m0=2,q0=a0}switch(q0++,m0){case 1:{var w0=F[Y-2];F[Y-2]=0;for(var v0=Y-2;v0>=q0;v0--){var T0=A.hypot(this.s[v0],w0),Z0=this.s[v0]/T0,F0=w0/T0;if(this.s[v0]=T0,v0!==q0)w0=-F0*F[v0-1],F[v0-1]=Z0*F[v0-1];if(k)for(var u0=0;u0<this.n;u0++)T0=Z0*this.V[u0][v0]+F0*this.V[u0][Y-1],this.V[u0][Y-1]=-F0*this.V[u0][v0]+Z0*this.V[u0][Y-1],this.V[u0][v0]=T0}}break;case 2:{var M0=F[q0-1];F[q0-1]=0;for(var X0=q0;X0<Y;X0++){var S0=A.hypot(this.s[X0],M0),Y0=this.s[X0]/S0,h0=M0/S0;if(this.s[X0]=S0,M0=-h0*F[X0],F[X0]=Y0*F[X0],z)for(var J0=0;J0<this.m;J0++)S0=Y0*this.U[J0][X0]+h0*this.U[J0][q0-1],this.U[J0][q0-1]=-h0*this.U[J0][X0]+Y0*this.U[J0][q0-1],this.U[J0][X0]=S0}}break;case 3:{var n=Math.max(Math.max(Math.max(Math.max(Math.abs(this.s[Y-1]),Math.abs(this.s[Y-2])),Math.abs(F[Y-2])),Math.abs(this.s[q0])),Math.abs(F[q0])),d=this.s[Y-1]/n,H0=this.s[Y-2]/n,o=F[Y-2]/n,L0=this.s[q0]/n,E0=F[q0]/n,r0=((H0+d)*(H0-d)+o*o)/2,c0=d*o*(d*o),p0=0;if(function(du,Iu){return du||Iu}(r0!==0,c0!==0)){if(p0=Math.sqrt(r0*r0+c0),r0<0)p0=-p0;p0=c0/(r0+p0)}var g0=(L0+d)*(L0-d)+p0,Bu=L0*E0;for(var n0=q0;n0<Y-1;n0++){var e0=A.hypot(g0,Bu),t0=g0/e0,zu=Bu/e0;if(n0!==q0)F[n0-1]=e0;if(g0=t0*this.s[n0]+zu*F[n0],F[n0]=t0*F[n0]-zu*this.s[n0],Bu=zu*this.s[n0+1],this.s[n0+1]=t0*this.s[n0+1],k)for(var W0=0;W0<this.n;W0++)e0=t0*this.V[W0][n0]+zu*this.V[W0][n0+1],this.V[W0][n0+1]=-zu*this.V[W0][n0]+t0*this.V[W0][n0+1],this.V[W0][n0]=e0;if(e0=A.hypot(g0,Bu),t0=g0/e0,zu=Bu/e0,this.s[n0]=e0,g0=t0*F[n0]+zu*this.s[n0+1],this.s[n0+1]=-zu*F[n0]+t0*this.s[n0+1],Bu=zu*F[n0+1],F[n0+1]=t0*F[n0+1],z&&n0<this.m-1)for(var $u=0;$u<this.m;$u++)e0=t0*this.U[$u][n0]+zu*this.U[$u][n0+1],this.U[$u][n0+1]=-zu*this.U[$u][n0]+t0*this.U[$u][n0+1],this.U[$u][n0]=e0}F[Y-2]=g0,f0=f0+1}break;case 4:{if(this.s[q0]<=0){if(this.s[q0]=this.s[q0]<0?-this.s[q0]:0,k)for(var i0=0;i0<=k0;i0++)this.V[i0][q0]=-this.V[i0][q0]}while(q0<k0){if(this.s[q0]>=this.s[q0+1])break;var vu=this.s[q0];if(this.s[q0]=this.s[q0+1],this.s[q0+1]=vu,k&&q0<this.n-1)for(var cu=0;cu<this.n;cu++)vu=this.V[cu][q0+1],this.V[cu][q0+1]=this.V[cu][q0],this.V[cu][q0]=vu;if(z&&q0<this.m-1)for(var Du=0;Du<this.m;Du++)vu=this.U[Du][q0+1],this.U[Du][q0+1]=this.U[Du][q0],this.U[Du][q0]=vu;q0++}f0=0,Y--}break}}var Nu={U:this.U,V:this.V,S:this.s};return Nu},A.hypot=function(C,D){var F=void 0;if(Math.abs(C)>Math.abs(D))F=D/C,F=Math.abs(C)*Math.sqrt(1+F*F);else if(D!=0)F=C/D,F=Math.abs(D)*Math.sqrt(1+F*F);else F=0;return F},u.exports=A},function(u,B,E){var A=function(){function F(U,z){for(var k=0;k<z.length;k++){var f=z[k];if(f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f)f.writable=!0;Object.defineProperty(U,f.key,f)}}return function(U,z,k){if(z)F(U.prototype,z);if(k)F(U,k);return U}}();function C(F,U){if(!(F instanceof U))throw TypeError("Cannot call a class as a function")}var D=function(){function F(U,z){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,l=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;C(this,F),this.sequence1=U,this.sequence2=z,this.match_score=k,this.mismatch_penalty=f,this.gap_penalty=l,this.iMax=U.length+1,this.jMax=z.length+1,this.grid=Array(this.iMax);for(var b=0;b<this.iMax;b++){this.grid[b]=Array(this.jMax);for(var M=0;M<this.jMax;M++)this.grid[b][M]=0}this.tracebackGrid=Array(this.iMax);for(var Z=0;Z<this.iMax;Z++){this.tracebackGrid[Z]=Array(this.jMax);for(var J=0;J<this.jMax;J++)this.tracebackGrid[Z][J]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return A(F,[{key:"getScore",value:function(){return this.score}},{key:"getAlignments",value:function(){return this.alignments}},{key:"computeGrids",value:function(){for(var z=1;z<this.jMax;z++)this.grid[0][z]=this.grid[0][z-1]+this.gap_penalty,this.tracebackGrid[0][z]=[!1,!1,!0];for(var k=1;k<this.iMax;k++)this.grid[k][0]=this.grid[k-1][0]+this.gap_penalty,this.tracebackGrid[k][0]=[!1,!0,!1];for(var f=1;f<this.iMax;f++)for(var l=1;l<this.jMax;l++){var b=void 0;if(this.sequence1[f-1]===this.sequence2[l-1])b=this.grid[f-1][l-1]+this.match_score;else b=this.grid[f-1][l-1]+this.mismatch_penalty;var M=this.grid[f-1][l]+this.gap_penalty,Z=this.grid[f][l-1]+this.gap_penalty,J=[b,M,Z],w=this.arrayAllMaxIndexes(J);this.grid[f][l]=J[w[0]],this.tracebackGrid[f][l]=[w.includes(0),w.includes(1),w.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]}},{key:"alignmentTraceback",value:function(){var z=[];z.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});while(z[0]){var k=z[0],f=this.tracebackGrid[k.pos[0]][k.pos[1]];if(f[0])z.push({pos:[k.pos[0]-1,k.pos[1]-1],seq1:this.sequence1[k.pos[0]-1]+k.seq1,seq2:this.sequence2[k.pos[1]-1]+k.seq2});if(f[1])z.push({pos:[k.pos[0]-1,k.pos[1]],seq1:this.sequence1[k.pos[0]-1]+k.seq1,seq2:"-"+k.seq2});if(f[2])z.push({pos:[k.pos[0],k.pos[1]-1],seq1:"-"+k.seq1,seq2:this.sequence2[k.pos[1]-1]+k.seq2});if(k.pos[0]===0&&k.pos[1]===0)this.alignments.push({sequence1:k.seq1,sequence2:k.seq2});z.shift()}return this.alignments}},{key:"getAllIndexes",value:function(z,k){var f=[],l=-1;while((l=z.indexOf(k,l+1))!==-1)f.push(l);return f}},{key:"arrayAllMaxIndexes",value:function(z){return this.getAllIndexes(z,Math.max.apply(null,z))}}]),F}();u.exports=D},function(u,B,E){var A=function(){return};A.FDLayout=E(18),A.FDLayoutConstants=E(4),A.FDLayoutEdge=E(19),A.FDLayoutNode=E(20),A.DimensionD=E(21),A.HashMap=E(22),A.HashSet=E(23),A.IGeometry=E(8),A.IMath=E(9),A.Integer=E(10),A.Point=E(12),A.PointD=E(5),A.RandomSeed=E(16),A.RectangleD=E(13),A.Transform=E(17),A.UniqueIDGeneretor=E(14),A.Quicksort=E(25),A.LinkedList=E(11),A.LGraphObject=E(2),A.LGraph=E(6),A.LEdge=E(1),A.LGraphManager=E(7),A.LNode=E(3),A.Layout=E(15),A.LayoutConstants=E(0),A.NeedlemanWunsch=E(27),A.Matrix=E(24),A.SVD=E(26),u.exports=A},function(u,B,E){function A(){this.listeners=[]}var C=A.prototype;C.addListener=function(D,F){this.listeners.push({event:D,callback:F})},C.removeListener=function(D,F){for(var U=this.listeners.length;U>=0;U--){var z=this.listeners[U];if(z.event===D&&z.callback===F)this.listeners.splice(U,1)}},C.emit=function(D,F){for(var U=0;U<this.listeners.length;U++){var z=this.listeners[U];if(D===z.event)z.callback(F)}},u.exports=A}])})});var jF0=P1((gR,PF0)=>{(function(B,E){if(typeof gR==="object"&&typeof PF0==="object")PF0.exports=E(IF0());else if(typeof define==="function"&&define.amd)define(["layout-base"],E);else if(typeof gR==="object")gR.coseBase=E(IF0());else B.coseBase=E(B.layoutBase)})(gR,function(u){return(()=>{var B={45:(D,F,U)=>{var z={};z.layoutBase=U(551),z.CoSEConstants=U(806),z.CoSEEdge=U(767),z.CoSEGraph=U(880),z.CoSEGraphManager=U(578),z.CoSELayout=U(765),z.CoSENode=U(991),z.ConstraintHandler=U(902),D.exports=z},806:(D,F,U)=>{var z=U(551).FDLayoutConstants;function k(){}for(var f in z)k[f]=z[f];k.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,k.DEFAULT_RADIAL_SEPARATION=z.DEFAULT_EDGE_LENGTH,k.DEFAULT_COMPONENT_SEPERATION=60,k.TILE=!0,k.TILING_PADDING_VERTICAL=10,k.TILING_PADDING_HORIZONTAL=10,k.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,k.ENFORCE_CONSTRAINTS=!0,k.APPLY_LAYOUT=!0,k.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,k.TREE_REDUCTION_ON_INCREMENTAL=!0,k.PURE_INCREMENTAL=k.DEFAULT_INCREMENTAL,D.exports=k},767:(D,F,U)=>{var z=U(551).FDLayoutEdge;function k(l,b,M){z.call(this,l,b,M)}k.prototype=Object.create(z.prototype);for(var f in z)k[f]=z[f];D.exports=k},880:(D,F,U)=>{var z=U(551).LGraph;function k(l,b,M){z.call(this,l,b,M)}k.prototype=Object.create(z.prototype);for(var f in z)k[f]=z[f];D.exports=k},578:(D,F,U)=>{var z=U(551).LGraphManager;function k(l){z.call(this,l)}k.prototype=Object.create(z.prototype);for(var f in z)k[f]=z[f];D.exports=k},765:(D,F,U)=>{var z=U(551).FDLayout,k=U(578),f=U(880),l=U(991),b=U(767),M=U(806),Z=U(902),J=U(551).FDLayoutConstants,w=U(551).LayoutConstants,K=U(551).Point,Q=U(551).PointD,G=U(551).DimensionD,L=U(551).Layout,H=U(551).Integer,q=U(551).IGeometry,x=U(551).LGraph,v=U(551).Transform,W=U(551).LinkedList;function S(){z.call(this),this.toBeTiled={},this.constraints={}}S.prototype=Object.create(z.prototype);for(var T in z)S[T]=z[T];S.prototype.newGraphManager=function(){var R=new k(this);return this.graphManager=R,R},S.prototype.newGraph=function(R){return new f(null,this.graphManager,R)},S.prototype.newNode=function(R){return new l(this.graphManager,R)},S.prototype.newEdge=function(R){return new b(null,null,R)},S.prototype.initParameters=function(){if(z.prototype.initParameters.call(this,arguments),!this.isSubLayout){if(M.DEFAULT_EDGE_LENGTH<10)this.idealEdgeLength=10;else this.idealEdgeLength=M.DEFAULT_EDGE_LENGTH;this.useSmartIdealEdgeLengthCalculation=M.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=J.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=J.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=J.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=J.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1}},S.prototype.initSpringEmbedder=function(){z.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/J.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=0.04,this.coolingAdjuster=1},S.prototype.layout=function(){var R=w.DEFAULT_CREATE_BENDS_AS_NEEDED;if(R)this.createBendpoints(),this.graphManager.resetAllEdges();return this.level=0,this.classicLayout()},S.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 R=this.getFlatForest();if(R.length>0)this.positionNodesRadially(R);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var Y=new Set(this.getAllNodes()),a=this.nodesWithGravity.filter(function(I){return Y.has(I)});this.graphManager.setAllNodesToApplyGravitation(a),this.positionNodesRandomly()}}else if(M.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var Y=new Set(this.getAllNodes()),a=this.nodesWithGravity.filter(function(i){return Y.has(i)});this.graphManager.setAllNodesToApplyGravitation(a)}if(Object.keys(this.constraints).length>0)Z.handleConstraints(this),this.initConstraintVariables();if(this.initSpringEmbedder(),M.APPLY_LAYOUT)this.runSpringEmbedder();return!0},S.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%J.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 R=new Set(this.getAllNodes()),Y=this.nodesWithGravity.filter(function(O){return R.has(O)});if(this.graphManager.setAllNodesToApplyGravitation(Y),this.graphManager.updateBounds(),this.updateGrid(),M.PURE_INCREMENTAL)this.coolingFactor=J.DEFAULT_COOLING_FACTOR_INCREMENTAL/2;else this.coolingFactor=J.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(M.PURE_INCREMENTAL)this.coolingFactor=J.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100);else this.coolingFactor=J.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100);this.afterGrowthIterations++}var a=!this.isTreeGrowing&&!this.isGrowthFinished,I=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(a,I),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},S.prototype.getPositionsData=function(){var R=this.graphManager.getAllNodes(),Y={};for(var a=0;a<R.length;a++){var I=R[a].rect,O=R[a].id;Y[O]={id:O,x:I.getCenterX(),y:I.getCenterY(),w:I.width,h:I.height}}return Y},S.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var R=!1;if(J.ANIMATE==="during")this.emit("layoutstarted");else{while(!R)R=this.tick();this.graphManager.updateBounds()}},S.prototype.moveNodes=function(){var R=this.getAllNodes(),Y;for(var a=0;a<R.length;a++)Y=R[a],Y.calculateDisplacement();if(Object.keys(this.constraints).length>0)this.updateDisplacements();for(var a=0;a<R.length;a++)Y=R[a],Y.move()},S.prototype.initConstraintVariables=function(){var R=this;this.idToNodeMap=new Map,this.fixedNodeSet=new Set;var Y=this.graphManager.getAllNodes();for(var a=0;a<Y.length;a++){var I=Y[a];this.idToNodeMap.set(I.id,I)}var O=function _(b0){var B0=b0.getChild().getNodes(),k0,f0=0;for(var D0=0;D0<B0.length;D0++)if(k0=B0[D0],k0.getChild()==null){if(R.fixedNodeSet.has(k0.id))f0+=100}else f0+=_(k0);return f0};if(this.constraints.fixedNodeConstraint){this.constraints.fixedNodeConstraint.forEach(function(B0){R.fixedNodeSet.add(B0.nodeId)});var Y=this.graphManager.getAllNodes(),I;for(var a=0;a<Y.length;a++)if(I=Y[a],I.getChild()!=null){var i=O(I);if(i>0)I.fixedNodeWeight=i}}if(this.constraints.relativePlacementConstraint){var N=new Map,V=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(_){R.fixedNodesOnHorizontal.add(_),R.fixedNodesOnVertical.add(_)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var h=this.constraints.alignmentConstraint.vertical;for(var a=0;a<h.length;a++)this.dummyToNodeForVerticalAlignment.set("dummy"+a,[]),h[a].forEach(function(b0){if(N.set(b0,"dummy"+a),R.dummyToNodeForVerticalAlignment.get("dummy"+a).push(b0),R.fixedNodeSet.has(b0))R.fixedNodesOnHorizontal.add("dummy"+a)})}if(this.constraints.alignmentConstraint.horizontal){var r=this.constraints.alignmentConstraint.horizontal;for(var a=0;a<r.length;a++)this.dummyToNodeForHorizontalAlignment.set("dummy"+a,[]),r[a].forEach(function(b0){if(V.set(b0,"dummy"+a),R.dummyToNodeForHorizontalAlignment.get("dummy"+a).push(b0),R.fixedNodeSet.has(b0))R.fixedNodesOnVertical.add("dummy"+a)})}}if(M.RELAX_MOVEMENT_ON_CONSTRAINTS)this.shuffle=function(_){var b0,B0,k0;for(k0=_.length-1;k0>=2*_.length/3;k0--)b0=Math.floor(Math.random()*(k0+1)),B0=_[k0],_[k0]=_[b0],_[b0]=B0;return _},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(_){if(_.left){var b0=N.has(_.left)?N.get(_.left):_.left,B0=N.has(_.right)?N.get(_.right):_.right;if(!R.nodesInRelativeHorizontal.includes(b0))if(R.nodesInRelativeHorizontal.push(b0),R.nodeToRelativeConstraintMapHorizontal.set(b0,[]),R.dummyToNodeForVerticalAlignment.has(b0))R.nodeToTempPositionMapHorizontal.set(b0,R.idToNodeMap.get(R.dummyToNodeForVerticalAlignment.get(b0)[0]).getCenterX());else R.nodeToTempPositionMapHorizontal.set(b0,R.idToNodeMap.get(b0).getCenterX());if(!R.nodesInRelativeHorizontal.includes(B0))if(R.nodesInRelativeHorizontal.push(B0),R.nodeToRelativeConstraintMapHorizontal.set(B0,[]),R.dummyToNodeForVerticalAlignment.has(B0))R.nodeToTempPositionMapHorizontal.set(B0,R.idToNodeMap.get(R.dummyToNodeForVerticalAlignment.get(B0)[0]).getCenterX());else R.nodeToTempPositionMapHorizontal.set(B0,R.idToNodeMap.get(B0).getCenterX());R.nodeToRelativeConstraintMapHorizontal.get(b0).push({right:B0,gap:_.gap}),R.nodeToRelativeConstraintMapHorizontal.get(B0).push({left:b0,gap:_.gap})}else{var k0=V.has(_.top)?V.get(_.top):_.top,f0=V.has(_.bottom)?V.get(_.bottom):_.bottom;if(!R.nodesInRelativeVertical.includes(k0))if(R.nodesInRelativeVertical.push(k0),R.nodeToRelativeConstraintMapVertical.set(k0,[]),R.dummyToNodeForHorizontalAlignment.has(k0))R.nodeToTempPositionMapVertical.set(k0,R.idToNodeMap.get(R.dummyToNodeForHorizontalAlignment.get(k0)[0]).getCenterY());else R.nodeToTempPositionMapVertical.set(k0,R.idToNodeMap.get(k0).getCenterY());if(!R.nodesInRelativeVertical.includes(f0))if(R.nodesInRelativeVertical.push(f0),R.nodeToRelativeConstraintMapVertical.set(f0,[]),R.dummyToNodeForHorizontalAlignment.has(f0))R.nodeToTempPositionMapVertical.set(f0,R.idToNodeMap.get(R.dummyToNodeForHorizontalAlignment.get(f0)[0]).getCenterY());else R.nodeToTempPositionMapVertical.set(f0,R.idToNodeMap.get(f0).getCenterY());R.nodeToRelativeConstraintMapVertical.get(k0).push({bottom:f0,gap:_.gap}),R.nodeToRelativeConstraintMapVertical.get(f0).push({top:k0,gap:_.gap})}});else{var m=new Map,$=new Map;this.constraints.relativePlacementConstraint.forEach(function(_){if(_.left){var b0=N.has(_.left)?N.get(_.left):_.left,B0=N.has(_.right)?N.get(_.right):_.right;if(m.has(b0))m.get(b0).push(B0);else m.set(b0,[B0]);if(m.has(B0))m.get(B0).push(b0);else m.set(B0,[b0])}else{var k0=V.has(_.top)?V.get(_.top):_.top,f0=V.has(_.bottom)?V.get(_.bottom):_.bottom;if($.has(k0))$.get(k0).push(f0);else $.set(k0,[f0]);if($.has(f0))$.get(f0).push(k0);else $.set(f0,[k0])}});var y=function(b0,B0){var k0=[],f0=[],D0=new W,P0=new Set,q0=0;return b0.forEach(function(m0,a0){if(!P0.has(a0)){k0[q0]=[],f0[q0]=!1;var _0=a0;D0.push(_0),P0.add(_0),k0[q0].push(_0);while(D0.length!=0){if(_0=D0.shift(),B0.has(_0))f0[q0]=!0;var w0=b0.get(_0);w0.forEach(function(v0){if(!P0.has(v0))D0.push(v0),P0.add(v0),k0[q0].push(v0)})}q0++}}),{components:k0,isFixed:f0}},p=y(m,R.fixedNodesOnHorizontal);this.componentsOnHorizontal=p.components,this.fixedComponentsOnHorizontal=p.isFixed;var e=y($,R.fixedNodesOnVertical);this.componentsOnVertical=e.components,this.fixedComponentsOnVertical=e.isFixed}}},S.prototype.updateDisplacements=function(){var R=this;if(this.constraints.fixedNodeConstraint)this.constraints.fixedNodeConstraint.forEach(function(e){var _=R.idToNodeMap.get(e.nodeId);_.displacementX=0,_.displacementY=0});if(this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var Y=this.constraints.alignmentConstraint.vertical;for(var a=0;a<Y.length;a++){var I=0;for(var O=0;O<Y[a].length;O++){if(this.fixedNodeSet.has(Y[a][O])){I=0;break}I+=this.idToNodeMap.get(Y[a][O]).displacementX}var i=I/Y[a].length;for(var O=0;O<Y[a].length;O++)this.idToNodeMap.get(Y[a][O]).displacementX=i}}if(this.constraints.alignmentConstraint.horizontal){var N=this.constraints.alignmentConstraint.horizontal;for(var a=0;a<N.length;a++){var V=0;for(var O=0;O<N[a].length;O++){if(this.fixedNodeSet.has(N[a][O])){V=0;break}V+=this.idToNodeMap.get(N[a][O]).displacementY}var h=V/N[a].length;for(var O=0;O<N[a].length;O++)this.idToNodeMap.get(N[a][O]).displacementY=h}}}if(this.constraints.relativePlacementConstraint)if(M.RELAX_MOVEMENT_ON_CONSTRAINTS){if(this.totalIterations%10==0)this.shuffle(this.nodesInRelativeHorizontal),this.shuffle(this.nodesInRelativeVertical);this.nodesInRelativeHorizontal.forEach(function(e){if(!R.fixedNodesOnHorizontal.has(e)){var _=0;if(R.dummyToNodeForVerticalAlignment.has(e))_=R.idToNodeMap.get(R.dummyToNodeForVerticalAlignment.get(e)[0]).displacementX;else _=R.idToNodeMap.get(e).displacementX;if(R.nodeToRelativeConstraintMapHorizontal.get(e).forEach(function(b0){if(b0.right){var B0=R.nodeToTempPositionMapHorizontal.get(b0.right)-R.nodeToTempPositionMapHorizontal.get(e)-_;if(B0<b0.gap)_-=b0.gap-B0}else{var B0=R.nodeToTempPositionMapHorizontal.get(e)-R.nodeToTempPositionMapHorizontal.get(b0.left)+_;if(B0<b0.gap)_+=b0.gap-B0}}),R.nodeToTempPositionMapHorizontal.set(e,R.nodeToTempPositionMapHorizontal.get(e)+_),R.dummyToNodeForVerticalAlignment.has(e))R.dummyToNodeForVerticalAlignment.get(e).forEach(function(b0){R.idToNodeMap.get(b0).displacementX=_});else R.idToNodeMap.get(e).displacementX=_}}),this.nodesInRelativeVertical.forEach(function(e){if(!R.fixedNodesOnHorizontal.has(e)){var _=0;if(R.dummyToNodeForHorizontalAlignment.has(e))_=R.idToNodeMap.get(R.dummyToNodeForHorizontalAlignment.get(e)[0]).displacementY;else _=R.idToNodeMap.get(e).displacementY;if(R.nodeToRelativeConstraintMapVertical.get(e).forEach(function(b0){if(b0.bottom){var B0=R.nodeToTempPositionMapVertical.get(b0.bottom)-R.nodeToTempPositionMapVertical.get(e)-_;if(B0<b0.gap)_-=b0.gap-B0}else{var B0=R.nodeToTempPositionMapVertical.get(e)-R.nodeToTempPositionMapVertical.get(b0.top)+_;if(B0<b0.gap)_+=b0.gap-B0}}),R.nodeToTempPositionMapVertical.set(e,R.nodeToTempPositionMapVertical.get(e)+_),R.dummyToNodeForHorizontalAlignment.has(e))R.dummyToNodeForHorizontalAlignment.get(e).forEach(function(b0){R.idToNodeMap.get(b0).displacementY=_});else R.idToNodeMap.get(e).displacementY=_}})}else{for(var a=0;a<this.componentsOnHorizontal.length;a++){var r=this.componentsOnHorizontal[a];if(this.fixedComponentsOnHorizontal[a])for(var O=0;O<r.length;O++)if(this.dummyToNodeForVerticalAlignment.has(r[O]))this.dummyToNodeForVerticalAlignment.get(r[O]).forEach(function(b0){R.idToNodeMap.get(b0).displacementX=0});else this.idToNodeMap.get(r[O]).displacementX=0;else{var m=0,$=0;for(var O=0;O<r.length;O++)if(this.dummyToNodeForVerticalAlignment.has(r[O])){var y=this.dummyToNodeForVerticalAlignment.get(r[O]);m+=y.length*this.idToNodeMap.get(y[0]).displacementX,$+=y.length}else m+=this.idToNodeMap.get(r[O]).displacementX,$++;var p=m/$;for(var O=0;O<r.length;O++)if(this.dummyToNodeForVerticalAlignment.has(r[O]))this.dummyToNodeForVerticalAlignment.get(r[O]).forEach(function(b0){R.idToNodeMap.get(b0).displacementX=p});else this.idToNodeMap.get(r[O]).displacementX=p}}for(var a=0;a<this.componentsOnVertical.length;a++){var r=this.componentsOnVertical[a];if(this.fixedComponentsOnVertical[a])for(var O=0;O<r.length;O++)if(this.dummyToNodeForHorizontalAlignment.has(r[O]))this.dummyToNodeForHorizontalAlignment.get(r[O]).forEach(function(B0){R.idToNodeMap.get(B0).displacementY=0});else this.idToNodeMap.get(r[O]).displacementY=0;else{var m=0,$=0;for(var O=0;O<r.length;O++)if(this.dummyToNodeForHorizontalAlignment.has(r[O])){var y=this.dummyToNodeForHorizontalAlignment.get(r[O]);m+=y.length*this.idToNodeMap.get(y[0]).displacementY,$+=y.length}else m+=this.idToNodeMap.get(r[O]).displacementY,$++;var p=m/$;for(var O=0;O<r.length;O++)if(this.dummyToNodeForHorizontalAlignment.has(r[O]))this.dummyToNodeForHorizontalAlignment.get(r[O]).forEach(function(D0){R.idToNodeMap.get(D0).displacementY=p});else this.idToNodeMap.get(r[O]).displacementY=p}}}},S.prototype.calculateNodesToApplyGravitationTo=function(){var R=[],Y,a=this.graphManager.getGraphs(),I=a.length,O;for(O=0;O<I;O++)if(Y=a[O],Y.updateConnected(),!Y.isConnected)R=R.concat(Y.getNodes());return R},S.prototype.createBendpoints=function(){var R=[];R=R.concat(this.graphManager.getAllEdges());var Y=new Set,a;for(a=0;a<R.length;a++){var I=R[a];if(!Y.has(I)){var O=I.getSource(),i=I.getTarget();if(O==i)I.getBendpoints().push(new Q),I.getBendpoints().push(new Q),this.createDummyNodesForBendpoints(I),Y.add(I);else{var N=[];if(N=N.concat(O.getEdgeListToNode(i)),N=N.concat(i.getEdgeListToNode(O)),!Y.has(N[0])){if(N.length>1){var V;for(V=0;V<N.length;V++){var h=N[V];h.getBendpoints().push(new Q),this.createDummyNodesForBendpoints(h)}}N.forEach(function(r){Y.add(r)})}}}if(Y.size==R.length)break}},S.prototype.positionNodesRadially=function(R){var Y=new K(0,0),a=Math.ceil(Math.sqrt(R.length)),I=0,O=0,i=0,N=new Q(0,0);for(var V=0;V<R.length;V++){if(V%a==0){if(i=0,O=I,V!=0)O+=M.DEFAULT_COMPONENT_SEPERATION;I=0}var h=R[V],r=L.findCenterOfTree(h);if(Y.x=i,Y.y=O,N=S.radialLayout(h,r,Y),N.y>I)I=Math.floor(N.y);i=Math.floor(N.x+M.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Q(w.WORLD_CENTER_X-N.x/2,w.WORLD_CENTER_Y-N.y/2))},S.radialLayout=function(R,Y,a){var I=Math.max(this.maxDiagonalInTree(R),M.DEFAULT_RADIAL_SEPARATION);S.branchRadialLayout(Y,null,0,359,0,I);var O=x.calculateBounds(R),i=new v;i.setDeviceOrgX(O.getMinX()),i.setDeviceOrgY(O.getMinY()),i.setWorldOrgX(a.x),i.setWorldOrgY(a.y);for(var N=0;N<R.length;N++){var V=R[N];V.transform(i)}var h=new Q(O.getMaxX(),O.getMaxY());return i.inverseTransformPoint(h)},S.branchRadialLayout=function(R,Y,a,I,O,i){var N=(I-a+1)/2;if(N<0)N+=180;var V=(N+a)%360,h=V*q.TWO_PI/360,r=Math.cos(h),m=O*Math.cos(h),$=O*Math.sin(h);R.setCenter(m,$);var y=[];y=y.concat(R.getEdges());var p=y.length;if(Y!=null)p--;var e=0,_=y.length,b0,B0=R.getEdgesBetween(Y);while(B0.length>1){var k0=B0[0];B0.splice(0,1);var f0=y.indexOf(k0);if(f0>=0)y.splice(f0,1);_--,p--}if(Y!=null)b0=(y.indexOf(B0[0])+1)%_;else b0=0;var D0=Math.abs(I-a)/p;for(var P0=b0;e!=p;P0=++P0%_){var q0=y[P0].getOtherEnd(R);if(q0==Y)continue;var m0=(a+e*D0)%360,a0=(m0+D0)%360;S.branchRadialLayout(q0,R,m0,a0,O+i,i),e++}},S.maxDiagonalInTree=function(R){var Y=H.MIN_VALUE;for(var a=0;a<R.length;a++){var I=R[a],O=I.getDiagonal();if(O>Y)Y=O}return Y},S.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},S.prototype.groupZeroDegreeMembers=function(){var R=this,Y={};this.memberGroups={},this.idToDummyNode={};var a=[],I=this.graphManager.getAllNodes();for(var O=0;O<I.length;O++){var i=I[O],N=i.getParent();if(this.getNodeDegreeWithChildren(i)===0&&(N.id==null||!this.getToBeTiled(N)))a.push(i)}for(var O=0;O<a.length;O++){var i=a[O],V=i.getParent().id;if(typeof Y[V]>"u")Y[V]=[];Y[V]=Y[V].concat(i)}Object.keys(Y).forEach(function(h){if(Y[h].length>1){var r="DummyCompound_"+h;R.memberGroups[r]=Y[h];var m=Y[h][0].getParent(),$=new l(R.graphManager);$.id=r,$.paddingLeft=m.paddingLeft||0,$.paddingRight=m.paddingRight||0,$.paddingBottom=m.paddingBottom||0,$.paddingTop=m.paddingTop||0,R.idToDummyNode[r]=$;var y=R.getGraphManager().add(R.newGraph(),$),p=m.getChild();p.add($);for(var e=0;e<Y[h].length;e++){var _=Y[h][e];p.remove(_),y.add(_)}}})},S.prototype.clearCompounds=function(){var R={},Y={};this.performDFSOnCompounds();for(var a=0;a<this.compoundOrder.length;a++)Y[this.compoundOrder[a].id]=this.compoundOrder[a],R[this.compoundOrder[a].id]=[].concat(this.compoundOrder[a].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[a].getChild()),this.compoundOrder[a].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(R,Y)},S.prototype.clearZeroDegreeMembers=function(){var R=this,Y=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(a){var I=R.idToDummyNode[a];if(Y[a]=R.tileNodes(R.memberGroups[a],I.paddingLeft+I.paddingRight),I.rect.width=Y[a].width,I.rect.height=Y[a].height,I.setCenter(Y[a].centerX,Y[a].centerY),I.labelMarginLeft=0,I.labelMarginTop=0,M.NODE_DIMENSIONS_INCLUDE_LABELS){var O=I.rect.width,i=I.rect.height;if(I.labelWidth){if(I.labelPosHorizontal=="left")I.rect.x-=I.labelWidth,I.setWidth(O+I.labelWidth),I.labelMarginLeft=I.labelWidth;else if(I.labelPosHorizontal=="center"&&I.labelWidth>O)I.rect.x-=(I.labelWidth-O)/2,I.setWidth(I.labelWidth),I.labelMarginLeft=(I.labelWidth-O)/2;else if(I.labelPosHorizontal=="right")I.setWidth(O+I.labelWidth)}if(I.labelHeight){if(I.labelPosVertical=="top")I.rect.y-=I.labelHeight,I.setHeight(i+I.labelHeight),I.labelMarginTop=I.labelHeight;else if(I.labelPosVertical=="center"&&I.labelHeight>i)I.rect.y-=(I.labelHeight-i)/2,I.setHeight(I.labelHeight),I.labelMarginTop=(I.labelHeight-i)/2;else if(I.labelPosVertical=="bottom")I.setHeight(i+I.labelHeight)}}})},S.prototype.repopulateCompounds=function(){for(var R=this.compoundOrder.length-1;R>=0;R--){var Y=this.compoundOrder[R],a=Y.id,I=Y.paddingLeft,O=Y.paddingTop,i=Y.labelMarginLeft,N=Y.labelMarginTop;this.adjustLocations(this.tiledMemberPack[a],Y.rect.x,Y.rect.y,I,O,i,N)}},S.prototype.repopulateZeroDegreeMembers=function(){var R=this,Y=this.tiledZeroDegreePack;Object.keys(Y).forEach(function(a){var I=R.idToDummyNode[a],O=I.paddingLeft,i=I.paddingTop,N=I.labelMarginLeft,V=I.labelMarginTop;R.adjustLocations(Y[a],I.rect.x,I.rect.y,O,i,N,V)})},S.prototype.getToBeTiled=function(R){var Y=R.id;if(this.toBeTiled[Y]!=null)return this.toBeTiled[Y];var a=R.getChild();if(a==null)return this.toBeTiled[Y]=!1,!1;var I=a.getNodes();for(var O=0;O<I.length;O++){var i=I[O];if(this.getNodeDegree(i)>0)return this.toBeTiled[Y]=!1,!1;if(i.getChild()==null){this.toBeTiled[i.id]=!1;continue}if(!this.getToBeTiled(i))return this.toBeTiled[Y]=!1,!1}return this.toBeTiled[Y]=!0,!0},S.prototype.getNodeDegree=function(R){var Y=R.id,a=R.getEdges(),I=0;for(var O=0;O<a.length;O++){var i=a[O];if(i.getSource().id!==i.getTarget().id)I=I+1}return I},S.prototype.getNodeDegreeWithChildren=function(R){var Y=this.getNodeDegree(R);if(R.getChild()==null)return Y;var a=R.getChild().getNodes();for(var I=0;I<a.length;I++){var O=a[I];Y+=this.getNodeDegreeWithChildren(O)}return Y},S.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},S.prototype.fillCompexOrderByDFS=function(R){for(var Y=0;Y<R.length;Y++){var a=R[Y];if(a.getChild()!=null)this.fillCompexOrderByDFS(a.getChild().getNodes());if(this.getToBeTiled(a))this.compoundOrder.push(a)}},S.prototype.adjustLocations=function(R,Y,a,I,O,i,N){Y+=I+i,a+=O+N;var V=Y;for(var h=0;h<R.rows.length;h++){var r=R.rows[h];Y=V;var m=0;for(var $=0;$<r.length;$++){var y=r[$];if(y.rect.x=Y,y.rect.y=a,Y+=y.rect.width+R.horizontalPadding,y.rect.height>m)m=y.rect.height}a+=m+R.verticalPadding}},S.prototype.tileCompoundMembers=function(R,Y){var a=this;this.tiledMemberPack=[],Object.keys(R).forEach(function(I){var O=Y[I];if(a.tiledMemberPack[I]=a.tileNodes(R[I],O.paddingLeft+O.paddingRight),O.rect.width=a.tiledMemberPack[I].width,O.rect.height=a.tiledMemberPack[I].height,O.setCenter(a.tiledMemberPack[I].centerX,a.tiledMemberPack[I].centerY),O.labelMarginLeft=0,O.labelMarginTop=0,M.NODE_DIMENSIONS_INCLUDE_LABELS){var i=O.rect.width,N=O.rect.height;if(O.labelWidth){if(O.labelPosHorizontal=="left")O.rect.x-=O.labelWidth,O.setWidth(i+O.labelWidth),O.labelMarginLeft=O.labelWidth;else if(O.labelPosHorizontal=="center"&&O.labelWidth>i)O.rect.x-=(O.labelWidth-i)/2,O.setWidth(O.labelWidth),O.labelMarginLeft=(O.labelWidth-i)/2;else if(O.labelPosHorizontal=="right")O.setWidth(i+O.labelWidth)}if(O.labelHeight){if(O.labelPosVertical=="top")O.rect.y-=O.labelHeight,O.setHeight(N+O.labelHeight),O.labelMarginTop=O.labelHeight;else if(O.labelPosVertical=="center"&&O.labelHeight>N)O.rect.y-=(O.labelHeight-N)/2,O.setHeight(O.labelHeight),O.labelMarginTop=(O.labelHeight-N)/2;else if(O.labelPosVertical=="bottom")O.setHeight(N+O.labelHeight)}}})},S.prototype.tileNodes=function(R,Y){var a=this.tileNodesByFavoringDim(R,Y,!0),I=this.tileNodesByFavoringDim(R,Y,!1),O=this.getOrgRatio(a),i=this.getOrgRatio(I),N;if(i<O)N=I;else N=a;return N},S.prototype.getOrgRatio=function(R){var{width:Y,height:a}=R,I=Y/a;if(I<1)I=1/I;return I},S.prototype.calcIdealRowWidth=function(R,Y){var{TILING_PADDING_VERTICAL:a,TILING_PADDING_HORIZONTAL:I}=M,O=R.length,i=0,N=0,V=0;R.forEach(function(e){if(i+=e.getWidth(),N+=e.getHeight(),e.getWidth()>V)V=e.getWidth()});var h=i/O,r=N/O,m=Math.pow(a-I,2)+4*(h+I)*(r+a)*O,$=(I-a+Math.sqrt(m))/(2*(h+I)),y;if(Y){if(y=Math.ceil($),y==$)y++}else y=Math.floor($);var p=y*(h+I)-I;if(V>p)p=V;return p+=I*2,p},S.prototype.tileNodesByFavoringDim=function(R,Y,a){var{TILING_PADDING_VERTICAL:I,TILING_PADDING_HORIZONTAL:O,TILING_COMPARE_BY:i}=M,N={rows:[],rowWidth:[],rowHeight:[],width:0,height:Y,verticalPadding:I,horizontalPadding:O,centerX:0,centerY:0};if(i)N.idealRowWidth=this.calcIdealRowWidth(R,a);var V=function(_){return _.rect.width*_.rect.height},h=function(_,b0){return V(b0)-V(_)};R.sort(function(e,_){var b0=h;if(N.idealRowWidth)return b0=i,b0(e.id,_.id);return b0(e,_)});var r=0,m=0;for(var $=0;$<R.length;$++){var y=R[$];r+=y.getCenterX(),m+=y.getCenterY()}N.centerX=r/R.length,N.centerY=m/R.length;for(var $=0;$<R.length;$++){var y=R[$];if(N.rows.length==0)this.insertNodeToRow(N,y,0,Y);else if(this.canAddHorizontal(N,y.rect.width,y.rect.height)){var p=N.rows.length-1;if(!N.idealRowWidth)p=this.getShortestRowIndex(N);this.insertNodeToRow(N,y,p,Y)}else this.insertNodeToRow(N,y,N.rows.length,Y);this.shiftToLastRow(N)}return N},S.prototype.insertNodeToRow=function(R,Y,a,I){var O=I;if(a==R.rows.length){var i=[];R.rows.push(i),R.rowWidth.push(O),R.rowHeight.push(0)}var N=R.rowWidth[a]+Y.rect.width;if(R.rows[a].length>0)N+=R.horizontalPadding;if(R.rowWidth[a]=N,R.width<N)R.width=N;var V=Y.rect.height;if(a>0)V+=R.verticalPadding;var h=0;if(V>R.rowHeight[a])h=R.rowHeight[a],R.rowHeight[a]=V,h=R.rowHeight[a]-h;R.height+=h,R.rows[a].push(Y)},S.prototype.getShortestRowIndex=function(R){var Y=-1,a=Number.MAX_VALUE;for(var I=0;I<R.rows.length;I++)if(R.rowWidth[I]<a)Y=I,a=R.rowWidth[I];return Y},S.prototype.getLongestRowIndex=function(R){var Y=-1,a=Number.MIN_VALUE;for(var I=0;I<R.rows.length;I++)if(R.rowWidth[I]>a)Y=I,a=R.rowWidth[I];return Y},S.prototype.canAddHorizontal=function(R,Y,a){if(R.idealRowWidth){var I=R.rows.length-1,O=R.rowWidth[I];return O+Y+R.horizontalPadding<=R.idealRowWidth}var i=this.getShortestRowIndex(R);if(i<0)return!0;var N=R.rowWidth[i];if(N+R.horizontalPadding+Y<=R.width)return!0;var V=0;if(R.rowHeight[i]<a){if(i>0)V=a+R.verticalPadding-R.rowHeight[i]}var h;if(R.width-N>=Y+R.horizontalPadding)h=(R.height+V)/(N+Y+R.horizontalPadding);else h=(R.height+V)/R.width;V=a+R.verticalPadding;var r;if(R.width<Y)r=(R.height+V)/Y;else r=(R.height+V)/R.width;if(r<1)r=1/r;if(h<1)h=1/h;return h<r},S.prototype.shiftToLastRow=function(R){var Y=this.getLongestRowIndex(R),a=R.rowWidth.length-1,I=R.rows[Y],O=I[I.length-1],i=O.width+R.horizontalPadding;if(R.width-R.rowWidth[a]>i&&Y!=a){I.splice(-1,1),R.rows[a].push(O),R.rowWidth[Y]=R.rowWidth[Y]-i,R.rowWidth[a]=R.rowWidth[a]+i,R.width=R.rowWidth[instance.getLongestRowIndex(R)];var N=Number.MIN_VALUE;for(var V=0;V<I.length;V++)if(I[V].height>N)N=I[V].height;if(Y>0)N+=R.verticalPadding;var h=R.rowHeight[Y]+R.rowHeight[a];if(R.rowHeight[Y]=N,R.rowHeight[a]<O.height+R.verticalPadding)R.rowHeight[a]=O.height+R.verticalPadding;var r=R.rowHeight[Y]+R.rowHeight[a];R.height+=r-h,this.shiftToLastRow(R)}},S.prototype.tilingPreLayout=function(){if(M.TILE)this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers()},S.prototype.tilingPostLayout=function(){if(M.TILE)this.repopulateZeroDegreeMembers(),this.repopulateCompounds()},S.prototype.reduceTrees=function(){var R=[],Y=!0,a;while(Y){var I=this.graphManager.getAllNodes(),O=[];Y=!1;for(var i=0;i<I.length;i++)if(a=I[i],a.getEdges().length==1&&!a.getEdges()[0].isInterGraph&&a.getChild()==null){if(M.PURE_INCREMENTAL){var N=a.getEdges()[0].getOtherEnd(a),V=new G(a.getCenterX()-N.getCenterX(),a.getCenterY()-N.getCenterY());O.push([a,a.getEdges()[0],a.getOwner(),V])}else O.push([a,a.getEdges()[0],a.getOwner()]);Y=!0}if(Y==!0){var h=[];for(var r=0;r<O.length;r++)if(O[r][0].getEdges().length==1)h.push(O[r]),O[r][0].getOwner().remove(O[r][0]);R.push(h),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=R},S.prototype.growTree=function(R){var Y=R.length,a=R[Y-1],I;for(var O=0;O<a.length;O++)I=a[O],this.findPlaceforPrunedNode(I),I[2].add(I[0]),I[2].add(I[1],I[1].source,I[1].target);R.splice(R.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},S.prototype.findPlaceforPrunedNode=function(R){var Y,a,I=R[0];if(I==R[1].source)a=R[1].target;else a=R[1].source;if(M.PURE_INCREMENTAL)I.setCenter(a.getCenterX()+R[3].getWidth(),a.getCenterY()+R[3].getHeight());else{var{startX:O,finishX:i,startY:N,finishY:V}=a,h=0,r=0,m=0,$=0,y=[h,m,r,$];if(N>0)for(var p=O;p<=i;p++)y[0]+=this.grid[p][N-1].length+this.grid[p][N].length-1;if(i<this.grid.length-1)for(var p=N;p<=V;p++)y[1]+=this.grid[i+1][p].length+this.grid[i][p].length-1;if(V<this.grid[0].length-1)for(var p=O;p<=i;p++)y[2]+=this.grid[p][V+1].length+this.grid[p][V].length-1;if(O>0)for(var p=N;p<=V;p++)y[3]+=this.grid[O-1][p].length+this.grid[O][p].length-1;var e=H.MAX_VALUE,_,b0;for(var B0=0;B0<y.length;B0++)if(y[B0]<e)e=y[B0],_=1,b0=B0;else if(y[B0]==e)_++;if(_==3&&e==0){if(y[0]==0&&y[1]==0&&y[2]==0)Y=1;else if(y[0]==0&&y[1]==0&&y[3]==0)Y=0;else if(y[0]==0&&y[2]==0&&y[3]==0)Y=3;else if(y[1]==0&&y[2]==0&&y[3]==0)Y=2}else if(_==2&&e==0){var k0=Math.floor(Math.random()*2);if(y[0]==0&&y[1]==0)if(k0==0)Y=0;else Y=1;else if(y[0]==0&&y[2]==0)if(k0==0)Y=0;else Y=2;else if(y[0]==0&&y[3]==0)if(k0==0)Y=0;else Y=3;else if(y[1]==0&&y[2]==0)if(k0==0)Y=1;else Y=2;else if(y[1]==0&&y[3]==0)if(k0==0)Y=1;else Y=3;else if(k0==0)Y=2;else Y=3}else if(_==4&&e==0){var k0=Math.floor(Math.random()*4);Y=k0}else Y=b0;if(Y==0)I.setCenter(a.getCenterX(),a.getCenterY()-a.getHeight()/2-J.DEFAULT_EDGE_LENGTH-I.getHeight()/2);else if(Y==1)I.setCenter(a.getCenterX()+a.getWidth()/2+J.DEFAULT_EDGE_LENGTH+I.getWidth()/2,a.getCenterY());else if(Y==2)I.setCenter(a.getCenterX(),a.getCenterY()+a.getHeight()/2+J.DEFAULT_EDGE_LENGTH+I.getHeight()/2);else I.setCenter(a.getCenterX()-a.getWidth()/2-J.DEFAULT_EDGE_LENGTH-I.getWidth()/2,a.getCenterY())}},D.exports=S},991:(D,F,U)=>{var z=U(551).FDLayoutNode,k=U(551).IMath;function f(b,M,Z,J){z.call(this,b,M,Z,J)}f.prototype=Object.create(z.prototype);for(var l in z)f[l]=z[l];f.prototype.calculateDisplacement=function(){var b=this.graphManager.getLayout();if(this.getChild()!=null&&this.fixedNodeWeight)this.displacementX+=b.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=b.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight;else this.displacementX+=b.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=b.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren;if(Math.abs(this.displacementX)>b.coolingFactor*b.maxNodeDisplacement)this.displacementX=b.coolingFactor*b.maxNodeDisplacement*k.sign(this.displacementX);if(Math.abs(this.displacementY)>b.coolingFactor*b.maxNodeDisplacement)this.displacementY=b.coolingFactor*b.maxNodeDisplacement*k.sign(this.displacementY);if(this.child&&this.child.getNodes().length>0)this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(b,M){var Z=this.getChild().getNodes(),J;for(var w=0;w<Z.length;w++)if(J=Z[w],J.getChild()==null)J.displacementX+=b,J.displacementY+=M;else J.propogateDisplacementToChildren(b,M)},f.prototype.move=function(){var b=this.graphManager.getLayout();if(this.child==null||this.child.getNodes().length==0)this.moveBy(this.displacementX,this.displacementY),b.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},f.prototype.setPred1=function(b){this.pred1=b},f.prototype.getPred1=function(){return pred1},f.prototype.getPred2=function(){return pred2},f.prototype.setNext=function(b){this.next=b},f.prototype.getNext=function(){return next},f.prototype.setProcessed=function(b){this.processed=b},f.prototype.isProcessed=function(){return processed},D.exports=f},902:(D,F,U)=>{function z(Z){if(Array.isArray(Z)){for(var J=0,w=Array(Z.length);J<Z.length;J++)w[J]=Z[J];return w}else return Array.from(Z)}var k=U(806),f=U(551).LinkedList,l=U(551).Matrix,b=U(551).SVD;function M(){}M.handleConstraints=function(Z){var J={};J.fixedNodeConstraint=Z.constraints.fixedNodeConstraint,J.alignmentConstraint=Z.constraints.alignmentConstraint,J.relativePlacementConstraint=Z.constraints.relativePlacementConstraint;var w=new Map,K=new Map,Q=[],G=[],L=Z.getAllNodes(),H=0;for(var q=0;q<L.length;q++){var x=L[q];if(x.getChild()==null)K.set(x.id,H++),Q.push(x.getCenterX()),G.push(x.getCenterY()),w.set(x.id,x)}if(J.relativePlacementConstraint)J.relativePlacementConstraint.forEach(function(n){if(!n.gap&&n.gap!=0)if(n.left)n.gap=k.DEFAULT_EDGE_LENGTH+w.get(n.left).getWidth()/2+w.get(n.right).getWidth()/2;else n.gap=k.DEFAULT_EDGE_LENGTH+w.get(n.top).getHeight()/2+w.get(n.bottom).getHeight()/2});var v=function(d,H0){return{x:d.x-H0.x,y:d.y-H0.y}},W=function(d){var H0=0,o=0;return d.forEach(function(L0){H0+=Q[K.get(L0)],o+=G[K.get(L0)]}),{x:H0/d.size,y:o/d.size}},S=function(d,H0,o,L0,E0){function r0(zu,W0){var $u=new Set(zu),i0=!0,vu=!1,cu=void 0;try{for(var Du=W0[Symbol.iterator](),Nu;!(i0=(Nu=Du.next()).done);i0=!0){var du=Nu.value;$u.add(du)}}catch(Iu){vu=!0,cu=Iu}finally{try{if(!i0&&Du.return)Du.return()}finally{if(vu)throw cu}}return $u}var c0=new Map;d.forEach(function(zu,W0){c0.set(W0,0)}),d.forEach(function(zu,W0){zu.forEach(function($u){c0.set($u.id,c0.get($u.id)+1)})});var p0=new Map,g0=new Map,Bu=new f;if(c0.forEach(function(zu,W0){if(zu==0){if(Bu.push(W0),!o)if(H0=="horizontal")p0.set(W0,K.has(W0)?Q[K.get(W0)]:L0.get(W0));else p0.set(W0,K.has(W0)?G[K.get(W0)]:L0.get(W0))}else p0.set(W0,Number.NEGATIVE_INFINITY);if(o)g0.set(W0,new Set([W0]))}),o)E0.forEach(function(zu){var W0=[];if(zu.forEach(function(vu){if(o.has(vu))W0.push(vu)}),W0.length>0){var $u=0;W0.forEach(function(vu){if(H0=="horizontal")p0.set(vu,K.has(vu)?Q[K.get(vu)]:L0.get(vu)),$u+=p0.get(vu);else p0.set(vu,K.has(vu)?G[K.get(vu)]:L0.get(vu)),$u+=p0.get(vu)}),$u=$u/W0.length,zu.forEach(function(vu){if(!o.has(vu))p0.set(vu,$u)})}else{var i0=0;zu.forEach(function(vu){if(H0=="horizontal")i0+=K.has(vu)?Q[K.get(vu)]:L0.get(vu);else i0+=K.has(vu)?G[K.get(vu)]:L0.get(vu)}),i0=i0/zu.length,zu.forEach(function(vu){p0.set(vu,i0)})}});var n0=function(){var W0=Bu.shift(),$u=d.get(W0);$u.forEach(function(i0){if(p0.get(i0.id)<p0.get(W0)+i0.gap)if(o&&o.has(i0.id)){var vu=void 0;if(H0=="horizontal")vu=K.has(i0.id)?Q[K.get(i0.id)]:L0.get(i0.id);else vu=K.has(i0.id)?G[K.get(i0.id)]:L0.get(i0.id);if(p0.set(i0.id,vu),vu<p0.get(W0)+i0.gap){var cu=p0.get(W0)+i0.gap-vu;g0.get(W0).forEach(function(Du){p0.set(Du,p0.get(Du)-cu)})}}else p0.set(i0.id,p0.get(W0)+i0.gap);if(c0.set(i0.id,c0.get(i0.id)-1),c0.get(i0.id)==0)Bu.push(i0.id);if(o)g0.set(i0.id,r0(g0.get(W0),g0.get(i0.id)))})};while(Bu.length!=0)n0();if(o){var e0=new Set;d.forEach(function(zu,W0){if(zu.length==0)e0.add(W0)});var t0=[];g0.forEach(function(zu,W0){if(e0.has(W0)){var $u=!1,i0=!0,vu=!1,cu=void 0;try{for(var Du=zu[Symbol.iterator](),Nu;!(i0=(Nu=Du.next()).done);i0=!0){var du=Nu.value;if(o.has(du))$u=!0}}catch(Tu){vu=!0,cu=Tu}finally{try{if(!i0&&Du.return)Du.return()}finally{if(vu)throw cu}}if(!$u){var Iu=!1,x0=void 0;if(t0.forEach(function(Tu,Vu){if(Tu.has([].concat(z(zu))[0]))Iu=!0,x0=Vu}),!Iu)t0.push(new Set(zu));else zu.forEach(function(Tu){t0[x0].add(Tu)})}}}),t0.forEach(function(zu,W0){var{POSITIVE_INFINITY:$u,POSITIVE_INFINITY:i0,NEGATIVE_INFINITY:vu,NEGATIVE_INFINITY:cu}=Number,Du=!0,Nu=!1,du=void 0;try{for(var Iu=zu[Symbol.iterator](),x0;!(Du=(x0=Iu.next()).done);Du=!0){var Tu=x0.value,Vu=void 0;if(H0=="horizontal")Vu=K.has(Tu)?Q[K.get(Tu)]:L0.get(Tu);else Vu=K.has(Tu)?G[K.get(Tu)]:L0.get(Tu);var Zu=p0.get(Tu);if(Vu<$u)$u=Vu;if(Vu>vu)vu=Vu;if(Zu<i0)i0=Zu;if(Zu>cu)cu=Zu}}catch(F3){Nu=!0,du=F3}finally{try{if(!Du&&Iu.return)Iu.return()}finally{if(Nu)throw du}}var I0=($u+vu)/2-(i0+cu)/2,lu=!0,Hu=!1,Ru=void 0;try{for(var W4=zu[Symbol.iterator](),ru;!(lu=(ru=W4.next()).done);lu=!0){var q4=ru.value;p0.set(q4,p0.get(q4)+I0)}}catch(F3){Hu=!0,Ru=F3}finally{try{if(!lu&&W4.return)W4.return()}finally{if(Hu)throw Ru}}})}return p0},T=function(d){var H0=0,o=0,L0=0,E0=0;if(d.forEach(function(g0){if(g0.left)Q[K.get(g0.left)]-Q[K.get(g0.right)]>=0?H0++:o++;else G[K.get(g0.top)]-G[K.get(g0.bottom)]>=0?L0++:E0++}),H0>o&&L0>E0)for(var r0=0;r0<K.size;r0++)Q[r0]=-1*Q[r0],G[r0]=-1*G[r0];else if(H0>o)for(var c0=0;c0<K.size;c0++)Q[c0]=-1*Q[c0];else if(L0>E0)for(var p0=0;p0<K.size;p0++)G[p0]=-1*G[p0]},R=function(d){var H0=[],o=new f,L0=new Set,E0=0;return d.forEach(function(r0,c0){if(!L0.has(c0)){H0[E0]=[];var p0=c0;o.push(p0),L0.add(p0),H0[E0].push(p0);while(o.length!=0){p0=o.shift();var g0=d.get(p0);g0.forEach(function(Bu){if(!L0.has(Bu.id))o.push(Bu.id),L0.add(Bu.id),H0[E0].push(Bu.id)})}E0++}}),H0},Y=function(d){var H0=new Map;return d.forEach(function(o,L0){H0.set(L0,[])}),d.forEach(function(o,L0){o.forEach(function(E0){H0.get(L0).push(E0),H0.get(E0.id).push({id:L0,gap:E0.gap,direction:E0.direction})})}),H0},a=function(d){var H0=new Map;return d.forEach(function(o,L0){H0.set(L0,[])}),d.forEach(function(o,L0){o.forEach(function(E0){H0.get(E0.id).push({id:L0,gap:E0.gap,direction:E0.direction})})}),H0},I=[],O=[],i=!1,N=!1,V=new Set,h=new Map,r=new Map,m=[];if(J.fixedNodeConstraint)J.fixedNodeConstraint.forEach(function(n){V.add(n.nodeId)});if(J.relativePlacementConstraint)J.relativePlacementConstraint.forEach(function(n){if(n.left){if(h.has(n.left))h.get(n.left).push({id:n.right,gap:n.gap,direction:"horizontal"});else h.set(n.left,[{id:n.right,gap:n.gap,direction:"horizontal"}]);if(!h.has(n.right))h.set(n.right,[])}else{if(h.has(n.top))h.get(n.top).push({id:n.bottom,gap:n.gap,direction:"vertical"});else h.set(n.top,[{id:n.bottom,gap:n.gap,direction:"vertical"}]);if(!h.has(n.bottom))h.set(n.bottom,[])}}),r=Y(h),m=R(r);if(k.TRANSFORM_ON_CONSTRAINT_HANDLING){if(J.fixedNodeConstraint&&J.fixedNodeConstraint.length>1)J.fixedNodeConstraint.forEach(function(n,d){I[d]=[n.position.x,n.position.y],O[d]=[Q[K.get(n.nodeId)],G[K.get(n.nodeId)]]}),i=!0;else if(J.alignmentConstraint)(function(){var n=0;if(J.alignmentConstraint.vertical){var d=J.alignmentConstraint.vertical,H0=function(p0){var g0=new Set;d[p0].forEach(function(e0){g0.add(e0)});var Bu=new Set([].concat(z(g0)).filter(function(e0){return V.has(e0)})),n0=void 0;if(Bu.size>0)n0=Q[K.get(Bu.values().next().value)];else n0=W(g0).x;d[p0].forEach(function(e0){I[n]=[n0,G[K.get(e0)]],O[n]=[Q[K.get(e0)],G[K.get(e0)]],n++})};for(var o=0;o<d.length;o++)H0(o);i=!0}if(J.alignmentConstraint.horizontal){var L0=J.alignmentConstraint.horizontal,E0=function(p0){var g0=new Set;L0[p0].forEach(function(e0){g0.add(e0)});var Bu=new Set([].concat(z(g0)).filter(function(e0){return V.has(e0)})),n0=void 0;if(Bu.size>0)n0=Q[K.get(Bu.values().next().value)];else n0=W(g0).y;L0[p0].forEach(function(e0){I[n]=[Q[K.get(e0)],n0],O[n]=[Q[K.get(e0)],G[K.get(e0)]],n++})};for(var r0=0;r0<L0.length;r0++)E0(r0);i=!0}if(J.relativePlacementConstraint)N=!0})();else if(J.relativePlacementConstraint){var $=0,y=0;for(var p=0;p<m.length;p++)if(m[p].length>$)$=m[p].length,y=p;if($<r.size/2)T(J.relativePlacementConstraint),i=!1,N=!1;else{var e=new Map,_=new Map,b0=[];m[y].forEach(function(n){h.get(n).forEach(function(d){if(d.direction=="horizontal"){if(e.has(n))e.get(n).push(d);else e.set(n,[d]);if(!e.has(d.id))e.set(d.id,[]);b0.push({left:n,right:d.id})}else{if(_.has(n))_.get(n).push(d);else _.set(n,[d]);if(!_.has(d.id))_.set(d.id,[]);b0.push({top:n,bottom:d.id})}})}),T(b0),N=!1;var B0=S(e,"horizontal"),k0=S(_,"vertical");m[y].forEach(function(n,d){if(O[d]=[Q[K.get(n)],G[K.get(n)]],I[d]=[],B0.has(n))I[d][0]=B0.get(n);else I[d][0]=Q[K.get(n)];if(k0.has(n))I[d][1]=k0.get(n);else I[d][1]=G[K.get(n)]}),i=!0}}if(i){var f0=void 0,D0=l.transpose(I),P0=l.transpose(O);for(var q0=0;q0<D0.length;q0++)D0[q0]=l.multGamma(D0[q0]),P0[q0]=l.multGamma(P0[q0]);var m0=l.multMat(D0,l.transpose(P0)),a0=b.svd(m0);f0=l.multMat(a0.V,l.transpose(a0.U));for(var _0=0;_0<K.size;_0++){var w0=[Q[_0],G[_0]],v0=[f0[0][0],f0[1][0]],T0=[f0[0][1],f0[1][1]];Q[_0]=l.dotProduct(w0,v0),G[_0]=l.dotProduct(w0,T0)}if(N)T(J.relativePlacementConstraint)}}if(k.ENFORCE_CONSTRAINTS){if(J.fixedNodeConstraint&&J.fixedNodeConstraint.length>0){var Z0={x:0,y:0};J.fixedNodeConstraint.forEach(function(n,d){var H0={x:Q[K.get(n.nodeId)],y:G[K.get(n.nodeId)]},o=n.position,L0=v(o,H0);Z0.x+=L0.x,Z0.y+=L0.y}),Z0.x/=J.fixedNodeConstraint.length,Z0.y/=J.fixedNodeConstraint.length,Q.forEach(function(n,d){Q[d]+=Z0.x}),G.forEach(function(n,d){G[d]+=Z0.y}),J.fixedNodeConstraint.forEach(function(n){Q[K.get(n.nodeId)]=n.position.x,G[K.get(n.nodeId)]=n.position.y})}if(J.alignmentConstraint){if(J.alignmentConstraint.vertical){var F0=J.alignmentConstraint.vertical,u0=function(d){var H0=new Set;F0[d].forEach(function(E0){H0.add(E0)});var o=new Set([].concat(z(H0)).filter(function(E0){return V.has(E0)})),L0=void 0;if(o.size>0)L0=Q[K.get(o.values().next().value)];else L0=W(H0).x;H0.forEach(function(E0){if(!V.has(E0))Q[K.get(E0)]=L0})};for(var M0=0;M0<F0.length;M0++)u0(M0)}if(J.alignmentConstraint.horizontal){var X0=J.alignmentConstraint.horizontal,S0=function(d){var H0=new Set;X0[d].forEach(function(E0){H0.add(E0)});var o=new Set([].concat(z(H0)).filter(function(E0){return V.has(E0)})),L0=void 0;if(o.size>0)L0=G[K.get(o.values().next().value)];else L0=W(H0).y;H0.forEach(function(E0){if(!V.has(E0))G[K.get(E0)]=L0})};for(var Y0=0;Y0<X0.length;Y0++)S0(Y0)}}if(J.relativePlacementConstraint)(function(){var n=new Map,d=new Map,H0=new Map,o=new Map,L0=new Map,E0=new Map,r0=new Set,c0=new Set;if(V.forEach(function(E3){r0.add(E3),c0.add(E3)}),J.alignmentConstraint){if(J.alignmentConstraint.vertical){var p0=J.alignmentConstraint.vertical,g0=function(eu){H0.set("dummy"+eu,[]),p0[eu].forEach(function(au){if(n.set(au,"dummy"+eu),H0.get("dummy"+eu).push(au),V.has(au))r0.add("dummy"+eu)}),L0.set("dummy"+eu,Q[K.get(p0[eu][0])])};for(var Bu=0;Bu<p0.length;Bu++)g0(Bu)}if(J.alignmentConstraint.horizontal){var n0=J.alignmentConstraint.horizontal,e0=function(eu){o.set("dummy"+eu,[]),n0[eu].forEach(function(au){if(d.set(au,"dummy"+eu),o.get("dummy"+eu).push(au),V.has(au))c0.add("dummy"+eu)}),E0.set("dummy"+eu,G[K.get(n0[eu][0])])};for(var t0=0;t0<n0.length;t0++)e0(t0)}}var zu=new Map,W0=new Map,$u=function(eu){h.get(eu).forEach(function(au){var f4=void 0,U4=void 0;if(au.direction=="horizontal"){if(f4=n.get(eu)?n.get(eu):eu,n.get(au.id))U4={id:n.get(au.id),gap:au.gap,direction:au.direction};else U4=au;if(zu.has(f4))zu.get(f4).push(U4);else zu.set(f4,[U4]);if(!zu.has(U4.id))zu.set(U4.id,[])}else{if(f4=d.get(eu)?d.get(eu):eu,d.get(au.id))U4={id:d.get(au.id),gap:au.gap,direction:au.direction};else U4=au;if(W0.has(f4))W0.get(f4).push(U4);else W0.set(f4,[U4]);if(!W0.has(U4.id))W0.set(U4.id,[])}})},i0=!0,vu=!1,cu=void 0;try{for(var Du=h.keys()[Symbol.iterator](),Nu;!(i0=(Nu=Du.next()).done);i0=!0){var du=Nu.value;$u(du)}}catch(E3){vu=!0,cu=E3}finally{try{if(!i0&&Du.return)Du.return()}finally{if(vu)throw cu}}var Iu=Y(zu),x0=Y(W0),Tu=R(Iu),Vu=R(x0),Zu=a(zu),I0=a(W0),lu=[],Hu=[];Tu.forEach(function(E3,eu){lu[eu]=[],E3.forEach(function(au){if(Zu.get(au).length==0)lu[eu].push(au)})}),Vu.forEach(function(E3,eu){Hu[eu]=[],E3.forEach(function(au){if(I0.get(au).length==0)Hu[eu].push(au)})});var Ru=S(zu,"horizontal",r0,L0,lu),W4=S(W0,"vertical",c0,E0,Hu),ru=function(eu){if(H0.get(eu))H0.get(eu).forEach(function(au){Q[K.get(au)]=Ru.get(eu)});else Q[K.get(eu)]=Ru.get(eu)},q4=!0,F3=!1,i4=void 0;try{for(var b4=Ru.keys()[Symbol.iterator](),P4;!(q4=(P4=b4.next()).done);q4=!0){var bu=P4.value;ru(bu)}}catch(E3){F3=!0,i4=E3}finally{try{if(!q4&&b4.return)b4.return()}finally{if(F3)throw i4}}var qu=function(eu){if(o.get(eu))o.get(eu).forEach(function(au){G[K.get(au)]=W4.get(eu)});else G[K.get(eu)]=W4.get(eu)},nu=!0,c4=!1,$4=void 0;try{for(var B3=W4.keys()[Symbol.iterator](),z1;!(nu=(z1=B3.next()).done);nu=!0){var bu=z1.value;qu(bu)}}catch(E3){c4=!0,$4=E3}finally{try{if(!nu&&B3.return)B3.return()}finally{if(c4)throw $4}}})()}for(var h0=0;h0<L.length;h0++){var J0=L[h0];if(J0.getChild()==null)J0.setCenter(Q[K.get(J0.id)],G[K.get(J0.id)])}},D.exports=M},551:(D)=>{D.exports=u}},E={};function A(D){var F=E[D];if(F!==void 0)return F.exports;var U=E[D]={exports:{}};return B[D](U,U.exports,A),U.exports}var C=A(45);return C})()})});var I7u=P1((_R,NF0)=>{(function(B,E){if(typeof _R==="object"&&typeof NF0==="object")NF0.exports=E(jF0());else if(typeof define==="function"&&define.amd)define(["cose-base"],E);else if(typeof _R==="object")_R.cytoscapeFcose=E(jF0());else B.cytoscapeFcose=E(B.coseBase)})(_R,function(u){return(()=>{var B={658:(D)=>{D.exports=Object.assign!=null?Object.assign.bind(Object):function(F){for(var U=arguments.length,z=Array(U>1?U-1:0),k=1;k<U;k++)z[k-1]=arguments[k];return z.forEach(function(f){Object.keys(f).forEach(function(l){return F[l]=f[l]})}),F}},548:(D,F,U)=>{var z=function(){function l(b,M){var Z=[],J=!0,w=!1,K=void 0;try{for(var Q=b[Symbol.iterator](),G;!(J=(G=Q.next()).done);J=!0)if(Z.push(G.value),M&&Z.length===M)break}catch(L){w=!0,K=L}finally{try{if(!J&&Q.return)Q.return()}finally{if(w)throw K}}return Z}return function(b,M){if(Array.isArray(b))return b;else if(Symbol.iterator in Object(b))return l(b,M);else throw TypeError("Invalid attempt to destructure non-iterable instance")}}(),k=U(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(l){var b={};for(var M=0;M<l.length;M++)b[l[M].id()]=!0;var Z=l.filter(function(J,w){if(typeof J==="number")J=w;var K=J.parent()[0];while(K!=null){if(b[K.id()])return!1;K=K.parent()[0]}return!0});return Z},f.connectComponents=function(l,b,M,Z){var J=new k,w=new Set,K=[],Q=void 0,G=void 0,L=void 0,H=!1,q=1,x=[],v=[],W=function(){var T=l.collection();v.push(T);var R=M[0],Y=l.collection();Y.merge(R).merge(R.descendants().intersection(b)),K.push(R),Y.forEach(function(O){J.push(O),w.add(O),T.merge(O)});var a=function(){R=J.shift();var i=l.collection();R.neighborhood().nodes().forEach(function(r){if(b.intersection(R.edgesWith(r)).length>0)i.merge(r)});for(var N=0;N<i.length;N++){var V=i[N];if(Q=M.intersection(V.union(V.ancestors())),Q!=null&&!w.has(Q[0])){var h=Q.union(Q.descendants());h.forEach(function(r){if(J.push(r),w.add(r),T.merge(r),M.has(r))K.push(r)})}}};while(J.length!=0)a();if(T.forEach(function(O){b.intersection(O.connectedEdges()).forEach(function(i){if(T.has(i.source())&&T.has(i.target()))T.merge(i)})}),K.length==M.length)H=!0;if(!H||H&&q>1){G=K[0],L=G.connectedEdges().length,K.forEach(function(O){if(O.connectedEdges().length<L)L=O.connectedEdges().length,G=O}),x.push(G.id());var I=l.collection();I.merge(K[0]),K.forEach(function(O){I.merge(O)}),K=[],M=M.difference(I),q++}};do W();while(!H);if(Z){if(x.length>0)Z.set("dummy"+(Z.size+1),x)}return v},f.relocateComponent=function(l,b,M){if(!M.fixedNodeConstraint){var{POSITIVE_INFINITY:Z,NEGATIVE_INFINITY:J,POSITIVE_INFINITY:w,NEGATIVE_INFINITY:K}=Number;if(M.quality=="draft"){var Q=!0,G=!1,L=void 0;try{for(var H=b.nodeIndexes[Symbol.iterator](),q;!(Q=(q=H.next()).done);Q=!0){var x=q.value,v=z(x,2),W=v[0],S=v[1],T=M.cy.getElementById(W);if(T){var R=T.boundingBox(),Y=b.xCoords[S]-R.w/2,a=b.xCoords[S]+R.w/2,I=b.yCoords[S]-R.h/2,O=b.yCoords[S]+R.h/2;if(Y<Z)Z=Y;if(a>J)J=a;if(I<w)w=I;if(O>K)K=O}}}catch(r){G=!0,L=r}finally{try{if(!Q&&H.return)H.return()}finally{if(G)throw L}}var i=l.x-(J+Z)/2,N=l.y-(K+w)/2;b.xCoords=b.xCoords.map(function(r){return r+i}),b.yCoords=b.yCoords.map(function(r){return r+N})}else{Object.keys(b).forEach(function(r){var m=b[r],$=m.getRect().x,y=m.getRect().x+m.getRect().width,p=m.getRect().y,e=m.getRect().y+m.getRect().height;if($<Z)Z=$;if(y>J)J=y;if(p<w)w=p;if(e>K)K=e});var V=l.x-(J+Z)/2,h=l.y-(K+w)/2;Object.keys(b).forEach(function(r){var m=b[r];m.setCenter(m.getCenterX()+V,m.getCenterY()+h)})}}},f.calcBoundingBox=function(l,b,M,Z){var{MAX_SAFE_INTEGER:J,MIN_SAFE_INTEGER:w,MAX_SAFE_INTEGER:K,MIN_SAFE_INTEGER:Q}=Number,G=void 0,L=void 0,H=void 0,q=void 0,x=l.descendants().not(":parent"),v=x.length;for(var W=0;W<v;W++){var S=x[W];if(G=b[Z.get(S.id())]-S.width()/2,L=b[Z.get(S.id())]+S.width()/2,H=M[Z.get(S.id())]-S.height()/2,q=M[Z.get(S.id())]+S.height()/2,J>G)J=G;if(w<L)w=L;if(K>H)K=H;if(Q<q)Q=q}var T={};return T.topLeftX=J,T.topLeftY=K,T.width=w-J,T.height=Q-K,T},f.calcParentsWithoutChildren=function(l,b){var M=l.collection();return b.nodes(":parent").forEach(function(Z){var J=!1;if(Z.children().forEach(function(w){if(w.css("display")!="none")J=!0}),!J)M.merge(Z)}),M},D.exports=f},816:(D,F,U)=>{var z=U(548),k=U(140).CoSELayout,f=U(140).CoSENode,l=U(140).layoutBase.PointD,b=U(140).layoutBase.DimensionD,M=U(140).layoutBase.LayoutConstants,Z=U(140).layoutBase.FDLayoutConstants,J=U(140).CoSEConstants,w=function(Q,G){var{cy:L,eles:H}=Q,q=H.nodes(),x=H.edges(),v=void 0,W=void 0,S=void 0,T={};if(Q.randomize)v=G.nodeIndexes,W=G.xCoords,S=G.yCoords;var R=function(r){return typeof r==="function"},Y=function(r,m){if(R(r))return r(m);else return r},a=z.calcParentsWithoutChildren(L,H),I=function h(r,m,$,y){var p=m.length;for(var e=0;e<p;e++){var _=m[e],b0=null;if(_.intersection(a).length==0)b0=_.children();var B0=void 0,k0=_.layoutDimensions({nodeDimensionsIncludeLabels:y.nodeDimensionsIncludeLabels});if(_.outerWidth()!=null&&_.outerHeight()!=null)if(y.randomize)if(!_.isParent())B0=r.add(new f($.graphManager,new l(W[v.get(_.id())]-k0.w/2,S[v.get(_.id())]-k0.h/2),new b(parseFloat(k0.w),parseFloat(k0.h))));else{var f0=z.calcBoundingBox(_,W,S,v);if(_.intersection(a).length==0)B0=r.add(new f($.graphManager,new l(f0.topLeftX,f0.topLeftY),new b(f0.width,f0.height)));else B0=r.add(new f($.graphManager,new l(f0.topLeftX,f0.topLeftY),new b(parseFloat(k0.w),parseFloat(k0.h))))}else B0=r.add(new f($.graphManager,new l(_.position("x")-k0.w/2,_.position("y")-k0.h/2),new b(parseFloat(k0.w),parseFloat(k0.h))));else B0=r.add(new f(this.graphManager));if(B0.id=_.data("id"),B0.nodeRepulsion=Y(y.nodeRepulsion,_),B0.paddingLeft=parseInt(_.css("padding")),B0.paddingTop=parseInt(_.css("padding")),B0.paddingRight=parseInt(_.css("padding")),B0.paddingBottom=parseInt(_.css("padding")),y.nodeDimensionsIncludeLabels)B0.labelWidth=_.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).w,B0.labelHeight=_.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).h,B0.labelPosVertical=_.css("text-valign"),B0.labelPosHorizontal=_.css("text-halign");if(T[_.data("id")]=B0,isNaN(B0.rect.x))B0.rect.x=0;if(isNaN(B0.rect.y))B0.rect.y=0;if(b0!=null&&b0.length>0){var D0=void 0;D0=$.getGraphManager().add($.newGraph(),B0),h(D0,b0,$,y)}}},O=function(r,m,$){var y=0,p=0;for(var e=0;e<$.length;e++){var _=$[e],b0=T[_.data("source")],B0=T[_.data("target")];if(b0&&B0&&b0!==B0&&b0.getEdgesBetween(B0).length==0){var k0=m.add(r.newEdge(),b0,B0);k0.id=_.id(),k0.idealLength=Y(Q.idealEdgeLength,_),k0.edgeElasticity=Y(Q.edgeElasticity,_),y+=k0.idealLength,p++}}if(Q.idealEdgeLength!=null){if(p>0)J.DEFAULT_EDGE_LENGTH=Z.DEFAULT_EDGE_LENGTH=y/p;else if(!R(Q.idealEdgeLength))J.DEFAULT_EDGE_LENGTH=Z.DEFAULT_EDGE_LENGTH=Q.idealEdgeLength;else J.DEFAULT_EDGE_LENGTH=Z.DEFAULT_EDGE_LENGTH=50;J.MIN_REPULSION_DIST=Z.MIN_REPULSION_DIST=Z.DEFAULT_EDGE_LENGTH/10,J.DEFAULT_RADIAL_SEPARATION=Z.DEFAULT_EDGE_LENGTH}},i=function(r,m){if(m.fixedNodeConstraint)r.constraints.fixedNodeConstraint=m.fixedNodeConstraint;if(m.alignmentConstraint)r.constraints.alignmentConstraint=m.alignmentConstraint;if(m.relativePlacementConstraint)r.constraints.relativePlacementConstraint=m.relativePlacementConstraint};if(Q.nestingFactor!=null)J.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=Z.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=Q.nestingFactor;if(Q.gravity!=null)J.DEFAULT_GRAVITY_STRENGTH=Z.DEFAULT_GRAVITY_STRENGTH=Q.gravity;if(Q.numIter!=null)J.MAX_ITERATIONS=Z.MAX_ITERATIONS=Q.numIter;if(Q.gravityRange!=null)J.DEFAULT_GRAVITY_RANGE_FACTOR=Z.DEFAULT_GRAVITY_RANGE_FACTOR=Q.gravityRange;if(Q.gravityCompound!=null)J.DEFAULT_COMPOUND_GRAVITY_STRENGTH=Z.DEFAULT_COMPOUND_GRAVITY_STRENGTH=Q.gravityCompound;if(Q.gravityRangeCompound!=null)J.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=Z.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=Q.gravityRangeCompound;if(Q.initialEnergyOnIncremental!=null)J.DEFAULT_COOLING_FACTOR_INCREMENTAL=Z.DEFAULT_COOLING_FACTOR_INCREMENTAL=Q.initialEnergyOnIncremental;if(Q.tilingCompareBy!=null)J.TILING_COMPARE_BY=Q.tilingCompareBy;if(Q.quality=="proof")M.QUALITY=2;else M.QUALITY=0;if(J.NODE_DIMENSIONS_INCLUDE_LABELS=Z.NODE_DIMENSIONS_INCLUDE_LABELS=M.NODE_DIMENSIONS_INCLUDE_LABELS=Q.nodeDimensionsIncludeLabels,J.DEFAULT_INCREMENTAL=Z.DEFAULT_INCREMENTAL=M.DEFAULT_INCREMENTAL=!Q.randomize,J.ANIMATE=Z.ANIMATE=M.ANIMATE=Q.animate,J.TILE=Q.tile,J.TILING_PADDING_VERTICAL=typeof Q.tilingPaddingVertical==="function"?Q.tilingPaddingVertical.call():Q.tilingPaddingVertical,J.TILING_PADDING_HORIZONTAL=typeof Q.tilingPaddingHorizontal==="function"?Q.tilingPaddingHorizontal.call():Q.tilingPaddingHorizontal,J.DEFAULT_INCREMENTAL=Z.DEFAULT_INCREMENTAL=M.DEFAULT_INCREMENTAL=!0,J.PURE_INCREMENTAL=!Q.randomize,M.DEFAULT_UNIFORM_LEAF_NODE_SIZES=Q.uniformNodeDimensions,Q.step=="transformed")J.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,J.ENFORCE_CONSTRAINTS=!1,J.APPLY_LAYOUT=!1;if(Q.step=="enforced")J.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,J.ENFORCE_CONSTRAINTS=!0,J.APPLY_LAYOUT=!1;if(Q.step=="cose")J.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,J.ENFORCE_CONSTRAINTS=!1,J.APPLY_LAYOUT=!0;if(Q.step=="all"){if(Q.randomize)J.TRANSFORM_ON_CONSTRAINT_HANDLING=!0;else J.TRANSFORM_ON_CONSTRAINT_HANDLING=!1;J.ENFORCE_CONSTRAINTS=!0,J.APPLY_LAYOUT=!0}if(Q.fixedNodeConstraint||Q.alignmentConstraint||Q.relativePlacementConstraint)J.TREE_REDUCTION_ON_INCREMENTAL=!1;else J.TREE_REDUCTION_ON_INCREMENTAL=!0;var N=new k,V=N.newGraphManager();return I(V.addRoot(),z.getTopMostNodes(q),N,Q),O(N,V,x),i(N,Q),N.runLayout(),T};D.exports={coseLayout:w}},212:(D,F,U)=>{var z=function(){function Q(G,L){for(var H=0;H<L.length;H++){var q=L[H];if(q.enumerable=q.enumerable||!1,q.configurable=!0,"value"in q)q.writable=!0;Object.defineProperty(G,q.key,q)}}return function(G,L,H){if(L)Q(G.prototype,L);if(H)Q(G,H);return G}}();function k(Q,G){if(!(Q instanceof G))throw TypeError("Cannot call a class as a function")}var f=U(658),l=U(548),b=U(657),M=b.spectralLayout,Z=U(816),J=Z.coseLayout,w=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(G){return 4500},idealEdgeLength:function(G){return 50},edgeElasticity:function(G){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(){}}),K=function(){function Q(G){k(this,Q),this.options=f({},w,G)}return z(Q,[{key:"run",value:function(){var L=this,H=this.options,q=H.cy,x=H.eles,v=[],W=void 0,S=void 0,T=[],R=void 0,Y=[];if(H.fixedNodeConstraint&&(!Array.isArray(H.fixedNodeConstraint)||H.fixedNodeConstraint.length==0))H.fixedNodeConstraint=void 0;if(H.alignmentConstraint){if(H.alignmentConstraint.vertical&&(!Array.isArray(H.alignmentConstraint.vertical)||H.alignmentConstraint.vertical.length==0))H.alignmentConstraint.vertical=void 0;if(H.alignmentConstraint.horizontal&&(!Array.isArray(H.alignmentConstraint.horizontal)||H.alignmentConstraint.horizontal.length==0))H.alignmentConstraint.horizontal=void 0}if(H.relativePlacementConstraint&&(!Array.isArray(H.relativePlacementConstraint)||H.relativePlacementConstraint.length==0))H.relativePlacementConstraint=void 0;var a=H.fixedNodeConstraint||H.alignmentConstraint||H.relativePlacementConstraint;if(a)H.tile=!1,H.packComponents=!1;var I=void 0,O=!1;if(q.layoutUtilities&&H.packComponents){if(I=q.layoutUtilities("get"),!I)I=q.layoutUtilities();O=!0}if(x.nodes().length>0)if(!O){var i=H.eles.boundingBox();if(Y.push({x:i.x1+i.w/2,y:i.y1+i.h/2}),H.randomize){var N=M(H);v.push(N)}if(H.quality=="default"||H.quality=="proof")T.push(J(H,v[0])),l.relocateComponent(Y[0],T[0],H);else l.relocateComponent(Y[0],v[0],H)}else{var V=l.getTopMostNodes(H.eles.nodes());if(R=l.connectComponents(q,H.eles,V),R.forEach(function(_0){var w0=_0.boundingBox();Y.push({x:w0.x1+w0.w/2,y:w0.y1+w0.h/2})}),H.randomize)R.forEach(function(_0){H.eles=_0,v.push(M(H))});if(H.quality=="default"||H.quality=="proof"){var h=q.collection();if(H.tile){var r=new Map,m=[],$=[],y=0,p={nodeIndexes:r,xCoords:m,yCoords:$},e=[];if(R.forEach(function(_0,w0){if(_0.edges().length==0)_0.nodes().forEach(function(v0,T0){if(h.merge(_0.nodes()[T0]),!v0.isParent())p.nodeIndexes.set(_0.nodes()[T0].id(),y++),p.xCoords.push(_0.nodes()[0].position().x),p.yCoords.push(_0.nodes()[0].position().y)}),e.push(w0)}),h.length>1){var _=h.boundingBox();Y.push({x:_.x1+_.w/2,y:_.y1+_.h/2}),R.push(h),v.push(p);for(var b0=e.length-1;b0>=0;b0--)R.splice(e[b0],1),v.splice(e[b0],1),Y.splice(e[b0],1)}}R.forEach(function(_0,w0){H.eles=_0,T.push(J(H,v[w0])),l.relocateComponent(Y[w0],T[w0],H)})}else R.forEach(function(_0,w0){l.relocateComponent(Y[w0],v[w0],H)});var B0=new Set;if(R.length>1){var k0=[],f0=x.filter(function(_0){return _0.css("display")=="none"});R.forEach(function(_0,w0){var v0=void 0;if(H.quality=="draft")v0=v[w0].nodeIndexes;if(_0.nodes().not(f0).length>0){var T0={};T0.edges=[],T0.nodes=[];var Z0=void 0;if(_0.nodes().not(f0).forEach(function(F0){if(H.quality=="draft")if(!F0.isParent())Z0=v0.get(F0.id()),T0.nodes.push({x:v[w0].xCoords[Z0]-F0.boundingbox().w/2,y:v[w0].yCoords[Z0]-F0.boundingbox().h/2,width:F0.boundingbox().w,height:F0.boundingbox().h});else{var u0=l.calcBoundingBox(F0,v[w0].xCoords,v[w0].yCoords,v0);T0.nodes.push({x:u0.topLeftX,y:u0.topLeftY,width:u0.width,height:u0.height})}else if(T[w0][F0.id()])T0.nodes.push({x:T[w0][F0.id()].getLeft(),y:T[w0][F0.id()].getTop(),width:T[w0][F0.id()].getWidth(),height:T[w0][F0.id()].getHeight()})}),_0.edges().forEach(function(F0){var u0=F0.source(),M0=F0.target();if(u0.css("display")!="none"&&M0.css("display")!="none"){if(H.quality=="draft"){var X0=v0.get(u0.id()),S0=v0.get(M0.id()),Y0=[],h0=[];if(u0.isParent()){var J0=l.calcBoundingBox(u0,v[w0].xCoords,v[w0].yCoords,v0);Y0.push(J0.topLeftX+J0.width/2),Y0.push(J0.topLeftY+J0.height/2)}else Y0.push(v[w0].xCoords[X0]),Y0.push(v[w0].yCoords[X0]);if(M0.isParent()){var n=l.calcBoundingBox(M0,v[w0].xCoords,v[w0].yCoords,v0);h0.push(n.topLeftX+n.width/2),h0.push(n.topLeftY+n.height/2)}else h0.push(v[w0].xCoords[S0]),h0.push(v[w0].yCoords[S0]);T0.edges.push({startX:Y0[0],startY:Y0[1],endX:h0[0],endY:h0[1]})}else if(T[w0][u0.id()]&&T[w0][M0.id()])T0.edges.push({startX:T[w0][u0.id()].getCenterX(),startY:T[w0][u0.id()].getCenterY(),endX:T[w0][M0.id()].getCenterX(),endY:T[w0][M0.id()].getCenterY()})}}),T0.nodes.length>0)k0.push(T0),B0.add(w0)}});var D0=I.packComponents(k0,H.randomize).shifts;if(H.quality=="draft")v.forEach(function(_0,w0){var v0=_0.xCoords.map(function(Z0){return Z0+D0[w0].dx}),T0=_0.yCoords.map(function(Z0){return Z0+D0[w0].dy});_0.xCoords=v0,_0.yCoords=T0});else{var P0=0;B0.forEach(function(_0){Object.keys(T[_0]).forEach(function(w0){var v0=T[_0][w0];v0.setCenter(v0.getCenterX()+D0[P0].dx,v0.getCenterY()+D0[P0].dy)}),P0++})}}}var q0=function(w0,v0){if(H.quality=="default"||H.quality=="proof"){if(typeof w0==="number")w0=v0;var T0=void 0,Z0=void 0,F0=w0.data("id");if(T.forEach(function(M0){if(F0 in M0)T0={x:M0[F0].getRect().getCenterX(),y:M0[F0].getRect().getCenterY()},Z0=M0[F0]}),H.nodeDimensionsIncludeLabels){if(Z0.labelWidth){if(Z0.labelPosHorizontal=="left")T0.x+=Z0.labelWidth/2;else if(Z0.labelPosHorizontal=="right")T0.x-=Z0.labelWidth/2}if(Z0.labelHeight){if(Z0.labelPosVertical=="top")T0.y+=Z0.labelHeight/2;else if(Z0.labelPosVertical=="bottom")T0.y-=Z0.labelHeight/2}}if(T0==null)T0={x:w0.position("x"),y:w0.position("y")};return{x:T0.x,y:T0.y}}else{var u0=void 0;if(v.forEach(function(M0){var X0=M0.nodeIndexes.get(w0.id());if(X0!=null)u0={x:M0.xCoords[X0],y:M0.yCoords[X0]}}),u0==null)u0={x:w0.position("x"),y:w0.position("y")};return{x:u0.x,y:u0.y}}};if(H.quality=="default"||H.quality=="proof"||H.randomize){var m0=l.calcParentsWithoutChildren(q,x),a0=x.filter(function(_0){return _0.css("display")=="none"});if(H.eles=x.not(a0),x.nodes().not(":parent").not(a0).layoutPositions(L,H,q0),m0.length>0)m0.forEach(function(_0){_0.position(q0(_0))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),Q}();D.exports=K},657:(D,F,U)=>{var z=U(548),k=U(140).layoutBase.Matrix,f=U(140).layoutBase.SVD,l=function(M){var{cy:Z,eles:J}=M,w=J.nodes(),K=J.nodes(":parent"),Q=new Map,G=new Map,L=new Map,H=[],q=[],x=[],v=[],W=[],S=[],T=[],R=[],Y=void 0,a=void 0,I=1e8,O=0.000000001,i=M.piTol,N=M.samplingType,V=M.nodeSeparation,h=void 0,r=function(){var H0=0,o=0,L0=!1;while(o<h){H0=Math.floor(Math.random()*a),L0=!1;for(var E0=0;E0<o;E0++)if(v[E0]==H0){L0=!0;break}if(!L0)v[o]=H0,o++;else continue}},m=function(H0,o,L0){var E0=[],r0=0,c0=0,p0=0,g0=void 0,Bu=[],n0=0,e0=1;for(var t0=0;t0<a;t0++)Bu[t0]=I;E0[c0]=H0,Bu[H0]=0;while(c0>=r0){p0=E0[r0++];var zu=H[p0];for(var W0=0;W0<zu.length;W0++)if(g0=G.get(zu[W0]),Bu[g0]==I)Bu[g0]=Bu[p0]+1,E0[++c0]=g0;S[p0][o]=Bu[p0]*V}if(L0){for(var $u=0;$u<a;$u++)if(S[$u][o]<W[$u])W[$u]=S[$u][o];for(var i0=0;i0<a;i0++)if(W[i0]>n0)n0=W[i0],e0=i0}return e0},$=function(H0){var o=void 0;if(!H0){r();for(var L0=0;L0<h;L0++)m(v[L0],L0,H0,!1)}else{o=Math.floor(Math.random()*a),Y=o;for(var E0=0;E0<a;E0++)W[E0]=I;for(var r0=0;r0<h;r0++)v[r0]=o,o=m(o,r0,H0)}for(var c0=0;c0<a;c0++)for(var p0=0;p0<h;p0++)S[c0][p0]*=S[c0][p0];for(var g0=0;g0<h;g0++)T[g0]=[];for(var Bu=0;Bu<h;Bu++)for(var n0=0;n0<h;n0++)T[Bu][n0]=S[v[n0]][Bu]},y=function(){var H0=f.svd(T),o=H0.S,L0=H0.U,E0=H0.V,r0=o[0]*o[0]*o[0],c0=[];for(var p0=0;p0<h;p0++){c0[p0]=[];for(var g0=0;g0<h;g0++)if(c0[p0][g0]=0,p0==g0)c0[p0][g0]=o[p0]/(o[p0]*o[p0]+r0/(o[p0]*o[p0]))}R=k.multMat(k.multMat(E0,c0),k.transpose(L0))},p=function(){var H0=void 0,o=void 0,L0=[],E0=[],r0=[],c0=[];for(var p0=0;p0<a;p0++)L0[p0]=Math.random(),E0[p0]=Math.random();L0=k.normalize(L0),E0=k.normalize(E0);var g0=0,Bu=O,n0=O,e0=void 0;while(!0){g0++;for(var t0=0;t0<a;t0++)r0[t0]=L0[t0];if(L0=k.multGamma(k.multL(k.multGamma(r0),S,R)),H0=k.dotProduct(r0,L0),L0=k.normalize(L0),Bu=k.dotProduct(r0,L0),e0=Math.abs(Bu/n0),e0<=1+i&&e0>=1)break;n0=Bu}for(var zu=0;zu<a;zu++)r0[zu]=L0[zu];g0=0,n0=O;while(!0){g0++;for(var W0=0;W0<a;W0++)c0[W0]=E0[W0];if(c0=k.minusOp(c0,k.multCons(r0,k.dotProduct(r0,c0))),E0=k.multGamma(k.multL(k.multGamma(c0),S,R)),o=k.dotProduct(c0,E0),E0=k.normalize(E0),Bu=k.dotProduct(c0,E0),e0=Math.abs(Bu/n0),e0<=1+i&&e0>=1)break;n0=Bu}for(var $u=0;$u<a;$u++)c0[$u]=E0[$u];q=k.multCons(r0,Math.sqrt(Math.abs(H0))),x=k.multCons(c0,Math.sqrt(Math.abs(o)))};z.connectComponents(Z,J,z.getTopMostNodes(w),Q),K.forEach(function(d){z.connectComponents(Z,J,z.getTopMostNodes(d.descendants().intersection(J)),Q)});var e=0;for(var _=0;_<w.length;_++)if(!w[_].isParent())G.set(w[_].id(),e++);var b0=!0,B0=!1,k0=void 0;try{for(var f0=Q.keys()[Symbol.iterator](),D0;!(b0=(D0=f0.next()).done);b0=!0){var P0=D0.value;G.set(P0,e++)}}catch(d){B0=!0,k0=d}finally{try{if(!b0&&f0.return)f0.return()}finally{if(B0)throw k0}}for(var q0=0;q0<G.size;q0++)H[q0]=[];K.forEach(function(d){var H0=d.children().intersection(J);while(H0.nodes(":childless").length==0)H0=H0.nodes()[0].children().intersection(J);var o=0,L0=H0.nodes(":childless")[0].connectedEdges().length;H0.nodes(":childless").forEach(function(E0,r0){if(E0.connectedEdges().length<L0)L0=E0.connectedEdges().length,o=r0}),L.set(d.id(),H0.nodes(":childless")[o].id())}),w.forEach(function(d){var H0=void 0;if(d.isParent())H0=G.get(L.get(d.id()));else H0=G.get(d.id());d.neighborhood().nodes().forEach(function(o){if(J.intersection(d.edgesWith(o)).length>0)if(o.isParent())H[H0].push(L.get(o.id()));else H[H0].push(o.id())})});var m0=function(H0){var o=G.get(H0),L0=void 0;Q.get(H0).forEach(function(E0){if(Z.getElementById(E0).isParent())L0=L.get(E0);else L0=E0;H[o].push(L0),H[G.get(L0)].push(H0)})},a0=!0,_0=!1,w0=void 0;try{for(var v0=Q.keys()[Symbol.iterator](),T0;!(a0=(T0=v0.next()).done);a0=!0){var Z0=T0.value;m0(Z0)}}catch(d){_0=!0,w0=d}finally{try{if(!a0&&v0.return)v0.return()}finally{if(_0)throw w0}}a=G.size;var F0=void 0;if(a>2){h=a<M.sampleSize?a:M.sampleSize;for(var u0=0;u0<a;u0++)S[u0]=[];for(var M0=0;M0<h;M0++)R[M0]=[];if(M.quality=="draft"||M.step=="all")$(N),y(),p(),F0={nodeIndexes:G,xCoords:q,yCoords:x};else G.forEach(function(d,H0){q.push(Z.getElementById(H0).position("x")),x.push(Z.getElementById(H0).position("y"))}),F0={nodeIndexes:G,xCoords:q,yCoords:x};return F0}else{var X0=G.keys(),S0=Z.getElementById(X0.next().value),Y0=S0.position(),h0=S0.outerWidth();if(q.push(Y0.x),x.push(Y0.y),a==2){var J0=Z.getElementById(X0.next().value),n=J0.outerWidth();q.push(Y0.x+h0/2+n/2+M.idealEdgeLength),x.push(Y0.y)}return F0={nodeIndexes:G,xCoords:q,yCoords:x},F0}};D.exports={spectralLayout:l}},579:(D,F,U)=>{var z=U(212),k=function(l){if(!l)return;l("layout","fcose",z)};if(typeof cytoscape<"u")k(cytoscape);D.exports=k},140:(D)=>{D.exports=u}},E={};function A(D){var F=E[D];if(F!==void 0)return F.exports;var U=E[D]={exports:{}};return B[D](U,U.exports,A),U.exports}var C=A(579);return C})()})});var d7u={};ju(d7u,{diagram:()=>Zy4});function aF0(u,B){if(u===0)return B();let E=Math.random,A=u>>>0;Math.random=function(){A=A+1831565813>>>0;let C=A;return C=Math.imul(C^C>>>15,C|1),C^=C+Math.imul(C^C>>>7,C|61),((C^C>>>14)>>>0)/4294967296};try{return B()}finally{Math.random=E}}function r7u(u,B,E){u.forEach((A)=>{B.add({group:"nodes",data:{type:"service",id:A.id,icon:A.icon,label:A.title,parent:A.in,width:E.getConfigField("iconSize"),height:E.getConfigField("iconSize")},classes:"node-service"})})}function $7u(u,B,E){u.forEach((A)=>{B.add({group:"nodes",data:{type:"junction",id:A.id,parent:A.in,width:E.getConfigField("iconSize"),height:E.getConfigField("iconSize")},classes:"node-junction"})})}function y7u(u,B){B.nodes().map((E)=>{let A=Cq(E);if(A.type==="group")return;A.x=E.position().x,A.y=E.position().y,u.getElementById(A.id).attr("transform","translate("+(A.x||0)+","+(A.y||0)+")")})}function c7u(u,B){u.forEach((E)=>{B.add({group:"nodes",data:{type:"group",id:E.id,icon:E.icon,label:E.title,parent:E.in},classes:"node-group"})})}function g7u(u,B){u.forEach((E)=>{let{lhsId:A,rhsId:C,lhsInto:D,lhsGroup:F,rhsInto:U,lhsDir:z,rhsDir:k,rhsGroup:f,title:l}=E,b=VF0(E.lhsDir,E.rhsDir)?"segments":"straight",M={id:`${A}-${C}`,label:l,source:A,sourceDir:z,sourceArrow:D,sourceGroup:F,sourceEndpoint:z==="L"?"0 50%":z==="R"?"100% 50%":z==="T"?"50% 0":"50% 100%",target:C,targetDir:k,targetArrow:U,targetGroup:f,targetEndpoint:k==="L"?"0 50%":k==="R"?"100% 50%":k==="T"?"50% 0":"50% 100%"};B.add({group:"edges",data:M,classes:b})})}function _7u(u,B,E,A=[]){let C=X((b,M)=>{let Z=new Map;for(let[J,w]of b.entries()){let K=`${J}`,Q=0,G=[...w.entries()];if(G.length===1){Z.set(K,G[0][1]);continue}for(let L=0;L<G.length-1;L++)for(let H=L+1;H<G.length;H++){let[q,x]=G[L],[v,W]=G[H];if(E.get(i7u(q,v))===M)Z.set(K,[...Z.get(K)??[],...x,...W]);else if(q==="default"||v==="default")Z.set(K,[...Z.get(K)??[],...x,...W]);else{let T=`${K}-${Q++}`;Z.set(T,x);let R=`${K}-${Q++}`;Z.set(R,W)}}}return Z},"flattenAlignments"),D=B.map((b)=>{let M=new Map,Z=new Map;return b.forEach(([J,w],K)=>{let Q=u.getNode(K)?.in??"default",G=M.get(w)??new Map;if(!M.has(w))M.set(w,G);let L=Z.get(J)??new Map;if(!Z.has(J))Z.set(J,L);for(let H of[G,L]){let q=H.get(Q)??[];if(!H.has(Q))H.set(Q,q);q.push(K)}}),{horiz:[...C(M,"horizontal").values()].filter((J)=>J.length>1),vert:[...C(Z,"vertical").values()].filter((J)=>J.length>1)}}),[F,U]=D.reduce(([b,M],{horiz:Z,vert:J})=>{return[[...b,...Z],[...M,...J]]},[[],[]]),z=new Set;A.forEach((b)=>b.members.forEach((M)=>z.add(M)));let k=X((b)=>b.filter((M)=>!M.some((Z)=>z.has(Z))),"dropOverlapping"),f=k(F),l=k(U);return A.forEach((b)=>{if(b.members.length<2)return;if(b.direction==="row")f.push([...b.members]);else l.push([...b.members])}),{horizontal:f,vertical:l}}function n7u(u,B,E=[]){let A=[],C=B.getConfigField("iconSize"),D=B.getConfigField("idealEdgeLengthMultiplier"),F=D*C,U=new Set;E.forEach((f)=>{for(let l=0;l<f.members.length-1;l++){let b=f.members[l],M=f.members[l+1];if(U.add(`${b}|${M}`),U.add(`${M}|${b}`),f.direction==="row")A.push({left:b,right:M,gap:F});else A.push({top:b,bottom:M,gap:F})}});let z=X((f)=>`${f[0]},${f[1]}`,"posToStr"),k=X((f)=>f.split(",").map((l)=>parseInt(l)),"strToPos");return u.forEach((f)=>{let l=new Map([...f.entries()].map(([J,w])=>[z(w),J])),b=[z([0,0])],M={},Z={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};while(b.length>0){let J=b.shift();if(J){M[J]=1;let w=l.get(J);if(w){let K=k(J);Object.entries(Z).forEach(([Q,G])=>{let L=z([K[0]+G[0],K[1]+G[1]]),H=l.get(L);if(H&&!M[L]){if(b.push(L),U.has(`${w}|${H}`))return;A.push({[P7u[Q]]:H,[P7u[s$4(Q)]]:w,gap:D*C})}})}}}}),A}function p7u(u,B,E,A,C,{spatialMaps:D,groupAlignments:F}){return new Promise((U)=>{let z=Ku("body").append("div").attr("id","cy").attr("style","display:none"),k=zA({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":`${C.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:`${C.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});z.remove(),c7u(E,k),r7u(u,k,C),$7u(B,k,C),g7u(A,k);let f=C.getLayoutHints(),l=_7u(C,D,F,f),b=n7u(D,C,f),M=C.getConfigField("iconSize"),Z=C.getConfigField("idealEdgeLengthMultiplier")*M,J=0.5*M,w=C.getConfigField("edgeElasticity"),K=C.getConfigField("seed"),Q=k.layout({name:"fcose",quality:"proof",randomize:C.getConfigField("randomize"),nodeSeparation:C.getConfigField("nodeSeparation"),numIter:C.getConfigField("numIter"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(G){let[L,H]=G.connectedNodes(),{parent:q}=Cq(L),{parent:x}=Cq(H);return q===x?Z:J},edgeElasticity(G){let[L,H]=G.connectedNodes(),{parent:q}=Cq(L),{parent:x}=Cq(H);return q===x?w:0.001},alignmentConstraint:l,relativePlacementConstraint:b});Q.one("layoutstop",()=>{function G(L,H,q,x){let v,W,{x:S,y:T}=L,{x:R,y:Y}=H;W=(x-T+(S-q)*(T-Y)/(S-R))/Math.sqrt(1+Math.pow((T-Y)/(S-R),2)),v=Math.sqrt(Math.pow(x-T,2)+Math.pow(q-S,2)-Math.pow(W,2));let a=Math.sqrt(Math.pow(R-S,2)+Math.pow(Y-T,2));v=v/a;let I=(R-S)*(x-T)-(Y-T)*(q-S);switch(!0){case I>=0:I=1;break;case I<0:I=-1;break}let O=(R-S)*(q-S)+(Y-T)*(x-T);switch(!0){case O>=0:O=1;break;case O<0:O=-1;break}return W=Math.abs(W)*I,v=v*O,{distances:W,weights:v}}X(G,"getSegmentWeights"),k.startBatch();for(let L of Object.values(k.edges()))if(L.data?.()){let{x:H,y:q}=L.source().position(),{x,y:v}=L.target().position();if(H!==x&&q!==v){let W=L.sourceEndpoint(),S=L.targetEndpoint(),{sourceDir:T}=a7u(L),[R,Y]=Yb(T)?[W.x,S.y]:[S.x,W.y],{weights:a,distances:I}=G(W,S,R,Y);L.style("segment-distances",I),L.style("segment-weights",a)}}k.endBatch(),aF0(K,()=>Q.run())});try{aF0(K,()=>Q.run())}catch(G){if(G instanceof RangeError&&G.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 G}k.ready((G)=>{z0.info("Ready",G),U(k)})})}var m7u,P7u,j7u,Fg,s$4,N7u,PB,Yb,VF0,o$4,t$4,iF0,e$4,uy4,By4,Ey4,Ay4,i7u,a7u,Cq,Cy4,V7u,Dy4,h7u,Fy4,Uy4,Aq,nR,zy4,ky4,fy4,ly4,by4,My4,Zy4;var s7u=g(()=>{LB();E2();d2();q2();t3();s4();o4();Y4();l7();S50();i3();m7u=Eu(I7u(),1),P7u={L:"left",R:"right",T:"top",B:"bottom"},j7u={L:X((u)=>`${u},${u/2} 0,${u} 0,0`,"L"),R:X((u)=>`0,${u/2} ${u},0 ${u},${u}`,"R"),T:X((u)=>`0,0 ${u},0 ${u/2},${u}`,"T"),B:X((u)=>`${u/2},0 ${u},${u} 0,${u}`,"B")},Fg={L:X((u,B)=>u-B+2,"L"),R:X((u,B)=>u-2,"R"),T:X((u,B)=>u-B+2,"T"),B:X((u,B)=>u-2,"B")},s$4=X(function(u){if(PB(u))return u==="L"?"R":"L";else return u==="T"?"B":"T"},"getOppositeArchitectureDirection"),N7u=X(function(u){let B=u;return B==="L"||B==="R"||B==="T"||B==="B"},"isArchitectureDirection"),PB=X(function(u){let B=u;return B==="L"||B==="R"},"isArchitectureDirectionX"),Yb=X(function(u){let B=u;return B==="T"||B==="B"},"isArchitectureDirectionY"),VF0=X(function(u,B){let E=PB(u)&&Yb(B),A=Yb(u)&&PB(B);return E||A},"isArchitectureDirectionXY"),o$4=X(function(u){let B=u[0],E=u[1],A=PB(B)&&Yb(E),C=Yb(B)&&PB(E);return A||C},"isArchitecturePairXY"),t$4=X(function(u){return u!=="LL"&&u!=="RR"&&u!=="TT"&&u!=="BB"},"isValidArchitectureDirectionPair"),iF0=X(function(u,B){let E=`${u}${B}`;return t$4(E)?E:void 0},"getArchitectureDirectionPair"),e$4=X(function([u,B],E){let A=E[0],C=E[1];if(PB(A))if(Yb(C))return[u+(A==="L"?-1:1),B+(C==="T"?1:-1)];else return[u+(A==="L"?-1:1),B];else if(PB(C))return[u+(C==="L"?1:-1),B+(A==="T"?1:-1)];else return[u,B+(A==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),uy4=X(function(u){if(u==="LT"||u==="TL")return[1,1];else if(u==="BL"||u==="LB")return[1,-1];else if(u==="BR"||u==="RB")return[-1,-1];else return[-1,1]},"getArchitectureDirectionXYFactors"),By4=X(function(u,B){if(VF0(u,B))return"bend";else if(PB(u))return"horizontal";return"vertical"},"getArchitectureDirectionAlignment"),Ey4=X(function(u){return u.type==="service"},"isArchitectureService"),Ay4=X(function(u){return u.type==="junction"},"isArchitectureJunction"),i7u=X((u,B)=>{let[E,A]=[u,B].sort();return`${JSON.stringify(E)}-${JSON.stringify(A)}`},"architectureGroupAlignmentKey"),a7u=X((u)=>{return u.data()},"edgeData"),Cq=X((u)=>{return u.data()},"nodeData"),Cy4=t4.architecture,V7u=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=w3,this.getAccTitle=H3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,this.getAccDescription=q3,this.setAccDescription=L3,this.clear()}static{X(this,"ArchitectureDB")}setDiagramId(u){this.diagramId=u}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="",D3()}addService({id:u,icon:B,in:E,title:A,iconText:C}){if(this.registeredIds.has(u))throw Error(`The service id [${u}] is already in use by another ${this.registeredIds.get(u)}`);if(E!==void 0){if(u===E)throw Error(`The service [${u}] cannot be placed within itself`);if(!this.registeredIds.has(E))throw Error(`The service [${u}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds.get(E)==="node")throw Error(`The service [${u}]'s parent is not a group`)}this.registeredIds.set(u,"node"),this.nodes.set(u,{id:u,type:"service",icon:B,iconText:C,title:A,edges:[],in:E})}getServices(){return[...this.nodes.values()].filter(Ey4)}addJunction({id:u,in:B}){if(this.registeredIds.has(u))throw Error(`The junction id [${u}] is already in use by another ${this.registeredIds.get(u)}`);if(B!==void 0){if(u===B)throw Error(`The junction [${u}] cannot be placed within itself`);if(!this.registeredIds.has(B))throw Error(`The junction [${u}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds.get(B)==="node")throw Error(`The junction [${u}]'s parent is not a group`)}this.registeredIds.set(u,"node"),this.nodes.set(u,{id:u,type:"junction",edges:[],in:B})}getJunctions(){return[...this.nodes.values()].filter(Ay4)}getNodes(){return[...this.nodes.values()]}getNode(u){return this.nodes.get(u)??null}addGroup({id:u,icon:B,in:E,title:A}){if(this.registeredIds.has(u))throw Error(`The group id [${u}] is already in use by another ${this.registeredIds.get(u)}`);if(E!==void 0){if(u===E)throw Error(`The group [${u}] cannot be placed within itself`);if(!this.registeredIds.has(E))throw Error(`The group [${u}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds.get(E)==="node")throw Error(`The group [${u}]'s parent is not a group`)}this.registeredIds.set(u,"group"),this.groups.set(u,{id:u,icon:B,title:A,in:E})}getGroups(){return[...this.groups.values()]}addEdge({lhsId:u,rhsId:B,lhsDir:E,rhsDir:A,lhsInto:C,rhsInto:D,lhsGroup:F,rhsGroup:U,title:z}){if(!N7u(E))throw Error(`Invalid direction given for left hand side of edge ${u}--${B}. Expected (L,R,T,B) got ${String(E)}`);if(!N7u(A))throw Error(`Invalid direction given for right hand side of edge ${u}--${B}. Expected (L,R,T,B) got ${String(A)}`);if(!this.nodes.has(u)&&!this.groups.has(u))throw Error(`The left-hand id [${u}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(!this.nodes.has(B)&&!this.groups.has(B))throw Error(`The right-hand id [${B}] does not yet exist. Please create the service/group before declaring an edge to it.`);let k=this.nodes.get(u).in,f=this.nodes.get(B).in;if(F&&k&&f&&k==f)throw Error(`The left-hand id [${u}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(U&&k&&f&&k==f)throw Error(`The right-hand id [${B}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let l={lhsId:u,lhsDir:E,lhsInto:C,lhsGroup:F,rhsId:B,rhsDir:A,rhsInto:D,rhsGroup:U,title:z};this.edges.push(l);let b=this.nodes.get(u),M=this.nodes.get(B);if(b&&M)b.edges.push(this.edges[this.edges.length-1]),M.edges.push(this.edges[this.edges.length-1])}getEdges(){return this.edges}addLayoutHint(u){if(u.members.length<2)throw Error(`An align directive requires at least two members; got ${u.members.length}`);let B=new Set;u.members.forEach((E)=>{if(this.registeredIds.get(E)!=="node")throw Error(`align ${u.direction} references [${E}], which is not a service or junction`);if(B.has(E))throw Error(`align ${u.direction} lists [${E}] more than once`);B.add(E)}),this.layoutHints.push(u)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){let u=new Map,B=new Map;for(let[F,U]of this.nodes.entries()){let z=new Map;for(let k of U.edges){let f=this.getNode(k.lhsId)?.in,l=this.getNode(k.rhsId)?.in;if(f&&l&&f!==l){let b=By4(k.lhsDir,k.rhsDir);if(b!=="bend")u.set(i7u(f,l),b)}if(k.lhsId===F){let b=iF0(k.lhsDir,k.rhsDir);if(b)z.set(b,k.rhsId)}else{let b=iF0(k.rhsDir,k.lhsDir);if(b)z.set(b,k.lhsId)}}B.set(F,z)}let E=new Set,A=new Set(B.keys()),C=X((F)=>{let U=new Map([[F,[0,0]]]),z=[F];while(z.length>0){let k=z.shift();if(k){E.add(k),A.delete(k);let f=B.get(k);if(!f)throw Error(`BFS error: adjacency list for id ${k} not found. Please report this as a bug.`);let l=U.get(k);if(!l)throw Error(`BFS error: position for id ${k} not found in spatial map. Please report this as a bug.`);let[b,M]=l;f.forEach((Z,J)=>{if(!E.has(Z))U.set(Z,e$4([b,M],J)),z.push(Z)})}}return U},"BFS"),D=[];while(A.size>0){let F=A.values().next().value;D.push(C(F))}this.dataStructures={adjList:B,spatialMaps:D,groupAlignments:u}}return this.dataStructures}setElementForId(u,B){this.elements.set(u,B)}getElementById(u){return this.elements.get(u)}getConfig(){return B1({...Cy4,...F4().architecture})}getConfigField(u){return this.getConfig()[u]}},Dy4=X((u,B)=>{D6(u,B),u.groups.map((E)=>B.addGroup(E)),u.services.map((E)=>B.addService({...E,type:"service"})),u.junctions.map((E)=>B.addJunction({...E,type:"junction"})),u.edges.map((E)=>B.addEdge(E)),u.alignments?.map((E)=>B.addLayoutHint({direction:E.direction,members:[...E.members]}))},"populateDb"),h7u={parser:{yy:void 0},parse:X(async(u)=>{let B=await X9("architecture",u);z0.debug(B);let E=h7u.parser?.yy;if(!(E instanceof V7u))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.");Dy4(B,E)},"parse")},Fy4=X((u)=>`
.edge {
stroke-width: ${u.archEdgeWidth};
stroke: ${u.archEdgeColor};
fill: none;
}
.arrow {
fill: ${u.archEdgeArrowColor};
}
.node-bkg {
fill: none;
stroke: ${u.archGroupBorderColor};
stroke-width: ${u.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"),Uy4=Fy4;X(aF0,"withSeededRandom");Aq=X((u)=>{return`<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/>${u}</g>`},"wrapIcon"),nR={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:Aq('<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:Aq('<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:Aq('<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:Aq('<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:Aq('<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:y40,blank:{body:Aq("")}}},zy4=X(async function(u,B,E,A){let C=E.getConfigField("padding"),D=E.getConfigField("iconSize"),F=D/2,U=D/6,z=U/2;await Promise.all(B.edges().map(async(k)=>{let{source:f,sourceDir:l,sourceArrow:b,sourceGroup:M,target:Z,targetDir:J,targetArrow:w,targetGroup:K,label:Q}=a7u(k),{x:G,y:L}=k[0].sourceEndpoint(),{x:H,y:q}=k[0].midpoint(),{x,y:v}=k[0].targetEndpoint(),W=C+4;if(M)if(PB(l))G+=l==="L"?-W:W;else L+=l==="T"?-W:W+18;if(K)if(PB(J))x+=J==="L"?-W:W;else v+=J==="T"?-W:W+18;if(!M&&E.getNode(f)?.type==="junction")if(PB(l))G+=l==="L"?F:-F;else L+=l==="T"?F:-F;if(!K&&E.getNode(Z)?.type==="junction")if(PB(J))x+=J==="L"?F:-F;else v+=J==="T"?F:-F;if(k[0]._private.rscratch){let S=u.insert("g");if(S.insert("path").attr("d",`M ${G},${L} L ${H},${q} L${x},${v} `).attr("class","edge").attr("id",`${A}-${QF(f,Z,{prefix:"L"})}`),b){let T=PB(l)?Fg[l](G,U):G-z,R=Yb(l)?Fg[l](L,U):L-z;S.insert("polygon").attr("points",j7u[l](U)).attr("transform",`translate(${T},${R})`).attr("class","arrow")}if(w){let T=PB(J)?Fg[J](x,U):x-z,R=Yb(J)?Fg[J](v,U):v-z;S.insert("polygon").attr("points",j7u[J](U)).attr("transform",`translate(${T},${R})`).attr("class","arrow")}if(Q){let T=!VF0(l,J)?PB(l)?"X":"Y":"XY",R=0;if(T==="X")R=Math.abs(G-x);else if(T==="Y")R=Math.abs(L-v)/1.5;else R=Math.abs(G-x)/2;let Y=S.append("g");if(await X2(Y,Q,{useHtmlLabels:!1,width:R,classes:"architecture-service-label"},$0()),Y.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),T==="X")Y.attr("transform","translate("+H+", "+q+")");else if(T==="Y")Y.attr("transform","translate("+H+", "+q+") rotate(-90)");else if(T==="XY"){let a=iF0(l,J);if(a&&o$4(a)){let I=Y.node().getBoundingClientRect(),[O,i]=uy4(a);Y.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*O*i*45})`);let N=Y.node().getBoundingClientRect();Y.attr("transform",`
translate(${H}, ${q-I.height/2})
translate(${O*N.width/2}, ${i*N.height/2})
rotate(${-1*O*i*45}, 0, ${I.height/2})
`)}}}}}))},"drawEdges"),ky4=X(async function(u,B,E,A){let D=E.getConfigField("padding")*0.75,F=E.getConfigField("fontSize"),z=E.getConfigField("iconSize")/2;await Promise.all(B.nodes().map(async(k)=>{let f=Cq(k);if(f.type==="group"){let{h:l,w:b,x1:M,y1:Z}=k.boundingBox(),J=u.append("rect");J.attr("id",`${A}-group-${f.id}`).attr("x",M+z).attr("y",Z+z).attr("width",b).attr("height",l).attr("class","node-bkg");let w=u.append("g"),K=M,Q=Z;if(f.icon){let G=w.append("g");G.html(`<g>${await CE(f.icon,{height:D,width:D,fallbackPrefix:nR.prefix})}</g>`),G.attr("transform","translate("+(K+z+1)+", "+(Q+z+1)+")"),K+=D,Q+=F/2-1-2}if(f.label){let G=w.append("g");await X2(G,f.label,{useHtmlLabels:!1,width:b,classes:"architecture-service-label"},$0()),G.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),G.attr("transform","translate("+(K+z+4)+", "+(Q+z+2)+")")}E.setElementForId(f.id,J)}}))},"drawGroups"),fy4=X(async function(u,B,E,A){let C=$0();for(let D of E){let F=B.append("g"),U=u.getConfigField("iconSize");if(D.title){let l=F.append("g");await X2(l,D.title,{useHtmlLabels:!1,width:U*1.5,classes:"architecture-service-label"},C),l.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),l.attr("transform","translate("+U/2+", "+U+")")}let z=F.append("g");if(D.icon)z.html(`<g>${await CE(D.icon,{height:U,width:U,fallbackPrefix:nR.prefix})}</g>`);else if(D.iconText){z.html(`<g>${await CE("blank",{height:U,width:U,fallbackPrefix:nR.prefix})}</g>`);let M=z.append("g").append("foreignObject").attr("width",U).attr("height",U).append("div").attr("class","node-icon-text").attr("style",`height: ${U}px;`).append("div").html(C3(D.iconText,C)),Z=parseInt(window.getComputedStyle(M.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;M.attr("style",`-webkit-line-clamp: ${Math.floor((U-2)/Z)};`)}else z.append("path").attr("class","node-bkg").attr("id",`${A}-node-${D.id}`).attr("d",`M0,${U} V5 Q0,0 5,0 H${U-5} Q${U},0 ${U},5 V${U} Z`);F.attr("id",`${A}-service-${D.id}`).attr("class","architecture-service");let{width:k,height:f}=F.node().getBBox();D.width=k,D.height=f,u.setElementForId(D.id,F)}return 0},"drawServices"),ly4=X(function(u,B,E,A){E.forEach((C)=>{let D=B.append("g"),F=u.getConfigField("iconSize");D.append("g").append("rect").attr("id",`${A}-node-${C.id}`).attr("fill-opacity","0").attr("width",F).attr("height",F),D.attr("class","architecture-junction");let{width:z,height:k}=D._groups[0][0].getBBox();D.width=z,D.height=k,u.setElementForId(C.id,D)})},"drawJunctions");vG([{name:nR.prefix,icons:nR}]);zA.use(m7u.default);X(r7u,"addServices");X($7u,"addJunctions");X(y7u,"positionNodes");X(c7u,"addGroups");X(g7u,"addEdges");X(_7u,"getAlignments");X(n7u,"getRelativeConstraints");X(p7u,"layoutArchitecture");by4=X(async(u,B,E,A)=>{let C=A.db;C.setDiagramId(B);let D=C.getServices(),F=C.getJunctions(),U=C.getGroups(),z=C.getEdges(),k=C.getDataStructures(),f=N1(B),l=f.append("g");l.attr("class","architecture-edges");let b=f.append("g");b.attr("class","architecture-services");let M=f.append("g");M.attr("class","architecture-groups"),await fy4(C,b,D,B),ly4(C,b,F,B);let Z=await p7u(D,F,U,z,C,k);await zy4(l,Z,C,B),await ky4(M,Z,C,B),y7u(C,Z),zF(void 0,f,C.getConfigField("padding"),C.getConfigField("useMaxWidth"))},"draw"),My4={draw:by4},Zy4={parser:h7u,get db(){return new V7u},renderer:My4,styles:Uy4}});var xBu={};ju(xBu,{diagram:()=>Ty4});function uBu(){$F0={}}function BBu(){let u=Hy4,{ast:B}=$F0,E=yF0();if(!B)throw Error("No data for EventModel");return B.frames.forEach((A,C)=>{let D=zBu(A,B.dataEntities,E);u=zg(u,{$kind:o7u,index:C,frame:A,textProps:D});let F=void 0;if(ZBu(A))z0.debug("source frame",A.sourceFrames),F=B.frames.filter((U)=>{return A.sourceFrames.some((z)=>z.$refText===U.name)}),F.forEach((U)=>{u=zg(u,{$kind:hF0,index:C,frame:A,sourceFrame:U})});else u=zg(u,{$kind:hF0,index:C,frame:A})}),u={...u,sortedSwimlanesArray:cF0(u.swimlanes)},u}function EBu(u){$F0.ast=u}function yF0(){return $1}function ABu(u){let B=u.split(".");if(B.length===2)return B[0];return}function CBu(u){let B=u.split(".");if(B.length===2)return B[1];return u}function DBu(u,B){if(!B||B.length===0)return;return Object.values(u).find((E)=>E.namespace===B)}function Ug(u,B,E){return Math.max(B,...Object.keys(u).filter((A)=>{let C=Number.parseInt(A);return C>B&&C<E}).map((A)=>Number.parseInt(A)))+1}function FBu(u,B){let E=ABu(u.entityIdentifier),A=DBu(B,E);switch(u.modelEntityType){case"ui":case"pcr":case"processor":if(A)return{index:A.index,label:A.namespace||$1.labelUiAutomation};else if(E)return{index:Ug(B,0,100),label:$1.labelUiAutomationPrefix+E};return{index:0,label:$1.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":if(A)return{index:A.index,label:A.namespace||$1.labelCommandReadModel};else if(E)return{index:Ug(B,100,200),label:$1.labelCommandReadModelPrefix+E};return{index:100,label:$1.labelCommandReadModel};case"evt":case"event":default:if(A)return{index:A.index,label:A.namespace||$1.labelEvents};else if(E)return{index:Ug(B,200,300),label:$1.labelEventsPrefix+E};return{index:200,label:$1.labelEvents}}}function UBu(u){let{themeVariables:B}=F4();switch(u.modelEntityType){case"ui":return{fill:B.emUiFill??"white",stroke:B.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:B.emProcessorFill??"#edb3f6",stroke:B.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:B.emReadModelFill??"#d3f1a2",stroke:B.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:B.emCommandFill??"#bcd6fe",stroke:B.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:B.emEventFill??"#ffb778",stroke:B.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}function zBu(u,B,E){let A=F4(),C=C3(CBu(u.entityIdentifier)??"",A),D,F={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"},z=`<b>${yZ(C,E.textMaxWidth,F)}</b>`;if(u.dataInlineValue)D=u.dataInlineValue,D=D.substring(D.indexOf("{")+1),D=D.substring(0,D.lastIndexOf("}")-1),D=C3(D,A),D=yZ(D,E.textMaxWidth,F),D=D.replaceAll(" ","&nbsp;");if(u.dataReference){let Z=B.find((J)=>J.name===u.dataReference?.$refText);if(Z)D=Z.dataBlockValue,D=D.substring(D.indexOf(`{
`)+2),D=D.substring(0,D.lastIndexOf("}")-1),D=C3(D,A),D=yZ(D,E.textMaxWidth,F),D=D.replaceAll(" ","&nbsp;"),D+="<br/>"}let k=D!==void 0;if(k)z+=`<br/><br/><code style="text-align: left; display: block;max-width:${E.textMaxWidth}px">${D}</code>`;let f={fontSize:F.fontSize,fontWeight:F.fontWeight,fontFamily:F.fontFamily},l=US(z,f),b=k?l.width/3:l.width,M={content:z,width:b,height:l.height};return z0.debug(`[${u.name}] ${u.entityIdentifier} text`,M),M}function kBu(u,B){let E=B,A=UBu(E.frame),C={width:E.textProps.width+2*$1.boxTextPadding,height:E.textProps.height+2*$1.boxTextPadding};return[{$kind:t7u,frame:E.frame,index:E.index,visual:A,dimension:C,textProps:E.textProps}]}function fBu(u,B,E){if(B===void 0)return $1.contentStartX;if(B.index===u.index&&u.r)return u.r+$1.boxPadding;if(E===void 0)return $1.contentStartX;return E.r-$1.boxOverlap+$1.boxPadding}function lBu(u,B){let E=[...u.map((A)=>A.r),B];return Math.max(...E)}function cF0(u){return Object.values(u).sort((B,E)=>B.index-E.index)}function bBu(u,B){let E=B,A=FBu(E.frame,u.swimlanes),C;if(A.index in u.swimlanes)C=u.swimlanes[A.index];else C={index:A.index,label:A.label,r:0,y:A.index*$1.swimlaneMinHeight+$1.swimlaneGap,height:$1.swimlaneMinHeight,maxHeight:$1.swimlaneMinHeight};let D=u.boxes.length>0?u.boxes[u.boxes.length-1]:void 0,F=u.previousSwimlaneNumber!==void 0?u.swimlanes[u.previousSwimlaneNumber]:void 0,U={width:Math.max($1.boxMinWidth,Math.min($1.boxMaxWidth,E.dimension.width))+2*$1.boxPadding,height:Math.max($1.boxMinHeight,Math.min($1.boxMaxHeight,E.dimension.height))+2*$1.boxPadding},z=fBu(C,F,D),k=z+U.width+$1.boxPadding,f=lBu(Object.values(u.swimlanes),k);C.r=z+U.width,C.maxHeight=Math.max(C.maxHeight,U.height),C.height=Math.max($1.swimlaneMinHeight,C.maxHeight)+2*$1.swimlanePadding;let l={x:z,y:$1.swimlanePadding+C.y,r:k,dimension:U,leftSibling:!1,swimlane:C,visual:E.visual,text:E.textProps.content,frame:E.frame,index:E.index},b={...u,boxes:[...u.boxes,l],swimlanes:{...u.swimlanes,[`${C.index}`]:C},previousSwimlaneNumber:A.index,previousFrame:E.frame,maxR:f},M=cF0(b.swimlanes);if(M.length>0)M[0].y=0;for(let Z=1;Z<M.length;Z++){let J=M[Z],w=M[Z-1];J.y=w.y+w.height+$1.swimlaneGap}return b}function MBu(u,B){if(u===0&&B.sourceFrames.length===0)return!0;return!1}function ZBu(u){return u.sourceFrames!==void 0&&u.sourceFrames!==null&&u.sourceFrames.length>0}function mF0(u,B){if(B===void 0||B===null)return;return u.find((E)=>E.frame.name===B.name)}function JBu(u,B,E){if(E<0)return;for(let A=E;A>=0;A--){let C=u[A];if(C.swimlane.index!==B)return C}return}function wBu(u,B){let E=B;if(qR(E.frame)||MBu(E.index,E.frame))return[];let A=mF0(u.boxes,E.frame);if(A===void 0)throw Error(`Target box not found for frame ${E.frame.name}`);let C;if(E.sourceFrame)C=mF0(u.boxes,E.sourceFrame);else C=JBu(u.boxes,A.swimlane.index,E.index-1);if(C===void 0)return[];return[{$kind:e7u,frame:E.frame,index:E.index,sourceBox:C,targetBox:A}]}function KBu(u,B){let E=B,A={visual:{fill:"none",stroke:"#000"},source:{x:E.sourceBox.x,y:E.sourceBox.y},target:{x:E.targetBox.x,y:E.targetBox.y},sourceBox:E.sourceBox,targetBox:E.targetBox};return{...u,relations:[...u.relations,A]}}function QBu(u,B){let E=Ly4[B.$kind];if(E===void 0||E===null)return[];let A=E(u,B);return z0.debug("decided events",A),A}function GBu(u,B){let E=B.reduce((A,C)=>{let D=qy4[C.$kind];if(D===void 0||D===null)return A;return D(A,C)},u);return z0.debug("evolve events",{state:u,newState:E,events:B}),E}function zg(u,B){let E=QBu(u,B);return GBu(u,E)}function HBu(u,B){return(E)=>{let A=E.swimlane.y+B.swimlanePadding,C=u.append("g").attr("class","em-box");C.append("rect").attr("x",E.x).attr("y",A).attr("rx","3").attr("width",E.dimension.width).attr("height",E.dimension.height).attr("stroke",E.visual.stroke).attr("fill",E.visual.fill),C.append("foreignObject").attr("x",E.x+B.boxPadding).attr("y",A+10).attr("width",E.dimension.width-2*B.boxPadding).attr("height",E.dimension.height-2*B.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(E.text)}}function LBu(u,B){return u>B}function qBu(u,B,E,A){return(C)=>{let D=C.sourceBox.swimlane.y+B.swimlanePadding,F=C.targetBox.swimlane.y+B.swimlanePadding,U=LBu(D,F),z=C.sourceBox.x+C.sourceBox.dimension.width*2/3,k=C.targetBox.x+C.targetBox.dimension.width/3,f,l;if(z0.debug(`rendering relation up=${U} for `,{sourceBox:C.sourceBox,targetBox:C.targetBox}),U)f=D,l=F+C.targetBox.dimension.height;else f=D+C.sourceBox.dimension.height,l=F;let b=A.emRelationStroke??C.visual.stroke;u.append("path").attr("class","em-relation").attr("fill",C.visual.fill).attr("stroke",b).attr("stroke-width","1").attr("marker-end",`url(#${E})`).attr("d",`M${z} ${f} L${k} ${l}`)}}function XBu(u,B,E,A){return(C)=>{let D=u.append("g").attr("class","em-swimlane"),F=A.emSwimlaneBackgroundOdd??"rgb(250,250,250)",U=A.emSwimlaneBackgroundStroke??"rgb(240,240,240)";D.append("rect").attr("x",0).attr("y",C.y).attr("rx","3").attr("width",B+E.swimlanePadding).attr("height",C.height).attr("fill",F).attr("stroke",U),D.append("text").attr("font-weight",E.swimlaneTextFontWeight).attr("x",30).attr("y",C.y+30).text(C.label)}}var o7u="position frame",t7u="frame positioned",hF0="position relation",e7u="relation positioned",Jy4,wy4,Ky4,Qy4,Gy4,$F0,$1,Hy4,Ly4,qy4,rF0,Xy4,xy4,vy4,Sy4,Wy4,Yy4,Ry4,Ty4;var vBu=g(()=>{LB();t3();s4();o4();Y4();l7();l7();i3();Jy4=X(function(u){z0.debug("options str",u)},"setOptions"),wy4=X(function(){return{}},"getOptions"),Ky4=X(function(){uBu(),D3()},"clear");X(uBu,"reset");Qy4=t4.eventmodeling,Gy4=X(()=>{return B1({...Qy4,...F4().eventmodeling})},"getConfig"),$F0={};X(BBu,"getState");X(EBu,"setAst");$1={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: "};X(yF0,"getDiagramProps");Hy4={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};X(ABu,"extractNamespace");X(CBu,"extractName");X(DBu,"findSwimlaneByNamespace");X(Ug,"findNextAvailableIndex");X(FBu,"calculateSwimlaneProps");X(UBu,"calculateEntityVisualProps");X(zBu,"calculateTextProps");X(kBu,"decidePositionFrame");X(fBu,"calculateX");X(lBu,"calculateMaxRight");X(cF0,"sortedSwimlanesArray");X(bBu,"evolveFramePositioned");X(MBu,"isFirstFrame");X(ZBu,"hasSourceFrame");X(mF0,"findBoxByFrame");X(JBu,"findBoxByLineIndex");X(wBu,"decidePositionRelation");X(KBu,"evolveRelationPositioned");Ly4={[o7u]:kBu,[hF0]:wBu},qy4={[t7u]:bBu,[e7u]:KBu};X(QBu,"decide");X(GBu,"evolve");X(zg,"dispatch");rF0={getConfig:Gy4,setOptions:Jy4,getOptions:wy4,clear:Ky4,setAccTitle:w3,getAccTitle:H3,getAccDescription:q3,setAccDescription:L3,setDiagramTitle:T3,getDiagramTitle:X3,setAst:EBu,getDiagramProps:yF0,getState:BBu},Xy4={parse:X(async(u)=>{let B=await X9("eventmodeling",u);z0.debug(B),rF0.setAst(B),D6(B,rF0)},"parse")},xy4=$0(),vy4=xy4?.eventmodeling;X(HBu,"renderD3Box");X(LBu,"dirUpwards");X(qBu,"renderD3Relation");X(XBu,"renderD3Swimlane");Sy4=X(function(u,B,E,A){if(z0.debug("in eventmodeling renderer",u+`
`,"id:",B,E),!vy4)throw Error("EventModeling config not found");let C=A.db,{themeVariables:D,eventmodeling:F}=$0(),U=Ku(`[id="${B}"]`),z=C.getDiagramProps(),k=C.getState(),f=`em-arrowhead-${B}`,l=D.emArrowhead??"#000000";k.sortedSwimlanesArray.forEach(XBu(U,k.maxR,z,D)),k.boxes.forEach(HBu(U,z)),k.relations.forEach(qBu(U,z,f,D)),U.append("defs").append("marker").attr("id",f).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",l),Cv(void 0,U,F?.padding??30,F?.useMaxWidth)},"draw"),Wy4={draw:Sy4},Yy4=X((u)=>"","getStyles"),Ry4=Yy4,Ty4={parser:Xy4,db:rF0,renderer:Wy4,styles:Ry4}});var PBu={};ju(PBu,{diagram:()=>_y4});var _F0,Oy4,Iy4,Py4=14,Dq=250,jy4=30,Ny4=60,iy4=5,OBu,SBu,WBu,YBu,ay4,RBu,Vy4,hy4,my4,gF0,ry4,$y4,IBu,kg,TBu,Fq,yy4,cy4,gy4,_y4;var jBu=g(()=>{E2();t3();s4();o4();Y4();j4();_F0=function(){var u=X(function(K,Q,G,L){for(G=G||{},L=K.length;L--;G[K[L]]=Q);return G},"o"),B=[1,4],E=[1,14],A=[1,12],C=[1,13],D=[6,7,8],F=[1,20],U=[1,18],z=[1,19],k=[6,7,11],f=[1,6,13,14],l=[1,23],b=[1,24],M=[1,6,7,11,13,14],Z={trace:X(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:X(function(Q,G,L,H,q,x,v){var W=x.length-1;switch(q){case 6:case 7:return H;case 15:H.addNode(x[W-1].length,x[W].trim());break;case 16:H.addNode(0,x[W].trim());break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:B},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:B},{6:E,7:[1,10],9:9,12:11,13:A,14:C},u(D,[2,3]),{1:[2,2]},u(D,[2,4]),u(D,[2,5]),{1:[2,6],6:E,12:15,13:A,14:C},{6:E,9:16,12:11,13:A,14:C},{6:F,7:U,10:17,11:z},u(k,[2,18],{14:[1,21]}),u(k,[2,16]),u(k,[2,17]),{6:F,7:U,10:22,11:z},{1:[2,7],6:E,12:15,13:A,14:C},u(f,[2,14],{7:l,11:b}),u(M,[2,8]),u(M,[2,9]),u(M,[2,10]),u(k,[2,15]),u(f,[2,13],{7:l,11:b}),u(M,[2,11]),u(M,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:X(function(Q,G){if(G.recoverable)this.trace(Q);else{var L=Error(Q);throw L.hash=G,L}},"parseError"),parse:X(function(Q){var G=this,L=[0],H=[],q=[null],x=[],v=this.table,W="",S=0,T=0,R=0,Y=2,a=1,I=x.slice.call(arguments,1),O=Object.create(this.lexer),i={yy:{}};for(var N in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,N))i.yy[N]=this.yy[N];if(O.setInput(Q,i.yy),i.yy.lexer=O,i.yy.parser=this,typeof O.yylloc>"u")O.yylloc={};var V=O.yylloc;x.push(V);var h=O.options&&O.options.ranges;if(typeof i.yy.parseError==="function")this.parseError=i.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function r(m0){L.length=L.length-2*m0,q.length=q.length-m0,x.length=x.length-m0}X(r,"popStack");function m(){var m0=H.pop()||O.lex()||a;if(typeof m0!=="number"){if(m0 instanceof Array)H=m0,m0=H.pop();m0=G.symbols_[m0]||m0}return m0}X(m,"lex");var $,y,p,e,_,b0,B0={},k0,f0,D0,P0;while(!0){if(p=L[L.length-1],this.defaultActions[p])e=this.defaultActions[p];else{if($===null||typeof $>"u")$=m();e=v[p]&&v[p][$]}if(typeof e>"u"||!e.length||!e[0]){var q0="";P0=[];for(k0 in v[p])if(this.terminals_[k0]&&k0>Y)P0.push("'"+this.terminals_[k0]+"'");if(O.showPosition)q0="Parse error on line "+(S+1)+`:
`+O.showPosition()+`
Expecting `+P0.join(", ")+", got '"+(this.terminals_[$]||$)+"'";else q0="Parse error on line "+(S+1)+": Unexpected "+($==a?"end of input":"'"+(this.terminals_[$]||$)+"'");this.parseError(q0,{text:O.match,token:this.terminals_[$]||$,line:O.yylineno,loc:V,expected:P0})}if(e[0]instanceof Array&&e.length>1)throw Error("Parse Error: multiple actions possible at state: "+p+", token: "+$);switch(e[0]){case 1:if(L.push($),q.push(O.yytext),x.push(O.yylloc),L.push(e[1]),$=null,!y){if(T=O.yyleng,W=O.yytext,S=O.yylineno,V=O.yylloc,R>0)R--}else $=y,y=null;break;case 2:if(f0=this.productions_[e[1]][1],B0.$=q[q.length-f0],B0._$={first_line:x[x.length-(f0||1)].first_line,last_line:x[x.length-1].last_line,first_column:x[x.length-(f0||1)].first_column,last_column:x[x.length-1].last_column},h)B0._$.range=[x[x.length-(f0||1)].range[0],x[x.length-1].range[1]];if(b0=this.performAction.apply(B0,[W,T,S,i.yy,e[1],q,x].concat(I)),typeof b0<"u")return b0;if(f0)L=L.slice(0,-1*f0*2),q=q.slice(0,-1*f0),x=x.slice(0,-1*f0);L.push(this.productions_[e[1]][0]),q.push(B0.$),x.push(B0._$),D0=v[L[L.length-2]][L[L.length-1]],L.push(D0);break;case 3:return!0}}return!0},"parse")},J=function(){var K={EOF:1,parseError:X(function(G,L){if(this.yy.parser)this.yy.parser.parseError(G,L);else throw Error(G)},"parseError"),setInput:X(function(Q,G){if(this.yy=G||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:X(function(){var Q=this._input[0];this.yytext+=Q,this.yyleng++,this.offset++,this.match+=Q,this.matched+=Q;var G=Q.match(/(?:\r\n?|\n).*/g);if(G)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:X(function(Q){var G=Q.length,L=Q.split(/(?:\r\n?|\n)/g);this._input=Q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-G),this.offset-=G;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),L.length-1)this.yylineno-=L.length-1;var q=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===H.length?this.yylloc.first_column:0)+H[H.length-L.length].length-L[0].length:this.yylloc.first_column-G},this.options.ranges)this.yylloc.range=[q[0],q[0]+this.yyleng-G];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(Q){this.unput(this.match.slice(Q))},"less"),pastInput:X(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:X(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:X(function(){var Q=this.pastInput(),G=Array(Q.length+1).join("-");return Q+this.upcomingInput()+`
`+G+"^"},"showPosition"),test_match:X(function(Q,G){var L,H,q;if(this.options.backtrack_lexer){if(q={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)q.yylloc.range=this.yylloc.range.slice(0)}if(H=Q[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+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],L=this.performAction.call(this,this.yy,this,G,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(L)return L;else if(this._backtrack){for(var x in q)this[x]=q[x];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var Q,G,L,H;if(!this._more)this.yytext="",this.match="";var q=this._currentRules();for(var x=0;x<q.length;x++)if(L=this._input.match(this.rules[q[x]]),L&&(!G||L[0].length>G[0].length)){if(G=L,H=x,this.options.backtrack_lexer)if(Q=this.test_match(L,q[x]),Q!==!1)return Q;else if(this._backtrack){G=!1;continue}else return!1;else if(!this.options.flex)break}if(G){if(Q=this.test_match(G,q[H]),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:X(function(){var G=this.next();if(G)return G;else return this.lex()},"lex"),begin:X(function(G){this.conditionStack.push(G)},"begin"),popState:X(function(){var G=this.conditionStack.length-1;if(G>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(G){if(G=this.conditionStack.length-1-Math.abs(G||0),G>=0)return this.conditionStack[G];else return"INITIAL"},"topState"),pushState:X(function(G){this.begin(G)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(G,L,H,q){var x=q;switch(H){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 K}();Z.lexer=J;function w(){this.yy={}}return X(w,"Parser"),w.prototype=Z,Z.Parser=w,new w}();_F0.parser=_F0;Oy4=_F0,Iy4=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{X(this,"IshikawaDB")}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,D3()}getRoot(){return this.root}addNode(u,B){let E=yu.sanitizeText(B,$0());if(!this.root){this.root={text:E,children:[]},this.stack=[{level:0,node:this.root}],T3(E);return}this.baseLevel??=u;let A=u-this.baseLevel+1;if(A<=0)A=1;while(this.stack.length>1&&this.stack[this.stack.length-1].level>=A)this.stack.pop();let C=this.stack[this.stack.length-1].node,D={text:E,children:[]};C.children.push(D),this.stack.push({level:A,node:D})}getAccTitle(){return H3()}setAccTitle(u){w3(u)}getAccDescription(){return q3()}setAccDescription(u){L3(u)}getDiagramTitle(){return X3()}setDiagramTitle(u){T3(u)}},OBu=82*Math.PI/180,SBu=Math.cos(OBu),WBu=Math.sin(OBu),YBu=X((u,B,E)=>{let A=u.node().getBBox(),C=A.width+B*2,D=A.height+B*2;y3(u,D,C,E),u.attr("viewBox",`${A.x-B} ${A.y-B} ${C} ${D}`)},"applyPaddedViewBox"),ay4=X((u,B,E,A)=>{let D=A.db.getRoot();if(!D)return;let F=$0(),{look:U,handDrawnSeed:z,themeVariables:k}=F,f=A8(F.fontSize)[0]??Py4,l=U==="handDrawn",b=D.children??[],M=F.ishikawa?.diagramPadding??20,Z=F.ishikawa?.useMaxWidth??!1,J=N1(B),w=J.append("g").attr("class","ishikawa"),K=l?Ou.svg(J.node()):void 0,Q=K?{roughSvg:K,seed:z??0,lineColor:k?.lineColor??"#333",fillColor:k?.mainBkg??"#fff"}:void 0,G=`ishikawa-arrow-${B}`;if(!l)w.append("defs").append("marker").attr("id",G).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 L=0,H=Dq,q=l?void 0:Fq(w,L,H,L,H,"ishikawa-spine");if(Vy4(w,L,H,D.text,f,Q),!b.length){if(l)Fq(w,L,H,L,H,"ishikawa-spine",Q);YBu(J,M,Z);return}L-=20;let x=b.filter((O,i)=>i%2===0),v=b.filter((O,i)=>i%2===1),W=RBu(x),S=RBu(v),T=W.total+S.total,R=Dq,Y=Dq;if(T>0){let O=Dq*2,i=Dq*0.3;R=Math.max(i,O*(W.total/T)),Y=Math.max(i,O*(S.total/T))}let a=f*2;if(R=Math.max(R,W.max*a),Y=Math.max(Y,S.max*a),H=Math.max(R,Dq),q)q.attr("y1",H).attr("y2",H);w.select(".ishikawa-head-group").attr("transform",`translate(0,${H})`);let I=Math.ceil(b.length/2);for(let O=0;O<I;O++){let i=w.append("g").attr("class","ishikawa-pair");for(let[N,V,h]of[[b[O*2],-1,R],[b[O*2+1],1,Y]])if(N)ry4(i,N,L,H,V,h,f,Q);L=i.selectAll("text").nodes().reduce((N,V)=>Math.min(N,V.getBBox().x),1/0)}if(l)Fq(w,L,H,0,H,"ishikawa-spine",Q);else{q.attr("x1",L);let O=`url(#${G})`;w.selectAll("line.ishikawa-branch, line.ishikawa-sub-branch").attr("marker-start",O)}YBu(J,M,Z)},"draw"),RBu=X((u)=>{let B=X((E)=>E.children.reduce((A,C)=>A+1+B(C),0),"countDescendants");return u.reduce((E,A)=>{let C=B(A);return E.total+=C,E.max=Math.max(E.max,C),E},{total:0,max:0})},"sideStats"),Vy4=X((u,B,E,A,C,D)=>{let F=Math.max(6,Math.floor(110/(C*0.6))),U=u.append("g").attr("class","ishikawa-head-group").attr("transform",`translate(${B},${E})`),z=kg(U,IBu(A,F),0,0,"ishikawa-head-label","start",C),k=z.node().getBBox(),f=Math.max(60,k.width+6),l=Math.max(40,k.height*2+40),b=`M 0 ${-l/2} L 0 ${l/2} Q ${f*2.4} 0 0 ${-l/2} Z`;if(D){let M=D.roughSvg.path(b,{roughness:1.5,seed:D.seed,fill:D.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:D.lineColor,strokeWidth:2});U.insert(()=>M,":first-child").attr("class","ishikawa-head")}else U.insert("path",":first-child").attr("class","ishikawa-head").attr("d",b);z.attr("transform",`translate(${(f-k.width)/2-k.x+3},${-k.y-k.height/2})`)},"drawHead"),hy4=X((u,B)=>{let E=[],A=[],C=X((D,F,U)=>{let z=B===-1?[...D].reverse():D;for(let k of z){let f=E.length,l=k.children??[];if(E.push({depth:U,text:IBu(k.text,15),parentIndex:F,childCount:l.length}),U%2===0){if(A.push(f),l.length)C(l,f,U+1)}else{if(l.length)C(l,f,U+1);A.push(f)}}},"walk");return C(u,-1,2),{entries:E,yOrder:A}},"flattenTree"),my4=X((u,B,E,A,C,D,F)=>{let U=u.append("g").attr("class","ishikawa-label-group"),k=kg(U,B,E,A+11*C,"ishikawa-label cause","middle",D).node().getBBox();if(F){let f=F.roughSvg.rectangle(k.x-20,k.y-2,k.width+40,k.height+4,{roughness:1.5,seed:F.seed,fill:F.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:F.lineColor,strokeWidth:2});U.insert(()=>f,":first-child").attr("class","ishikawa-label-box")}else U.insert("rect",":first-child").attr("class","ishikawa-label-box").attr("x",k.x-20).attr("y",k.y-2).attr("width",k.width+40).attr("height",k.height+4)},"drawCauseLabel"),gF0=X((u,B,E,A,C,D)=>{let F=Math.sqrt(A*A+C*C);if(F===0)return;let U=A/F,z=C/F,k=6,f=-z*k,l=U*k,b=B,M=E,Z=`M ${b} ${M} L ${b-U*k*2+f} ${M-z*k*2+l} L ${b-U*k*2-f} ${M-z*k*2-l} Z`,J=D.roughSvg.path(Z,{roughness:1,seed:D.seed,fill:D.lineColor,fillStyle:"solid",stroke:D.lineColor,strokeWidth:1});u.append(()=>J)},"drawArrowMarker"),ry4=X((u,B,E,A,C,D,F,U)=>{let z=B.children??[],k=D*(z.length?1:0.2),f=-SBu*k,l=WBu*k*C,b=E+f,M=A+l;if(Fq(u,E,A,b,M,"ishikawa-branch",U),U)gF0(u,E,A,E-b,A-M,U);if(my4(u,B.text,b,M,C,F,U),!z.length)return;let{entries:Z,yOrder:J}=hy4(z,C),w=Z.length,K=Array(w);for(let[q,x]of J.entries())K[x]=A+l*((q+1)/(w+1));let Q=new Map;Q.set(-1,{x0:E,y0:A,x1:b,y1:M,childCount:z.length,childrenDrawn:0});let G=-SBu,L=WBu*C,H=C<0?"ishikawa-label up":"ishikawa-label down";for(let[q,x]of Z.entries()){let v=K[q],W=Q.get(x.parentIndex),S=u.append("g").attr("class","ishikawa-sub-group"),T=0,R=0,Y=0;if(x.depth%2===0){let a=W.y1-W.y0;if(T=TBu(W.x0,W.x1,a?(v-W.y0)/a:0.5),R=v,Y=T-(x.childCount>0?Ny4+x.childCount*iy4:jy4),Fq(S,T,v,Y,v,"ishikawa-sub-branch",U),U)gF0(S,T,v,1,0,U);kg(S,x.text,Y,v,"ishikawa-label align","end",F)}else{let a=W.childrenDrawn++;if(T=TBu(W.x0,W.x1,(W.childCount-a)/(W.childCount+1)),R=W.y0,Y=T+G*((v-R)/L),Fq(S,T,R,Y,v,"ishikawa-sub-branch",U),U)gF0(S,T,R,T-Y,R-v,U);kg(S,x.text,Y,v,H,"end",F)}if(x.childCount>0)Q.set(q,{x0:T,y0:R,x1:Y,y1:v,childCount:x.childCount,childrenDrawn:0})}},"drawBranch"),$y4=X((u)=>u.split(/<br\s*\/?>|\n/),"splitLines"),IBu=X((u,B)=>{if(u.length<=B)return u;let E=[];for(let A of u.split(/\s+/)){let C=E.length-1;if(C>=0&&E[C].length+1+A.length<=B)E[C]+=" "+A;else E.push(A)}return E.join(`
`)},"wrapText"),kg=X((u,B,E,A,C,D,F)=>{let U=$y4(B),z=F*1.05,k=u.append("text").attr("class",C).attr("text-anchor",D).attr("x",E).attr("y",A-(U.length-1)*z/2);for(let[f,l]of U.entries())k.append("tspan").attr("x",E).attr("dy",f===0?0:z).text(l);return k},"drawMultilineText"),TBu=X((u,B,E)=>u+(B-u)*E,"lerp"),Fq=X((u,B,E,A,C,D,F)=>{if(F){let U=F.roughSvg.line(B,E,A,C,{roughness:1.5,seed:F.seed,stroke:F.lineColor,strokeWidth:2});u.append(()=>U).attr("class",D);return}return u.append("line").attr("class",D).attr("x1",B).attr("y1",E).attr("x2",A).attr("y2",C)},"drawLine"),yy4={draw:ay4},cy4=X((u)=>`
.ishikawa .ishikawa-spine,
.ishikawa .ishikawa-branch,
.ishikawa .ishikawa-sub-branch {
stroke: ${u.lineColor};
stroke-width: 2;
fill: none;
}
.ishikawa .ishikawa-sub-branch {
stroke-width: 1;
}
.ishikawa .ishikawa-arrow {
fill: ${u.lineColor};
}
.ishikawa .ishikawa-head {
fill: ${u.mainBkg};
stroke: ${u.lineColor};
stroke-width: 2;
}
.ishikawa .ishikawa-label-box {
fill: ${u.mainBkg};
stroke: ${u.lineColor};
stroke-width: 2;
}
.ishikawa text {
font-family: ${u.fontFamily};
font-size: ${u.fontSize};
fill: ${u.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"),gy4=cy4,_y4={parser:Oy4,get db(){return new Iy4},renderer:yy4,styles:gy4}});function fg(u,B){let E=py4(u),A=E.filter((U)=>ny4(U,u)),C=0,D=0,F=[];if(A.length>1){let U=VBu(A);for(let k=0;k<A.length;++k){let f=A[k];f.angle=Math.atan2(f.x-U.x,f.y-U.y)}A.sort((k,f)=>f.angle-k.angle);let z=A[A.length-1];for(let k=0;k<A.length;++k){let f=A[k];D+=(z.x+f.x)*(f.y-z.y);let l={x:(f.x+z.x)/2,y:(f.y+z.y)/2},b=null;for(let M=0;M<f.parentIndex.length;++M)if(z.parentIndex.includes(f.parentIndex[M])){let Z=u[f.parentIndex[M]],J=Math.atan2(f.x-Z.x,f.y-Z.y),w=Math.atan2(z.x-Z.x,z.y-Z.y),K=w-J;if(K<0)K+=2*Math.PI;let Q=w-K/2,G=R8(l,{x:Z.x+Z.radius*Math.sin(Q),y:Z.y+Z.radius*Math.cos(Q)});if(G>Z.radius*2)G=Z.radius*2;if(b==null||b.width>G)b={circle:Z,width:G,p1:f,p2:z,large:G>Z.radius,sweep:!0}}if(b!=null)F.push(b),C+=dF0(b.circle.radius,b.width),z=f}}else{let U=u[0];for(let k=1;k<u.length;++k)if(u[k].radius<U.radius)U=u[k];let z=!1;for(let k=0;k<u.length;++k)if(R8(u[k],U)>Math.abs(U.radius-u[k].radius)){z=!0;break}if(z)C=D=0;else C=U.radius*U.radius*Math.PI,F.push({circle:U,p1:{x:U.x,y:U.y+U.radius},p2:{x:U.x-0.0000000001,y:U.y+U.radius},width:U.radius*2,large:!0,sweep:!0})}if(D/=2,B)B.area=C+D,B.arcArea=C,B.polygonArea=D,B.arcs=F,B.innerPoints=A,B.intersectionPoints=E;return C+D}function ny4(u,B){return B.every((E)=>R8(u,E)<E.radius+0.0000000001)}function py4(u){let B=[];for(let E=0;E<u.length;++E)for(let A=E+1;A<u.length;++A){let C=aBu(u[E],u[A]);for(let D of C)D.parentIndex=[E,A],B.push(D)}return B}function dF0(u,B){return u*u*Math.acos(1-B/u)-(u-B)*Math.sqrt(B*(2*u-B))}function R8(u,B){return Math.sqrt((u.x-B.x)*(u.x-B.x)+(u.y-B.y)*(u.y-B.y))}function BU0(u,B,E){if(E>=u+B)return 0;if(E<=Math.abs(u-B))return Math.PI*Math.min(u,B)*Math.min(u,B);let A=u-(E*E-B*B+u*u)/(2*E),C=B-(E*E-u*u+B*B)/(2*E);return dF0(u,A)+dF0(B,C)}function aBu(u,B){let E=R8(u,B),A=u.radius,C=B.radius;if(E>=A+C||E<=Math.abs(A-C))return[];let D=(A*A-C*C+E*E)/(2*E),F=Math.sqrt(A*A-D*D),U=u.x+D*(B.x-u.x)/E,z=u.y+D*(B.y-u.y)/E,k=-(B.y-u.y)*(F/E),f=-(B.x-u.x)*(F/E);return[{x:U+k,y:z-f},{x:U-k,y:z+f}]}function VBu(u){let B={x:0,y:0};for(let E of u)B.x+=E.x,B.y+=E.y;return B.x/=u.length,B.y/=u.length,B}function dy4(u,B,E,A){A=A||{};let C=A.maxIterations||100,D=A.tolerance||0.0000000001,F=u(B),U=u(E),z=E-B;if(F*U>0)throw"Initial bisect points must have opposite signs";if(F===0)return B;if(U===0)return E;for(let k=0;k<C;++k){z/=2;let f=B+z,l=u(f);if(l*F>=0)B=f;if(Math.abs(z)<D||l===0)return f}return B+z}function sF0(u){let B=Array(u);for(let E=0;E<u;++E)B[E]=0;return B}function NBu(u,B){return sF0(u).map(()=>sF0(B))}function Uq(u,B){let E=0;for(let A=0;A<u.length;++A)E+=u[A]*B[A];return E}function oF0(u){return Math.sqrt(Uq(u,u))}function tF0(u,B,E){for(let A=0;A<B.length;++A)u[A]=B[A]*E}function Pk(u,B,E,A,C){for(let D=0;D<u.length;++D)u[D]=B*E[D]+A*C[D]}function hBu(u,B,E){E=E||{};let A=E.maxIterations||B.length*200,C=E.nonZeroDelta||1.05,D=E.zeroDelta||0.001,F=E.minErrorDelta||0.000001,U=E.minErrorDelta||0.00001,z=E.rho!==void 0?E.rho:1,k=E.chi!==void 0?E.chi:2,f=E.psi!==void 0?E.psi:-0.5,l=E.sigma!==void 0?E.sigma:0.5,b,M=B.length,Z=Array(M+1);Z[0]=B,Z[0].fx=u(B),Z[0].id=0;for(let H=0;H<M;++H){let q=B.slice();q[H]=q[H]?q[H]*C:D,Z[H+1]=q,Z[H+1].fx=u(q),Z[H+1].id=H+1}function J(H){for(let q=0;q<H.length;q++)Z[M][q]=H[q];Z[M].fx=H.fx}let w=(H,q)=>H.fx-q.fx,K=B.slice(),Q=B.slice(),G=B.slice(),L=B.slice();for(let H=0;H<A;++H){if(Z.sort(w),E.history){let x=Z.map((v)=>{let W=v.slice();return W.fx=v.fx,W.id=v.id,W});x.sort((v,W)=>v.id-W.id),E.history.push({x:Z[0].slice(),fx:Z[0].fx,simplex:x})}b=0;for(let x=0;x<M;++x)b=Math.max(b,Math.abs(Z[0][x]-Z[1][x]));if(Math.abs(Z[0].fx-Z[M].fx)<F&&b<U)break;for(let x=0;x<M;++x){K[x]=0;for(let v=0;v<M;++v)K[x]+=Z[v][x];K[x]/=M}let q=Z[M];if(Pk(Q,1+z,K,-z,q),Q.fx=u(Q),Q.fx<Z[0].fx)if(Pk(L,1+k,K,-k,q),L.fx=u(L),L.fx<Q.fx)J(L);else J(Q);else if(Q.fx>=Z[M-1].fx){let x=!1;if(Q.fx>q.fx)if(Pk(G,1+f,K,-f,q),G.fx=u(G),G.fx<q.fx)J(G);else x=!0;else if(Pk(G,1-f*z,K,f*z,q),G.fx=u(G),G.fx<Q.fx)J(G);else x=!0;if(x){if(l>=1)break;for(let v=1;v<Z.length;++v)Pk(Z[v],1-l,Z[0],l,Z[v]),Z[v].fx=u(Z[v])}}else J(Q)}return Z.sort(w),{fx:Z[0].fx,x:Z[0]}}function sy4(u,B,E,A,C,D,F){let U=E.fx,z=Uq(E.fxprime,B),k=U,f=U,l=z,b=0;C=C||1,D=D||0.000001,F=F||0.1;function M(Z,J,w){for(let K=0;K<16;++K)if(C=(Z+J)/2,Pk(A.x,1,E.x,C,B),k=A.fx=u(A.x,A.fxprime),l=Uq(A.fxprime,B),k>U+D*C*z||k>=w)J=C;else{if(Math.abs(l)<=-F*z)return C;if(l*(J-Z)>=0)J=Z;Z=C,w=k}return 0}for(let Z=0;Z<10;++Z){if(Pk(A.x,1,E.x,C,B),k=A.fx=u(A.x,A.fxprime),l=Uq(A.fxprime,B),k>U+D*C*z||Z&&k>=f)return M(b,C,f);if(Math.abs(l)<=-F*z)return C;if(l>=0)return M(C,b,k);f=k,b=C,C*=2}return C}function oy4(u,B,E){let A={x:B.slice(),fx:0,fxprime:B.slice()},C={x:B.slice(),fx:0,fxprime:B.slice()},D=B.slice(),F,U,z=1,k;E=E||{},k=E.maxIterations||B.length*20,A.fx=u(A.x,A.fxprime),F=A.fxprime.slice(),tF0(F,A.fxprime,-1);for(let f=0;f<k;++f){if(z=sy4(u,F,A,C,z),E.history)E.history.push({x:A.x.slice(),fx:A.fx,fxprime:A.fxprime.slice(),alpha:z});if(!z)tF0(F,A.fxprime,-1);else{Pk(D,1,C.fxprime,-1,A.fxprime);let l=Uq(A.fxprime,A.fxprime),b=Math.max(0,Uq(D,C.fxprime)/l);Pk(F,b,F,-1,C.fxprime),U=A,A=C,C=U}if(oF0(A.fxprime)<=0.00001)break}if(E.history)E.history.push({x:A.x.slice(),fx:A.fx,fxprime:A.fxprime.slice(),alpha:z});return A}function mBu(u,B={}){B.maxIterations=B.maxIterations||500;let E=B.initialLayout||Bc4,A=B.lossFunction||zq,C=ty4(u,B),D=E(C,B),F=Object.keys(D),U=[];for(let f of F)U.push(D[f].x),U.push(D[f].y);let k=hBu((f)=>{let l={};for(let b=0;b<F.length;++b){let M=F[b];l[M]={x:f[2*b],y:f[2*b+1],radius:D[M].radius}}return A(l,C)},U,B).x;for(let f=0;f<F.length;++f){let l=F[f];D[l].x=k[2*f],D[l].y=k[2*f+1]}return D}function eF0(u,B,E){if(Math.min(u,B)*Math.min(u,B)*Math.PI<=E+rBu)return Math.abs(u-B);return dy4((A)=>BU0(u,B,A)-E,0,u+B)}function ty4(u,B={}){let E=B.distinct,A=u.map((U)=>Object.assign({},U));function C(U){return U.join(";")}if(E){let U=new Map;for(let z of A)for(let k=0;k<z.sets.length;k++){let f=String(z.sets[k]);U.set(f,z.size+(U.get(f)||0));for(let l=k+1;l<z.sets.length;l++){let b=String(z.sets[l]),M=`${f};${b}`,Z=`${b};${f}`;U.set(M,z.size+(U.get(M)||0)),U.set(Z,z.size+(U.get(Z)||0))}}for(let z of A)if(z.sets.length<3)z.size=U.get(C(z.sets))}let D=[],F=new Set;for(let U of A)if(U.sets.length===1)D.push(U.sets[0]);else if(U.sets.length===2){let z=U.sets[0],k=U.sets[1];F.add(C(U.sets)),F.add(C([k,z]))}D.sort((U,z)=>U===z?0:U<z?-1:1);for(let U=0;U<D.length;++U){let z=D[U];for(let k=U+1;k<D.length;++k){let f=D[k];if(!F.has(C([z,f])))A.push({sets:[z,f],size:0})}}return A}function ey4(u,B,E){let A=NBu(B.length,B.length),C=NBu(B.length,B.length);return u.filter((D)=>D.sets.length===2).forEach((D)=>{let F=E[D.sets[0]],U=E[D.sets[1]],z=Math.sqrt(B[F].size/Math.PI),k=Math.sqrt(B[U].size/Math.PI),f=eF0(z,k,D.size);A[F][U]=A[U][F]=f;let l=0;if(D.size+0.0000000001>=Math.min(B[F].size,B[U].size))l=1;else if(D.size<=0.0000000001)l=-1;C[F][U]=C[U][F]=l}),{distances:A,constraints:C}}function uc4(u,B,E,A){for(let D=0;D<B.length;++D)B[D]=0;let C=0;for(let D=0;D<E.length;++D){let F=u[2*D],U=u[2*D+1];for(let z=D+1;z<E.length;++z){let k=u[2*z],f=u[2*z+1],l=E[D][z],b=A[D][z],M=(k-F)*(k-F)+(f-U)*(f-U),Z=Math.sqrt(M),J=M-l*l;if(b>0&&Z<=l||b<0&&Z>=l)continue;C+=2*J*J,B[2*D]+=4*J*(F-k),B[2*D+1]+=4*J*(U-f),B[2*z]+=4*J*(k-F),B[2*z+1]+=4*J*(f-U)}}return C}function Bc4(u,B={}){let E=Ac4(u,B),A=B.lossFunction||zq;if(u.length>=8){let C=Ec4(u,B),D=A(C,u),F=A(E,u);if(D+0.00000001<F)E=C}return E}function Ec4(u,B={}){let E=B.restarts||10,A=[],C={};for(let b of u)if(b.sets.length===1)C[b.sets[0]]=A.length,A.push(b);let{distances:D,constraints:F}=ey4(u,A,C),U=oF0(D.map(oF0))/D.length;D=D.map((b)=>b.map((M)=>M/U));let z=(b,M)=>uc4(b,M,D,F),k=null;for(let b=0;b<E;++b){let M=sF0(D.length*2).map(Math.random),Z=oy4(z,M,B);if(!k||Z.fx<k.fx)k=Z}let f=k.x,l={};for(let b=0;b<A.length;++b){let M=A[b];l[M.sets[0]]={x:f[2*b]*U,y:f[2*b+1]*U,radius:Math.sqrt(M.size/Math.PI)}}if(B.history)for(let b of B.history)tF0(b.x,U);return l}function Ac4(u,B){let E=B&&B.lossFunction?B.lossFunction:zq,A={},C={};for(let l of u)if(l.sets.length===1){let b=l.sets[0];A[b]={x:10000000000,y:10000000000,rowid:A.length,size:l.size,radius:Math.sqrt(l.size/Math.PI)},C[b]=[]}u=u.filter((l)=>l.sets.length===2);for(let l of u){let b=l.weight!=null?l.weight:1,M=l.sets[0],Z=l.sets[1];if(l.size+rBu>=Math.min(A[M].size,A[Z].size))b=0;C[M].push({set:Z,size:l.size,weight:b}),C[Z].push({set:M,size:l.size,weight:b})}let D=[];Object.keys(C).forEach((l)=>{let b=0;for(let M=0;M<C[l].length;++M)b+=C[l][M].size*C[l][M].weight;D.push({set:l,size:b})});function F(l,b){return b.size-l.size}D.sort(F);let U={};function z(l){return l.set in U}function k(l,b){A[b].x=l.x,A[b].y=l.y,U[b]=!0}k({x:0,y:0},D[0].set);for(let l=1;l<D.length;++l){let b=D[l].set,M=C[b].filter(z),Z=A[b];if(M.sort(F),M.length===0)throw"ERROR: missing pairwise overlap information";let J=[];for(var f=0;f<M.length;++f){let Q=A[M[f].set],G=eF0(Z.radius,Q.radius,M[f].size);J.push({x:Q.x+G,y:Q.y}),J.push({x:Q.x-G,y:Q.y}),J.push({y:Q.y+G,x:Q.x}),J.push({y:Q.y-G,x:Q.x});for(let L=f+1;L<M.length;++L){let H=A[M[L].set],q=eF0(Z.radius,H.radius,M[L].size),x=aBu({x:Q.x,y:Q.y,radius:G},{x:H.x,y:H.y,radius:q});J.push(...x)}}let w=100000000000000000000000000000000000000000000000000,K=J[0];for(let Q of J){A[b].x=Q.x,A[b].y=Q.y;let G=E(A,u);if(G<w)w=G,K=Q}k(K,b)}return A}function zq(u,B){let E=0;for(let A of B){if(A.sets.length===1)continue;let C;if(A.sets.length===2){let F=u[A.sets[0]],U=u[A.sets[1]];C=BU0(F.radius,U.radius,R8(F,U))}else C=fg(A.sets.map((F)=>u[F]));let D=A.weight!=null?A.weight:1;E+=D*(C-A.size)*(C-A.size)}return E}function $Bu(u,B){let E=0;for(let A of B){if(A.sets.length===1)continue;let C;if(A.sets.length===2){let U=u[A.sets[0]],z=u[A.sets[1]];C=BU0(U.radius,z.radius,R8(U,z))}else C=fg(A.sets.map((U)=>u[U]));let D=A.weight!=null?A.weight:1,F=Math.log((C+1)/(A.size+1));E+=D*F*F}return E}function Cc4(u,B,E){if(E==null)u.sort((C,D)=>D.radius-C.radius);else u.sort(E);if(u.length>0){let C=u[0].x,D=u[0].y;for(let F of u)F.x-=C,F.y-=D}if(u.length===2){if(R8(u[0],u[1])<Math.abs(u[1].radius-u[0].radius))u[1].x=u[0].x+u[0].radius-u[1].radius-0.0000000001,u[1].y=u[0].y}if(u.length>1){let C=Math.atan2(u[1].x,u[1].y)-B,D=Math.cos(C),F=Math.sin(C);for(let U of u){let{x:z,y:k}=U;U.x=D*z-F*k,U.y=F*z+D*k}}if(u.length>2){let C=Math.atan2(u[2].x,u[2].y)-B;while(C<0)C+=2*Math.PI;while(C>2*Math.PI)C-=2*Math.PI;if(C>Math.PI){let D=u[1].y/(0.0000000001+u[1].x);for(let F of u){var A=(F.x+D*F.y)/(1+D*D);F.x=2*A-F.x,F.y=2*A*D-F.y}}}}function Dc4(u){u.forEach((C)=>{C.parent=C});function B(C){if(C.parent!==C)C.parent=B(C.parent);return C.parent}function E(C,D){let F=B(C),U=B(D);F.parent=U}for(let C=0;C<u.length;++C)for(let D=C+1;D<u.length;++D){let F=u[C].radius+u[D].radius;if(R8(u[C],u[D])+0.0000000001<F)E(u[D],u[C])}let A=new Map;for(let C=0;C<u.length;++C){let D=B(u[C]).parent.setid;if(!A.has(D))A.set(D,[]);A.get(D).push(u[C])}return u.forEach((C)=>{delete C.parent}),Array.from(A.values())}function uU0(u){let B=(E)=>{let A=u.reduce((D,F)=>Math.max(D,F[E]+F.radius),Number.NEGATIVE_INFINITY),C=u.reduce((D,F)=>Math.min(D,F[E]-F.radius),Number.POSITIVE_INFINITY);return{max:A,min:C}};return{xRange:B("x"),yRange:B("y")}}function yBu(u,B,E){if(B==null)B=Math.PI/2;let A=_Bu(u).map((k)=>Object.assign({},k)),C=Dc4(A);for(let k of C){Cc4(k,B,E);let f=uU0(k);k.size=(f.xRange.max-f.xRange.min)*(f.yRange.max-f.yRange.min),k.bounds=f}C.sort((k,f)=>f.size-k.size),A=C[0];let D=A.bounds,F=(D.xRange.max-D.xRange.min)/50;function U(k,f,l){if(!k)return;let b=k.bounds,M,Z;if(f)M=D.xRange.max-b.xRange.min+F;else{M=D.xRange.max-b.xRange.max;let J=(b.xRange.max-b.xRange.min)/2-(D.xRange.max-D.xRange.min)/2;if(J<0)M+=J}if(l)Z=D.yRange.max-b.yRange.min+F;else{Z=D.yRange.max-b.yRange.max;let J=(b.yRange.max-b.yRange.min)/2-(D.yRange.max-D.yRange.min)/2;if(J<0)Z+=J}for(let J of k)J.x+=M,J.y+=Z,A.push(J)}let z=1;while(z<C.length)U(C[z],!0,!1),U(C[z+1],!1,!0),U(C[z+2],!0,!0),z+=3,D=uU0(A);return gBu(A)}function cBu(u,B,E,A,C){let D=_Bu(u);B-=2*A,E-=2*A;let{xRange:F,yRange:U}=uU0(D);if(F.max===F.min||U.max===U.min)return console.log("not scaling solution: zero size detected"),u;let z,k;if(C){let M=Math.sqrt(C/Math.PI)*2;z=B/M,k=E/M}else z=B/(F.max-F.min),k=E/(U.max-U.min);let f=Math.min(k,z),l=(B-(F.max-F.min)*f)/2,b=(E-(U.max-U.min)*f)/2;return gBu(D.map((M)=>({radius:f*M.radius,x:A+l+(M.x-F.min)*f,y:A+b+(M.y-U.min)*f,setid:M.setid})))}function gBu(u){let B={};for(let E of u)B[E.setid]=E;return B}function _Bu(u){return Object.keys(u).map((E)=>Object.assign(u[E],{setid:E}))}function nBu(u={}){let B=!1,E=600,A=350,C=15,D=1000,F=Math.PI/2,U=!0,z=null,k=!0,f=!0,l=null,b=null,M=!1,Z=null,J=u&&u.symmetricalTextCentre?u.symmetricalTextCentre:!1,w={},K=u&&u.colourScheme?u.colourScheme:u&&u.colorScheme?u.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],Q=0,G=function(x){if(x in w)return w[x];var v=w[x]=K[Q];if(Q+=1,Q>=K.length)Q=0;return v},L=mBu,H=zq;function q(x){let v=x.datum(),W=new Set;v.forEach((_)=>{if(_.size==0&&_.sets.length==1)W.add(_.sets[0])}),v=v.filter((_)=>!_.sets.some((b0)=>W.has(b0)));let S={},T={};if(v.length>0){let _=L(v,{lossFunction:H,distinct:M});if(U)_=yBu(_,F,b);S=cBu(_,E,A,C,z),T=dBu(S,v,J)}let R={};v.forEach((_)=>{if(_.label)R[_.sets]=_.label});function Y(_){if(_.sets in R)return R[_.sets];if(_.sets.length==1)return""+_.sets[0]}x.selectAll("svg").data([S]).enter().append("svg");let a=x.select("svg");if(B)a.attr("viewBox",`0 0 ${E} ${A}`);else a.attr("width",E).attr("height",A);let I={},O=!1;a.selectAll(".venn-area path").each(function(_){let b0=this.getAttribute("d");if(_.sets.length==1&&b0&&!M)O=!0,I[_.sets[0]]=zc4(b0)});function i(_){return(b0)=>{let B0=_.sets.map((k0)=>{let f0=I[k0],D0=S[k0];if(!f0)f0={x:E/2,y:A/2,radius:1};if(!D0)D0={x:E/2,y:A/2,radius:1};return{x:f0.x*(1-b0)+D0.x*b0,y:f0.y*(1-b0)+D0.y*b0,radius:f0.radius*(1-b0)+D0.radius*b0}});return iBu(B0,Z)}}let N=a.selectAll(".venn-area").data(v,(_)=>_.sets),V=N.enter().append("g").attr("class",(_)=>`venn-area venn-${_.sets.length==1?"circle":"intersection"}${_.colour||_.color?" venn-coloured":""}`).attr("data-venn-sets",(_)=>_.sets.join("_")),h=V.append("path"),r=V.append("text").attr("class","label").text((_)=>Y(_)).attr("text-anchor","middle").attr("dy",".35em").attr("x",E/2).attr("y",A/2);if(f)h.style("fill-opacity","0").filter((_)=>_.sets.length==1).style("fill",(_)=>_.colour?_.colour:_.color?_.color:G(_.sets)).style("fill-opacity",".25"),r.style("fill",(_)=>{if(_.colour||_.color)return"#FFF";if(u.textFill)return u.textFill;return _.sets.length==1?G(_.sets):"#444"});function m(_){if(typeof _.transition==="function")return _.transition("venn").duration(D);return _}let $=x;if(O&&typeof $.transition==="function")$=m(x),$.selectAll("path").attrTween("d",i);else $.selectAll("path").attr("d",(_)=>iBu(_.sets.map((b0)=>S[b0])),Z);let y=$.selectAll("text").filter((_)=>(_.sets in T)).text((_)=>Y(_)).attr("x",(_)=>Math.floor(T[_.sets].x)).attr("y",(_)=>Math.floor(T[_.sets].y));if(k)if(O)if("on"in y)y.on("end",nF0(S,Y));else y.each("end",nF0(S,Y));else y.each(nF0(S,Y));let p=m(N.exit()).remove();if(typeof N.transition==="function")p.selectAll("path").attrTween("d",i);let e=p.selectAll("text").attr("x",E/2).attr("y",A/2);if(l!==null)r.style("font-size","0px"),y.style("font-size",l),e.style("font-size","0px");return{circles:S,textCentres:T,nodes:N,enter:V,update:$,exit:p}}return q.wrap=function(x){if(!arguments.length)return k;return k=x,q},q.useViewBox=function(){return B=!0,q},q.width=function(x){if(!arguments.length)return E;return E=x,q},q.height=function(x){if(!arguments.length)return A;return A=x,q},q.padding=function(x){if(!arguments.length)return C;return C=x,q},q.distinct=function(x){if(!arguments.length)return M;return M=x,q},q.colours=function(x){if(!arguments.length)return G;return G=x,q},q.colors=function(x){if(!arguments.length)return G;return G=x,q},q.fontSize=function(x){if(!arguments.length)return l;return l=x,q},q.round=function(x){if(!arguments.length)return Z;return Z=x,q},q.duration=function(x){if(!arguments.length)return D;return D=x,q},q.layoutFunction=function(x){if(!arguments.length)return L;return L=x,q},q.normalize=function(x){if(!arguments.length)return U;return U=x,q},q.scaleToFit=function(x){if(!arguments.length)return z;return z=x,q},q.styled=function(x){if(!arguments.length)return f;return f=x,q},q.orientation=function(x){if(!arguments.length)return F;return F=x,q},q.orientationOrder=function(x){if(!arguments.length)return b;return b=x,q},q.lossFunction=function(x){if(!arguments.length)return H;return H=x==="default"?zq:x==="logRatio"?$Bu:x,q},q}function nF0(u,B){return function(E){let A=this,C=u[E.sets[0]].radius||50,D=B(E)||"",F=D.split(/\s+/).reverse(),U=3,z=(D.length+F.length)/3,k=F.pop(),f=[k],l=0,b=1.1;A.textContent=null;let M=[];function Z(G){let L=A.ownerDocument.createElementNS(A.namespaceURI,"tspan");return L.textContent=G,M.push(L),A.append(L),L}let J=Z(k);while(!0){if(k=F.pop(),!k)break;f.push(k);let G=f.join(" ");if(J.textContent=G,G.length>z&&J.getComputedTextLength()>C)f.pop(),J.textContent=f.join(" "),f=[k],J=Z(k),l++}let w=0.35-l*b/2,K=A.getAttribute("x"),Q=A.getAttribute("y");M.forEach((G,L)=>{G.setAttribute("x",K),G.setAttribute("y",Q),G.setAttribute("dy",`${w+L*b}em`)})}}function pF0(u,B,E){let A=B[0].radius-R8(B[0],u);for(let C=1;C<B.length;++C){let D=B[C].radius-R8(B[C],u);if(D<=A)A=D}for(let C=0;C<E.length;++C){let D=R8(E[C],u)-E[C].radius;if(D<=A)A=D}return A}function pBu(u,B,E){let A=[];for(let f of u)A.push({x:f.x,y:f.y}),A.push({x:f.x+f.radius/2,y:f.y}),A.push({x:f.x-f.radius/2,y:f.y}),A.push({x:f.x,y:f.y+f.radius/2}),A.push({x:f.x,y:f.y-f.radius/2});let C=A[0],D=pF0(A[0],u,B);for(let f=1;f<A.length;++f){let l=pF0(A[f],u,B);if(l>=D)C=A[f],D=l}let F=hBu((f)=>-1*pF0({x:f[0],y:f[1]},u,B),[C.x,C.y],{maxIterations:500,minErrorDelta:0.0000000001}).x,U={x:E?0:F[0],y:F[1]},z=!0;for(let f of u)if(R8(U,f)>f.radius){z=!1;break}for(let f of B)if(R8(U,f)<f.radius){z=!1;break}if(z)return U;if(u.length==1)return{x:u[0].x,y:u[0].y};let k={};if(fg(u,k),k.arcs.length===0)return{x:0,y:-1000,disjoint:!0};if(k.arcs.length==1)return{x:k.arcs[0].circle.x,y:k.arcs[0].circle.y};if(B.length)return pBu(u,[]);return VBu(k.arcs.map((f)=>f.p1))}function Fc4(u){let B={},E=Object.keys(u);for(let A of E)B[A]=[];for(let A=0;A<E.length;A++){let C=E[A],D=u[C];for(let F=A+1;F<E.length;++F){let U=E[F],z=u[U],k=R8(D,z);if(k+z.radius<=D.radius+0.0000000001)B[U].push(C);else if(k+D.radius<=z.radius+0.0000000001)B[C].push(U)}}return B}function dBu(u,B,E){let A={},C=Fc4(u);for(let D=0;D<B.length;++D){let F=B[D].sets,U={},z={};for(let b=0;b<F.length;++b){U[F[b]]=!0;let M=C[F[b]];for(let Z=0;Z<M.length;++Z)z[M[Z]]=!0}let k=[],f=[];for(let b in u)if(b in U)k.push(u[b]);else if(!(b in z))f.push(u[b]);let l=pBu(k,f,E);if(A[F]=l,l.disjoint&&B[D].size>0)console.log("WARNING: area "+F+" not represented on screen")}return A}function Uc4(u,B,E){let A=[];return A.push(`
M`,u,B),A.push(`
m`,-E,0),A.push(`
a`,E,E,0,1,0,E*2,0),A.push(`
a`,E,E,0,1,0,-E*2,0),A.join(" ")}function zc4(u){let B=u.split(" ");return{x:Number.parseFloat(B[1]),y:Number.parseFloat(B[2]),radius:-Number.parseFloat(B[4])}}function sBu(u){if(u.length===0)return[];let B={};return fg(u,B),B.arcs}function oBu(u,B){if(u.length===0)return"M 0 0";let E=Math.pow(10,B||0),A=B!=null?(D)=>Math.round(D*E)/E:(D)=>D;if(u.length==1){let D=u[0].circle;return Uc4(A(D.x),A(D.y),A(D.radius))}let C=[`
M`,A(u[0].p2.x),A(u[0].p2.y)];for(let D of u){let F=A(D.circle.radius);C.push(`
A`,F,F,0,D.large?1:0,D.sweep?1:0,A(D.p1.x),A(D.p1.y))}return C.join(" ")}function iBu(u,B){return oBu(sBu(u),B)}function tBu(u,B={}){let{lossFunction:E,layoutFunction:A=mBu,normalize:C=!0,orientation:D=Math.PI/2,orientationOrder:F,width:U=600,height:z=350,padding:k=15,scaleToFit:f=!1,symmetricalTextCentre:l=!1,distinct:b,round:M=2}=B,Z=A(u,{lossFunction:E==="default"||!E?zq:E==="logRatio"?$Bu:E,distinct:b});if(C)Z=yBu(Z,D,F);let J=cBu(Z,U,z,k,f),w=dBu(J,u,l),K=new Map(Object.keys(J).map((L)=>[L,{set:L,x:J[L].x,y:J[L].y,radius:J[L].radius}])),Q=u.map((L)=>{let H=L.sets.map((v)=>K.get(v)),q=sBu(H),x=oBu(q,M);return{circles:H,arcs:q,path:x,area:L,has:new Set(L.sets)}});function G(L){let H="";for(let q of Q)if(q.has.size>L.length&&L.every((x)=>q.has.has(x)))H+=" "+q.path;return H}return Q.map(({circles:L,arcs:H,path:q,area:x})=>{return{data:x,text:w[x.sets],circles:L,arcs:H,path:q,distinctPath:q+G(x.sets)}})}var rBu=0.0000000001;var eBu=()=>{};var C8u={};ju(C8u,{diagram:()=>Rc4});function u8u(){return B1(qc4,F4().venn)}function B8u(u){let B=new Map;for(let E of u){let A=E.targets.join("|"),C=B.get(A);if(C)Object.assign(C,E.styles);else B.set(A,{...E.styles})}return B}function Rb(u){return u.join("|")}function E8u(u,B,E,A,C,D){let F=u?.useDebugLayout??!1,z=E.select("svg").append("g").attr("class","venn-text-nodes"),k=new Map;for(let f of A){let l=Rb(f.sets),b=k.get(l);if(b)b.push(f);else k.set(l,[f])}for(let[f,l]of k.entries()){let b=B.get(f);if(!b?.text)continue;let M=b.text.x,Z=b.text.y,J=Math.min(...b.circles.map((a)=>a.radius)),w=Math.min(...b.circles.map((a)=>a.radius-Math.hypot(M-a.x,Z-a.y))),K=Number.isFinite(w)?Math.max(0,w):0;if(K===0&&Number.isFinite(J))K=J*0.6;let Q=z.append("g").attr("class","venn-text-area").attr("font-size",`${40*C}px`);if(F)Q.append("circle").attr("class","venn-text-debug-circle").attr("cx",M).attr("cy",Z).attr("r",K).attr("fill","none").attr("stroke","purple").attr("stroke-width",1.5*C).attr("stroke-dasharray",`${6*C} ${4*C}`);let G=Math.max(80*C,K*2*0.95),L=Math.max(60*C,K*2*0.95),x=(b.data.label&&b.data.label.length>0?Math.min(32*C,K*0.25):0)+(l.length<=2?30*C:0),v=M-G/2,W=Z-L/2+x,S=Math.max(1,Math.ceil(Math.sqrt(l.length))),T=Math.max(1,Math.ceil(l.length/S)),R=G/S,Y=L/T;for(let[a,I]of l.entries()){let O=a%S,i=Math.floor(a/S),N=v+R*(O+0.5),V=W+Y*(i+0.5);if(F)Q.append("rect").attr("class","venn-text-debug-cell").attr("x",v+R*O).attr("y",W+Y*i).attr("width",R).attr("height",Y).attr("fill","none").attr("stroke","teal").attr("stroke-width",1*C).attr("stroke-dasharray",`${4*C} ${3*C}`);let h=R*0.9,r=Y*0.9,m=Q.append("foreignObject").attr("class","venn-text-node-fo").attr("width",h).attr("height",r).attr("x",N-h/2).attr("y",V-r/2).attr("overflow","visible"),$=D.get(I.id)?.color,y=m.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(I.label??I.id);if($)y.style("color",$)}}}function A8u(u){let B=new Set(u.map((C)=>[...C.sets].sort().join("|"))),E=new Map(u.filter((C)=>C.sets.length===1&&C.size!==void 0).map((C)=>[C.sets[0],C.size])),A=[];for(let C of u){if(C.sets.length<3)continue;let D=[...C.sets].sort();for(let F=0;F<D.length-1;F++)for(let U=F+1;U<D.length;U++){let z=[D[F],D[U]],k=z.join("|");if(!B.has(k)){B.add(k);let f=E.get(z[0]),l=E.get(z[1]),b=f!==void 0&&l!==void 0?Math.min(f,l)/4:2.5;A.push({sets:z,size:b,label:""})}}}return A.length>0?[...u,...A]:u}var EU0,fc4,AU0,CU0,DU0,FU0,UU0,zU0=!1,lc4,bc4,pR,Mc4,Zc4,Jc4,wc4,lg,Kc4,Qc4,Gc4,Hc4,Lc4,qc4,Xc4,xc4,vc4,Sc4,Wc4,Yc4,Rc4;var D8u=g(()=>{E2();t3();s4();o4();Y4();i3();K2();eBu();j4();EU0=function(){var u=X(function(Q,G,L,H){for(L=L||{},H=Q.length;H--;L[Q[H]]=G);return L},"o"),B=[5,8],E=[7,8,11,12,17,19,22,24],A=[1,17],C=[1,18],D=[7,8,11,12,14,15,16,17,19,20,21,22,24,27],F=[1,31],U=[1,39],z=[7,8,11,12,17,19,22,24,27],k=[1,57],f=[1,56],l=[1,58],b=[1,59],M=[1,60],Z=[7,8,11,12,16,17,19,20,22,24,27,31,32,33],J={trace:X(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:X(function(G,L,H,q,x,v,W){var S=v.length-1;switch(x){case 1:return v[S-1];case 2:case 3:case 4:this.$=[];break;case 5:v[S-1].push(v[S]),this.$=v[S-1];break;case 6:this.$=[];break;case 7:case 22:case 32:case 36:case 37:case 38:case 39:case 40:this.$=v[S];break;case 8:q.setDiagramTitle(v[S].substr(6)),this.$=v[S].substr(6);break;case 9:if(q.addSubsetData([v[S]],void 0,void 0),q.setIndentMode)q.setIndentMode(!0);break;case 10:if(q.addSubsetData([v[S-1]],v[S],void 0),q.setIndentMode)q.setIndentMode(!0);break;case 11:if(q.addSubsetData([v[S-2]],void 0,parseFloat(v[S])),q.setIndentMode)q.setIndentMode(!0);break;case 12:if(q.addSubsetData([v[S-3]],v[S-2],parseFloat(v[S])),q.setIndentMode)q.setIndentMode(!0);break;case 13:if(v[S].length<2)throw Error("union requires multiple identifiers");if(q.validateUnionIdentifiers)q.validateUnionIdentifiers(v[S]);if(q.addSubsetData(v[S],void 0,void 0),q.setIndentMode)q.setIndentMode(!0);break;case 14:if(v[S-1].length<2)throw Error("union requires multiple identifiers");if(q.validateUnionIdentifiers)q.validateUnionIdentifiers(v[S-1]);if(q.addSubsetData(v[S-1],v[S],void 0),q.setIndentMode)q.setIndentMode(!0);break;case 15:if(v[S-2].length<2)throw Error("union requires multiple identifiers");if(q.validateUnionIdentifiers)q.validateUnionIdentifiers(v[S-2]);if(q.addSubsetData(v[S-2],void 0,parseFloat(v[S])),q.setIndentMode)q.setIndentMode(!0);break;case 16:if(v[S-3].length<2)throw Error("union requires multiple identifiers");if(q.validateUnionIdentifiers)q.validateUnionIdentifiers(v[S-3]);if(q.addSubsetData(v[S-3],v[S-2],parseFloat(v[S])),q.setIndentMode)q.setIndentMode(!0);break;case 17:case 18:case 19:q.addTextData(v[S-1],v[S],void 0);break;case 20:case 21:q.addTextData(v[S-2],v[S-1],v[S]);break;case 23:q.addStyleData(v[S-1],v[S]);break;case 24:case 25:case 26:var T=q.getCurrentSets();if(!T)throw Error("text requires set");q.addTextData(T,v[S],void 0);break;case 27:case 28:var T=q.getCurrentSets();if(!T)throw Error("text requires set");q.addTextData(T,v[S-1],v[S]);break;case 29:case 41:this.$=[v[S]];break;case 30:case 42:this.$=[...v[S-2],v[S]];break;case 31:this.$=[v[S-2],v[S]];break;case 33:this.$=v[S].join(" ");break;case 34:this.$=[v[S]];break;case 35:v[S-1].push(v[S]),this.$=v[S-1];break;case 43:case 44:this.$=v[S];break}},"anonymous"),table:[u(B,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],8:[1,4]},u(E,[2,4],{6:5}),u(B,[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]},u(E,[2,5]),u(E,[2,6]),u(E,[2,7]),u(E,[2,8]),{13:16,20:A,21:C},{13:20,18:19,20:A,21:C},{13:20,18:21,20:A,21:C},{16:[1,25],20:[1,23],21:[1,24],23:22},{13:20,18:26,20:A,21:C},u(E,[2,9],{14:[1,27],15:[1,28]}),u(D,[2,43]),u(D,[2,44]),u(E,[2,13],{14:[1,29],15:[1,30],27:F}),u(D,[2,41]),{16:[1,34],20:[1,32],21:[1,33],27:F},u(E,[2,22]),u(E,[2,24],{14:[1,35]}),u(E,[2,25],{14:[1,36]}),u(E,[2,26]),{20:U,25:37,26:38,27:F},u(E,[2,10],{15:[1,40]}),{16:[1,41]},u(E,[2,14],{15:[1,42]}),{16:[1,43]},{13:44,20:A,21:C},u(E,[2,17],{14:[1,45]}),u(E,[2,18],{14:[1,46]}),u(E,[2,19]),u(E,[2,27]),u(E,[2,28]),u(E,[2,23],{27:[1,47]}),u(z,[2,29]),{15:[1,48]},{16:[1,49]},u(E,[2,11]),{16:[1,50]},u(E,[2,15]),u(D,[2,42]),u(E,[2,20]),u(E,[2,21]),{20:U,26:51},{16:k,20:f,21:[1,53],28:52,29:54,30:55,31:l,32:b,33:M},u(E,[2,12]),u(E,[2,16]),u(z,[2,30]),u(z,[2,31]),u(z,[2,32]),u(z,[2,33],{30:61,16:k,20:f,31:l,32:b,33:M}),u(Z,[2,34]),u(Z,[2,36]),u(Z,[2,37]),u(Z,[2,38]),u(Z,[2,39]),u(Z,[2,40]),u(Z,[2,35])],defaultActions:{6:[2,1]},parseError:X(function(G,L){if(L.recoverable)this.trace(G);else{var H=Error(G);throw H.hash=L,H}},"parseError"),parse:X(function(G){var L=this,H=[0],q=[],x=[null],v=[],W=this.table,S="",T=0,R=0,Y=0,a=2,I=1,O=v.slice.call(arguments,1),i=Object.create(this.lexer),N={yy:{}};for(var V in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,V))N.yy[V]=this.yy[V];if(i.setInput(G,N.yy),N.yy.lexer=i,N.yy.parser=this,typeof i.yylloc>"u")i.yylloc={};var h=i.yylloc;v.push(h);var r=i.options&&i.options.ranges;if(typeof N.yy.parseError==="function")this.parseError=N.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function m(a0){H.length=H.length-2*a0,x.length=x.length-a0,v.length=v.length-a0}X(m,"popStack");function $(){var a0=q.pop()||i.lex()||I;if(typeof a0!=="number"){if(a0 instanceof Array)q=a0,a0=q.pop();a0=L.symbols_[a0]||a0}return a0}X($,"lex");var y,p,e,_,b0,B0,k0={},f0,D0,P0,q0;while(!0){if(e=H[H.length-1],this.defaultActions[e])_=this.defaultActions[e];else{if(y===null||typeof y>"u")y=$();_=W[e]&&W[e][y]}if(typeof _>"u"||!_.length||!_[0]){var m0="";q0=[];for(f0 in W[e])if(this.terminals_[f0]&&f0>a)q0.push("'"+this.terminals_[f0]+"'");if(i.showPosition)m0="Parse error on line "+(T+1)+`:
`+i.showPosition()+`
Expecting `+q0.join(", ")+", got '"+(this.terminals_[y]||y)+"'";else m0="Parse error on line "+(T+1)+": Unexpected "+(y==I?"end of input":"'"+(this.terminals_[y]||y)+"'");this.parseError(m0,{text:i.match,token:this.terminals_[y]||y,line:i.yylineno,loc:h,expected:q0})}if(_[0]instanceof Array&&_.length>1)throw Error("Parse Error: multiple actions possible at state: "+e+", token: "+y);switch(_[0]){case 1:if(H.push(y),x.push(i.yytext),v.push(i.yylloc),H.push(_[1]),y=null,!p){if(R=i.yyleng,S=i.yytext,T=i.yylineno,h=i.yylloc,Y>0)Y--}else y=p,p=null;break;case 2:if(D0=this.productions_[_[1]][1],k0.$=x[x.length-D0],k0._$={first_line:v[v.length-(D0||1)].first_line,last_line:v[v.length-1].last_line,first_column:v[v.length-(D0||1)].first_column,last_column:v[v.length-1].last_column},r)k0._$.range=[v[v.length-(D0||1)].range[0],v[v.length-1].range[1]];if(B0=this.performAction.apply(k0,[S,R,T,N.yy,_[1],x,v].concat(O)),typeof B0<"u")return B0;if(D0)H=H.slice(0,-1*D0*2),x=x.slice(0,-1*D0),v=v.slice(0,-1*D0);H.push(this.productions_[_[1]][0]),x.push(k0.$),v.push(k0._$),P0=W[H[H.length-2]][H[H.length-1]],H.push(P0);break;case 3:return!0}}return!0},"parse")},w=function(){var Q={EOF:1,parseError:X(function(L,H){if(this.yy.parser)this.yy.parser.parseError(L,H);else throw Error(L)},"parseError"),setInput:X(function(G,L){if(this.yy=L||this.yy||{},this._input=G,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:X(function(){var G=this._input[0];this.yytext+=G,this.yyleng++,this.offset++,this.match+=G,this.matched+=G;var L=G.match(/(?:\r\n?|\n).*/g);if(L)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),G},"input"),unput:X(function(G){var L=G.length,H=G.split(/(?:\r\n?|\n)/g);this._input=G+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-L),this.offset-=L;var q=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),H.length-1)this.yylineno-=H.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:H?(H.length===q.length?this.yylloc.first_column:0)+q[q.length-H.length].length-H[0].length:this.yylloc.first_column-L},this.options.ranges)this.yylloc.range=[x[0],x[0]+this.yyleng-L];return this.yyleng=this.yytext.length,this},"unput"),more:X(function(){return this._more=!0,this},"more"),reject:X(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:X(function(G){this.unput(this.match.slice(G))},"less"),pastInput:X(function(){var G=this.matched.substr(0,this.matched.length-this.match.length);return(G.length>20?"...":"")+G.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:X(function(){var G=this.match;if(G.length<20)G+=this._input.substr(0,20-G.length);return(G.substr(0,20)+(G.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:X(function(){var G=this.pastInput(),L=Array(G.length+1).join("-");return G+this.upcomingInput()+`
`+L+"^"},"showPosition"),test_match:X(function(G,L){var H,q,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(q=G[0].match(/(?:\r\n?|\n).*/g),q)this.yylineno+=q.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:q?q[q.length-1].length-q[q.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+G[0].length},this.yytext+=G[0],this.match+=G[0],this.matches=G,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(G[0].length),this.matched+=G[0],H=this.performAction.call(this,this.yy,this,L,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(H)return H;else if(this._backtrack){for(var v in x)this[v]=x[v];return!1}return!1},"test_match"),next:X(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var G,L,H,q;if(!this._more)this.yytext="",this.match="";var x=this._currentRules();for(var v=0;v<x.length;v++)if(H=this._input.match(this.rules[x[v]]),H&&(!L||H[0].length>L[0].length)){if(L=H,q=v,this.options.backtrack_lexer)if(G=this.test_match(H,x[v]),G!==!1)return G;else if(this._backtrack){L=!1;continue}else return!1;else if(!this.options.flex)break}if(L){if(G=this.test_match(L,x[q]),G!==!1)return G;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:X(function(){var L=this.next();if(L)return L;else return this.lex()},"lex"),begin:X(function(L){this.conditionStack.push(L)},"begin"),popState:X(function(){var L=this.conditionStack.length-1;if(L>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:X(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:X(function(L){if(L=this.conditionStack.length-1-Math.abs(L||0),L>=0)return this.conditionStack[L];else return"INITIAL"},"topState"),pushState:X(function(L){this.begin(L)},"pushState"),stateStackSize:X(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:X(function(L,H,q,x){var v=x;switch(q){case 0:break;case 1:break;case 2:break;case 3:if(L.getIndentMode&&L.getIndentMode())return L.consumeIndentText=!0,this.begin("INITIAL"),22;break;case 4:break;case 5:if(L.setIndentMode)L.setIndentMode(!1);this.begin("INITIAL"),this.unput(H.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(L.consumeIndentText)L.consumeIndentText=!1;else return 19;break;case 15:return 24;case 16:return H.yytext=H.yytext.slice(2,-2),14;break;case 17:return H.yytext=H.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}();J.lexer=w;function K(){this.yy={}}return X(K,"Parser"),K.prototype=J,J.Parser=K,new K}();EU0.parser=EU0;fc4=EU0,AU0=[],CU0=[],DU0=[],FU0=new Set,lc4=X((u,B,E)=>{let A=lg(u).sort(),C=E??10/Math.pow(u.length,2);if(UU0=A,A.length===1)FU0.add(A[0]);AU0.push({sets:A,size:C,label:B?pR(B):void 0})},"addSubsetData"),bc4=X(()=>{return AU0},"getSubsetData"),pR=X((u)=>{let B=u.trim();if(B.length>=2&&B.startsWith('"')&&B.endsWith('"'))return B.slice(1,-1);return B},"normalizeText"),Mc4=X((u)=>{return u?pR(u):u},"normalizeStyleValue"),Zc4=X((u,B,E)=>{let A=pR(B);CU0.push({sets:lg(u).sort(),id:A,label:E?pR(E):void 0})},"addTextData"),Jc4=X((u,B)=>{let E=lg(u).sort(),A={};for(let[C,D]of B)A[C]=Mc4(D)??D;DU0.push({targets:E,styles:A})},"addStyleData"),wc4=X(()=>{return DU0},"getStyleData"),lg=X((u)=>{return u.map((B)=>pR(B))},"normalizeIdentifierList"),Kc4=X((u)=>{let E=lg(u).filter((A)=>!FU0.has(A));if(E.length>0)throw Error(`unknown set identifier: ${E.join(", ")}`)},"validateUnionIdentifiers"),Qc4=X(()=>{return CU0},"getTextData"),Gc4=X(()=>UU0,"getCurrentSets"),Hc4=X(()=>zU0,"getIndentMode"),Lc4=X((u)=>{zU0=u},"setIndentMode"),qc4=t4.venn;X(u8u,"getConfig");Xc4=X(()=>{D3(),AU0.length=0,CU0.length=0,DU0.length=0,FU0.clear(),UU0=void 0,zU0=!1},"customClear"),xc4={getConfig:u8u,clear:Xc4,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,getAccDescription:q3,setAccDescription:L3,addSubsetData:lc4,getSubsetData:bc4,addTextData:Zc4,addStyleData:Jc4,validateUnionIdentifiers:Kc4,getTextData:Qc4,getStyleData:wc4,getCurrentSets:Gc4,getIndentMode:Hc4,setIndentMode:Lc4},vc4=X((u)=>`
.venn-title {
font-size: 32px;
fill: ${u.vennTitleTextColor};
font-family: ${u.fontFamily};
}
.venn-circle text {
font-size: 48px;
font-family: ${u.fontFamily};
}
.venn-intersection text {
font-size: 48px;
fill: ${u.vennSetTextColor};
font-family: ${u.fontFamily};
}
.venn-text-node {
font-family: ${u.fontFamily};
color: ${u.vennSetTextColor};
}
`,"getStyles"),Sc4=vc4;X(B8u,"buildStyleByKey");Wc4=X((u,B,E,A)=>{let C=A.db,D=C.getConfig?.(),{themeVariables:F,look:U,handDrawnSeed:z}=F4(),k=U==="handDrawn",f=[F.venn1,F.venn2,F.venn3,F.venn4,F.venn5,F.venn6,F.venn7,F.venn8].filter(Boolean),l=C.getDiagramTitle?.(),b=C.getSubsetData(),M=C.getTextData(),Z=B8u(C.getStyleData()),J=A8u(b),w=D?.width??800,K=D?.height??450,Q=1600,G=w/1600,L=l?48*G:0,H=F.primaryTextColor??F.textColor,q=N1(B);if(q.attr("viewBox",`0 0 ${w} ${K}`),l)q.append("text").text(l).attr("class","venn-title").attr("font-size",`${32*G}px`).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("x","50%").attr("y",32*G).style("fill",F.vennTitleTextColor||F.titleColor);let x=Ku(document.createElement("div")),v=nBu().width(w).height(K-L);x.datum(J).call(v);let W=k?Ou.svg(x.select("svg").node()):void 0,S=tBu(J,{width:w,height:K-L,padding:D?.padding??15}),T=new Map;for(let I of S){let O=Rb([...I.data.sets].sort());T.set(O,I)}if(M.length>0)E8u(D,T,x,M,G,Z);let R=_1(F.background||"#f4f4f4");if(x.selectAll(".venn-circle").each(function(I,O){let i=Ku(this),V=Rb([...I.sets].sort()),h=Z.get(V),r=h?.fill||f[O%f.length]||F.primaryColor;i.classed(`venn-set-${O%8}`,!0);let m=h?.["fill-opacity"]??0.1,$=h?.stroke||r,y=h?.["stroke-width"]||`${5*G}`;if(k&&W){let e=T.get(V);if(e&&e.circles.length>0){let _=e.circles[0],b0=W.circle(_.x,_.y,_.radius*2,{roughness:0.7,seed:z,fill:aP(r,0.7),fillStyle:"hachure",fillWeight:2,hachureGap:8,hachureAngle:-41+O*60,stroke:$,strokeWidth:parseFloat(String(y))});i.select("path").remove(),i.node()?.insertBefore(b0,i.select("text").node())}}else i.select("path").style("fill",r).style("fill-opacity",m).style("stroke",$).style("stroke-width",y).style("stroke-opacity",0.95);let p=h?.color||(R?Ju(r,30):wu(r,30));i.select("text").style("font-size",`${48*G}px`).style("fill",p)}),k&&W)x.selectAll(".venn-intersection").each(function(I){let O=Ku(this),N=Rb([...I.sets].sort()),V=Z.get(N),h=V?.fill;if(h){let r=O.select("path"),m=r.attr("d");if(m){let $=W.path(m,{roughness:0.7,seed:z,fill:aP(h,0.3),fillStyle:"cross-hatch",fillWeight:2,hachureGap:6,hachureAngle:60,stroke:"none"}),y=r.node();y?.parentNode?.insertBefore($,y),r.remove()}}else O.select("path").style("fill-opacity",0);O.select("text").style("font-size",`${48*G}px`).style("fill",V?.color??F.vennSetTextColor??H)});else x.selectAll(".venn-intersection text").style("font-size",`${48*G}px`).style("fill",(I)=>{let i=Rb([...I.sets].sort());return Z.get(i)?.color??F.vennSetTextColor??H}),x.selectAll(".venn-intersection path").style("fill-opacity",(I)=>{let i=Rb([...I.sets].sort());return Z.get(i)?.fill?1:0}).style("fill",(I)=>{let i=Rb([...I.sets].sort());return Z.get(i)?.fill??"transparent"});let Y=q.append("g").attr("transform",`translate(0, ${L})`),a=x.select("svg").node();if(a&&"childNodes"in a)for(let I of[...a.childNodes])Y.node()?.appendChild(I);y3(q,K,w,D?.useMaxWidth??!0)},"draw");X(Rb,"stableSetsKey");X(E8u,"renderTextNodes");X(A8u,"ensurePairwiseSubsets");Yc4={draw:Wc4},Rc4={parser:fc4,db:xc4,renderer:Yc4,styles:Sc4}});var k8u={};ju(k8u,{diagram:()=>hc4});function U8u(u){if(!u.length)return[];let B=[],E=[];return u.forEach((A)=>{let C={name:A.name,children:A.type==="Leaf"?void 0:[]};if(C.classSelector=A?.classSelector,A?.cssCompiledStyles)C.cssCompiledStyles=A.cssCompiledStyles;if(A.type==="Leaf"&&A.value!==void 0)C.value=A.value;while(E.length>0&&E[E.length-1].level>=A.level)E.pop();if(E.length===0)B.push(C);else{let D=E[E.length-1].node;if(D.children)D.children.push(C);else D.children=[C]}if(A.type!=="Leaf")E.push({node:C,level:A.level})}),B}var F8u,Tc4,Oc4,z8u,Ic4=10,kq=10,dR=25,Pc4,jc4,Nc4,ic4,ac4,Vc4,hc4;var f8u=g(()=>{LB();E2();Q8();o5();t3();s4();o4();Y4();l7();i3();F8u=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=w3,this.getAccTitle=H3,this.setDiagramTitle=T3,this.getDiagramTitle=X3,this.getAccDescription=q3,this.setAccDescription=L3}static{X(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let u=t4,B=F4();return B1({...u.treemap,...B.treemap??{}})}addNode(u,B){if(this.nodes.push(u),this.levels.set(u,B),B===0)this.outerNodes.push(u),this.root??=u}getRoot(){return{name:"",children:this.outerNodes}}addClass(u,B){let E=this.classes.get(u)??{id:u,styles:[],textStyles:[]},A=B.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");if(A)A.forEach((C)=>{if(BS(C))if(E?.textStyles)E.textStyles.push(C);else E.textStyles=[C];if(E?.styles)E.styles.push(C);else E.styles=[C]});this.classes.set(u,E)}getClasses(){return this.classes}getStylesForClass(u){return this.classes.get(u)?.styles??[]}clear(){D3(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};X(U8u,"buildHierarchy");Tc4=X((u,B)=>{D6(u,B);let E=[];for(let D of u.TreemapRows??[])if(D.$type==="ClassDefStatement")B.addClass(D.className??"",D.styleText??"");for(let D of u.TreemapRows??[]){let F=D.item;if(!F)continue;let U=D.indent?parseInt(D.indent):0,z=Oc4(F),k=F.classSelector?B.getStylesForClass(F.classSelector):[],f=k.length>0?k:void 0,l={level:U,name:z,type:F.$type,value:F.value,classSelector:F.classSelector,cssCompiledStyles:f};E.push(l)}let A=U8u(E),C=X((D,F)=>{for(let U of D)if(B.addNode(U,F),U.children&&U.children.length>0)C(U.children,F+1)},"addNodesRecursively");C(A,0)},"populate"),Oc4=X((u)=>{return u.name?String(u.name):""},"getItemName"),z8u={parser:{yy:void 0},parse:X(async(u)=>{try{let E=await X9("treemap",u);z0.debug("Treemap AST:",E);let A=z8u.parser?.yy;if(!(A instanceof F8u))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.");Tc4(E,A)}catch(B){throw z0.error("Error parsing treemap:",B),B}},"parse")},Pc4=X((u,B,E,A)=>{let C=A.db,D=C.getConfig(),F=D.padding??Ic4,U=C.getDiagramTitle(),z=C.getRoot(),{themeVariables:k}=F4();if(!z)return;let f=U?30:0,l=N1(B),b=D.nodeWidth?D.nodeWidth*kq:960,M=D.nodeHeight?D.nodeHeight*kq:500,Z=b,J=M+f;l.attr("viewBox",`0 0 ${Z} ${J}`),y3(l,J,Z,D.useMaxWidth);let w;try{let m=D.valueFormat||",";if(m==="$0,0")w=X(($)=>"$"+bF(",")($),"valueFormat");else if(m.startsWith("$")&&m.includes(",")){let $=/\.\d+/.exec(m),y=$?$[0]:"";w=X((p)=>"$"+bF(","+y)(p),"valueFormat")}else if(m.startsWith("$")){let $=m.substring(1);w=X((y)=>"$"+bF($||"")(y),"valueFormat")}else w=bF(m)}catch(m){z0.error("Error creating format function:",m),w=bF(",")}let K=e8().range(["transparent",k.cScale0,k.cScale1,k.cScale2,k.cScale3,k.cScale4,k.cScale5,k.cScale6,k.cScale7,k.cScale8,k.cScale9,k.cScale10,k.cScale11]),Q=e8().range(["transparent",k.cScalePeer0,k.cScalePeer1,k.cScalePeer2,k.cScalePeer3,k.cScalePeer4,k.cScalePeer5,k.cScalePeer6,k.cScalePeer7,k.cScalePeer8,k.cScalePeer9,k.cScalePeer10,k.cScalePeer11]),G=e8().range([k.cScaleLabel0,k.cScaleLabel1,k.cScaleLabel2,k.cScaleLabel3,k.cScaleLabel4,k.cScaleLabel5,k.cScaleLabel6,k.cScaleLabel7,k.cScaleLabel8,k.cScaleLabel9,k.cScaleLabel10,k.cScaleLabel11]);if(U)l.append("text").attr("x",Z/2).attr("y",f/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(U);let L=l.append("g").attr("transform",`translate(0, ${f})`).attr("class","treemapContainer"),H=uG(z).sum((m)=>m.value??0).sort((m,$)=>($.value??0)-(m.value??0)),x=MN().size([b,M]).paddingTop((m)=>m.children&&m.children.length>0?dR+kq:0).paddingInner(F).paddingLeft((m)=>m.children&&m.children.length>0?kq:0).paddingRight((m)=>m.children&&m.children.length>0?kq:0).paddingBottom((m)=>m.children&&m.children.length>0?kq:0).round(!0)(H),v=x.descendants().filter((m)=>m.children&&m.children.length>0),W=L.selectAll(".treemapSection").data(v).enter().append("g").attr("class","treemapSection").attr("transform",(m)=>`translate(${m.x0},${m.y0})`);if(W.append("rect").attr("width",(m)=>m.x1-m.x0).attr("height",dR).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",0.6).attr("stroke-width",0.6).attr("style",(m)=>{if(m.depth===0)return"display: none;";return""}),W.append("clipPath").attr("id",(m,$)=>`clip-section-${B}-${$}`).append("rect").attr("width",(m)=>Math.max(0,m.x1-m.x0-12)).attr("height",dR),W.append("rect").attr("width",(m)=>m.x1-m.x0).attr("height",(m)=>m.y1-m.y0).attr("class",(m,$)=>{return`treemapSection section${$}`}).attr("fill",(m)=>K(m.data.name)).attr("fill-opacity",0.6).attr("stroke",(m)=>Q(m.data.name)).attr("stroke-width",2).attr("stroke-opacity",0.4).attr("style",(m)=>{if(m.depth===0)return"display: none;";let $=H4({cssCompiledStyles:m.data.cssCompiledStyles});return $.nodeStyles+";"+$.borderStyles.join(";")}),W.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",dR/2).attr("dominant-baseline","middle").text((m)=>m.depth===0?"":m.data.name).attr("font-weight","bold").attr("clip-path",(m,$)=>`url(#clip-section-${B}-${$})`).attr("style",(m)=>{if(m.depth===0)return"display: none;";let $="dominant-baseline: middle; font-size: 12px; fill:"+G(m.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",y=H4({cssCompiledStyles:m.data.cssCompiledStyles});return $+y.labelStyles.replace("color:","fill:")}).each(function(m){if(m.depth===0)return;let $=Ku(this),y=m.data.name;$.text(y);let p=m.x1-m.x0,e=6,_;if(D.showValues!==!1&&m.value){let D0=p-10,P0=30,q0=10;_=D0-30-10-e}else _=p-e-6;let B0=Math.max(15,_),k0=$.node();if(k0.getComputedTextLength()>B0){let P0=y;while(P0.length>0){if(P0=y.substring(0,P0.length-1),P0.length===0){if($.text("..."),k0.getComputedTextLength()>B0)$.text("");break}if($.text(P0+"..."),k0.getComputedTextLength()<=B0)break}}}),D.showValues!==!1)W.append("text").attr("class","treemapSectionValue").attr("x",(m)=>m.x1-m.x0-10).attr("y",dR/2).attr("text-anchor","end").attr("dominant-baseline","middle").text((m)=>m.value?w(m.value):"").attr("font-style","italic").attr("style",(m)=>{if(m.depth===0)return"display: none;";let $="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+G(m.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",y=H4({cssCompiledStyles:m.data.cssCompiledStyles});return $+y.labelStyles.replace("color:","fill:")});let S=x.leaves(),T=S.length>20,R=T?16:38,Y=T?14:28,a=T?4:8,I=T?4:6,O=T?2:4,i=T?8:10,N=T?1:2,V=L.selectAll(".treemapLeafGroup").data(S).enter().append("g").attr("class",(m,$)=>{return`treemapNode treemapLeafGroup leaf${$}${m.data.classSelector?` ${m.data.classSelector}`:""}x`}).attr("transform",(m)=>`translate(${m.x0},${m.y0})`);if(V.append("rect").attr("width",(m)=>m.x1-m.x0).attr("height",(m)=>m.y1-m.y0).attr("class","treemapLeaf").attr("fill",(m)=>{return m.parent?K(m.parent.data.name):K(m.data.name)}).attr("style",(m)=>{return H4({cssCompiledStyles:m.data.cssCompiledStyles}).nodeStyles}).attr("fill-opacity",0.3).attr("stroke",(m)=>{return m.parent?K(m.parent.data.name):K(m.data.name)}).attr("stroke-width",3),V.append("clipPath").attr("id",(m,$)=>`clip-${B}-${$}`).append("rect").attr("width",(m)=>Math.max(0,m.x1-m.x0-4)).attr("height",(m)=>Math.max(0,m.y1-m.y0-4)),V.append("text").attr("class","treemapLabel").attr("x",(m)=>(m.x1-m.x0)/2).attr("y",(m)=>(m.y1-m.y0)/2).attr("style",(m)=>{let $=`text-anchor: middle; dominant-baseline: middle; font-size: ${R}px;fill:`+G(m.data.name)+";",y=H4({cssCompiledStyles:m.data.cssCompiledStyles});return $+y.labelStyles.replace("color:","fill:")}).attr("clip-path",(m,$)=>`url(#clip-${B}-${$})`).text((m)=>m.data.name).each(function(m){let $=Ku(this),y=m.x1-m.x0,p=m.y1-m.y0,e=$.node(),_=y-2*O,b0=p-2*O;if(_<i||b0<i){$.style("display","none");return}let B0=parseInt($.style("font-size"),10),k0=0.6;while(e.getComputedTextLength()>_&&B0>a)B0--,$.style("font-size",`${B0}px`);let f0=Math.max(I,Math.min(Y,Math.round(B0*k0))),D0=B0+N+f0;while(D0>b0&&B0>a){if(B0--,f0=Math.max(I,Math.min(Y,Math.round(B0*k0))),f0<I&&B0===a)break;if($.style("font-size",`${B0}px`),D0=B0+N+f0,f0<=I&&D0>b0);}if($.style("font-size",`${B0}px`),T){if(B0<a||b0<a)$.style("display","none")}else if(e.getComputedTextLength()>_||B0<a||b0<B0)$.style("display","none")}),D.showValues!==!1)V.append("text").attr("class","treemapValue").attr("x",($)=>($.x1-$.x0)/2).attr("y",function($){return($.y1-$.y0)/2}).attr("style",($)=>{let y=`text-anchor: middle; dominant-baseline: hanging; font-size: ${Y}px;fill:`+G($.data.name)+";",p=H4({cssCompiledStyles:$.data.cssCompiledStyles});return y+p.labelStyles.replace("color:","fill:")}).attr("clip-path",($,y)=>`url(#clip-${B}-${y})`).text(($)=>$.value?w($.value):"").each(function($){let y=Ku(this),p=this.parentNode;if(!p){y.style("display","none");return}let e=Ku(p).select(".treemapLabel");if(e.empty()||e.style("display")==="none"){y.style("display","none");return}let _=parseFloat(e.style("font-size")),B0=Math.max(I,Math.min(Y,Math.round(_*0.6)));y.style("font-size",`${B0}px`);let f0=($.y1-$.y0)/2+_/2+N;y.attr("y",f0);let D0=$.x1-$.x0,m0=$.y1-$.y0-4,a0=D0-2*O;if(y.node().getComputedTextLength()>a0||f0+B0>m0||B0<I)y.style("display","none");else y.style("display",null)});let r=D.diagramPadding??8;K8(l,r,"flowchart",D?.useMaxWidth||!1)},"draw"),jc4=X(function(u,B){return B.db.getClasses()},"getClasses"),Nc4={draw:Pc4,getClasses:jc4},ic4={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},ac4=X(({treemap:u}={})=>{let B=S7(),E=F4(),A=B1(B,E.themeVariables),C=B1(ic4,u),D=C.titleColor??A.titleColor,F=C.labelColor??A.textColor,U=C.valueColor??A.textColor;return`
.treemapNode.section {
stroke: ${C.sectionStrokeColor};
stroke-width: ${C.sectionStrokeWidth};
fill: ${C.sectionFillColor};
}
.treemapNode.leaf {
stroke: ${C.leafStrokeColor};
stroke-width: ${C.leafStrokeWidth};
fill: ${C.leafFillColor};
}
.treemapLabel {
fill: ${F};
font-size: ${C.labelFontSize};
}
.treemapValue {
fill: ${U};
font-size: ${C.valueFontSize};
}
.treemapTitle {
fill: ${D};
font-size: ${C.titleFontSize};
}
`},"getStyles"),Vc4=ac4,hc4={parser:z8u,get db(){return new F8u},renderer:Nc4,styles:Vc4}});var T8u={};ju(T8u,{diagram:()=>sc4});function M8u(){return $0()["wardley-beta"]}function Z8u(u,B,E,A,C,D,F,U,z){V7.addNode({id:u,label:B,x:E,y:A,className:C,labelOffsetX:D,labelOffsetY:F,inertia:U,sourceStrategy:z})}function J8u(u,B,E=!1,A,C){V7.addLink({source:u,target:B,dashed:E,label:A,flow:C})}function w8u(u,B,E){V7.addTrend({nodeId:u,targetX:B,targetY:E})}function K8u(u,B,E){V7.addAnnotation({number:u,coordinates:B,text:E})}function Q8u(u,B,E){V7.addNote({text:u,x:B,y:E})}function G8u(u,B,E){V7.addAccelerator({name:u,x:B,y:E})}function H8u(u,B,E){V7.addDeaccelerator({name:u,x:B,y:E})}function L8u(u,B){V7.setAnnotationsBox(u,B)}function q8u(u,B){V7.setSize(u,B)}function X8u(u){V7.startPipeline(u)}function x8u(u,B){V7.addPipelineComponent(u,B)}function v8u(u){V7.setAxes(u)}function S8u(u){return V7.getNode(u)}function W8u(u){return V7.resolveNodeId(u)}function Y8u(){return V7.build()}function R8u(){V7.clear(),D3()}var bg,rw,l8u,mc4,rc4,b8u,$c4,V7,yc4,cc4,gc4,_c4,nc4,pc4,dc4,sc4;var O8u=g(()=>{LB();E2();t3();s4();o4();Y4();l7();bg=X((u,B)=>{let E=u<=1?u*100:u;if(E<0||E>100)throw Error(`${B} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${u}`);return E},"toPercent"),rw=X((u,B,E)=>{return{x:bg(B,`${E} evolution`),y:bg(u,`${E} visibility`)}},"toCoordinates"),l8u=X((u)=>{if(!u)return;if(u==="+<>")return"bidirectional";if(u==="+<")return"backward";if(u==="+>")return"forward";return},"getFlowFromPort"),mc4=X((u)=>{if(!u?.startsWith("+"))return{};let E=/^\+'([^']*)'/.exec(u)?.[1];if(u.includes("<>"))return{flow:"bidirectional",label:E};if(u.includes("<"))return{flow:"backward",label:E};if(u.includes(">"))return{flow:"forward",label:E};return{label:E}},"extractFlowFromArrow"),rc4=X((u,B)=>{if(D6(u,B),u.size)B.setSize(u.size.width,u.size.height);if(u.evolution){let E=u.evolution.stages.map((C)=>{if(C.secondName)return`${C.name.trim()} / ${C.secondName.trim()}`;return C.name.trim()}),A=u.evolution.stages.filter((C)=>C.boundary!==void 0).map((C)=>C.boundary);B.updateAxes({stages:E,stageBoundaries:A})}if(u.anchors.forEach((E)=>{let A=rw(E.visibility,E.evolution,`Anchor "${E.name}"`);B.addNode(E.name,E.name,A.x,A.y,"anchor")}),u.components.forEach((E)=>{let A=rw(E.visibility,E.evolution,`Component "${E.name}"`),C=E.label?(E.label.negX?-1:1)*E.label.offsetX:void 0,D=E.label?(E.label.negY?-1:1)*E.label.offsetY:void 0,F=E.decorator?.strategy;B.addNode(E.name,E.name,A.x,A.y,"component",C,D,E.inertia,F)}),u.notes.forEach((E)=>{let A=rw(E.visibility,E.evolution,`Note "${E.text}"`);B.addNote(E.text,A.x,A.y)}),u.pipelines.forEach((E)=>{let A=B.getNode(E.parent);if(!A||typeof A.y!=="number")throw Error(`Pipeline "${E.parent}" must reference an existing component with coordinates.`);let C=A.y;B.startPipeline(E.parent),E.components.forEach((D)=>{let F=`${E.parent}_${D.name}`,U=D.label?(D.label.negX?-1:1)*D.label.offsetX:void 0,z=D.label?(D.label.negY?-1:1)*D.label.offsetY:void 0,k=bg(D.evolution,`Pipeline component "${D.name}" evolution`);B.addNode(F,D.name,k,C,"pipeline-component",U,z),B.addPipelineComponent(E.parent,F)})}),u.links.forEach((E)=>{let A=!!E.arrow&&(E.arrow.includes("-.->")||E.arrow.includes(".-.")),C=l8u(E.fromPort)??l8u(E.toPort),{flow:D,label:F}=mc4(E.arrow);if(!C&&D)C=D;let U=E.linkLabel,z=F??U;B.addLink(B.resolveNodeId(E.from),B.resolveNodeId(E.to),A,z,C)}),u.evolves.forEach((E)=>{let A=B.getNode(E.component);if(A?.y!==void 0){let C=bg(E.target,`Evolve target for "${E.component}"`);B.addTrend(E.component,C,A.y)}}),u.annotations.length>0){let E=u.annotations[0],A=rw(E.x,E.y,"Annotations box");B.setAnnotationsBox(A.x,A.y)}u.annotation.forEach((E)=>{let A=rw(E.x,E.y,`Annotation ${E.number}`);B.addAnnotation(E.number,[{x:A.x,y:A.y}],E.text)}),u.accelerators.forEach((E)=>{let A=rw(E.x,E.y,`Accelerator "${E.name}"`);B.addAccelerator(E.name,A.x,A.y)}),u.deaccelerators.forEach((E)=>{let A=rw(E.x,E.y,`Deaccelerator "${E.name}"`);B.addDeaccelerator(E.name,A.x,A.y)})},"populateDb"),b8u={parser:{yy:void 0},parse:X(async(u)=>{let B=await X9("wardley",u);z0.debug(B);let E=b8u.parser?.yy;if(!E||typeof E.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.");rc4(B,E)},"parse")},$c4=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{X(this,"WardleyBuilder")}addNode(u){let B=this.nodes.get(u.id)??{id:u.id,label:u.label},E={...B,...u,className:u.className??B.className,labelOffsetX:u.labelOffsetX??B.labelOffsetX,labelOffsetY:u.labelOffsetY??B.labelOffsetY};this.nodes.set(u.id,E)}addLink(u){this.links.push(u)}addTrend(u){this.trends.set(u.nodeId,u)}startPipeline(u){this.pipelines.set(u,{nodeId:u,componentIds:[]});let B=this.nodes.get(u);if(B)B.isPipelineParent=!0}addPipelineComponent(u,B){let E=this.pipelines.get(u);if(E)E.componentIds.push(B);let A=this.nodes.get(B);if(A)A.inPipeline=!0}addAnnotation(u){this.annotations.push(u)}addNote(u){this.notes.push(u)}addAccelerator(u){this.accelerators.push(u)}addDeaccelerator(u){this.deaccelerators.push(u)}setAnnotationsBox(u,B){this.annotationsBox={x:u,y:B}}setAxes(u){this.axes={...this.axes,...u}}setSize(u,B){this.size={width:u,height:B}}getNode(u){return this.nodes.get(u)}resolveNodeId(u){if(this.nodes.has(u))return u;for(let[B,E]of this.nodes)if(E.label===u)return B;return u}build(){let u=[];for(let B of this.nodes.values()){if(typeof B.x!=="number"||typeof B.y!=="number")throw Error(`Node "${B.label}" is missing coordinates`);u.push(B)}return{nodes:u,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}},V7=new $c4;X(M8u,"getConfig");X(Z8u,"addNode");X(J8u,"addLink");X(w8u,"addTrend");X(K8u,"addAnnotation");X(Q8u,"addNote");X(G8u,"addAccelerator");X(H8u,"addDeaccelerator");X(L8u,"setAnnotationsBox");X(q8u,"setSize");X(X8u,"startPipeline");X(x8u,"addPipelineComponent");X(v8u,"updateAxes");X(S8u,"getNode");X(W8u,"resolveNodeId");X(Y8u,"getWardleyData");X(R8u,"clear");yc4={getConfig:M8u,addNode:Z8u,addLink:J8u,addTrend:w8u,addAnnotation:K8u,addNote:Q8u,addAccelerator:G8u,addDeaccelerator:H8u,setAnnotationsBox:L8u,setSize:q8u,startPipeline:X8u,addPipelineComponent:x8u,updateAxes:v8u,getNode:S8u,resolveNodeId:W8u,getWardleyData:Y8u,clear:R8u,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,getAccDescription:q3,setAccDescription:L3},cc4=["Genesis","Custom Built","Product","Commodity"],gc4=X(()=>{let{themeVariables:u}=$0();return{backgroundColor:u.wardley?.backgroundColor??u.background??"#fff",axisColor:u.wardley?.axisColor??"#000",axisTextColor:u.wardley?.axisTextColor??u.primaryTextColor??"#222",gridColor:u.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:u.wardley?.componentFill??"#fff",componentStroke:u.wardley?.componentStroke??"#000",componentLabelColor:u.wardley?.componentLabelColor??u.primaryTextColor??"#222",linkStroke:u.wardley?.linkStroke??"#000",evolutionStroke:u.wardley?.evolutionStroke??"#dc3545",annotationStroke:u.wardley?.annotationStroke??"#000",annotationTextColor:u.wardley?.annotationTextColor??u.primaryTextColor??"#222",annotationFill:u.wardley?.annotationFill??u.background??"#fff"}},"getTheme"),_c4=X(()=>{let u=$0()["wardley-beta"];return{width:u?.width??900,height:u?.height??600,padding:u?.padding??48,nodeRadius:u?.nodeRadius??6,nodeLabelOffset:u?.nodeLabelOffset??8,axisFontSize:u?.axisFontSize??12,labelFontSize:u?.labelFontSize??10,showGrid:u?.showGrid??!1,useMaxWidth:u?.useMaxWidth??!0}},"getConfigValues"),nc4=X((u,B,E,A)=>{z0.debug(`Rendering Wardley map
`+u);let C=_c4(),D=gc4(),F=C.nodeRadius*1.6,U=A.db,z=U.getWardleyData(),k=U.getDiagramTitle(),f=z.size?.width??C.width,l=z.size?.height??C.height,b=N1(B);b.selectAll("*").remove(),y3(b,l,f,C.useMaxWidth),b.attr("viewBox",`0 0 ${f} ${l}`);let M=b.append("g").attr("class","wardley-map"),Z=b.append("defs");Z.append("marker").attr("id",`arrow-${B}`).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",D.evolutionStroke).attr("stroke","none"),Z.append("marker").attr("id",`link-arrow-end-${B}`).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",D.linkStroke).attr("stroke","none"),Z.append("marker").attr("id",`link-arrow-start-${B}`).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",D.linkStroke).attr("stroke","none"),M.append("rect").attr("class","wardley-background").attr("width",f).attr("height",l).attr("fill",D.backgroundColor);let J=f-C.padding*2,w=l-C.padding*2;if(k)M.append("text").attr("class","wardley-title").attr("x",f/2).attr("y",C.padding/2).attr("fill",D.axisTextColor).attr("font-size",C.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(k);let K=X((N)=>C.padding+N/100*J,"projectX"),Q=X((N)=>l-C.padding-N/100*w,"projectY"),G=M.append("g").attr("class","wardley-axes");G.append("line").attr("x1",C.padding).attr("x2",f-C.padding).attr("y1",l-C.padding).attr("y2",l-C.padding).attr("stroke",D.axisColor).attr("stroke-width",1),G.append("line").attr("x1",C.padding).attr("x2",C.padding).attr("y1",C.padding).attr("y2",l-C.padding).attr("stroke",D.axisColor).attr("stroke-width",1);let L=z.axes.xLabel??"Evolution",H=z.axes.yLabel??"Visibility";G.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",C.padding+J/2).attr("y",l-C.padding/4).attr("fill",D.axisTextColor).attr("font-size",C.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(L),G.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",C.padding/3).attr("y",C.padding+w/2).attr("fill",D.axisTextColor).attr("font-size",C.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${C.padding/3} ${C.padding+w/2})`).text(H);let q=z.axes.stages&&z.axes.stages.length>0?z.axes.stages:cc4;if(q.length>0){let N=M.append("g").attr("class","wardley-stages"),V=z.axes.stageBoundaries,h=[];if(V&&V.length===q.length){let r=0;V.forEach((m)=>{h.push({start:r,end:m}),r=m})}else{let r=1/q.length;q.forEach((m,$)=>{h.push({start:$*r,end:($+1)*r})})}q.forEach((r,m)=>{let $=h[m],y=C.padding+$.start*J,p=C.padding+$.end*J,e=(y+p)/2;if(m>0)N.append("line").attr("x1",y).attr("x2",y).attr("y1",C.padding).attr("y2",l-C.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",0.8);N.append("text").attr("class","wardley-stage-label").attr("x",e).attr("y",l-C.padding/1.5).attr("fill",D.axisTextColor).attr("font-size",C.axisFontSize-2).attr("text-anchor","middle").text(r)})}if(C.showGrid){let N=M.append("g").attr("class","wardley-grid");for(let V=1;V<4;V++){let h=V/4,r=C.padding+J*h;N.append("line").attr("x1",r).attr("x2",r).attr("y1",C.padding).attr("y2",l-C.padding).attr("stroke",D.gridColor).attr("stroke-dasharray","2 6"),N.append("line").attr("x1",C.padding).attr("x2",f-C.padding).attr("y1",l-C.padding-w*h).attr("y2",l-C.padding-w*h).attr("stroke",D.gridColor).attr("stroke-dasharray","2 6")}}let x=new Map;if(z.nodes.forEach((N)=>{x.set(N.id,{x:K(N.x),y:Q(N.y),node:N})}),z.pipelines.length>0){let N=M.append("g").attr("class","wardley-pipelines"),V=M.append("g").attr("class","wardley-pipeline-links");z.pipelines.forEach((h)=>{if(h.componentIds.length===0)return;let r=h.componentIds.map((p)=>({id:p,pos:x.get(p),node:z.nodes.find((e)=>e.id===p)})).filter((p)=>p.pos&&p.node).sort((p,e)=>p.node.x-e.node.x);for(let p=0;p<r.length-1;p++){let e=r[p],_=r[p+1];V.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",e.pos.x).attr("y1",e.pos.y).attr("x2",_.pos.x).attr("y2",_.pos.y).attr("stroke",D.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let m=1/0,$=-1/0,y=0;if(h.componentIds.forEach((p)=>{let e=x.get(p);if(e)m=Math.min(m,e.x),$=Math.max($,e.x),y=e.y}),m!==1/0&&$!==-1/0){let e=C.nodeRadius*4,_=y-e/2,b0=x.get(h.nodeId);if(b0){let B0=(m+$)/2;b0.x=B0,b0.y=_-F/6}N.append("rect").attr("class","wardley-pipeline-box").attr("x",m-15).attr("y",_).attr("width",$-m+30).attr("height",e).attr("fill","none").attr("stroke",D.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let v=M.append("g").attr("class","wardley-links"),W=new Map;z.pipelines.forEach((N)=>{W.set(N.nodeId,new Set(N.componentIds))});let S=z.links.filter((N)=>{if(!x.has(N.source)||!x.has(N.target))return!1;if(W.get(N.target)?.has(N.source))return!1;return!0});v.selectAll("line").data(S).enter().append("line").attr("class",(N)=>`wardley-link${N.dashed?" wardley-link--dashed":""}`).attr("x1",(N)=>{let V=x.get(N.source),h=x.get(N.target),m=z.nodes.find((e)=>e.id===N.source).isPipelineParent?F/Math.sqrt(2):C.nodeRadius,$=h.x-V.x,y=h.y-V.y,p=Math.sqrt($*$+y*y);return V.x+$/p*m}).attr("y1",(N)=>{let V=x.get(N.source),h=x.get(N.target),m=z.nodes.find((e)=>e.id===N.source).isPipelineParent?F/Math.sqrt(2):C.nodeRadius,$=h.x-V.x,y=h.y-V.y,p=Math.sqrt($*$+y*y);return V.y+y/p*m}).attr("x2",(N)=>{let V=x.get(N.source),h=x.get(N.target),m=z.nodes.find((e)=>e.id===N.target).isPipelineParent?F/Math.sqrt(2):C.nodeRadius,$=V.x-h.x,y=V.y-h.y,p=Math.sqrt($*$+y*y);return h.x+$/p*m}).attr("y2",(N)=>{let V=x.get(N.source),h=x.get(N.target),m=z.nodes.find((e)=>e.id===N.target).isPipelineParent?F/Math.sqrt(2):C.nodeRadius,$=V.x-h.x,y=V.y-h.y,p=Math.sqrt($*$+y*y);return h.y+y/p*m}).attr("stroke",D.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",(N)=>N.dashed?"6 6":null).attr("marker-end",(N)=>{if(N.flow==="forward"||N.flow==="bidirectional")return`url(#link-arrow-end-${B})`;return null}).attr("marker-start",(N)=>{if(N.flow==="backward"||N.flow==="bidirectional")return`url(#link-arrow-start-${B})`;return null}),v.selectAll("text").data(S.filter((N)=>N.label)).enter().append("text").attr("class","wardley-link-label").attr("x",(N)=>{let V=x.get(N.source),h=x.get(N.target),r=(V.x+h.x)/2,m=h.y-V.y,$=h.x-V.x,y=Math.sqrt($*$+m*m),p=8,e=m/y;return r+e*8}).attr("y",(N)=>{let V=x.get(N.source),h=x.get(N.target),r=(V.y+h.y)/2,m=h.x-V.x,$=h.y-V.y,y=Math.sqrt(m*m+$*$),p=8,e=-m/y;return r+e*8}).attr("fill",D.axisTextColor).attr("font-size",C.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",(N)=>{let V=x.get(N.source),h=x.get(N.target),r=(V.x+h.x)/2,m=(V.y+h.y)/2,$=h.x-V.x,y=h.y-V.y,p=Math.sqrt($*$+y*y),e=8,_=y/p,b0=-$/p,B0=r+_*8,k0=m+b0*8,f0=Math.atan2(y,$)*180/Math.PI;if(f0>90||f0<-90)f0+=180;return`rotate(${f0} ${B0} ${k0})`}).text((N)=>N.label);let T=M.append("g").attr("class","wardley-trends"),R=z.trends.map((N)=>{let V=x.get(N.nodeId);if(!V)return null;let h=K(N.targetX),r=Q(N.targetY),m=h-V.x,$=r-V.y,y=Math.sqrt(m*m+$*$),p=C.nodeRadius+2,e=y>p?h-m/y*p:h,_=y>p?r-$/y*p:r;return{origin:V,targetX:h,targetY:r,adjustedX2:e,adjustedY2:_}}).filter((N)=>N!==null);T.selectAll("line").data(R).enter().append("line").attr("class","wardley-trend").attr("x1",(N)=>N.origin.x).attr("y1",(N)=>N.origin.y).attr("x2",(N)=>N.adjustedX2).attr("y2",(N)=>N.adjustedY2).attr("stroke",D.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${B})`);let a=M.append("g").attr("class","wardley-nodes").selectAll("g").data(z.nodes).enter().append("g").attr("class",(N)=>["wardley-node",N.className?`wardley-node--${N.className}`:""].filter(Boolean).join(" "));a.filter((N)=>N.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",(N)=>x.get(N.id).x).attr("cy",(N)=>x.get(N.id).y).attr("r",C.nodeRadius*2).attr("fill","#666").attr("stroke",D.componentStroke).attr("stroke-width",1),a.filter((N)=>N.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",(N)=>x.get(N.id).x).attr("cy",(N)=>x.get(N.id).y).attr("r",C.nodeRadius*2).attr("fill","#ccc").attr("stroke",D.componentStroke).attr("stroke-width",1),a.filter((N)=>N.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",(N)=>x.get(N.id).x).attr("cy",(N)=>x.get(N.id).y).attr("r",C.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let I=a.filter((N)=>N.sourceStrategy==="market");I.append("circle").attr("class","wardley-market-overlay").attr("cx",(N)=>x.get(N.id).x).attr("cy",(N)=>x.get(N.id).y).attr("r",C.nodeRadius*2).attr("fill","white").attr("stroke",D.componentStroke).attr("stroke-width",1),a.filter((N)=>!N.isPipelineParent&&N.sourceStrategy!=="market"&&N.className!=="anchor").append("circle").attr("cx",(N)=>x.get(N.id).x).attr("cy",(N)=>x.get(N.id).y).attr("r",C.nodeRadius).attr("fill",D.componentFill).attr("stroke",D.componentStroke).attr("stroke-width",1);let O=C.nodeRadius*0.7,i=C.nodeRadius*1.2;if(I.append("line").attr("class","wardley-market-line").attr("x1",(N)=>x.get(N.id).x).attr("y1",(N)=>x.get(N.id).y-i).attr("x2",(N)=>x.get(N.id).x-i*Math.cos(Math.PI/6)).attr("y2",(N)=>x.get(N.id).y+i*Math.sin(Math.PI/6)).attr("stroke",D.componentStroke).attr("stroke-width",1),I.append("line").attr("class","wardley-market-line").attr("x1",(N)=>x.get(N.id).x-i*Math.cos(Math.PI/6)).attr("y1",(N)=>x.get(N.id).y+i*Math.sin(Math.PI/6)).attr("x2",(N)=>x.get(N.id).x+i*Math.cos(Math.PI/6)).attr("y2",(N)=>x.get(N.id).y+i*Math.sin(Math.PI/6)).attr("stroke",D.componentStroke).attr("stroke-width",1),I.append("line").attr("class","wardley-market-line").attr("x1",(N)=>x.get(N.id).x+i*Math.cos(Math.PI/6)).attr("y1",(N)=>x.get(N.id).y+i*Math.sin(Math.PI/6)).attr("x2",(N)=>x.get(N.id).x).attr("y2",(N)=>x.get(N.id).y-i).attr("stroke",D.componentStroke).attr("stroke-width",1),I.append("circle").attr("class","wardley-market-dot").attr("cx",(N)=>x.get(N.id).x).attr("cy",(N)=>x.get(N.id).y-i).attr("r",O).attr("fill","white").attr("stroke",D.componentStroke).attr("stroke-width",2),I.append("circle").attr("class","wardley-market-dot").attr("cx",(N)=>x.get(N.id).x-i*Math.cos(Math.PI/6)).attr("cy",(N)=>x.get(N.id).y+i*Math.sin(Math.PI/6)).attr("r",O).attr("fill","white").attr("stroke",D.componentStroke).attr("stroke-width",2),I.append("circle").attr("class","wardley-market-dot").attr("cx",(N)=>x.get(N.id).x+i*Math.cos(Math.PI/6)).attr("cy",(N)=>x.get(N.id).y+i*Math.sin(Math.PI/6)).attr("r",O).attr("fill","white").attr("stroke",D.componentStroke).attr("stroke-width",2),a.filter((N)=>N.isPipelineParent===!0).append("rect").attr("x",(N)=>x.get(N.id).x-F/2).attr("y",(N)=>x.get(N.id).y-F/2).attr("width",F).attr("height",F).attr("fill",D.componentFill).attr("stroke",D.componentStroke).attr("stroke-width",1),a.filter((N)=>N.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",(N)=>{let V=x.get(N.id),h=N.isPipelineParent?F/2+15:C.nodeRadius+15;if(N.sourceStrategy)h+=C.nodeRadius+10;return V.x+h}).attr("y1",(N)=>{let V=x.get(N.id),h=N.isPipelineParent?F:C.nodeRadius*2;return V.y-h/2}).attr("x2",(N)=>{let V=x.get(N.id),h=N.isPipelineParent?F/2+15:C.nodeRadius+15;if(N.sourceStrategy)h+=C.nodeRadius+10;return V.x+h}).attr("y2",(N)=>{let V=x.get(N.id),h=N.isPipelineParent?F:C.nodeRadius*2;return V.y+h/2}).attr("stroke",D.componentStroke).attr("stroke-width",6),a.append("text").attr("x",(N)=>{let V=x.get(N.id);if(N.className==="anchor")return N.labelOffsetX!==void 0?V.x+N.labelOffsetX:V.x;let h=C.nodeLabelOffset;if(N.sourceStrategy&&N.labelOffsetX===void 0)h+=10;let r=N.labelOffsetX??h;return V.x+r}).attr("y",(N)=>{let V=x.get(N.id);if(N.className==="anchor")return N.labelOffsetY!==void 0?V.y+N.labelOffsetY:V.y-3;let h=-C.nodeLabelOffset;if(N.sourceStrategy&&N.labelOffsetY===void 0)h-=10;let r=N.labelOffsetY??h;return V.y+r}).attr("class","wardley-node-label").attr("fill",(N)=>{if(N.className==="evolved")return D.evolutionStroke;if(N.className==="anchor")return"#000";return D.componentLabelColor}).attr("font-size",C.labelFontSize).attr("font-weight",(N)=>N.className==="anchor"?"bold":"normal").attr("text-anchor",(N)=>N.className==="anchor"?"middle":"start").attr("dominant-baseline",(N)=>N.className==="anchor"?"middle":"auto").text((N)=>N.label),z.annotations.length>0){let N=M.append("g").attr("class","wardley-annotations");if(z.annotations.forEach((V)=>{let h=V.coordinates.map((r)=>({x:K(r.x),y:Q(r.y)}));if(h.length>1)for(let r=0;r<h.length-1;r++)N.append("line").attr("class","wardley-annotation-line").attr("x1",h[r].x).attr("y1",h[r].y).attr("x2",h[r+1].x).attr("y2",h[r+1].y).attr("stroke",D.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");h.forEach((r)=>{let m=N.append("g").attr("class","wardley-annotation");m.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("fill","white").attr("stroke",D.axisColor).attr("stroke-width",1.5),m.append("text").attr("x",r.x).attr("y",r.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",D.axisTextColor).attr("font-weight","bold").text(V.number)})}),z.annotationsBox){let V=K(z.annotationsBox.x),h=Q(z.annotationsBox.y),r=10,m=16,$=11,y=N.append("g").attr("class","wardley-annotations-box"),p=[...z.annotations].filter((_)=>_.text).sort((_,b0)=>_.number-b0.number),e=[];if(p.forEach((_,b0)=>{let B0=y.append("text").attr("x",V+r).attr("y",h+r+(b0+1)*m).attr("font-size",$).attr("fill",D.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${_.number}. ${_.text}`);e.push(B0)}),e.length>0){let _=0,b0=0;e.forEach((m0)=>{let a0=m0.node(),_0=a0.getComputedTextLength();_=Math.max(_,_0);let w0=a0.getBBox();b0=Math.max(b0,w0.height)});let B0=_+r*2+105,k0=p.length*m+r*2+b0/2,f0=C.padding,D0=f-C.padding-B0,P0=C.padding,q0=l-C.padding-k0;V=Math.max(f0,Math.min(V,D0)),h=Math.max(P0,Math.min(h,q0)),e.forEach((m0,a0)=>{m0.attr("x",V+r).attr("y",h+r+(a0+1)*m)}),y.insert("rect","text").attr("x",V).attr("y",h).attr("width",B0).attr("height",k0).attr("fill","white").attr("stroke",D.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(z.notes.length>0){let N=M.append("g").attr("class","wardley-notes");z.notes.forEach((V)=>{let h=K(V.x),r=Q(V.y);N.append("text").attr("x",h).attr("y",r).attr("text-anchor","start").attr("font-size",11).attr("fill",D.axisTextColor).attr("font-weight","bold").text(V.text)})}if(z.accelerators.length>0){let N=M.append("g").attr("class","wardley-accelerators");z.accelerators.forEach((V)=>{let h=K(V.x),r=Q(V.y),m=60,$=30,y=20,p=`
M ${h} ${r-15}
L ${h+60-20} ${r-15}
L ${h+60-20} ${r-15-8}
L ${h+60} ${r}
L ${h+60-20} ${r+15+8}
L ${h+60-20} ${r+15}
L ${h} ${r+15}
Z
`;N.append("path").attr("d",p).attr("fill","white").attr("stroke",D.componentStroke).attr("stroke-width",1),N.append("text").attr("x",h+30).attr("y",r+15+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",D.axisTextColor).attr("font-weight","bold").text(V.name)})}if(z.deaccelerators.length>0){let N=M.append("g").attr("class","wardley-deaccelerators");z.deaccelerators.forEach((V)=>{let h=K(V.x),r=Q(V.y),m=60,$=30,y=20,p=`
M ${h+60} ${r-15}
L ${h+20} ${r-15}
L ${h+20} ${r-15-8}
L ${h} ${r}
L ${h+20} ${r+15+8}
L ${h+20} ${r+15}
L ${h+60} ${r+15}
Z
`;N.append("path").attr("d",p).attr("fill","white").attr("stroke",D.componentStroke).attr("stroke-width",1),N.append("text").attr("x",h+30).attr("y",r+15+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",D.axisTextColor).attr("font-weight","bold").text(V.name)})}},"draw"),pc4={draw:nc4},dc4=X(({wardley:u}={})=>{let B=S7(),E=F4(),A=B1(B,E.themeVariables),C=B1(A.wardley,u);return`
.wardley-background {
fill: ${C.backgroundColor};
}
.wardley-axes line, .wardley-axes path {
stroke: ${C.axisColor};
}
.wardley-axis-label {
fill: ${C.axisTextColor};
}
.wardley-stage-label {
fill: ${C.axisTextColor};
}
.wardley-grid line {
stroke: ${C.gridColor};
}
.wardley-node circle {
fill: ${C.componentFill};
stroke: ${C.componentStroke};
}
.wardley-node-label {
fill: ${C.componentLabelColor};
}
.wardley-link {
stroke: ${C.linkStroke};
}
.wardley-link--dashed {
stroke-dasharray: 4 4;
}
.wardley-link-label {
fill: ${C.axisTextColor};
}
.wardley-trend line {
stroke: ${C.evolutionStroke};
}
.wardley-annotation-line {
stroke: ${C.annotationStroke};
}
.wardley-annotation circle {
fill: ${C.annotationFill};
stroke: ${C.annotationStroke};
}
.wardley-annotation text {
fill: ${C.annotationTextColor};
}
.wardley-annotations-box rect {
fill: ${C.annotationFill};
stroke: ${C.annotationStroke};
}
.wardley-annotations-box text {
fill: ${C.annotationTextColor};
}
.wardley-pipeline-box {
stroke: ${C.componentStroke};
}
.wardley-notes text {
fill: ${C.axisTextColor};
}
`},"styles"),sc4={parser:b8u,db:yc4,renderer:pc4,styles:dc4}});var m8u={};ju(m8u,{diagram:()=>bg4});function sR(u){let B=u+1831565813|0;return B=Math.imul(B^B>>>15,B|1),B^=B+Math.imul(B^B>>>7,B|61),((B^B>>>14)>>>0)/4294967296}function j8u(u){let B=0;for(let E=0;E<u.length;E++){let A=u.charCodeAt(E);B=(B<<5)-B+A,B|=0}return B}function N8u(u,B){if(typeof u==="number"&&Number.isFinite(u)&&u!==0)return u;return j8u(B)}function i8u(u,B,E,A){let C=u/2,D=A??u*0.015,F=7,U=B/7,z=[];for(let f=0;f<=7;f++){let l=sR(E+f*17)*D*2-D;z.push({x:C+l,y:f*U})}let k=`M${z[0].x},${z[0].y}`;for(let f=0;f<z.length-1;f++){let l=z[f],b=z[f+1],M=(l.y+b.y)/2,Z=f%2===0?1:-1,J=D*1.5*Z*sR(E+f*31+7),w=l.x+J,K=M,Q=b.x-J;k+=` C${w},${K} ${Q},${M} ${b.x},${b.y}`}return k}function a8u(u,B,E,A){let C=B/2,D=A??B*0.015,F=7,U=u/7,z=[];for(let f=0;f<=7;f++){let l=sR(E+f*23)*D*2-D;z.push({x:f*U,y:C+l})}let k=`M${z[0].x},${z[0].y}`;for(let f=0;f<z.length-1;f++){let l=z[f],b=z[f+1],M=(l.x+b.x)/2,Z=f%2===0?1:-1,J=D*1.5*Z*sR(E+f*37+11),w=M,K=l.y+J,Q=M,G=b.y-J;k+=` C${w},${K} ${Q},${G} ${b.x},${b.y}`}return k}function V8u(u,B){let E=u/2,A=B*0.5,C=B,D=u*0.03;return[`M${E},${A}`,`C${E+D},${A+(C-A)*0.2}`,`${E-D*1.5},${A+(C-A)*0.55}`,`${E+D*0.5},${A+(C-A)*0.75}`,`C${E-D},${A+(C-A)*0.85}`,`${E+D*0.3},${A+(C-A)*0.95}`,`${E},${C}`].join(" ")}function h8u(u,B,E,A){return[`M${u-E},${B}`,`A${E},${A} 0 1,1 ${u+E},${B}`,`A${E},${A} 0 1,1 ${u-E},${B}`,"Z"].join(" ")}var P8u,oR,oc4,tc4,ec4,ug4,Bg4,Eg4,Mg,Ag4,Cg4,I8u,Dg4,Fg4,kU0=3,Ug4,zg4,kg4,fg4,lg4,bg4;var r8u=g(()=>{LB();E2();t3();s4();o4();Y4();l7();P8u=X(()=>({domains:new Map,transitions:[]}),"createDefaultData"),oR=P8u(),oc4=X(()=>oR.domains,"getDomains"),tc4=X(()=>oR.transitions,"getTransitions"),ec4=X((u)=>{if(!u)return;for(let B of u){let E=B.domain,A=(B.items??[]).map((C)=>({label:C.label}));oR.domains.set(E,{name:E,items:A})}},"setDomains"),ug4=X((u)=>{if(!u)return;oR.transitions=u.filter((B)=>{if(B.from===B.to)return z0.warn(`Cynefin: self-loop transition on domain "${B.from}" is not meaningful and will be skipped.`),!1;return!0}).map((B)=>({from:B.from,to:B.to,label:B.label||void 0}))},"setTransitions"),Bg4=X(()=>{return B1({...t4.cynefin,...F4().cynefin})},"getConfig"),Eg4=X(()=>{D3(),oR=P8u()},"clear"),Mg={getDomains:oc4,getTransitions:tc4,setDomains:ec4,setTransitions:ug4,getConfig:Bg4,clear:Eg4,setAccTitle:w3,getAccTitle:H3,setDiagramTitle:T3,getDiagramTitle:X3,getAccDescription:q3,setAccDescription:L3},Ag4=X((u)=>{D6(u,Mg),Mg.setDomains(u.domains),Mg.setTransitions(u.transitions)},"populate"),Cg4={parse:X(async(u)=>{let B=await X9("cynefin",u);z0.debug(B),Ag4(B)},"parse")};X(sR,"seededRandom");X(j8u,"hashString");X(N8u,"resolveSeed");X(i8u,"generateFoldPath");X(a8u,"generateHorizontalBoundary");X(V8u,"generateCliffPath");X(h8u,"generateConfusionPath");I8u={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"}},Dg4=X((u,B)=>{let E=u/2,A=B/2;return{complex:{cx:E/2,cy:A/2,x:0,y:0,w:E,h:A},complicated:{cx:E+E/2,cy:A/2,x:E,y:0,w:E,h:A},chaotic:{cx:E/2,cy:A+A/2,x:0,y:A,w:E,h:A},clear:{cx:E+E/2,cy:A+A/2,x:E,y:A,w:E,h:A},confusion:{cx:E,cy:A,x:E*0.7,y:A*0.7,w:E*0.6,h:A*0.6}}},"getDomainLayouts"),Fg4=X(()=>{let u=S7(),B=F4();return B1(u,B.themeVariables).cynefin},"getCynefinDomainColors"),Ug4=X((u,B,E,A)=>{let C=A.db,D=C.getDomains(),F=C.getTransitions(),U=C.getDiagramTitle(),z=C.getAccTitle(),k=C.getAccDescription(),f=C.getConfig(),l=Fg4();z0.debug("Rendering Cynefin diagram");let{width:b,height:M,padding:Z,showDomainDescriptions:J,boundaryAmplitude:w}=f,K=b+Z*2,Q=M+Z*2,G={complex:l.complexBg,complicated:l.complicatedBg,clear:l.clearBg,chaotic:l.chaoticBg,confusion:l.confusionBg},L=N1(B);if(y3(L,Q,K,f.useMaxWidth??!0),L.attr("viewBox",`0 0 ${K} ${Q}`),z)L.append("title").text(z);if(k)L.append("desc").text(k);let H=L.append("g").attr("transform",`translate(${Z}, ${Z})`),q=Dg4(b,M),x=N8u(f.seed,B),v=H.append("g").attr("class","cynefin-backgrounds"),W=["complex","complicated","chaotic","clear"];for(let N of W){let V=q[N];v.append("rect").attr("class","cynefinDomain").attr("x",V.x).attr("y",V.y).attr("width",V.w).attr("height",V.h).attr("fill",G[N]).attr("fill-opacity",0.4).attr("stroke","none")}let S=H.append("g").attr("class","cynefin-boundaries");S.append("path").attr("class","cynefinBoundary").attr("d",i8u(b,M,x,w)).attr("fill","none"),S.append("path").attr("class","cynefinBoundary").attr("d",a8u(b,M,x+100,w)).attr("fill","none"),S.append("path").attr("class","cynefinCliff").attr("d",V8u(b,M)).attr("fill","none");let T=b*0.15,R=M*0.15;H.append("path").attr("class","cynefinConfusion").attr("d",h8u(b/2,M/2,T,R)).attr("fill",G.confusion).attr("fill-opacity",0.5);let Y=H.append("g").attr("class","cynefin-labels");for(let N of W){let V=q[N];Y.append("text").attr("class","cynefinDomainLabel").attr("x",V.cx).attr("y",J?V.cy-30:V.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(N.charAt(0).toUpperCase()+N.slice(1))}if(Y.append("text").attr("class","cynefinDomainLabel").attr("x",b/2).attr("y",J?M/2-10:M/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),J){let N=H.append("g").attr("class","cynefin-subtitles");for(let V of W){let h=q[V],r=I8u[V];N.append("text").attr("class","cynefinSubtitle").attr("x",h.cx).attr("y",h.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(r.model),N.append("text").attr("class","cynefinSubtitle").attr("x",h.cx).attr("y",h.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(r.practice)}N.append("text").attr("class","cynefinSubtitle").attr("x",b/2).attr("y",M/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(I8u.confusion.practice)}let a=H.append("g").attr("class","cynefin-items"),I=26,O=10,i=["complex","complicated","chaotic","clear","confusion"];for(let N of i){let V=D.get(N);if(!V||V.items.length===0)continue;let h=q[N],r=N==="confusion",m=V.items,$=0;if(r&&V.items.length>kU0)$=V.items.length-kU0,m=V.items.slice(0,kU0);let y;if(r){let p=J?22:14;y=h.cy+p}else y=h.cy+(J?25:15);if([...m].forEach((p,e)=>{let _=y+e*(I+4),b0=a.append("g"),B0=b0.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(p.label),k0=p.label.length*7,f0=B0.node();if(f0&&typeof f0.getBBox==="function"){let q0=f0.getBBox();if(q0.width>0)k0=q0.width}let D0=k0+O*2,P0=h.cx-D0/2;b0.attr("transform",`translate(${P0}, ${_})`),b0.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",D0).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",G[N]).attr("fill-opacity",0.95),B0.attr("x",D0/2).attr("y",I/2)}),$>0){let p=y+m.length*(I+4),e=`+${$} more`,_=a.append("g"),b0=_.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",I/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(e),B0=e.length*7,k0=b0.node();if(k0&&typeof k0.getBBox==="function"){let P0=k0.getBBox();if(P0.width>0)B0=P0.width}let f0=B0+O*2,D0=h.cx-f0/2;_.attr("transform",`translate(${D0}, ${p})`),_.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",f0).attr("height",I).attr("rx",4).attr("ry",4).attr("fill",G[N]).attr("fill-opacity",0.6),b0.attr("x",f0/2).attr("y",I/2)}}if(F.length>0){let N=L.select("defs").empty()?L.append("defs"):L.select("defs"),V=`cynefin-arrow-${B}`;N.append("marker").attr("id",V).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=H.append("g").attr("class","cynefin-arrows");F.forEach((r)=>{let m=q[r.from],$=q[r.to];if(!m||!$)return;if(r.from===r.to){z0.warn(`Cynefin renderer: skipping self-loop on domain "${r.from}"`);return}let{cx:y,cy:p}=m,e=$.cx,_=$.cy,b0=(y+e)/2,B0=(p+_)/2,k0=e-y,f0=_-p,D0=Math.sqrt(k0*k0+f0*f0),P0=D0*0.15,q0=-f0/D0,m0=k0/D0,a0=b0+q0*P0,_0=B0+m0*P0;if(h.append("path").attr("class","cynefinArrowLine").attr("d",`M${y},${p} Q${a0},${_0} ${e},${_}`).attr("fill","none").attr("marker-end",`url(#${V})`),r.label)h.append("text").attr("class","cynefinArrowLabel").attr("x",a0).attr("y",_0-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(r.label)})}if(U)H.append("text").attr("class","cynefinTitle").attr("x",b/2).attr("y",-Z/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(U)},"draw"),zg4={draw:Ug4},kg4=X(()=>{let u=S7(),B=F4();return B1(u,B.themeVariables).cynefin},"getCynefinTheme"),fg4=X(()=>{let u=kg4();return`
.cynefinDomain {
stroke: none;
}
.cynefinDomainLabel {
font-size: ${u.domainFontSize}px;
font-weight: bold;
fill: ${u.labelColor};
}
.cynefinSubtitle {
font-size: ${u.itemFontSize-1}px;
fill: ${u.textColor};
font-style: italic;
}
.cynefinItem {
fill-opacity: 0.95;
stroke: ${u.boundaryColor};
stroke-width: 1;
}
.cynefinItemText {
font-size: ${u.itemFontSize}px;
fill: ${u.textColor};
}
.cynefinItemOverflow {
fill-opacity: 0.6;
stroke: ${u.boundaryColor};
stroke-width: 1;
stroke-dasharray: 3 2;
}
.cynefinBoundary {
stroke: ${u.boundaryColor};
stroke-width: ${u.boundaryWidth};
stroke-dasharray: 6 3;
}
.cynefinCliff {
stroke: ${u.cliffColor};
stroke-width: ${u.cliffWidth};
}
.cynefinConfusion {
stroke: ${u.boundaryColor};
stroke-width: 1.5;
stroke-dasharray: 4 2;
}
.cynefinArrowLine {
stroke: ${u.arrowColor};
stroke-width: ${u.arrowWidth};
fill: none;
}
.cynefinArrowHead {
fill: ${u.arrowColor};
stroke: none;
}
.cynefinArrowLabel {
font-size: ${u.itemFontSize-1}px;
fill: ${u.textColor};
}
.cynefinTitle {
font-size: ${u.domainFontSize+2}px;
font-weight: bold;
fill: ${u.labelColor};
}
`},"styles"),lg4=fg4,bg4={parser:Cg4,db:Mg,renderer:zg4,styles:lg4}});var fU0="",lU0="",bU0="",MU0,Zg,Tb,fq,Mg4,y8u,c8u,Zg4,Jg4,wg4,Kg4,Qg4,Gg4,Hg4,Lg4,qg4,U6,Z7,Xg4,xg4,vg4,g8u,Sg4,Wg4,Z6,_8u,$w,Yg4,Rg4,ZU0,Ob,xA,Tg4,$8u,Og4,Ib;var tR=g(()=>{E2();s4();o4();Y4();MU0=[],Zg=new Map,Tb=X((u)=>{return C3(u,$0())},"sanitizeText"),fq=X((u)=>{switch(u.type){case"terminal":return{...u,value:Tb(u.value)};case"nonterminal":return{...u,name:Tb(u.name)};case"sequence":return{...u,elements:u.elements.map(fq)};case"choice":return{...u,alternatives:u.alternatives.map(fq)};case"optional":return{...u,element:fq(u.element)};case"repetition":return{...u,element:fq(u.element),separator:u.separator?fq(u.separator):void 0};case"special":return{...u,text:Tb(u.text)}}},"sanitizeAstNode"),Mg4=X(()=>{fU0="",lU0="",bU0="",MU0.length=0,Zg.clear(),D3(),z0.debug("[Railroad] Database cleared")},"clear"),y8u=X((u)=>{fU0=Tb(u),z0.debug("[Railroad] Title set:",u)},"setTitle"),c8u=X(()=>{return fU0},"getTitle"),Zg4=X((u)=>{let B={...u,name:Tb(u.name),definition:fq(u.definition),comment:u.comment?Tb(u.comment):void 0};if(z0.debug("[Railroad] Adding rule:",B.name),Zg.has(B.name))z0.warn(`[Railroad] Rule '${B.name}' is already defined. Overwriting.`);MU0.push(B),Zg.set(B.name,B)},"addRule"),Jg4=X(()=>{return MU0},"getRules"),wg4=X((u)=>{return Zg.get(u)},"getRule"),Kg4=X((u)=>{lU0=Tb(u).replace(/^\s+/g,""),z0.debug("[Railroad] Accessibility title set:",u)},"setAccTitle"),Qg4=X(()=>{return lU0},"getAccTitle"),Gg4=X((u)=>{bU0=Tb(u).replace(/\n\s+/g,`
`),z0.debug("[Railroad] Accessibility description set:",u)},"setAccDescription"),Hg4=X(()=>{return bU0},"getAccDescription"),Lg4=y8u,qg4=c8u,U6={clear:Mg4,setTitle:y8u,getTitle:c8u,addRule:Zg4,getRules:Jg4,getRule:wg4,setAccTitle:Kg4,getAccTitle:Qg4,setAccDescription:Gg4,getAccDescription:Hg4,setDiagramTitle:Lg4,getDiagramTitle:qg4},Z7={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},Xg4=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,xg4=/^[\w "',.-]+$/,vg4=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"]),g8u=X((u)=>{if(!u)return!1;return Object.keys(u).every((B)=>B==="railroad"||vg4.has(B))},"isRailroadStyleOptions"),Sg4=X((u)=>{if(!u)return{};if("railroad"in u&&u.railroad)return u.railroad;return g8u(u)?u:{}},"extractRailroadOverrides"),Wg4=X((u)=>{if(!u||g8u(u))return{};let{railroad:B,svgId:E,theme:A,look:C,...D}=u;return D},"extractThemeOverrides"),Z6=X((u,B)=>{if(typeof u!=="string")return B;let E=u.trim();return Xg4.test(E)?E:B},"sanitizeColorValue"),_8u=X((u,B)=>{if(typeof u!=="string")return B;let E=u.trim();return xg4.test(E)?E:B},"sanitizeFontFamilyValue"),$w=X((u,B)=>{let E=typeof u==="number"?u:typeof u==="string"?Number.parseFloat(u):Number.NaN;return Number.isFinite(E)&&E>=0?E:B},"sanitizeNumberValue"),Yg4=X((u)=>{let B=typeof u==="number"?u:typeof u==="string"?Number.parseFloat(u):Number.NaN;return Number.isFinite(B)&&B>0?B:void 0},"parseThemeFontSize"),Rg4=X((u)=>{let B=_8u(u.fontFamily,Z7.fontFamily),E=Yg4(u.fontSize)??Z7.fontSize;return{...Z7,fontFamily:B,fontSize:E,terminalFill:Z6(u.secondBkg??u.secondaryColor,Z7.terminalFill),terminalStroke:Z6(u.secondaryBorderColor??u.lineColor,Z7.terminalStroke),terminalTextColor:Z6(u.secondaryTextColor??u.textColor,Z7.terminalTextColor),nonTerminalFill:Z6(u.mainBkg??u.background,Z7.nonTerminalFill),nonTerminalStroke:Z6(u.primaryBorderColor??u.lineColor,Z7.nonTerminalStroke),nonTerminalTextColor:Z6(u.primaryTextColor??u.textColor,Z7.nonTerminalTextColor),lineColor:Z6(u.lineColor,Z7.lineColor),markerFill:Z6(u.lineColor,Z7.markerFill),commentFill:Z6(u.labelBackground??u.tertiaryColor,Z7.commentFill),commentStroke:Z6(u.tertiaryBorderColor??u.lineColor,Z7.commentStroke),commentTextColor:Z6(u.tertiaryTextColor??u.textColor,Z7.commentTextColor),specialFill:Z6(u.tertiaryColor??u.secondaryColor,Z7.specialFill),specialStroke:Z6(u.tertiaryBorderColor??u.secondaryBorderColor,Z7.specialStroke),ruleNameColor:Z6(u.titleColor??u.textColor,Z7.ruleNameColor)}},"buildThemeDefaults"),ZU0=X((u)=>{let B=F4(),E={...S7(),...B.themeVariables??{},...Wg4(u)},A=Rg4(E),C={...B.railroad??{},...Sg4(u)};return{compactMode:C.compactMode??A.compactMode,padding:$w(C.padding,A.padding),verticalSeparation:$w(C.verticalSeparation,A.verticalSeparation),horizontalSeparation:$w(C.horizontalSeparation,A.horizontalSeparation),arcRadius:$w(C.arcRadius,A.arcRadius),fontSize:$w(C.fontSize,A.fontSize),fontFamily:_8u(C.fontFamily,A.fontFamily),terminalFill:Z6(C.terminalFill,A.terminalFill),terminalStroke:Z6(C.terminalStroke,A.terminalStroke),terminalTextColor:Z6(C.terminalTextColor,A.terminalTextColor),nonTerminalFill:Z6(C.nonTerminalFill,A.nonTerminalFill),nonTerminalStroke:Z6(C.nonTerminalStroke,A.nonTerminalStroke),nonTerminalTextColor:Z6(C.nonTerminalTextColor,A.nonTerminalTextColor),lineColor:Z6(C.lineColor,A.lineColor),strokeWidth:$w(C.strokeWidth,A.strokeWidth),markerFill:Z6(C.markerFill,A.markerFill),commentFill:Z6(C.commentFill,A.commentFill),commentStroke:Z6(C.commentStroke,A.commentStroke),commentTextColor:Z6(C.commentTextColor,A.commentTextColor),specialFill:Z6(C.specialFill,A.specialFill),specialStroke:Z6(C.specialStroke,A.specialStroke),ruleNameColor:Z6(C.ruleNameColor,A.ruleNameColor),showMarkers:C.showMarkers??A.showMarkers,markerRadius:$w(C.markerRadius,A.markerRadius)}},"buildRailroadStyleOptions"),Ob=X((u)=>{let{fontFamily:B,fontSize:E,terminalFill:A,terminalStroke:C,terminalTextColor:D,nonTerminalFill:F,nonTerminalStroke:U,nonTerminalTextColor:z,lineColor:k,strokeWidth:f,markerFill:l,commentFill:b,commentStroke:M,commentTextColor:Z,specialFill:J,specialStroke:w,ruleNameColor:K}=ZU0(u);return`
.railroad-diagram {
font-family: ${B};
font-size: ${E}px;
}
.railroad-terminal rect {
fill: ${A};
stroke: ${C};
stroke-width: ${f}px;
}
.railroad-terminal text {
fill: ${D};
font-family: ${B};
font-size: ${E}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-nonterminal rect {
fill: ${F};
stroke: ${U};
stroke-width: ${f}px;
}
.railroad-nonterminal text {
fill: ${z};
font-family: ${B};
font-size: ${E}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-line {
stroke: ${k};
stroke-width: ${f}px;
fill: none;
}
.railroad-start circle,
.railroad-end circle {
fill: ${l};
}
.railroad-comment ellipse {
fill: ${b};
stroke: ${M};
stroke-width: ${f}px;
}
.railroad-comment text {
fill: ${Z};
font-style: italic;
font-family: ${B};
font-size: ${E}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-special rect {
fill: ${J};
stroke: ${w};
stroke-width: ${f}px;
stroke-dasharray: 5,3;
}
.railroad-special text {
fill: ${z};
font-family: ${B};
font-size: ${E}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-rule-name {
font-weight: bold;
fill: ${K};
font-family: ${B};
font-size: ${E}px;
}
.railroad-group {
/* Grouping container, no specific styles */
}
`},"getStyles"),xA=class{constructor(){this.d=""}static{X(this,"PathBuilder")}moveTo(u,B){return this.d+=`M ${u} ${B} `,this}lineTo(u,B){return this.d+=`L ${u} ${B} `,this}horizontalTo(u){return this.d+=`H ${u} `,this}verticalTo(u){return this.d+=`V ${u} `,this}arcTo(u,B,E,A,C,D,F){return this.d+=`A ${u} ${B} ${E} ${A?1:0} ${C?1:0} ${D} ${F} `,this}build(){return this.d.trim()}},Tg4=class{constructor(u,B=ZU0()){this.textCache=new Map,this.svg=u,this.config=B}static{X(this,"RailroadRenderer")}measureText(u){if(this.textCache.has(u))return this.textCache.get(u);let B=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(u),E=B.node().getBBox(),A={width:E.width,height:E.height};return B.remove(),this.textCache.set(u,A),A}renderTerminal(u,B){let E=this.measureText(B),A=E.width+this.config.padding*2,C=E.height+this.config.padding*2,D=u.append("g").attr("class","railroad-terminal");return D.append("rect").attr("x",0).attr("y",0).attr("width",A).attr("height",C).attr("rx",10).attr("ry",10),D.append("text").attr("x",A/2).attr("y",C/2).text(B),{element:D.node(),dimensions:{width:A,height:C,up:C/2,down:C/2}}}renderNonTerminal(u,B){let E=this.measureText(B),A=E.width+this.config.padding*2,C=E.height+this.config.padding*2,D=u.append("g").attr("class","railroad-nonterminal");return D.append("rect").attr("x",0).attr("y",0).attr("width",A).attr("height",C),D.append("text").attr("x",A/2).attr("y",C/2).text(B),{element:D.node(),dimensions:{width:A,height:C,up:C/2,down:C/2}}}renderSequence(u,B){let E=B.map((z)=>this.renderExpression(u,z)),A=0,C=0,D=0;for(let z of E)A+=z.dimensions.width,C=Math.max(C,z.dimensions.up),D=Math.max(D,z.dimensions.down);A+=(E.length-1)*this.config.horizontalSeparation;let F=u.append("g").attr("class","railroad-sequence"),U=0;for(let z=0;z<E.length;z++){let k=E[z],f=C-k.dimensions.up;if(F.node().appendChild(k.element).setAttribute("transform",`translate(${U}, ${f})`),z<E.length-1){let b=U+k.dimensions.width,M=b+this.config.horizontalSeparation,Z=C;F.append("path").attr("class","railroad-line").attr("d",new xA().moveTo(b,Z).lineTo(M,Z).build())}U+=k.dimensions.width+this.config.horizontalSeparation}return{element:F.node(),dimensions:{width:A,height:C+D,up:C,down:D}}}renderChoice(u,B){let E=B.map((l)=>this.renderExpression(u,l)),A=0,C=0;for(let l of E)A=Math.max(A,l.dimensions.width),C+=l.dimensions.height;C+=(E.length-1)*this.config.verticalSeparation;let D=this.config.arcRadius,F=D*4,U=A+F,z=u.append("g").attr("class","railroad-choice"),k=0,f=C/2;for(let l of E){let b=k,M=b+l.dimensions.up,Z=D*2+(A-l.dimensions.width)/2;z.node().appendChild(l.element).setAttribute("transform",`translate(${Z}, ${b})`);let w=new xA,K=M>f;if(M===f)w.moveTo(0,f).lineTo(Z,M);else w.moveTo(0,f).arcTo(D,D,0,!1,K,D,f+(K?D:-D)).lineTo(D,M-(K?D:-D)).arcTo(D,D,0,!1,!K,D*2,M).lineTo(Z,M);z.append("path").attr("class","railroad-line").attr("d",w.build());let Q=new xA,G=Z+l.dimensions.width,L=U-D*2;if(M===f)Q.moveTo(G,M).lineTo(U,f);else Q.moveTo(G,M).lineTo(L,M).arcTo(D,D,0,!1,!K,U-D,M+(K?-D:D)).lineTo(U-D,f+(K?D:-D)).arcTo(D,D,0,!1,K,U,f);z.append("path").attr("class","railroad-line").attr("d",Q.build()),k+=l.dimensions.height+this.config.verticalSeparation}return{element:z.node(),dimensions:{width:U,height:C,up:f,down:C-f}}}renderOptional(u,B){let E=this.renderExpression(u,B),A=this.config.arcRadius,C=A*2,D=E.dimensions.width+A*4,F=E.dimensions.height+C,U=u.append("g").attr("class","railroad-optional"),z=A*2,k=C;U.node().appendChild(E.element).setAttribute("transform",`translate(${z}, ${k})`);let l=k+E.dimensions.up,b=new xA().moveTo(0,l).lineTo(A*2,l);U.append("path").attr("class","railroad-line").attr("d",b.build());let M=new xA().moveTo(z+E.dimensions.width,l).lineTo(D,l);U.append("path").attr("class","railroad-line").attr("d",M.build());let Z=new xA().moveTo(0,l).arcTo(A,A,0,!1,!1,A,l-A).lineTo(A,A).arcTo(A,A,0,!1,!0,A*2,0).lineTo(D-A*2,0).arcTo(A,A,0,!1,!0,D-A,A).lineTo(D-A,l-A).arcTo(A,A,0,!1,!1,D,l);return U.append("path").attr("class","railroad-line").attr("d",Z.build()),{element:U.node(),dimensions:{width:D,height:F,up:l,down:F-l}}}renderRepetition(u,B,E){let A=this.renderExpression(u,B),C=this.config.arcRadius,D=C*2,F=A.dimensions.width+C*4,U=E===0,z=A.dimensions.height+D+(U?D:0),k=u.append("g").attr("class","railroad-repetition"),f=C*2,l=U?D:0;k.node().appendChild(A.element).setAttribute("transform",`translate(${f}, ${l})`);let M=l+A.dimensions.up;k.append("path").attr("class","railroad-line").attr("d",new xA().moveTo(0,M).lineTo(C*2,M).build()),k.append("path").attr("class","railroad-line").attr("d",new xA().moveTo(f+A.dimensions.width,M).lineTo(F,M).build());let Z=l+A.dimensions.height+C,J=new xA().moveTo(f+A.dimensions.width,M).arcTo(C,C,0,!1,!0,f+A.dimensions.width+C,M+C).lineTo(f+A.dimensions.width+C,Z).arcTo(C,C,0,!1,!0,f+A.dimensions.width,Z+C).lineTo(C*2,Z+C).arcTo(C,C,0,!1,!0,C,Z).lineTo(C,M+C).arcTo(C,C,0,!1,!0,C*2,M);if(k.append("path").attr("class","railroad-line").attr("d",J.build()),U){let w=new xA().moveTo(0,M).arcTo(C,C,0,!1,!1,C,M-C).lineTo(C,C).arcTo(C,C,0,!1,!0,C*2,0).lineTo(F-C*2,0).arcTo(C,C,0,!1,!0,F-C,C).lineTo(F-C,M-C).arcTo(C,C,0,!1,!1,F,M);k.append("path").attr("class","railroad-line").attr("d",w.build())}return{element:k.node(),dimensions:{width:F,height:z,up:M,down:z-M}}}renderSpecial(u,B){let E=this.measureText("? "+B+" ?"),A=E.width+this.config.padding*2,C=E.height+this.config.padding*2,D=u.append("g").attr("class","railroad-special");return D.append("rect").attr("x",0).attr("y",0).attr("width",A).attr("height",C),D.append("text").attr("x",A/2).attr("y",C/2).text("? "+B+" ?"),{element:D.node(),dimensions:{width:A,height:C,up:C/2,down:C/2}}}renderExpression(u,B){switch(B.type){case"terminal":return this.renderTerminal(u,B.value);case"nonterminal":return this.renderNonTerminal(u,B.name);case"sequence":return this.renderSequence(u,B.elements);case"choice":return this.renderChoice(u,B.alternatives);case"optional":return this.renderOptional(u,B.element);case"repetition":return this.renderRepetition(u,B.element,B.min);case"special":return this.renderSpecial(u,B.text);default:throw Error(`Unknown node type: ${B.type}`)}}renderRule(u,B){let E=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${B})`),A=u.name+" =",C=this.measureText(A).width+20,D=C+20,F=E.append("g"),U=this.renderExpression(F,u.definition),z=Math.max(20,U.dimensions.up),k=z-U.dimensions.up;return F.attr("transform",`translate(${D}, ${k})`),E.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",z).text(A),E.append("g").attr("class","railroad-start").append("circle").attr("cx",C).attr("cy",z).attr("r",this.config.markerRadius),E.append("g").attr("class","railroad-end").append("circle").attr("cx",D+U.dimensions.width+10).attr("cy",z).attr("r",this.config.markerRadius),E.append("path").attr("class","railroad-line").attr("d",new xA().moveTo(C+this.config.markerRadius,z).lineTo(D,z).build()),E.append("path").attr("class","railroad-line").attr("d",new xA().moveTo(D+U.dimensions.width,z).lineTo(D+U.dimensions.width+10-this.config.markerRadius,z).build()),{height:Math.max(40,k+U.dimensions.height+this.config.padding*2),width:D+U.dimensions.width+10+this.config.markerRadius}}renderDiagram(u){let B=this.config.padding,E=0;for(let A of u){let C=this.renderRule(A,B);B+=C.height+this.config.verticalSeparation,E=Math.max(E,C.width)}return{width:E+this.config.padding*2,height:B+this.config.padding}}},$8u=X((u,B,E)=>{y3(u,B.height,B.width,E),u.attr("viewBox",`0 0 ${B.width} ${B.height}`)},"configureRailroadSvgSize"),Og4=X((u,B,E)=>{z0.debug(`[Railroad] Rendering diagram
`+u);try{let A=N1(B);A.attr("class","railroad-diagram");let D=F4().railroad?.useMaxWidth??!0,F=U6.getRules();if(z0.debug(`[Railroad] Rendering ${F.length} rules`),F.length===0){z0.warn("[Railroad] No rules to render"),$8u(A,{height:100,width:200},D);return}let z=new Tg4(A,ZU0()).renderDiagram(F);$8u(A,z,D),z0.debug("[Railroad] Render complete")}catch(A){throw z0.error("[Railroad] Render error:",A),A}},"draw"),Ib={draw:Og4}});var p8u={};ju(p8u,{diagram:()=>n8u,default:()=>ig4});var Ig4,lq,Pg4,jg4,Ng4,n8u,ig4;var d8u=g(()=>{tR();LB();E2();s4();o4();Y4();l7();Ig4=NL().Railroad.parser.LangiumParser,lq=X((u)=>{switch(u.$type){case"RailroadTerminalExpr":return{type:"terminal",value:u.value};case"RailroadNonTerminalExpr":return{type:"nonterminal",name:u.name};case"RailroadSpecialExpr":return{type:"special",text:u.text};case"RailroadSequenceExpr":{let B=u.elements.map(lq);return B.length===1?B[0]:{type:"sequence",elements:B}}case"RailroadChoiceExpr":{let B=u.alternatives.map(lq);return B.length===1?B[0]:{type:"choice",alternatives:B}}case"RailroadOptionalExpr":return{type:"optional",element:lq(u.element)};case"RailroadOneOrMoreExpr":return{type:"repetition",element:lq(u.element),min:1,max:1/0};case"RailroadZeroOrMoreExpr":return{type:"repetition",element:lq(u.element),min:0,max:1/0};default:throw Error(`Unsupported railroad expression: ${u.$type}`)}},"transformExpression"),Pg4=X((u)=>{return{name:u.name,definition:lq(u.definition)}},"transformRule"),jg4=X((u)=>{if(D6(u,U6),u.title)U6.setTitle(u.title);u.rules.map((B)=>U6.addRule(Pg4(B)))},"populateDb"),Ng4={parse:X((u)=>{U6.clear(),z0.debug("[Railroad Parser] Starting Langium parse");let B=Ig4.parse(u);if(B.lexerErrors.length>0||B.parserErrors.length>0)throw new Xk(B);let E=B.value;z0.debug("[Railroad Parser] Parsed rules:",E.rules.length),jg4(E),z0.debug("[Railroad Parser] Parse complete")},"parse"),parser:{yy:U6}},n8u={parser:Ng4,db:U6,renderer:Ib,styles:Ob},ig4=n8u});var o8u={};ju(o8u,{diagram:()=>cg4});var ag4,Jg,Vg4,s8u,hg4,mg4,rg4,$g4,yg4,cg4;var t8u=g(()=>{tR();LB();E2();s4();o4();Y4();l7();ag4=iL().RailroadEbnf.parser.LangiumParser,Jg=X((u)=>{let B=u.alternatives.map(Vg4);if(B.length===1)return B[0];return{type:"choice",alternatives:B}},"transformChoice"),Vg4=X((u)=>{let B=u.elements.map(mg4);if(B.length===1)return B[0];return{type:"sequence",elements:B}},"transformSequence"),s8u=X((u)=>{switch(u.$type){case"EbnfTerminal":return{type:"terminal",value:u.value};case"EbnfNonTerminal":return{type:"nonterminal",name:u.name};case"EbnfSpecial":return{type:"special",text:u.text};case"EbnfGroup":return Jg(u.element);case"EbnfOptional":return{type:"optional",element:Jg(u.element)};case"EbnfRepetition":return{type:"repetition",element:Jg(u.element),min:0,max:1/0};default:throw Error(`Unsupported EBNF primary node: ${u.$type}`)}},"transformPrimary"),hg4=X((u,B)=>{switch(B.$type){case"EbnfOptionalPostfix":return{type:"optional",element:u};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:u,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:u,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[u,{type:"terminal",value:"-"},s8u(B.except)]};default:throw Error(`Unsupported EBNF postfix node: ${B.$type}`)}},"transformPostfix"),mg4=X((u)=>{return u.postfixes.reduce((B,E)=>{return hg4(B,E)},s8u(u.base))},"transformTerm"),rg4=X((u)=>{return{name:u.name,definition:Jg(u.definition)}},"transformRule"),$g4=X((u)=>{if(D6(u,U6),u.title)U6.setTitle(u.title);u.rules.map((B)=>U6.addRule(rg4(B)))},"populateDb"),yg4={parse:X((u)=>{U6.clear(),z0.debug("[EBNF Parser] Starting Langium parse");let B=ag4.parse(u);if(B.lexerErrors.length>0||B.parserErrors.length>0)throw new Xk(B);let E=B.value;z0.debug("[EBNF Parser] Parsed rules:",E.rules.length),$g4(E),z0.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:U6}},cg4={parser:yg4,db:U6,renderer:Ib,styles:Ob}});var e8u={};ju(e8u,{diagram:()=>eg4});var gg4,JU0,_g4,ng4,pg4,dg4,sg4,og4,tg4,eg4;var uEu=g(()=>{tR();LB();E2();s4();o4();Y4();l7();gg4=aL().RailroadAbnf.parser.LangiumParser,JU0=X((u)=>{let B=u.alternatives.map(_g4);if(B.length===1)return B[0];return{type:"choice",alternatives:B}},"transformAlternation"),_g4=X((u)=>{let B=u.elements.map(pg4);if(B.length===1)return B[0];return{type:"sequence",elements:B}},"transformConcatenation"),ng4=X((u)=>{if(u.includes("*")){let[E,A]=u.split("*"),C=E?parseInt(E,10):0,D=A?parseInt(A,10):1/0;return{min:C,max:D}}let B=parseInt(u,10);return{min:B,max:B}},"parseRepeat"),pg4=X((u)=>{let B=dg4(u.primary);if(!u.repeat)return B;let{min:E,max:A}=ng4(u.repeat);if(E===0&&A===1)return{type:"optional",element:B};return{type:"repetition",element:B,min:E,max:A}},"transformElement"),dg4=X((u)=>{switch(u.$type){case"AbnfStringLiteral":return{type:"terminal",value:u.value};case"AbnfNumVal":return{type:"terminal",value:u.value};case"AbnfRuleName":return{type:"nonterminal",name:u.name};case"AbnfGroup":return JU0(u.element);case"AbnfOptionalGroup":return{type:"optional",element:JU0(u.element)};default:throw Error(`Unsupported ABNF primary node: ${u.$type}`)}},"transformPrimary"),sg4=X((u)=>{return{name:u.name,definition:JU0(u.definition)}},"transformRule"),og4=X((u)=>{if(D6(u,U6),u.title)U6.setTitle(u.title);u.rules.map((B)=>U6.addRule(sg4(B)))},"populateDb"),tg4={parse:X((u)=>{U6.clear(),z0.debug("[ABNF Parser] Starting Langium parse");let B=gg4.parse(u);if(B.lexerErrors.length>0||B.parserErrors.length>0)throw new Xk(B);let E=B.value;z0.debug("[ABNF Parser] Parsed rules:",E.rules.length),og4(E),z0.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:U6}},eg4={parser:tg4,db:U6,renderer:Ib,styles:Ob}});var AEu={};ju(AEu,{diagram:()=>z_4});var u_4,EEu,B_4,E_4,BEu,A_4,C_4,D_4,F_4,U_4,z_4;var CEu=g(()=>{tR();LB();E2();s4();o4();Y4();l7();u_4=VL().RailroadPeg.parser.LangiumParser,EEu=X((u)=>{let B=u.alternatives.map(B_4);if(B.length===1)return B[0];return{type:"choice",alternatives:B}},"transformOrderedChoice"),B_4=X((u)=>{let B=u.elements.map(E_4);if(B.length===1)return B[0];return{type:"sequence",elements:B}},"transformSequence"),E_4=X((u)=>{let B=A_4(u.suffix);if(!u.operator)return B;return{type:"special",text:u.operator==="&"?`&${BEu(B)}`:`!${BEu(B)}`}},"transformPrefix"),BEu=X((u)=>{switch(u.type){case"terminal":return`"${u.value}"`;case"nonterminal":return u.name;case"special":return u.text;default:return"(...)"}},"nodeToLabel"),A_4=X((u)=>{let B=C_4(u.primary);if(!u.operator)return B;switch(u.operator){case"?":return{type:"optional",element:B};case"*":return{type:"repetition",element:B,min:0,max:1/0};case"+":return{type:"repetition",element:B,min:1,max:1/0};default:throw Error(`Unsupported PEG suffix operator: ${u.operator}`)}},"transformSuffix"),C_4=X((u)=>{switch(u.$type){case"PegLiteral":return{type:"terminal",value:u.value};case"PegIdentifier":return{type:"nonterminal",name:u.name};case"PegGroup":return EEu(u.element);case"PegAny":return{type:"special",text:u.dot};default:throw Error(`Unsupported PEG primary node: ${u.$type}`)}},"transformPrimary"),D_4=X((u)=>{return{name:u.name,definition:EEu(u.definition)}},"transformRule"),F_4=X((u)=>{if(D6(u,U6),u.title)U6.setTitle(u.title);u.rules.map((B)=>U6.addRule(D_4(B)))},"populateDb"),U_4={parse:X((u)=>{U6.clear(),z0.debug("[PEG Parser] Starting Langium parse");let B=u_4.parse(u);if(B.lexerErrors.length>0||B.parserErrors.length>0)throw new Xk(B);let E=B.value;z0.debug("[PEG Parser] Parsed rules:",E.rules.length),F_4(E),z0.debug("[PEG Parser] Parse complete")},"parse"),parser:{yy:U6}},z_4={parser:U_4,db:U6,renderer:Ib,styles:Ob}});function pEu(u,B){if(u.attr("role",np4),B!=="")u.attr("aria-roledescription",B)}function dEu(u,B,E,A){if(u.insert===void 0)return;if(E){let C=`chart-desc-${A}`;u.attr("aria-describedby",C),u.insert("desc",":first-child").attr("id",C).text(E)}if(B){let C=`chart-title-${A}`;u.attr("aria-labelledby",C),u.insert("title",":first-child").attr("id",C).text(B)}}function sEu(u){let B=u.match(St);if(!B)return{text:u,metadata:{}};let E=B[1],A=E?B[2].split(`
`).map((F)=>F.startsWith(E)?F.slice(E.length):F).join(`
`):B[2],C=gf(A,{schema:cf})??{};C=typeof C==="object"&&!Array.isArray(C)?C:{};let D={};if(C.displayMode)D.displayMode=C.displayMode.toString();if(C.title)D.title=C.title.toString();if(C.config)D.config=C.config;return{text:u.slice(B[0].length),metadata:D}}function GU0(u){let B=sp4(u),E=op4(B),A=tp4(E.text),C=B1(E.config,A.directive);return u=dp4(A.text),{code:u,title:E.title,config:C}}function oEu(u){let B=new TextEncoder().encode(u),E=Array.from(B,(A)=>String.fromCodePoint(A)).join("");return btoa(E)}function HU0(u){let B=GU0(u);return Bv(),nH0(B.config??{}),B}async function tEu(u,B){Kg();try{let{code:E,config:A}=HU0(u);return{diagramType:(await uAu(E)).type,config:A}}catch(E){if(B?.suppressErrors)return!1;throw E}}function QU0(u,B){return u.append("iframe").attr("id",B).attr("style","width: 100%; height: 100%;").attr("sandbox","")}function eEu(u={}){let B=E9({},u);if(B?.fontFamily&&!B.themeVariables?.fontFamily){if(!B.themeVariables)B.themeVariables={};B.themeVariables.fontFamily=B.fontFamily}if(cH0(B),B?.theme&&B.theme in CF)B.themeVariables=CF[B.theme].getThemeVariables(B.themeVariables);else if(B)B.themeVariables=CF.default.getThemeVariables(B.themeVariables);let E=typeof B==="object"?yH0(B):xt();Ix(E.logLevel),Kg()}function BAu(u,B,E,A){pEu(B,u),dEu(B,E,A,B.attr("id"))}var kEu="c4",k_4,f_4,l_4,b_4,fEu="flowchart",M_4,Z_4,J_4,w_4,lEu="flowchart-v2",K_4,Q_4,G_4,H_4,bEu="swimlane",L_4,q_4,X_4,x_4,MEu="er",v_4,S_4,W_4,Y_4,ZEu="gitGraph",R_4,T_4,O_4,I_4,JEu="gantt",P_4,j_4,N_4,i_4,wEu="info",a_4,V_4,h_4,KEu="pie",m_4,r_4,$_4,QEu="quadrantChart",y_4,c_4,g_4,__4,GEu="xychart",n_4,p_4,d_4,s_4,HEu="requirement",o_4,t_4,e_4,un4,LEu="sequence",Bn4,En4,An4,Cn4,qEu="class",Dn4,Fn4,Un4,zn4,XEu="classDiagram",kn4,fn4,ln4,bn4,xEu="state",Mn4,Zn4,Jn4,wn4,vEu="stateDiagram",Kn4,Qn4,Gn4,Hn4,SEu="journey",Ln4,qn4,Xn4,xn4,vn4,WEu,Sn4,Wn4,Yn4,YEu="flowchart-elk",Rn4,Tn4,On4,In4,REu="timeline",Pn4,jn4,Nn4,in4,TEu="mindmap",an4,Vn4,hn4,mn4,OEu="kanban",rn4,$n4,yn4,cn4,IEu="sankey",gn4,_n4,nn4,pn4,PEu="packet",dn4,sn4,on4,jEu="radar",tn4,en4,up4,NEu="block",Bp4,Ep4,Ap4,Cp4,iEu="treeView",Dp4,Fp4,Up4,zp4,aEu="architecture",kp4,fp4,lp4,bp4,VEu="eventmodeling",Mp4,Zp4,Jp4,wp4,hEu="ishikawa",Kp4,Qp4,Gp4,mEu="venn",Hp4,Lp4,qp4,Xp4,rEu="treemap",xp4,vp4,Sp4,$Eu="wardley",Wp4,Yp4,Rp4,Tp4,yEu="cynefin",Op4,Ip4,Pp4,cEu="railroad",jp4,Np4,ip4,gEu="railroadEbnf",ap4,Vp4,hp4,_Eu="railroadAbnf",mp4,rp4,$p4,nEu="railroadPeg",yp4,cp4,gp4,DEu=!1,Kg,_p4,np4="graphics-document document",KU0,FEu,pp4,dp4,sp4,op4,tp4,ep4=50000,ud4="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",Bd4="sandbox",Ed4="loose",Ad4="http://www.w3.org/2000/svg",Cd4="http://www.w3.org/1999/xlink",Dd4="http://www.w3.org/1999/xhtml",Fd4="100%",Ud4="100%",zd4="border:0;margin:0;",kd4="margin:0",fd4="allow-top-navigation-by-user-activation allow-popups",ld4='The "iframe" tag is not supported by your browser.',bd4,Md4,UEu,Zd4,Jd4,wd4,Kd4,Qd4,zEu,Gd4,Hd4,uAu,yw,Ld4,EAu,qd4,AAu,Xd4,xd4,CAu,vd4,wg,wU0=!1,DAu,Sd4,FAu,Wd4,jk,cw;var LU0=g(()=>{E2();mZ();J8();D8();B7();o5();bB();e5();d2();q2();t3();s4();o4();Y4();u30();i3();tc0();WQ();xi();k_4=X((u)=>{return/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(u)},"detector"),f_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (bg0(),lg0));return{id:kEu,diagram:u}},"loader"),l_4={id:kEu,detector:k_4,loader:f_4},b_4=l_4,M_4=X((u,B)=>{if(B?.flowchart?.defaultRenderer==="dagre-wrapper"||B?.flowchart?.defaultRenderer==="elk")return!1;return/^\s*graph/.test(u)},"detector"),Z_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (zm(),Um));return{id:fEu,diagram:u}},"loader"),J_4={id:fEu,detector:M_4,loader:Z_4},w_4=J_4,K_4=X((u,B)=>{if(B?.flowchart?.defaultRenderer==="dagre-d3")return!1;if(B?.flowchart?.defaultRenderer==="elk")B.layout="elk";if(/^\s*graph/.test(u)&&B?.flowchart?.defaultRenderer==="dagre-wrapper")return!0;return/^\s*flowchart/.test(u)},"detector"),Q_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (zm(),Um));return{id:lEu,diagram:u}},"loader"),G_4={id:lEu,detector:K_4,loader:Q_4},H_4=G_4,L_4=X((u)=>{return/^\s*swimlane-beta\b/.test(u)},"detector"),q_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (Kg0(),wg0));return{id:bEu,diagram:u}},"loader"),X_4={id:bEu,detector:L_4,loader:q_4},x_4=X_4,v_4=X((u)=>{return/^\s*erDiagram/.test(u)},"detector"),S_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (Lg0(),Hg0));return{id:MEu,diagram:u}},"loader"),W_4={id:MEu,detector:v_4,loader:S_4},Y_4=W_4,R_4=X((u)=>{return/^\s*gitGraph/.test(u)},"detector"),T_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (C6u(),A6u));return{id:ZEu,diagram:u}},"loader"),O_4={id:ZEu,detector:R_4,loader:T_4},I_4=O_4,P_4=X((u)=>{return/^\s*gantt/.test(u)},"detector"),j_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (W6u(),S6u));return{id:JEu,diagram:u}},"loader"),N_4={id:JEu,detector:P_4,loader:j_4},i_4=N_4,a_4=X((u)=>{return/^\s*info/.test(u)},"detector"),V_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (R6u(),Y6u));return{id:wEu,diagram:u}},"loader"),h_4={id:wEu,detector:a_4,loader:V_4},m_4=X((u)=>{return/^\s*pie/.test(u)},"detector"),r_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (P6u(),I6u));return{id:KEu,diagram:u}},"loader"),$_4={id:KEu,detector:m_4,loader:r_4},y_4=X((u)=>{return/^\s*quadrantChart/.test(u)},"detector"),c_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (s6u(),d6u));return{id:QEu,diagram:u}},"loader"),g_4={id:QEu,detector:y_4,loader:c_4},__4=g_4,n_4=X((u)=>{return/^\s*xychart(-beta)?/.test(u)},"detector"),p_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (Q9u(),K9u));return{id:GEu,diagram:u}},"loader"),d_4={id:GEu,detector:n_4,loader:p_4},s_4=d_4,o_4=X((u)=>{return/^\s*requirement(Diagram)?/.test(u)},"detector"),t_4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (L9u(),H9u));return{id:HEu,diagram:u}},"loader"),e_4={id:HEu,detector:o_4,loader:t_4},un4=e_4,Bn4=X((u)=>{return/^\s*sequenceDiagram/.test(u)},"detector"),En4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (i9u(),N9u));return{id:LEu,diagram:u}},"loader"),An4={id:LEu,detector:Bn4,loader:En4},Cn4=An4,Dn4=X((u,B)=>{if(B?.class?.defaultRenderer==="dagre-wrapper")return!1;return/^\s*classDiagram/.test(u)},"detector"),Fn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (r9u(),m9u));return{id:qEu,diagram:u}},"loader"),Un4={id:qEu,detector:Dn4,loader:Fn4},zn4=Un4,kn4=X((u,B)=>{if(/^\s*classDiagram/.test(u)&&B?.class?.defaultRenderer==="dagre-wrapper")return!0;return/^\s*classDiagram-v2/.test(u)},"detector"),fn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (y9u(),$9u));return{id:XEu,diagram:u}},"loader"),ln4={id:XEu,detector:kn4,loader:fn4},bn4=ln4,Mn4=X((u,B)=>{if(B?.state?.defaultRenderer==="dagre-wrapper")return!1;return/^\s*stateDiagram/.test(u)},"detector"),Zn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (J2u(),Z2u));return{id:xEu,diagram:u}},"loader"),Jn4={id:xEu,detector:Mn4,loader:Zn4},wn4=Jn4,Kn4=X((u,B)=>{if(/^\s*stateDiagram-v2/.test(u))return!0;if(/^\s*stateDiagram/.test(u)&&B?.state?.defaultRenderer==="dagre-wrapper")return!0;return!1},"detector"),Qn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (K2u(),w2u));return{id:vEu,diagram:u}},"loader"),Gn4={id:vEu,detector:Kn4,loader:Qn4},Hn4=Gn4,Ln4=X((u)=>{return/^\s*journey/.test(u)},"detector"),qn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (W2u(),S2u));return{id:SEu,diagram:u}},"loader"),Xn4={id:SEu,detector:Ln4,loader:qn4},xn4=Xn4,vn4=X((u,B,E)=>{z0.debug(`rendering svg for syntax error
`);let A=N1(B),C=A.append("g");A.attr("viewBox","0 0 2412 512"),y3(A,100,512,!0),C.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"),C.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"),C.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"),C.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"),C.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"),C.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"),C.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"),C.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${E}`)},"draw"),WEu={draw:vn4},Sn4=WEu,Wn4={db:{},renderer:WEu,parser:{parse:X(()=>{return},"parse")}},Yn4=Wn4,Rn4=X((u,B={})=>{if(/^\s*flowchart-elk/.test(u)||/^\s*(flowchart|graph)/.test(u)&&B?.flowchart?.defaultRenderer==="elk")return B.layout="elk",!0;return!1},"detector"),Tn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (zm(),Um));return{id:YEu,diagram:u}},"loader"),On4={id:YEu,detector:Rn4,loader:Tn4},In4=On4,Pn4=X((u)=>{return/^\s*timeline/.test(u)},"detector"),jn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (t2u(),o2u));return{id:REu,diagram:u}},"loader"),Nn4={id:REu,detector:Pn4,loader:jn4},in4=Nn4,an4=X((u)=>{return/^\s*mindmap/.test(u)},"detector"),Vn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (D5u(),C5u));return{id:TEu,diagram:u}},"loader"),hn4={id:TEu,detector:an4,loader:Vn4},mn4=hn4,rn4=X((u)=>{return/^\s*kanban/.test(u)},"detector"),$n4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (z5u(),U5u));return{id:OEu,diagram:u}},"loader"),yn4={id:OEu,detector:rn4,loader:$n4},cn4=yn4,gn4=X((u)=>{return/^\s*sankey(-beta)?/.test(u)},"detector"),_n4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (W5u(),S5u));return{id:IEu,diagram:u}},"loader"),nn4={id:IEu,detector:gn4,loader:_n4},pn4=nn4,dn4=X((u)=>{return/^\s*packet(-beta)?/.test(u)},"detector"),sn4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (O5u(),T5u));return{id:PEu,diagram:u}},"loader"),on4={id:PEu,detector:dn4,loader:sn4},tn4=X((u)=>{return/^\s*radar-beta/.test(u)},"detector"),en4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (h5u(),V5u));return{id:jEu,diagram:u}},"loader"),up4={id:jEu,detector:tn4,loader:en4},Bp4=X((u)=>{return/^\s*block(-beta)?/.test(u)},"detector"),Ep4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (K7u(),w7u));return{id:NEu,diagram:u}},"loader"),Ap4={id:NEu,detector:Bp4,loader:Ep4},Cp4=Ap4,Dp4=X((u)=>{return/^\s*treeView-beta/.test(u)},"detector"),Fp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (O7u(),T7u));return{id:iEu,diagram:u}},"loader"),Up4={id:iEu,detector:Dp4,loader:Fp4},zp4=Up4,kp4=X((u)=>{return/^\s*architecture/.test(u)},"detector"),fp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (s7u(),d7u));return{id:aEu,diagram:u}},"loader"),lp4={id:aEu,detector:kp4,loader:fp4},bp4=lp4,Mp4=X((u)=>{return/^\s*eventmodeling/.test(u)},"detector"),Zp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (vBu(),xBu));return{id:VEu,diagram:u}},"loader"),Jp4={id:VEu,detector:Mp4,loader:Zp4},wp4=Jp4,Kp4=X((u)=>{return/^\s*ishikawa(-beta)?\b/i.test(u)},"detector"),Qp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (jBu(),PBu));return{id:hEu,diagram:u}},"loader"),Gp4={id:hEu,detector:Kp4,loader:Qp4},Hp4=X((u)=>{return/^\s*venn-beta/.test(u)},"detector"),Lp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (D8u(),C8u));return{id:mEu,diagram:u}},"loader"),qp4={id:mEu,detector:Hp4,loader:Lp4},Xp4=qp4,xp4=X((u)=>{return/^\s*treemap/.test(u)},"detector"),vp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (f8u(),k8u));return{id:rEu,diagram:u}},"loader"),Sp4={id:rEu,detector:xp4,loader:vp4},Wp4=X((u)=>{return/^\s*wardley-beta/i.test(u)},"detector"),Yp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (O8u(),T8u));return{id:$Eu,diagram:u}},"loader"),Rp4={id:$Eu,detector:Wp4,loader:Yp4},Tp4=Rp4,Op4=X((u)=>{return/^\s*cynefin-beta(?:[\s:]|$)/.test(u)},"detector"),Ip4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (r8u(),m8u));return{id:yEu,diagram:u}},"loader"),Pp4={id:yEu,detector:Op4,loader:Ip4},jp4=X((u)=>{return/^\s*railroad-beta/i.test(u)},"detector"),Np4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (d8u(),p8u));return{id:cEu,diagram:u}},"loader"),ip4={id:cEu,detector:jp4,loader:Np4},ap4=X((u)=>{return/^\s*railroad-ebnf-beta/i.test(u)},"detector"),Vp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (t8u(),o8u));return{id:gEu,diagram:u}},"loader"),hp4={id:gEu,detector:ap4,loader:Vp4},mp4=X((u)=>{return/^\s*railroad-abnf-beta/i.test(u)},"detector"),rp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (uEu(),e8u));return{id:_Eu,diagram:u}},"loader"),$p4={id:_Eu,detector:mp4,loader:rp4},yp4=X((u)=>{return/^\s*railroad-peg-beta/i.test(u)},"detector"),cp4=X(async()=>{let{diagram:u}=await Promise.resolve().then(() => (CEu(),AEu));return{id:nEu,diagram:u}},"loader"),gp4={id:nEu,detector:yp4,loader:cp4},Kg=X(()=>{if(DEu)return;DEu=!0,Dv("error",Yn4,(u)=>{return u.toLowerCase().trim()==="error"}),Dv("---",{db:{clear:X(()=>{},"clear")},styles:{},renderer:{draw:X(()=>{},"draw")},parser:{parse:X(()=>{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:X(()=>null,"init")},(u)=>{return u.toLowerCase().trimStart().startsWith("---")}),Lj(In4,mn4,bp4),Lj(b_4,cn4,bn4,zn4,Y_4,i_4,h_4,$_4,un4,Cn4,x_4,H_4,w_4,in4,I_4,Hn4,wn4,xn4,__4,pn4,on4,s_4,Cp4,wp4,zp4,up4,Gp4,Sp4,ip4,hp4,$p4,gp4,Xp4,Tp4,Pp4)},"addDiagrams"),_p4=X(async()=>{z0.debug("Loading registered diagrams");let B=(await Promise.allSettled(Object.entries(Wf).map(async([E,{detector:A,loader:C}])=>{if(!C)return;try{Sj(E)}catch{try{let{diagram:D,id:F}=await C();Dv(F,D,A)}catch(D){throw z0.error(`Failed to load external diagram with key ${E}. Removing from detectors.`),delete Wf[E],D}}}))).filter((E)=>E.status==="rejected");if(B.length>0){z0.error(`Failed to load ${B.length} external diagrams`);for(let E of B)z0.error(E);throw Error(`Failed to load ${B.length} external diagrams`)}},"loadRegisteredDiagrams");X(pEu,"setA11yDiagramInfo");X(dEu,"addSVGa11yTitleDescription");KU0=class u{constructor(B,E,A,C,D){this.type=B,this.text=E,this.db=A,this.parser=C,this.renderer=D}static{X(this,"Diagram")}static async fromText(B,E={}){let A=F4(),C=Ev(B,A);B=qW0(B)+`
`;try{Sj(C)}catch{let k=sH0(C);if(!k)throw new Wt(`Diagram ${C} not found.`);let{id:f,diagram:l}=await k();Dv(f,l)}let{db:D,parser:F,renderer:U,init:z}=Sj(C);if(F.parser)F.parser.yy=D;if(D.clear?.(),z?.(A),E.title)D.setDiagramTitle?.(E.title);return await F.parse(B),new u(C,B,D,F,U)}async render(B,E){await this.renderer.draw(this.text,B,E,this)}getParser(){return this.parser}getType(){return this.type}},FEu=[],pp4=X(()=>{FEu.forEach((u)=>{u()}),FEu=[]},"attachFunctions"),dp4=X((u)=>{return u.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart()},"cleanupComments");X(sEu,"extractFrontMatter");sp4=X((u)=>{return u.replace(/\r\n?/g,`
`).replace(/<(\w+)([^>]*)>/g,(B,E,A)=>"<"+E+A.replace(/="([^"]*)"/g,"='$1'")+">")},"cleanupText"),op4=X((u)=>{let{text:B,metadata:E}=sEu(u),{displayMode:A,title:C,config:D={}}=E;if(A){if(!D.gantt)D.gantt={};D.gantt.displayMode=A}return{title:C,config:D,text:B}},"processFrontmatter"),tp4=X((u)=>{let B=R4.detectInit(u)??{},E=R4.detectDirective(u,"wrap");if(Array.isArray(E))B.wrap=E.some(({type:A})=>A==="wrap");else if(E?.type==="wrap")B.wrap=!0;return{text:wW0(u),directive:B}},"processDirectives");X(GU0,"preprocessDiagram");X(oEu,"toBase64");bd4=["foreignobject"],Md4=["dominant-baseline"];X(HU0,"processAndSetConfigs");X(tEu,"parse");UEu=X((u,B,E=[])=>{let A=Xt(`{ ${E.join(" !important; ")} !important; }`);return`.${u} ${B} ${A}`},"cssImportantStyles"),Zd4=X((u,B=new Map)=>{let E=new CSSStyleSheet;if(u.fontFamily!==void 0)E.insertRule(`:root { --mermaid-font-family: ${u.fontFamily}}`,E.cssRules.length);if(u.altFontFamily!==void 0)E.insertRule(`:root { --mermaid-alt-font-family: ${u.altFontFamily}}`,E.cssRules.length);if(B instanceof Map){let U=w1(u)?["> *","span"]:["rect","polygon","ellipse","circle","path"];B.forEach((z)=>{if(!Xi(z.styles))U.forEach((k)=>{E.insertRule(UEu(z.id,k,z.styles),E.cssRules.length)});if(!Xi(z.textStyles))E.insertRule(UEu(z.id,"tspan",(z?.textStyles||[]).map((k)=>k.replace("color","fill"))),E.cssRules.length)})}let A="";if(u.themeCSS!==void 0)if(typeof E.replaceSync==="function"){let C=new CSSStyleSheet;C.replaceSync(u.themeCSS),A=qj(C)+`
`}else A+=`${u.themeCSS}
`;return A+qj(E)},"createCssStyles"),Jd4=X((u,B)=>{return sh(gc0(`${u}{${B}}`),sc0([X(function(A,C,D,F){if(A.type==="rule"&&Array.isArray(A.props)){if(A.parent&&A.parent.type===mW)return;A.props=A.props.map((U)=>{if(U===u&&Array.isArray(A.children)&&A.children.every((k)=>{if(k.type!=="decl")return!1;return new Set(["font-family","font-size","fill"]).has(k.props)}))return U;if(!((U.startsWith(`${u} `)||U.startsWith(`${u}>`))&&!U.startsWith(`${u} ||`)))return`${u} ${U}`;return U})}else if(A.type.startsWith("@")){if(![Yc0,Tc0,$h,Ic0,"@container","@starting-style",mW].includes(A.type))z0.warn(`Removing unsupported at-rule ${A.type} from CSS`),A.type=aH}},"addNamespace"),pc0]))},"compileCSS"),wd4=X((u,B,E,A)=>{let C=Zd4(u,E),D=uL0(B,C,{...u.themeVariables,theme:u.theme,look:u.look},A);return Jd4(A,D)},"createUserStyles"),Kd4=X((u="",B,E)=>{let A=u;if(!E&&!B)A=A.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#');return A=AE(A),A=A.replace(/<br>/g,"<br/>"),A},"cleanUpSvgCode"),Qd4=X((u="",B)=>{let E=B?.viewBox?.baseVal?.height?B.viewBox.baseVal.height+"px":Ud4,A=oEu(`<body style="${kd4}">${u}</body>`);return`<iframe style="width:${Fd4};height:${E};${zd4}" src="data:text/html;charset=UTF-8;base64,${A}" sandbox="${fd4}">
${ld4}
</iframe>`},"putIntoIFrame"),zEu=X((u,B,E,A,C)=>{let D=u.append("div");if(D.attr("id",E),A)D.attr("style",A);let F=D.append("svg").attr("id",B).attr("width","100%").attr("xmlns",Ad4);if(C)F.attr("xmlns:xlink",C);return F.append("g"),u},"appendDivSvgG");X(QU0,"sandboxedIframe");Gd4=X((u,B,E,A)=>{u.getElementById(B)?.remove(),u.getElementById(E)?.remove(),u.getElementById(A)?.remove()},"removeExistingElements"),Hd4=X(async function(u,B,E){Kg();let A=HU0(B);B=A.code;let C=F4();if(z0.debug(C),B.length>(C?.maxTextSize??ep4))B=ud4;let D=`#${u}`,F="i"+u,U="#"+F,z="d"+u,k="#"+z,f=X(()=>{let Y=Ku(b?U:k).node();if(Y&&"remove"in Y)Y.remove()},"removeTempElements"),l=Ku(document.body),b=C.securityLevel===Bd4,M=C.securityLevel===Ed4,Z=C.fontFamily;if(E!==void 0){if(E)E.innerHTML="";if(b){let R=QU0(Ku(E),F);l=Ku(R.nodes()[0].contentDocument.body),l.node().style.margin="0"}else l=Ku(E);zEu(l,u,z,`font-family: ${Z}`,Cd4)}else{if(Gd4(document,u,z,F),b){let R=QU0(Ku(document.body),F);l=Ku(R.nodes()[0].contentDocument.body),l.node().style.margin="0"}else l=Ku("body");zEu(l,u,z)}let J,w;try{J=await KU0.fromText(B,{title:A.title})}catch(R){if(C.suppressErrorRendering)throw f(),R;J=await KU0.fromText("error"),w=R}let K=l.select(k).node(),Q=J.type,G=K.firstChild,L=G.firstChild,H=J.renderer.getClasses?.(B,J),q=wd4(C,Q,H,D),x=document.createElement("style");x.innerHTML=q,G.insertBefore(x,L);try{await J.renderer.draw(B,u,"11.16.1",J)}catch(R){if(C.suppressErrorRendering)f();else Sn4.draw(B,u,"11.16.1");throw R}let v=l.select(`${k} svg`),W=J.db.getAccTitle?.(),S=J.db.getAccDescription?.();BAu(Q,v,W,S),l.select(`[id="${u}"]`).selectAll("foreignobject > *").attr("xmlns",Dd4);let T=l.select(k).node().innerHTML;if(z0.debug("config.arrowMarkerAbsolute",C.arrowMarkerAbsolute),T=Kd4(T,b,_E(C.arrowMarkerAbsolute)),b){let R=l.select(k+" svg").node();T=Qd4(T,R)}else if(!M)T=oB.sanitize(T,{ADD_TAGS:bd4,ADD_ATTR:Md4,HTML_INTEGRATION_POINTS:{foreignobject:!0}});if(pp4(),w)throw w;return f(),{diagramType:Q,svg:T,bindFunctions:J.db.bindFunctions}},"render");X(eEu,"initialize");uAu=X((u,B={})=>{let{code:E}=GU0(u);return KU0.fromText(E,B)},"getDiagramFromText");X(BAu,"addA11yInfo");yw=Object.freeze({render:Hd4,parse:tEu,getDiagramFromText:uAu,initialize:eEu,getConfig:F4,setConfig:vt,getSiteConfig:xt,updateSiteConfig:gH0,reset:X(()=>{Bv()},"reset"),globalReset:X(()=>{Bv(GZ)},"globalReset"),defaultConfig:GZ});Ix(F4().logLevel);Bv(F4());Ld4=X((u,B,E)=>{if(z0.warn(u),Ri(u)){if(E)E(u.str,u.hash);B.push({...u,message:u.str,error:u})}else{if(E)E(u);if(u instanceof Error)B.push({str:u.message,message:u.message,hash:u.name,error:u})}},"handleError"),EAu=X(async function(u={querySelector:".mermaid"}){try{await qd4(u)}catch(B){if(Ri(B))z0.error(B.str);if(jk.parseError)jk.parseError(B);if(!u.suppressErrors)throw z0.error("Use the suppressErrors option to suppress these errors"),B}},"run"),qd4=X(async function({postRenderCallback:u,querySelector:B,nodes:E}={querySelector:".mermaid"}){let A=yw.getConfig();z0.debug(`${!u?"No ":""}Callback function found`);let C;if(E)C=E;else if(B)C=document.querySelectorAll(B);else throw Error("Nodes and querySelector are both undefined");if(z0.debug(`Found ${C.length} diagrams`),A?.startOnLoad!==void 0)z0.debug("Start On Load: "+A?.startOnLoad),yw.updateSiteConfig({startOnLoad:A?.startOnLoad});let D=new R4.InitIDGenerator(A.deterministicIds,A.deterministicIDSeed),F,U=[];for(let z of Array.from(C)){if(z0.info("Rendering diagram: "+z.id),z.getAttribute("data-processed"))continue;z.setAttribute("data-processed","true");let k=`mermaid-${D.next()}`;F=z.innerHTML,F=Vi(R4.entityDecode(F)).trim().replace(/<br\s*\/?>/gi,"<br/>");let f=R4.detectInit(F);if(f)z0.debug("Detected early reinit: ",f);try{let{svg:l,bindFunctions:b}=await FAu(k,F,z);if(z.innerHTML=l,u)await u(k);if(b)b(z)}catch(l){Ld4(l,U,jk.parseError)}}if(U.length>0)throw U[0]},"runThrowsErrors"),AAu=X(function(u){yw.initialize(u)},"initialize"),Xd4=X(async function(u,B,E){if(z0.warn("mermaid.init is deprecated. Please use run instead."),u)AAu(u);let A={postRenderCallback:E,querySelector:".mermaid"};if(typeof B==="string")A.querySelector=B;else if(B)if(B instanceof HTMLElement)A.nodes=[B];else A.nodes=B;await EAu(A)},"init"),xd4=X(async(u,{lazyLoad:B=!0}={})=>{if(Kg(),Lj(...u),B===!1)await _p4()},"registerExternalDiagrams"),CAu=X(function(){if(jk.startOnLoad){let{startOnLoad:u}=yw.getConfig();if(u)jk.run().catch((B)=>z0.error("Mermaid failed to initialize",B))}},"contentLoaded");if(typeof document<"u")window.addEventListener("load",CAu,!1);vd4=X(function(u){jk.parseError=u},"setParseErrorHandler"),wg=[],DAu=X(async()=>{if(wU0)return;wU0=!0;while(wg.length>0){let u=wg.shift();if(u)try{await u()}catch(B){z0.error("Error executing queue",B)}}wU0=!1},"executeQueue"),Sd4=X(async(u,B)=>{return new Promise((E,A)=>{let C=X(()=>new Promise((D,F)=>{yw.parse(u,B).then((U)=>{D(U),E(U)},(U)=>{z0.error("Error parsing",U),jk.parseError?.(U),F(U),A(U)})}),"performCall");wg.push(C),DAu().catch(A)})},"parse"),FAu=X((u,B,E)=>{return new Promise((A,C)=>{let D=X(()=>new Promise((F,U)=>{yw.render(u,B,E).then((z)=>{F(z),A(z)},(z)=>{z0.error("Error parsing",z),jk.parseError?.(z),U(z),C(z)})}),"performCall");wg.push(D),DAu().catch(C)})},"render"),Wd4=X(()=>{return Object.keys(Wf).map((u)=>({id:u}))},"getRegisteredDiagramsMetadata"),jk={startOnLoad:!0,mermaidAPI:yw,parse:Sd4,render:FAu,init:Xd4,run:EAu,registerExternalDiagrams:xd4,registerLayoutLoaders:I50,initialize:AAu,parseError:void 0,contentLoaded:CAu,setParseErrorHandler:vd4,detectType:Ev,registerIconPacks:vG,getRegisteredDiagramsMetadata:Wd4},cw=jk;/*! Check if previously processed *//*!
* Wait for document loaded before starting the execution
*/});var Pb=20,UAu,eR;var gw=g(()=>{UAu={rect:"rectangle",circle:"ellipse"},eR={startOnLoad:!1,flowchart:{curve:"linear"},themeVariables:{fontSize:"20px"},maxEdges:500,maxTextSize:50000}});class xE{constructor({converter:u}){this.convert=(B,E)=>{return this.converter(B,{...E,fontSize:E.fontSize||Pb})},this.converter=u}}var _w=g(()=>{gw()});var Nk,i5,b1;var uT=g(()=>{(function(u){u.ROUND="round",u.STADIUM="stadium",u.DOUBLECIRCLE="doublecircle",u.CIRCLE="circle",u.DIAMOND="diamond",u.CYLINDER="cylinder"})(Nk||(Nk={}));(function(u){u.COLOR="color"})(i5||(i5={}));(function(u){u.FILL="fill",u.STROKE="stroke",u.STROKE_WIDTH="stroke-width",u.STROKE_DASHARRAY="stroke-dasharray"})(b1||(b1={}))});var fAu=P1((zAu)=>{Object.defineProperty(zAu,"__esModule",{value:!0});zAu.removeMarkdown=void 0;var Yd4=function(u,B){if(B===void 0)B={listUnicodeChar:""};B=B||{},B.listUnicodeChar=B.hasOwnProperty("listUnicodeChar")?B.listUnicodeChar:!1,B.stripListLeaders=B.hasOwnProperty("stripListLeaders")?B.stripListLeaders:!0,B.gfm=B.hasOwnProperty("gfm")?B.gfm:!0,B.useImgAltText=B.hasOwnProperty("useImgAltText")?B.useImgAltText:!0,B.preserveLinks=B.hasOwnProperty("preserveLinks")?B.preserveLinks:!1;var E=u||"";E=E.replace(/^(-\s*?|\*\s*?|_\s*?){3,}\s*$/gm,"");try{if(B.stripListLeaders)if(B.listUnicodeChar)E=E.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,B.listUnicodeChar+" $1");else E=E.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,"$1");if(B.gfm)E=E.replace(/\n={2,}/g,`
`).replace(/~{3}.*\n/g,"").replace(/~~/g,"").replace(/`{3}.*\n/g,"");if(B.preserveLinks)E=E.replace(/\[(.*?)\][\[\(](.*?)[\]\)]/g,"$1 ($2)");E=E.replace(/<[^>]*>/g,"").replace(/^[=\-]{2,}\s*$/g,"").replace(/\[\^.+?\](\: .*?$)?/g,"").replace(/\s{0,2}\[.*?\]: .*?$/g,"").replace(/\!\[(.*?)\][\[\(].*?[\]\)]/g,B.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(A){return console.error(A),u}return E};zAu.removeMarkdown=Yd4});var lAu,Rd4,bAu=(u)=>{return Rd4[u]},Qg=(u)=>{let B=u.text;if(u.labelType==="markdown")B=lAu.removeMarkdown(u.text);return Td4(B)},Td4=(u)=>{let B=/\s?(fa|fab):[a-zA-Z0-9-]+/g;return u.replace(B,"")},nw=(u)=>{let B={};return Object.keys(u).forEach((E)=>{switch(E){case b1.FILL:{B.backgroundColor=u[E],B.fillStyle="solid";break}case b1.STROKE:{B.strokeColor=u[E];break}case b1.STROKE_WIDTH:{B.strokeWidth=Number(u[E]?.split("px")[0]);break}case b1.STROKE_DASHARRAY:{B.strokeStyle="dashed";break}}}),B},BT=(u)=>{let B={};return Object.keys(u).forEach((E)=>{switch(E){case i5.COLOR:{B.strokeColor=u[E];break}}}),B};var qU0=g(()=>{uT();lAu=Eu(fAu(),1),Rd4={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 Od4=(u,B)=>[u,B],Id4=32,MAu=0.62,Pd4=12,jd4=12,ZAu=(u,B)=>{return Math.max(20,Math.ceil(u.length*B*MAu))},Nd4=(u,B,E,A)=>{let C=A||Pb;if(u!==Nk.CYLINDER||!B||B.includes(`
`))return C;let D=Math.max(20,E-Pd4);if(ZAu(B,C)<=D)return C;return Math.max(jd4,Math.floor(D/(B.length*MAu)))},id4=(u)=>{let B={};u.subGraphs.map((A)=>{A.nodeIds.forEach((C)=>{B[A.id]={id:A.id,parent:null,isLeaf:!1},B[C]={id:C,parent:A.id,isLeaf:u.vertices[C]!==void 0}})});let E={};return[...Object.keys(u.vertices),...u.subGraphs.map((A)=>A.id)].forEach((A)=>{if(!B[A])return;let C=B[A],D=[];if(!C.isLeaf)D.push(`subgraph_group_${C.id}`);while(!0)if(C.parent)D.push(`subgraph_group_${C.parent}`),C=B[C.parent];else break;E[A]=D}),{getGroupIds:(A)=>{return E[A]||[]},getParentId:(A)=>{return B[A]?B[A].parent:null}}},JAu;var wAu=g(()=>{_w();qU0();uT();gw();JAu=new xE({converter:(u,B)=>{let E=[],A=B.fontSize,{getGroupIds:C,getParentId:D}=id4(u);return u.subGraphs.reverse().forEach((F)=>{let U=C(F.id),z=Qg(F),l=ZAu(z,A||16)+Id4*2,b=Math.max(F.width,l),M=F.x-(b-F.width)/2,Z=nw(F.containerStyle),J=BT(F.labelStyle),w={id:F.id,type:"rectangle",groupIds:U,x:M,y:F.y,width:b,height:F.height,label:{groupIds:U,text:z,fontSize:A,verticalAlign:"top",...J},...Z};E.push(w)}),Object.values(u.vertices).forEach((F)=>{if(!F)return;let U=C(F.id),z=Qg(F),k=Nd4(F.type,z,F.width,A),f=nw(F.containerStyle),l=BT(F.labelStyle),b={id:F.id,type:"rectangle",groupIds:U,x:F.x,y:F.y,width:F.width,height:F.height,strokeWidth:2,label:{groupIds:U,text:z,fontSize:k,...l},link:F.link||null,...f};switch(F.type){case Nk.STADIUM:{b={...b,roundness:{type:3}};break}case Nk.ROUND:{b={...b,roundness:{type:3}};break}case Nk.DOUBLECIRCLE:{U.push(`doublecircle_${F.id}}`);let Z={type:"ellipse",groupIds:U,x:F.x+5,y:F.y+5,width:F.width-10,height:F.height-10,strokeWidth:2,roundness:{type:3},label:{groupIds:U,text:z,fontSize:k,...l}};b={...b,groupIds:U,type:"ellipse"},E.push(Z);break}case Nk.CIRCLE:{b.type="ellipse";break}case Nk.DIAMOND:{b.type="diamond";break}}E.push(b)}),u.edges.forEach((F)=>{let U=[],z=D(F.start),k=D(F.end);if(z&&z===k)U=C(z);let{startX:f,startY:l,reflectionPoints:b}=F,M=b.map((G)=>Od4(G.x-b[0].x,G.y-b[0].y)),Z=bAu(F.type||"arrow_point"),J=E.find((G)=>G.id===F.start),w=E.find((G)=>G.id===F.end);if(!J||!w)return;let Q={id:`${F.start}_${F.end}`,type:"arrow",groupIds:U,x:f,y:l,strokeWidth:F.stroke==="thick"?4:2,strokeStyle:F.stroke==="dotted"?"dashed":void 0,points:M,...F.text?{label:{text:Qg(F),fontSize:A,groupIds:U}}:{},roundness:{type:2},...Z,start:{id:J.id||""},end:{id:w.id||""}};E.push(Q)}),{elements:E}}})});var KAu="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var z9=(u=21)=>{let B="",E=crypto.getRandomValues(new Uint8Array(u|=0));while(u--)B+=KAu[E[u]&63];return B};var bU=()=>{};var QAu;var GAu=g(()=>{_w();bU();QAu=new xE({converter:(u)=>{let B=z9(),{width:E,height:A}=u,C={type:"image",x:0,y:0,width:E,height:A,status:"saved",fileId:B};return{files:{[B]:{id:B,mimeType:u.mimeType,dataURL:u.dataURL}},elements:[C]}}})});var ET=(u,B)=>[u,B],XU0=(u)=>{return u.replace(/\\n/g,`
`)},MU=(u)=>{let B={type:"line",x:u.startX,y:u.startY,points:[ET(0,0),ET(u.endX-u.startX,u.endY-u.startY)],width:u.endX-u.startX,height:u.endY-u.startY,strokeStyle:u.strokeStyle||"solid",strokeColor:u.strokeColor||"#000",strokeWidth:u.strokeWidth||1};if(u.groupId)Object.assign(B,{groupIds:[u.groupId]});if(u.id)Object.assign(B,{id:u.id});return B},ZU=(u)=>{let B={type:"text",x:u.x,y:u.y,width:u.width,height:u.height,text:XU0(u.text)||"",fontSize:u.fontSize,verticalAlign:"top",strokeColor:u.color};if(u.groupId)Object.assign(B,{groupIds:[u.groupId]});if(u.id)Object.assign(B,{id:u.id});return B},ik=(u)=>{let B={text:XU0(u?.label?.text||""),fontSize:u?.label?.fontSize,textAlign:u.label?.textAlign,verticalAlign:u.label?.verticalAlign||"middle",strokeColor:u.label?.color||"#000",...u.groupId?{groupIds:[u.groupId]}:{}},E={};if(u.type==="rectangle"&&u.subtype==="activation")E={backgroundColor:"#e9ecef",fillStyle:"solid"};let A={id:u.id,type:u.type,x:u.x,y:u.y,width:u.width,height:u.height,label:B,strokeStyle:u?.strokeStyle,strokeWidth:u?.strokeWidth,strokeColor:u?.strokeColor,backgroundColor:u?.bgColor,fillStyle:"solid",...E};if(u.groupId)Object.assign(A,{groupIds:[u.groupId]});return A},bq=(u)=>{let B={type:"arrow",x:u.startX,y:u.startY,points:u.points?.map(([E,A])=>ET(E,A))||[ET(0,0),ET(u.endX-u.startX,u.endY-u.startY)],width:u.endX-u.startX,height:u.endY-u.startY,strokeStyle:u?.strokeStyle||"solid",endArrowhead:u?.endArrowhead||null,startArrowhead:u?.startArrowhead||null,label:{text:XU0(u?.label?.text||""),fontSize:16,textAlign:u?.label?.textAlign,verticalAlign:u?.label?.verticalAlign},roundness:{type:2},start:u.start,end:u.end};if(u.groupId)Object.assign(B,{groupIds:[u.groupId]});return B};var Gg=10,xU0=16,ad4=24,Vd4=4,hd4=(u)=>{if(!u)return!0;let B=u.trim().toLowerCase();return B==="transparent"||B==="none"||B==="rgba(0,0,0,0)"||B==="rgba(0, 0, 0, 0)"},md4=(u,B)=>{return Math.max(20,Math.round(u.length*B*0.6))},HAu=(u,B,E=!0)=>{let A=u,C=A.groupIds??[];if(!C.includes(B))A.groupIds=[...C,B];if(!E||!A.label)return;let D=A.label.groupIds??[];if(!D.includes(B))A.label.groupIds=[...D,B]},LAu;var qAu=g(()=>{bU();_w();LAu=new xE({converter:(u)=>{let B=[],E=[];if(Object.values(u.nodes).forEach((A)=>{if(!A||!A.length)return;A.forEach((C)=>{let D;switch(C.type){case"line":D=MU(C);break;case"rectangle":case"ellipse":D=ik(C);break;case"text":D=ZU(C);break;default:throw`unknown type ${C.type}`}if(C.type==="rectangle"&&C?.subtype==="activation")E.push(D);else B.push(D)})}),Object.values(u.lines).forEach((A)=>{if(!A)return;B.push(MU(A))}),Object.values(u.arrows).forEach((A)=>{if(!A)return;if(B.push(bq(A)),A.sequenceNumber)B.push(ik(A.sequenceNumber))}),B.push(...E),u.loops){let{lines:A,texts:C,nodes:D}=u.loops;A.forEach((F)=>{B.push(MU(F))}),C.forEach((F)=>{B.push(ZU(F))}),D.forEach((F)=>{B.push(ik(F))})}if(u.groups)u.groups.forEach((A)=>{let{actorKeys:C,name:D}=A,F=1/0,U=1/0,z=0,k=0;if(!C.length)return;let f=B.filter((Q)=>{if(Q.id){let G=Q.id.indexOf("-"),L=Q.id.substring(0,G);return C.includes(L)}return!1});if(!f.length)return;if(f.forEach((Q)=>{if(Q.x===void 0||Q.y===void 0||Q.width===void 0||Q.height===void 0)return;F=Math.min(F,Q.x),U=Math.min(U,Q.y),z=Math.max(z,Q.x+Q.width),k=Math.max(k,Q.y+Q.height)}),!Number.isFinite(F)||!Number.isFinite(U)||!Number.isFinite(z)||!Number.isFinite(k))return;let l=F-Gg,b=U-Gg,M=z-F+Gg*2,Z=k-U+Gg*2,J=z9(),w=z9(),K=ik({type:"rectangle",x:l,y:b,width:M,height:Z,bgColor:hd4(A.fill)?void 0:A.fill,strokeColor:"#1f1f1f",strokeWidth:1,id:J,groupId:w});if(B.unshift(K),B.forEach((Q)=>{if(Q.id===J)return;if(Q.x===void 0||Q.y===void 0||Q.width===void 0||Q.height===void 0)return;if(Q.x>=F&&Q.x+Q.width<=z&&Q.y>=U&&Q.y+Q.height<=k)HAu(Q,w)}),D){let Q=ZU({type:"text",id:z9(),text:D,x:l+Vd4,y:b-ad4,width:md4(D,xU0),height:xU0+8,fontSize:xU0,color:"#1f1f1f",groupId:w});HAu(Q,w,!1),B.push(Q)}});return{elements:B}}})});var XAu;var xAu=g(()=>{bU();_w();XAu=new xE({converter:(u)=>{let B=[];return u.nodes.forEach((E)=>{if(!E||!E.length)return;E.forEach((A)=>{let C;switch(A.type){case"line":C=MU(A);break;case"rectangle":case"ellipse":C=ik(A);break;case"text":C=ZU(A);break;default:throw`unknown type ${A.type}`}B.push(C)})}),Object.values(u.lines).forEach((E)=>{if(!E)return;B.push(MU(E))}),Object.values(u.arrows).forEach((E)=>{if(!E)return;let A=bq(E);B.push(A)}),Object.values(u.text).forEach((E)=>{let A=ZU(E);B.push(A)}),Object.values(u.namespaces).forEach((E)=>{let A=Object.keys(E.classes),C=[...A],D=[...u.lines,...u.arrows,...u.text];A.forEach((U)=>{let z=D.filter((k)=>k.metadata&&k.metadata.classId===U).map((k)=>k.id);if(z.length)C.push(...z)});let F={type:"frame",id:z9(),name:E.id,children:C};B.push(F)}),{elements:B}}})});var vAu;var SAu=g(()=>{_w();vAu=new xE({converter:(u)=>{let B=[];return u.nodes.forEach((E)=>{if(!E||!E.length)return;E.forEach((A)=>{let C;switch(A.type){case"line":C=MU(A);break;case"rectangle":case"ellipse":C=ik(A);break;case"text":C=ZU(A);break;default:throw`unknown type ${A.type}`}B.push(C)})}),u.lines.forEach((E)=>{B.push(MU(E))}),u.arrows.forEach((E)=>{B.push(bq(E))}),u.text.forEach((E)=>{B.push(ZU(E))}),{elements:B}}})});var Hg=(u,B)=>[u,B],AT=16,WAu=14,rd4=1,vU0="#000000",YAu=5,$d4,yd4,cd4=1.25,RAu,SU0=(u)=>u.shape==="stateEnd"?[`state_end_group_${u.id}`]:void 0,TAu=(u)=>{if(u.shape==="rectWithTitle"&&u.description.length)return[u.text,...u.description].join(`
`);return u.text},pw,gd4=()=>{if(pw!==void 0)return pw;if(typeof document>"u")return pw=null,pw;try{pw=document.createElement("canvas").getContext("2d")}catch{pw=null}return pw},Mq=(u,B)=>{let E=gd4();if(!E)return u.length*B*0.6;return E.font=`${B}px Excalifont, sans-serif`,E.measureText(u).width},_d4=(u,B,E)=>{if(Mq(u,B)<=E)return[u];let A=[],C="";for(let D of u){let F=`${C}${D}`;if(C&&Mq(F,B)>E){A.push(C),C=D;continue}C=F}if(C)A.push(C);return A},nd4=(u,B,E)=>{if(!u.trim())return u;if(Mq(u,B)<=E)return u;let A=u.split(/\s+/).filter(Boolean),C=[],D="";for(let F of A){let U=_d4(F,B,E);for(let[z,k]of U.entries()){let l=D?`${D}${D?z===0?" ":"":""}${k}`:k;if(Mq(l,B)<=E){D=l;continue}if(D)C.push(D);D=k}if(U.length>1)continue}return C.push(D),C.join(`
`)},pd4=(u,B,E)=>{let C=u.map((U)=>nd4(U,B,E)).join(`
`).split(`
`),D=Math.max(...C.map((U)=>Mq(U,B))),F=C.length*B*cd4;return{width:D,height:F}},dd4=(u,B,E,A)=>{let C=u.split(`
`);for(let D=AT;D>=WAu;D-=rd4){let{height:F}=pd4(C,D,B);if(F<=E)return D}return A},sd4=(u)=>{let B=TAu(u);if(!B||RAu.has(u.shape))return AT;let E=Math.max(1,u.width-$d4),A=Math.max(1,u.height-yd4),C=B.split(`
`);if(C.length>1){if(Math.max(...C.map((F)=>Mq(F,AT)))<=E)return AT}return dd4(B,E,A,C.length===1?AT:WAu)},od4=(u)=>{if(RAu.has(u.shape))return;let B=TAu(u);if(!B)return;return{text:B,fontSize:sd4(u),verticalAlign:u.shape==="rectWithTitle"||u.shape==="roundedWithTitle"?"top":"middle",...BT(u.labelStyle)}},td4=(u)=>{let B=nw(u.containerStyle),E=od4(u),A=u.shape==="choice"?"diamond":u.shape==="stateStart"||u.shape==="stateEnd"?"ellipse":"rectangle",C=u.shape==="rect"||u.shape==="rectWithTitle"||u.shape==="roundedWithTitle",D=u.shape==="stateStart"||u.shape==="fork"||u.shape==="join",F=B.backgroundColor||B.strokeColor||vU0,U=B.strokeColor||B.backgroundColor||vU0;return{id:u.id,type:A,...SU0(u)?{groupIds:SU0(u)}:{},x:u.x,y:u.y,width:u.width,height:u.height,...E?{label:E}:{},...B,...C?{roundness:{type:3}}:{},...D?{backgroundColor:F,strokeColor:U,fillStyle:"solid"}:{}}},ed4=(u)=>{if(!u.dividerLine)return null;let B=nw(u.containerStyle);return{id:`${u.id}__divider`,type:"line",x:u.dividerLine.startX,y:u.dividerLine.startY,width:u.dividerLine.endX-u.dividerLine.startX,height:u.dividerLine.endY-u.dividerLine.startY,points:[Hg(0,0),Hg(u.dividerLine.endX-u.dividerLine.startX,u.dividerLine.endY-u.dividerLine.startY)],strokeColor:B.strokeColor||"#000",strokeWidth:B.strokeWidth||1}},us4=(u)=>{let B=nw(u.containerStyle),E=Math.max(2,Math.min(u.width,u.height)*0.32),A=u.endInnerColor||B.strokeColor||B.backgroundColor||vU0;return{id:`${u.id}__inner`,type:"ellipse",groupIds:SU0(u),x:u.x+E,y:u.y+E,width:Math.max(1,u.width-E*2),height:Math.max(1,u.height-E*2),backgroundColor:A,strokeColor:A,fillStyle:"solid",strokeWidth:1}},Bs4=(u)=>{let B=u.reflectionPoints.map((E,A,C)=>{let D=C[0];if(A===0)return Hg(0,0);return Hg(E.x-D.x,E.y-D.y)});return{id:u.id,type:"arrow",x:u.startX,y:u.startY,width:u.endX-u.startX,height:u.endY-u.startY,points:B,strokeColor:u.strokeColor||"#000",strokeWidth:u.strokeWidth||2,strokeStyle:u.strokeStyle||"solid",endArrowhead:u.isNoteEdge?null:"triangle",roundness:{type:2},start:{id:u.start},end:{id:u.end},...u.text?{label:{text:u.text,fontSize:16}}:{}}},OAu;var IAu=g(()=>{_w();qU0();$d4=YAu*2,yd4=YAu*2,RAu=new Set(["choice","fork","join","stateStart","stateEnd","divider"]),OAu=new xE({converter:(u)=>{let B=[];return u.nodes.forEach((E)=>{if(!E.isRenderable)return;let A=td4(E);B.push(A);let C=ed4(E);if(C)B.push(C);if(E.shape==="stateEnd")B.push(us4(E))}),u.edges.forEach((E)=>{B.push(Bs4(E))}),{elements:B}}})});var D5=(u)=>{u=Es4(u);let B=u.replace(/#(\d+);/g,"&#$1;").replace(/#([a-z]+);/g,"&$1;"),E=document.createElement("textarea");return E.innerHTML=B,E.value},dC=(u)=>{let E=u.getAttribute("transform")?.match(/translate\(([ \d.-]+),\s*([\d.-]+)\)/),A=0,C=0;if(E)A=Number(E[1]),C=Number(E[2]);return{transformX:A,transformY:C}},PAu=(u)=>{let B=u;return B=B.replace(/style.*:\S*#.*;/g,(E)=>{return E.substring(0,E.length-1)}),B=B.replace(/classDef.*:\S*#.*;/g,(E)=>{return E.substring(0,E.length-1)}),B=B.replace(/#\w+;/g,(E)=>{let A=E.substring(1,E.length-1);if(/^\+?\d+$/.test(A))return`fl°°${A}¶ß`;return`fl°${A}¶ß`}),B},Es4=function(u){return u.replace(/fl°°/g,"#").replace(/fl°/g,"&").replace(/¶ß/g,";")},CT=(u,B=0.5)=>{let E=[];return u.forEach((A)=>{let C=E[E.length-1];if(!C){E.push(A);return}if(Math.hypot(A[0]-C[0],A[1]-C[1])<=B)return;E.push(A)}),E},DT=(u)=>{let B=u.getAttribute("d");if(!B)return null;let E=Array.from(B.matchAll(/-?\d*\.?\d+(?:e[-+]?\d+)?/gi),(A)=>Number(A[0]));if(E.length<4)return null;return{startX:E[0],startY:E[1],endX:E[E.length-2],endY:E[E.length-1]}},Lg=(u)=>{let B=u.getAttribute("data-points");if(!B){let E=DT(u);return E?[{x:E.startX,y:E.startY},{x:E.endX,y:E.endY}]:[]}try{let E=atob(B),A=JSON.parse(E);return Array.isArray(A)?A.filter((C)=>C&&typeof C.x==="number"&&typeof C.y==="number"&&Number.isFinite(C.x)&&Number.isFinite(C.y)):[]}catch{return[]}},qg=(u,B={x:0,y:0},E="LM")=>{if(u.tagName.toLowerCase()!=="path")throw Error(`Invalid input: Expected an HTMLElement of tag "path", got ${u.tagName}`);let A=u.getAttribute("d");if(!A)throw Error('Path element does not contain a "d" attribute');let C=A.split(new RegExp(`(?=[${E}])`)),D=C[0].substring(1).split(",").map((z)=>parseFloat(z)),F=C[C.length-1].substring(1).split(",").map((z)=>parseFloat(z)),U=C.map((z)=>{let k=z[0],f=z.substring(1).split(",").map((l)=>parseFloat(l));if(k==="C")return{x:f[4],y:f[5],command:k};return{x:f[0],y:f[1],command:k}}).filter((z,k,f)=>{if(k===0||k===f.length-1)return!0;if(z.x===f[k-1].x&&z.y===f[k-1].y)return!1;if(k===f.length-2&&z.command==="C")return!1;if(k===f.length-2&&(f[k-1].x===z.x||f[k-1].y===z.y)){let l=f[f.length-1];return Math.hypot(l.x-z.x,l.y-z.y)>20}return z.x!==f[k-1].x||z.y!==f[k-1].y}).map((z)=>{return{x:z.x+B.x,y:z.y+B.y}});return{startX:D[0]+B.x,startY:D[1]+B.y,endX:F[0]+B.x,endY:F[1]+B.y,reflectionPoints:U}};var As4=(u)=>{return{...u,elements:u.elements.map((B)=>{if(!("points"in B)||!Array.isArray(B.points))return B;let E=B.points;if(E.length<2)return B;let A=CT(E);if(A.length===E.length)return B;return{...B,points:A}})}},jAu=(u,B={})=>{let E=(()=>{switch(u.type){case"graphImage":return QAu.convert(u,B);case"flowchart":return JAu.convert(u,B);case"sequence":return LAu.convert(u,B);case"class":return XAu.convert(u,B);case"erd":return vAu.convert(u,B);case"state":return OAu.convert(u,B);default:throw Error(`graphToExcalidraw: unknown graph type "${u.type}, only flowcharts are supported!"`)}})();return As4(E)};var NAu=g(()=>{wAu();GAu();qAu();xAu();SAu();IAu()});var h3=(u)=>{return u.replace(/\s*!important\s*$/i,"").trim()},Cs4=(u,B)=>{let E=B;while(E<u.length&&/\s/.test(u[E]))E+=1;let A=E;while(E<u.length&&/[a-z-]/i.test(u[E]))E+=1;if(E===A)return!1;while(E<u.length&&/\s/.test(u[E]))E+=1;return u[E]===":"},h7=(u)=>{let B=[],E=0;while(E<u.length){while(E<u.length&&/[\s;,]/.test(u[E]))E+=1;if(E>=u.length)break;let A=E;while(E<u.length&&u[E]!==":"){if(u[E]===";"||u[E]===",")break;E+=1}if(E>=u.length||u[E]!==":")break;let C=u.substring(A,E).trim().toLowerCase();E+=1;let D=E,F=0,U=null;while(E<u.length){let k=u[E];if(U){if(k===U&&u[E-1]!=="\\")U=null;E+=1;continue}if(k==='"'||k==="'"){U=k,E+=1;continue}if(k==="("){F+=1,E+=1;continue}if(k===")"){F=Math.max(0,F-1),E+=1;continue}if(F===0){if(k===";"||k===",")break;if(/\s/.test(k)&&Cs4(u,E))break}E+=1}let z=h3(u.substring(D,E));if(C&&z)B.push({property:C,value:z});if(E<u.length&&(u[E]===";"||u[E]===","))E+=1}return B},m7=(u)=>{let B=h3(u);if(!B)return!1;if(typeof CSS<"u"&&typeof CSS.supports==="function")return CSS.supports("color",B);if(typeof document<"u"){let E=document.createElement("div");return E.style.color="",E.style.color=B,E.style.color!==""}return!1},iAu=(u,B)=>{let E=u.getAttribute("style");if(!E)return"";return h7(E).find((A)=>A.property===B)?.value||""},WU0=(...u)=>{for(let B of u){let E=h3(B||"");if(m7(E))return E}return},Zq=(u,B)=>{let E=u.querySelector("text, foreignObject, div, span, p")||u,A=WU0(E.getAttribute?.("fill"),iAu(E,"fill"),E.style?.fill);if(A)return A;let C=WU0(E.getAttribute?.("color"),iAu(E,"color"),E.style?.color);if(C)return C;let D=WU0(B);if(D)return D;return};var RU0=(u,B,E)=>{switch(B){case b1.FILL:case b1.STROKE:if(m7(E))u[B]=E;break;case b1.STROKE_WIDTH:case b1.STROKE_DASHARRAY:u[B]=E;break}},Xg=(u,B,E)=>{if(B===i5.COLOR&&m7(E))u[i5.COLOR]=E},xg=(u,B,E)=>{if(!u)return;h7(u).forEach(({property:A,value:C})=>{RU0(B,A,C),Xg(E,A,C)})},VAu=(u,B)=>{if(!u)return;h7(u).forEach(({property:E,value:A})=>{if(E==="fill"&&m7(A)){B[i5.COLOR]=A;return}Xg(B,E,A)})},hAu=(u,B)=>{if(!u)return;[[b1.FILL,u.getAttribute("fill")],[b1.STROKE,u.getAttribute("stroke")],[b1.STROKE_WIDTH,u.getAttribute("stroke-width")],[b1.STROKE_DASHARRAY,u.getAttribute("stroke-dasharray")]].forEach(([A,C])=>{let D=h3(C||"");if(D)RU0(B,A,D)})},mAu=(u,B)=>{if(!u)return;let E=u.getAttribute("fill")||u.getAttribute("color"),A=h3(E||"");if(m7(A))B[i5.COLOR]=A},YU0=(u,B,E,A)=>{if(!(B instanceof Map))return;let C=B.get(u);if(!C)return;C.styles?.forEach((D)=>{h7(D).forEach(({property:F,value:U})=>{RU0(E,F,U),Xg(A,F,U)})}),C.textStyles?.forEach((D)=>{h7(D).forEach(({property:F,value:U})=>{Xg(A,F,U)})})},Ds4=(u,B,E)=>{let A=u.nodes.map((b)=>{if(b.startsWith("flowchart-"))return b.split("-")[1];return b}),C=B.querySelector(`[id='${u.id}']`);if(!C)throw Error("SubGraph element not found");let D=TU0(C,B),F=C.getBBox(),U={width:F.width,height:F.height},z={},k={},f=C.querySelector(":scope > rect, :scope > path, :scope > polygon, :scope > ellipse")||C.querySelector(".cluster > rect, .cluster > path, .cluster > polygon, .cluster > ellipse")||C.querySelector("rect, path, polygon, ellipse");xg(C.getAttribute("style"),z,k),xg(f?.getAttribute("style"),z,k),hAu(f,z);let l=C.querySelector(".cluster-label text, .cluster-label tspan")||C.querySelector("text");return VAu(l?.getAttribute("style"),k),mAu(l,k),YU0(u.id,E,z,k),u.classes?.forEach((b)=>{YU0(b,E,z,k)}),{id:u.id,nodeIds:A,text:D5(u.title),labelType:"text",...D,...U,containerStyle:z,labelStyle:k}},aAu=(u,B,E)=>{let A=B.querySelector(`[id*="${u.domId}"]`);if(!A)return;let C;if(A.parentElement?.tagName.toLowerCase()==="a")C=A.parentElement.getAttribute("xlink:href");let D=TU0(C?A.parentElement:A,B),F=A.getBBox(),U={width:F.width,height:F.height},z={},k={};if(u.classes&&E instanceof Map)(Array.isArray(u.classes)?u.classes:[u.classes]).forEach((b)=>{YU0(b,E,z,k)});u.styles?.forEach((b)=>{xg(b,z,k)});let f=A.querySelector(".label-container");return xg(f?.getAttribute("style"),z,k),hAu(f,z),Array.from(A.querySelectorAll(".label, .nodeLabel, .label text, .label tspan, .label span, .label div")).forEach((b)=>{VAu(b.getAttribute("style"),k),mAu(b,k)}),{id:u.id,labelType:u.labelType,text:D5(u.text||""),type:u.type,link:C||void 0,...D,...U,containerStyle:z,labelStyle:k}},Fs4=(u,B,E)=>{let A=E.querySelector(`[id*="${u.id}"]`);if(!A)throw Error("Edge element not found");let C=TU0(A,E),D=qg(A,C);return u.length=void 0,{...u,...D,text:D5(u.text)}},TU0=(u,B)=>{if(!u)throw Error("Element not found");let E=u.parentElement?.parentElement,A=u.childNodes[0],C={x:0,y:0};if(A){let{transformX:z,transformY:k}=dC(A),f=A.getBBox();C={x:Number(A.getAttribute("x"))||z+f.x||0,y:Number(A.getAttribute("y"))||k+f.y||0}}let{transformX:D,transformY:F}=dC(u),U={x:D+C.x,y:F+C.y};while(E&&E.id!==B.id){if(E.classList.value==="root"&&E.hasAttribute("transform")){let{transformX:z,transformY:k}=dC(E);U.x+=z,U.y+=k}E=E.parentElement}return U},rAu=(u,B)=>{let E=u.getVertices(),A=u.getEdges(),C=u.getSubGraphs(),D=u.getClasses(),F={},U=D instanceof Map?D:{};if(E instanceof Map)E.forEach((l,b)=>{F[b]=aAu(l,B,U)});else if(typeof E==="object"&&E!==null)Object.entries(E).forEach(([l,b])=>{F[l]=aAu(b,B,U)});let z=new Map,k=(Array.isArray(A)?A:[]).map((l)=>{if(!B.querySelector(`[id*="${l.id}"]`))return null;let b=`${l.start}-${l.end}`,M=z.get(b)||0;return z.set(b,M+1),Fs4(l,M,B)}).filter((l)=>l!==null&&l.reflectionPoints.length>1);return{type:"flowchart",subGraphs:(Array.isArray(C)?C:[]).map((l)=>{return Ds4(l,B,U)}),vertices:F,edges:k}};var $Au=g(()=>{uT()});var yAu=(u,B)=>{let E={};if(B?.label)E.label={text:D5(B.label),fontSize:16};let A=u.tagName;if(A==="line")E.startX=Number(u.getAttribute("x1")),E.startY=Number(u.getAttribute("y1")),E.endX=Number(u.getAttribute("x2")),E.endY=Number(u.getAttribute("y2"));else if(A==="path"){let F=u.getAttribute("d");if(!F)throw Error('Path element does not contain a "d" attribute');let U=F.split(/(?=[LC])/),z=U[0].substring(1).split(",").map((l)=>parseFloat(l)),k=[];U.forEach((l)=>{let b=l.substring(1).trim().split(" ").map((M)=>{let[Z,J]=M.split(",");return[parseFloat(Z)-z[0],parseFloat(J)-z[1]]});k.push(...b)});let f=k[k.length-1];E.startX=z[0],E.startY=z[1],E.endX=f[0],E.endY=f[1],E.points=k}if(B?.label)E.startY=E.startY-10,E.endY=E.endY-10;let C=u.getAttribute("stroke"),D=(C&&C!=="none"?C:"")||getComputedStyle(u).stroke||"";return E.strokeColor=D?h3(D):null,E.strokeWidth=Number(u.getAttribute("stroke-width")),E.type="arrow",E.strokeStyle=B?.strokeStyle||"solid",E.startArrowhead=B?.startArrowhead||null,E.endArrowhead=B?.endArrowhead||null,E},FT=(u,B,E,A,C)=>{let D={};return D.type="arrow",D.startX=u,D.startY=B,D.endX=E,D.endY=A,Object.assign(D,{...C}),D},Jq=(u,B,E,A)=>{return{type:"text",x:u,y:B,text:E,width:A?.width||20,height:A?.height||20,fontSize:A?.fontSize||Pb,id:A?.id,color:A?.color,groupId:A?.groupId,metadata:A?.metadata}},OU0=(u,B,E)=>{let A={},C=Number(u.getAttribute("x")),D=Number(u.getAttribute("y"));if(A.type="text",A.text=D5(B),E?.id)A.id=E.id;if(E?.groupId)A.groupId=E.groupId;let F=u.getBBox();A.width=F.width,A.height=F.height,A.x=C-F.width/2,A.y=D;let U=parseInt(getComputedStyle(u).fontSize);return A.fontSize=U,A.color=Zq(u),A},sC=(u,B,E={})=>{let A={};A.type=B;let{label:C,subtype:D,id:F,groupId:U}=E;if(A.id=F,U)A.groupId=U;if(C)A.label={text:D5(C.text),fontSize:16,textAlign:C?.textAlign,verticalAlign:C?.verticalAlign};let z=u.getBBox();switch(A.x=z.x,A.y=z.y,A.width=z.width,A.height=z.height,A.subtype=D,D){case"highlight":let k=u.getAttribute("fill");if(k)A.bgColor=h3(k);break;case"note":A.strokeStyle="dashed";break}return A},dw=(u,B,E,A,C,D)=>{let F={};if(F.startX=B,F.startY=E,F.endX=A,D?.groupId)F.groupId=D.groupId;if(D?.id)F.id=D.id;F.endY=C;let U=u.getAttribute("stroke");return F.strokeColor=U?h3(U):null,F.strokeWidth=Number(u.getAttribute("stroke-width")),F.type="line",F};var vg=g(()=>{gw()});var cAu,JU,Us4=(u)=>{let B;switch(u){case JU.SOLID:case JU.SOLID_CROSS:case JU.SOLID_OPEN:case JU.SOLID_POINT:B="solid";break;case JU.DOTTED:case JU.DOTTED_CROSS:case JU.DOTTED_OPEN:case JU.DOTTED_POINT:B="dotted";break;default:B="solid";break}return B},zs4=(u,B)=>{if(!!u.nextElementSibling?.classList.contains("sequenceNumber")){let A=u.nextElementSibling?.textContent;if(!A)throw Error("sequence number not present");let C=30,D=C/2,F=10,U={type:"rectangle",x:B.startX-F,y:B.startY-D,label:{text:A,fontSize:14},bgColor:"#e9ecef",height:C,subtype:"sequence"};Object.assign(B,{sequenceNumber:U})}},gAu=(u,B,E)=>{if(!u)throw"root node not found";let A=z9(),C=Array.from(u.children),D=[];return C.forEach((F,U)=>{let z=`${E?.id}-${U}`,k;switch(F.tagName){case"line":let f=Number(F.getAttribute("x1")),l=Number(F.getAttribute("y1")),b=Number(F.getAttribute("x2")),M=Number(F.getAttribute("y2"));k=dw(F,f,l,b,M,{groupId:A,id:z});break;case"text":k=OU0(F,B,{groupId:A,id:z});break;case"circle":k=sC(F,"ellipse",{label:F.textContent?{text:F.textContent}:void 0,groupId:A,id:z});default:k=sC(F,UAu[F.tagName],{label:F.textContent?{text:F.textContent}:void 0,groupId:A,id:z})}D.push(k)}),D},_Au=(u,B)=>{let E=B.getAttribute("fill"),A=B.getAttribute("stroke"),C=B.getAttribute("stroke-width"),D=B.getAttribute("stroke-dasharray");if(E&&E!=="none")u.bgColor=h3(E);if(A&&A!=="none")u.strokeColor=h3(A);if(C)u.strokeWidth=Number(C);if(D&&D.trim())u.strokeStyle="dashed"},ks4=(u,B)=>{let E=Array.from(B.querySelectorAll(".actor-top")),A=Array.from(B.querySelectorAll(".actor-bottom")),C=[],D=[],F={},U=u instanceof Map?Array.from(u.values()):Object.values(u),z=Array.from(B.querySelectorAll(".actor-line")),k=(f,l)=>{let b=f.name,M=z.find((J)=>J.getAttribute("name")===b);if(M)return M;let Z=f.type==="participant"?l.parentElement?.previousElementSibling:l.previousElementSibling;if(!Z)return null;if(Z.tagName==="line")return Z;return Z.querySelector("line")};return U.forEach((f)=>{let l=E.find((Z)=>Z.getAttribute("name")===f.name),b=A.find((Z)=>Z.getAttribute("name")===f.name);if(!l||!b)throw"root not found";let M=f.description;if(f.type==="participant"){let Z=sC(l,"rectangle",{id:`${f.name}-top`,label:{text:M},subtype:"actor"});if(_Au(Z,l),!Z)throw"Top Node element not found!";C.push([Z]);let J=sC(b,"rectangle",{id:`${f.name}-bottom`,label:{text:M},subtype:"actor"});F[f.name]={topId:`${f.name}-top`,bottomId:`${f.name}-bottom`,bindType:"rectangle"},_Au(J,b),C.push([J]);let w=k(f,l);if(w?.tagName!=="line")throw"Line not found";let K=Number(w.getAttribute("x1"));if(!Z.height)throw"Top node element height is null";let Q=Z.y+Z.height,G=J.y,L=Number(w.getAttribute("x2")),H=dw(w,K,Q,L,G);D.push(H)}else if(f.type==="actor"){let Z=gAu(l,M,{id:`${f.name}-top`});C.push(Z);let J=gAu(b,M,{id:`${f.name}-bottom`});C.push(J);let w=k(f,l);if(w?.tagName!=="line")throw"Line not found";let K=Number(w.getAttribute("x1")),Q=Number(w.getAttribute("y1")),G=Number(w.getAttribute("x2")),L=J.find((x)=>x.type==="ellipse");if(L){let x=L.y,v=dw(w,K,Q,G,x);D.push(v)}let H=Z.find((x)=>x.type==="ellipse"),q=J.find((x)=>x.type==="ellipse");if(H?.id&&q?.id)F[f.name]={topId:H.id,bottomId:q.id,bindType:"ellipse"}}}),{nodes:C,lines:D,actorMap:F}},fs4=(u,B,E)=>{let A=[],C=Array.from(B.querySelectorAll('[class*="messageLine"]')),D=Object.keys(cAu),F=u.filter((U)=>D.includes(U.type.toString()));return C.forEach((U,z)=>{let k=F[z],f=cAu[k.type],l=yAu(U,{label:k?.message,strokeStyle:Us4(k.type),endArrowhead:f==="SOLID_OPEN"||f==="DOTTED_OPEN"?null:"arrow"}),b=E[k.from],M=E[k.to];if(b?.topId&&M?.topId)l.start={type:b.bindType||"rectangle",id:b.topId},l.end={type:M.bindType||"rectangle",id:M.topId};zs4(U,l),A.push(l)}),A},ls4=(u,B)=>{let E=Array.from(B.querySelectorAll(".note")).map((D)=>D.parentElement),A=u.filter((D)=>D.type===JU.NOTE),C=[];return E.forEach((D,F)=>{if(!D)return;let U=D.firstChild,z=A[F].message,k=sC(U,"rectangle",{label:{text:z},subtype:"note"}),f=U.getAttribute("fill"),l=U.getAttribute("stroke"),b=U.getAttribute("stroke-width"),M=U.getAttribute("stroke-dasharray");if(f&&f!=="none")k.bgColor=h3(f);if(l&&l!=="none")k.strokeColor=h3(l);if(b)k.strokeWidth=Number(b);if(M&&M.trim())k.strokeStyle="dashed";C.push(k)}),C},bs4=(u)=>{let B=Array.from(u.querySelectorAll("[class*=activation]")),E=[];return B.forEach((A)=>{let C=sC(A,"rectangle",{label:{text:""},subtype:"activation"});(()=>{let F=A.getAttribute("fill"),U=A.getAttribute("stroke"),z=A.getAttribute("stroke-width"),k=A.getAttribute("stroke-dasharray");if(F&&F!=="none")C.bgColor=h3(F);if(U&&U!=="none")C.strokeColor=h3(U);if(z)C.strokeWidth=Number(z);if(k&&k.trim())C.strokeStyle="dashed"})(),E.push(C)}),E},Ms4=(u,B)=>{let E=Array.from(B.querySelectorAll(".loopLine")),A=[],C=[],D=[];E.forEach((f)=>{let l=Number(f.getAttribute("x1")),b=Number(f.getAttribute("y1")),M=Number(f.getAttribute("x2")),Z=Number(f.getAttribute("y2")),J=dw(f,l,b,M,Z);J.strokeStyle="dotted",J.strokeColor="#adb5bd",J.strokeWidth=2,A.push(J)});let F=Array.from(B.querySelectorAll(".loopText")),U=u.filter((f)=>f.type===JU.CRITICAL_START).map((f)=>f.message);F.forEach((f)=>{let l=f.textContent||"",b=OU0(f,l),M=l.match(/\[(.*?)\]/)?.[1]||"";if(U.includes(M))b.x+=16;C.push(b)});let z=Array.from(B?.querySelectorAll(".labelBox")),k=Array.from(B?.querySelectorAll(".labelText"));return z.forEach((f,l)=>{let b=k[l]?.textContent||"",M=sC(f,"rectangle",{label:{text:b}});M.strokeColor="#adb5bd",M.bgColor="#e9ecef",M.width=void 0,D.push(M)}),{lines:A,texts:C,nodes:D}},Zs4=(u)=>{let B=Array.from(u.querySelectorAll(".rect")).filter((A)=>A.parentElement?.tagName!=="g"),E=[];return B.forEach((A)=>{let C=sC(A,"rectangle",{label:{text:""},subtype:"highlight"});E.push(C)}),E},nAu=(u,B)=>{let E=u.db,A=[],D=E.getBoxes().map((w)=>({...w,fill:h3(w.fill||"")})),F=Zs4(B),U=E.getActors(),{nodes:z,lines:k,actorMap:f}=ks4(U,B),l=E.getMessages(),b=fs4(l,B,f),M=ls4(l,B),Z=bs4(B),J=Ms4(l,B);return A.push(F),A.push(...z),A.push(M),A.push(Z),{type:"sequence",lines:k,arrows:b,nodes:A,loops:J,groups:D}};var pAu=g(()=>{gw();bU();vg();cAu={0:"SOLID",1:"DOTTED",3:"SOLID_CROSS",4:"DOTTED_CROSS",5:"SOLID_OPEN",6:"DOTTED_OPEN",24:"SOLID_POINT",25:"DOTTED_POINT"},JU={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 Js4=(u)=>{let B={};if(!u)return B;return u.forEach((E)=>{h7(E).forEach(({property:A,value:C})=>{if(A&&C)B[A]=h3(C)})}),B},Sg,dAu,sAu=16,ws4=(u)=>{let B;switch(u){case dAu.LINE:B="solid";break;case dAu.DOTTED_LINE:B="dotted";break;default:B="solid"}return B},oAu=(u)=>{let B;switch(u){case Sg.AGGREGATION:B="diamond_outline";break;case Sg.COMPOSITION:B="diamond";break;case Sg.EXTENSION:B="triangle_outline";break;case"none":B=null;break;case Sg.DEPENDENCY:default:B="arrow";break}return B},IU0=(u,B)=>{let E=0,A=0,C=u;while(C&&C!==B){let{transformX:D,transformY:F}=dC(C);E+=D,A+=F,C=C.parentElement}return{tx:E,ty:A}},tAu,BCu=(u,B=0.5)=>{if(u.length<=2)return[...u];let E=[u[0]];for(let A=1;A<u.length-1;A++){let C=E[E.length-1],D=u[A],F=u[A+1],U=F.x-C.x,z=F.y-C.y,k=Math.hypot(U,z);if(!k)continue;let l=Math.abs(U*(D.y-C.y)-z*(D.x-C.x))/k,b=((D.x-C.x)*U+(D.y-C.y)*z)/(k*k);if(l<=B&&b>=-B&&b<=1+B)continue;E.push(D)}return E.push(u[u.length-1]),E},ECu=(u)=>{let B=CT(Lg(u).map((A)=>[A.x,A.y])).map(([A,C])=>({x:A,y:C})),E=DT(u);if(E&&B.length>=2)B[0]={x:E.startX,y:E.startY},B[B.length-1]={x:E.endX,y:E.endY};return BCu(B)},eAu=(u,B,E)=>{let A=u.x-B.x,C=u.y-B.y,D=Math.hypot(A,C);if(!D)return u;return{x:u.x+A/D*E,y:u.y+C/D*E}},Ks4=(u,B)=>{let E=CT(B.map((D)=>[D.x,D.y])).map(([D,F])=>({x:D,y:F}));if(E.length<2)throw Error("Arrow route must contain at least two points");let A=E[0],C=E[E.length-1];u.startX=A.x,u.startY=A.y,u.endX=C.x,u.endY=C.y,u.points=E.map((D)=>[D.x-A.x,D.y-A.y])},Qs4=(u)=>{let B=u.points?.map(([D,F])=>({x:u.startX+D,y:u.startY+F})).filter((D)=>Number.isFinite(D.x)&&Number.isFinite(D.y));if(!B||B.length<2)return u;let E=[...B],A=!!u.startArrowhead&&tAu.has(u.startArrowhead),C=!!u.endArrowhead&&tAu.has(u.endArrowhead);if(!A&&!C)return u;if(A)E[0]=eAu(E[0],E[1],sAu);if(C){let D=E.length-1;E[D]=eAu(E[D],E[D-1],sAu)}return Ks4(u,E),u},Gs4=(u,B)=>{let E=h3(u.getAttribute("stroke")||getComputedStyle(u).stroke||""),A=parseFloat(u.getAttribute("stroke-width")||getComputedStyle(u).strokeWidth||"1");if(m7(E)&&E!=="none")B.strokeColor=E;if(Number.isFinite(A)&&A>0)B.strokeWidth=A},Hs4=(u)=>{let B=[];return u.forEach((E)=>{ECu(E).forEach((A)=>{let C=B[B.length-1];if(C&&C.x===A.x&&C.y===A.y)return;B.push(A)})}),BCu(B)},ACu=(u,B,E)=>{if(u.length<2)throw Error(`Class diagram edge ${B?.id||"<unknown>"} is missing usable path points`);let A=u[0],C=u[u.length-1],D=FT(A.x,A.y,C.x,C.y,{id:B?.getAttribute("data-id")||B?.id||void 0,...E,points:u.map((F)=>[F.x-A.x,F.y-A.y])});if(B)Gs4(B,D);return Qs4(D)},CCu=(u,B)=>ACu(Hs4(u),u[0],B),Ls4=(u,B)=>{let E=ECu(u);return ACu([E[0],E[E.length-1]],u,B)},qs4=(u,B)=>CCu([u],B),Xs4=(u,B)=>{return[`${u}-cyclic-special-1`,`${u}-cyclic-special-mid`,`${u}-cyclic-special-2`].map((A)=>B.querySelector(`path[id="${A}"][data-edge="true"]`)).filter((A)=>A!==null)},xs4=(u)=>{return u.points?.map(([B,E])=>({x:u.startX+B,y:u.startY+E})).filter((B)=>Number.isFinite(B.x)&&Number.isFinite(B.y))||[]},uCu=(u,B)=>{let E=xs4(u);if(E.length<2)return null;let A=B==="start",C=A?E[0]:E[E.length-1],D=A?E[1]:E[E.length-2],F=D.x===C.x?A?-1:1:Math.sign(D.x-C.x),U=D.y===C.y?1:Math.sign(D.y-C.y);return{x:C.x+F*20,y:C.y+(U>=0?12:-28)}},vs4=(u,B)=>{let E=u;while(E&&E!==B){if(E.classList.contains("annotation-group"))return"header";if(E.classList.contains("label-group"))return"header";if(E.classList.contains("members-group"))return"members";if(E.classList.contains("methods-group"))return"methods";E=E.parentElement}return"other"},Ss4=(u,B,E)=>{let A=[],C=[],D=[];return Object.values(u).forEach((F)=>{let{domId:U,id:z}=F,k=z9(),f=Js4(F.styles||F.cssStyles),l;try{l=E?E(z):void 0}catch{l=void 0}let b=(i)=>{let N=new RegExp(`^classId-${i}(?:-|$)`);return Array.from(B.querySelectorAll("[id]")).filter((h)=>N.test(h.id))[0]},M=l&&B.querySelector(`#${l}`)||B.querySelector(`#${U}`)||B.querySelector(`[data-id='${z}']`)||b(z);if(!M)throw Error(`DOM Node with id ${U} not found`);let Z=M.querySelector("rect")||M,J=Z.getBBox(),{tx:w,ty:K}=IU0(Z,B),Q={type:"rectangle",id:z,groupId:k,x:J.x+w,y:J.y+K,width:J.width,height:J.height,metadata:{classId:z}},G=Z.getAttribute("fill"),L=Z.getAttribute("stroke"),H=Z.getAttribute("stroke-width"),q=Z.getAttribute("stroke-dasharray"),x=getComputedStyle(Z),v=h3(G||f.fill||(G?x.fill:"")),W=h3(L||f.stroke||(L?x.stroke:"")),S=H||f["stroke-width"]||(H?x.strokeWidth:""),T=q||f["stroke-dasharray"]||(q?x.strokeDasharray==="none"?"":x.strokeDasharray:""),R=(i)=>{if(!i)return!1;if(!m7(i))return!1;let N=i.toLowerCase();return!(N==="none"||N==="transparent"||N==="rgba(0, 0, 0, 0)"||N==="black"||N==="#000"||N==="#000000"||N==="rgb(0, 0, 0)"||N==="rgba(0, 0, 0, 1)")};if(R(v))Q.bgColor=v;else Q.bgColor=void 0;if(R(W))Q.strokeColor=W;else Q.strokeColor=void 0;if(S)Q.strokeWidth=Number(S);else Q.strokeWidth=void 0;if(T&&T.trim().length>0)Q.strokeStyle="dashed";else Q.strokeStyle=void 0;A.push(Q),[...Array.from(M.querySelectorAll("line")),...Array.from(M.querySelectorAll("g.divider path"))].forEach((i)=>{let{tx:N,ty:V}=IU0(i,B),h,r,m,$;if(i.tagName.toLowerCase()==="line")h=Number(i.getAttribute("x1"))+N,r=Number(i.getAttribute("y1"))+V,m=Number(i.getAttribute("x2"))+N,$=Number(i.getAttribute("y2"))+V;else{let p=i.getBBox();h=p.x+N,m=p.x+p.width+N;let e=p.y+p.height/2+V;r=e,$=e}if(h===m&&r===$)return;let y=dw(i,h,r,m,$,{groupId:k,id:z9()});if(Q.strokeColor)y.strokeColor=Q.strokeColor;else y.strokeColor=void 0;if(Q.strokeWidth!==void 0)y.strokeWidth=Q.strokeWidth;else y.strokeWidth=void 0;if(Q.strokeStyle)y.strokeStyle=Q.strokeStyle;else y.strokeStyle=void 0;y.metadata={classId:z},C.push(y)});let a=Array.from(M.querySelectorAll("text, foreignObject")),I=[];a.forEach((i)=>{let N=i.tagName.toLowerCase()==="foreignobject",V=!N?Array.from(i.querySelectorAll("tspan")):[],h=V.length?V.map((p)=>p.textContent?.trim()).filter(Boolean).join(`
`):i.textContent?.trim()||"";if(!h)return;let r=i.getBBox(),{ty:m}=IU0(i,B),$=parseFloat(getComputedStyle(i).fontSize||"");if(N&&(!Number.isFinite($)||!$)){let p=i.querySelector("div, span, p");if(p)$=parseFloat(getComputedStyle(p).fontSize||"")}if(!Number.isFinite($)||$<=0)$=Math.max(12,r.height*0.6);$=$*0.9;let y=Zq(i,f.color);I.push({section:vs4(i,M),text:D5(h),x:r.x,y:r.y+m,width:Q&&Q.width?Math.max(Q.width-8,r.width):r.width,height:r.height,fontSize:$,color:y})});let O=I.filter((i)=>i.section==="header").sort((i,N)=>i.y-N.y||i.x-N.x);if(!Q.label){let i=O.length===0&&I.length===1?I:O;if(i.length>0)Q.label={text:i.map((N)=>N.text).join(`
`),fontSize:Math.max(...i.map((N)=>N.fontSize)),color:i.find((N)=>N.color)?.color,verticalAlign:"top"}}I.filter((i)=>{if(O.length>0)return i.section!=="header";return!(Q.label&&I.length===1)}).forEach((i)=>{let N=Jq((Q?.x||0)+4,i.y,i.text,{width:i.width,height:i.height,fontSize:i.fontSize,color:i.color,id:z9(),groupId:k,metadata:{classId:z}});D.push(N)})}),{nodes:A,lines:C,text:D}},Ws4=(u,B,E,A)=>{let C=Array.from(E.querySelectorAll('.edgePaths path[data-edge="true"]:not([id^="edgeNote"]):not([id*="-cyclic-special-"])'));if(u.length===0)return{arrows:[],text:[]};let D=[],F=[],U=0;return u.forEach((z)=>{let{id1:k,id2:f,relation:l}=z,b=B.find((S)=>S.id===k),M=B.find((S)=>S.id===f);if(!b)throw Error(`parseRelations: Cannot find node with id ${k}`);if(!M)throw Error(`parseRelations: Cannot find node with id ${f}`);let Z=ws4(l.lineType),J=oAu(l.type1),w=oAu(l.type2),K;if(k===f){let S=Xs4(k,E);if(!S.length)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${k} -> ${f}`);K=CCu(S,{strokeStyle:Z,startArrowhead:J,endArrowhead:w,label:z.title?{text:z.title}:void 0,start:{type:"rectangle",id:b.id},end:{type:"rectangle",id:M.id}})}else{let S=C[U];if(!S)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${k} -> ${f}`);U+=1,K=Ls4(S,{strokeStyle:Z,startArrowhead:J,endArrowhead:w,label:z.title?{text:z.title}:void 0,start:{type:"rectangle",id:b.id},end:{type:"rectangle",id:M.id}})}D.push(K);let{relationTitle1:Q,relationTitle2:G}=z,L=k===f,H=20,q=15,x=15,v,W;if(Q&&Q!=="none"){if(L){let T=uCu(K,"start");if(T)v=T.x,W=T.y}else switch(A){case"TB":if(v=K.startX-H,K.endX<K.startX)v-=x;W=K.startY+q;break;case"BT":if(v=K.startX+H,K.endX>K.startX)v+=x;W=K.startY-q;break;case"LR":if(v=K.startX+H,W=K.startY+q,K.endY>K.startY)W+=x;break;case"RL":if(v=K.startX-H,W=K.startY-q,K.startY>K.endY)W-=x;break;default:v=K.startX-H,W=K.startY+q}v??=K.startX-H,W??=K.startY+q;let S=Jq(v,W,Q,{fontSize:16});F.push(S)}if(G&&G!=="none"){if(L){let T=uCu(K,"end");if(T)v=T.x,W=T.y}else switch(A){case"TB":if(v=K.endX+H,K.endX<K.startX)v+=x;W=K.endY-q;break;case"BT":if(v=K.endX-H,K.endX>K.startX)v-=x;W=K.endY+q;break;case"LR":if(v=K.endX-H,W=K.endY-q,K.endY>K.startY)W-=x;break;case"RL":if(v=K.endX+H,W=K.endY+q,K.startY>K.endY)W+=x;break;default:v=K.endX+H,W=K.endY-q}v??=K.endX+H,W??=K.endY+q;let S=Jq(v,W,G,{fontSize:16});F.push(S)}}),{arrows:D,text:F}},Ys4=(u,B,E)=>{let A=[],C=[];return u.forEach((D,F)=>{let{id:U,text:z,class:k}=D,f=B.querySelector(`#${U}`);if(!f)throw Error(`Node with id ${U} not found!`);let{transformX:l,transformY:b}=dC(f),M=f.firstChild,Z=sC(M,"rectangle",{id:U,subtype:"note",label:{text:z}});if(Object.assign(Z,{x:Z.x+l,y:Z.y+b}),A.push(Z),k){let J=E.find((q)=>q.id===k);if(!J)throw Error(`class node with id ${k} not found!`);let w=B.querySelector(`path[id="edgeNote${F+1}"][data-edge="true"]`);if(w){C.push(qs4(w,{strokeStyle:"dotted",startArrowhead:null,endArrowhead:null,start:{id:Z.id,type:"rectangle"},end:{id:J.id,type:"rectangle"}}));return}let K=Z.x+(Z.width||0)/2,Q=Z.y+(Z.height||0),G=K,L=J.y,H=FT(K,Q,G,L,{strokeStyle:"dotted",startArrowhead:null,endArrowhead:null,start:{id:Z.id,type:"rectangle"},end:{id:J.id,type:"rectangle"}});C.push(H)}}),{notes:A,connectors:C}},DCu=(u,B)=>{let E=u.db,A=E.getDirection?.()||"TB",C=[],D=[],F=[],U=[],z=E.getNamespaces?.()||[],k=E.getClasses?.()||{},f=k instanceof Map?Object.fromEntries(k):k;if(f&&Object.keys(f).length){let K=typeof E.lookUpDomId==="function"?E.lookUpDomId.bind(E):void 0,Q=Ss4(f,B,K);C.push(Q.nodes),D.push(...Q.lines),F.push(...Q.text),U.push(...Q.nodes)}let l=E.getRelations?.()||[],{arrows:b,text:M}=Ws4(l,U,B,A),Z=E.getNotes?.()||[],{notes:J,connectors:w}=Ys4(Z,B,U);return C.push(J),b.push(...w),F.push(...M),{type:"class",nodes:C,lines:D,arrows:b,text:F,namespaces:z}};var FCu=g(()=>{bU();vg();Sg={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},dAu={LINE:0,DOTTED_LINE:1},tAu=new Set(["triangle_outline","diamond","diamond_outline"])});var UCu=18,Rs4=(u)=>{let B={};if(!u)return B;return u.forEach((E)=>{h7(E).forEach(({property:A,value:C})=>{if(A&&C)B[A]=h3(C)})}),B},Ts4=(u)=>{if(u===null||u===void 0||u==="")return;let B=typeof u==="number"?u:parseFloat(h3(u));if(!Number.isFinite(B)||B<=0)return;return B},PU0=(u,B)=>{let E=0,A=0,C=u;while(C&&C!==B){let{transformX:D,transformY:F}=dC(C);E+=D,A+=F,C=C.parentElement}return{tx:E,ty:A}},Os4=(u)=>{let B=Array.from(u.querySelectorAll("tspan")),E=B.length?B.map((A)=>A.textContent?.trim()).filter(Boolean).join(`
`):u.textContent?.trim()||"";return D5(E)},Is4=(u)=>{let B=u.querySelector("text, foreignObject, div, span, p")||u,E=parseFloat(getComputedStyle(B).fontSize||"");if(!Number.isFinite(E)||E<=0)E=Math.max(12,u.getBBox().height*0.75);return E},Ps4=(u,B,E)=>{let A=Os4(u);if(!A)return null;let C=u.getBBox(),{tx:D,ty:F}=PU0(u,B);return{className:u.getAttribute("class")||"",text:A,x:C.x+D,y:C.y+F,width:C.width,height:C.height,fontSize:Is4(u),color:Zq(u,E)}},js4=(u,B,E,A,C,D,F)=>{let{tx:U,ty:z}=PU0(u,B),k=0,f=0,l=0,b=0;if(u.tagName.toLowerCase()==="line")k=Number(u.getAttribute("x1"))+U,f=Number(u.getAttribute("y1"))+z,l=Number(u.getAttribute("x2"))+U,b=Number(u.getAttribute("y2"))+z;else{let Z=DT(u);if(!Z)return null;k=Z.startX+U,f=Z.startY+z,l=Z.endX+U,b=Z.endY+z}let M={type:"line",id:z9(),groupId:E,startX:k,startY:f,endX:l,endY:b,metadata:{entityId:A}};if(C&&m7(C)&&C!=="none")M.strokeColor=C;if(D!==void 0)M.strokeWidth=D;if(F)M.strokeStyle=F;return M},zCu=(u)=>{switch(u?.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}},Ns4=(u)=>{switch(u){case"dotted":return"dotted";case"dashed":return"dashed";default:return"solid"}},is4=(u,B)=>{let E=B.querySelector(`path[id="${u.id}"][data-edge="true"]`);if(E)return[E];if(u.start!==u.end)return[];return[`${u.start}-cyclic-special-1`,`${u.start}-cyclic-special-mid`,`${u.start}-cyclic-special-2`].map((C)=>B.querySelector(`path[id="${C}"][data-edge="true"]`)).filter((C)=>C!==null)},as4=(u)=>{let B=[];return u.forEach((E)=>{Lg(E).forEach((A)=>{let C=B[B.length-1];if(C&&C.x===A.x&&C.y===A.y)return;B.push(A)})}),B},Vs4=(u,B)=>{let E=B.querySelector(`[id="${u.id}"]`);if(!E)throw Error(`ER entity ${u.id} not found in rendered SVG`);let A=u.attributes.length?z9():void 0,C=E.getBBox(),{tx:D,ty:F}=PU0(E,B),U=Rs4([...u.cssStyles||[],...u.cssCompiledStyles||[]]),z=h3(U.fill||""),k=h3(U.stroke||""),f=Ts4(U["stroke-width"]),l=h3(U["stroke-dasharray"]||""),b=Array.from(E.querySelectorAll("g.label")).map((G)=>Ps4(G,B,U.color)).filter((G)=>G!==null),M=b.find((G)=>G.className.includes("name"))||b[0],Z=b.filter((G)=>G!==M),J=M?.text||D5(u.alias||u.label||""),w={type:"rectangle",id:u.id,groupId:A,x:C.x+D,y:C.y+F,width:C.width,height:C.height,label:{text:J,fontSize:u.attributes.length?UCu:M?.fontSize||16,color:M?.color,textAlign:"center",verticalAlign:u.attributes.length?"top":"middle"},metadata:{entityId:u.id,entityLabel:u.label,entityAlias:u.alias}};if(m7(z)&&z!=="none")w.bgColor=z;if(m7(k)&&k!=="none")w.strokeColor=k;if(f&&Number.isFinite(f)&&f>0)w.strokeWidth=f;if(l&&l!=="none")w.strokeStyle="dashed";let K=Array.from(E.querySelectorAll(".divider path, path.divider, line.divider")).map((G)=>js4(G,B,A,u.id,w.strokeColor,w.strokeWidth,w.strokeStyle)).filter((G)=>G!==null),Q=Z.map((G)=>Jq(G.x,G.y,G.text,{id:z9(),groupId:A,width:G.width,height:G.height,fontSize:UCu,color:G.color,metadata:{entityId:u.id}}));return{container:w,lines:K,text:Q}},hs4=(u,B)=>{let E=is4(u,B);if(!E.length)throw Error(`ER relationship ${u.id} not found in rendered SVG`);let A=as4(E);if(A.length<2)throw Error(`ER relationship ${u.id} is missing usable path points`);let C=A[0],D=A[A.length-1],F=E[0],U=h3(F.getAttribute("stroke")||getComputedStyle(F).stroke||""),z=Number(F.getAttribute("stroke-width")||getComputedStyle(F).strokeWidth||1),k=FT(C.x,C.y,D.x,D.y,{id:u.id,label:u.label?{text:D5(u.label),fontSize:16,textAlign:"center"}:void 0,strokeStyle:Ns4(u.pattern),startArrowhead:zCu(u.arrowTypeStart),endArrowhead:zCu(u.arrowTypeEnd),start:{type:"rectangle",id:u.start},end:{type:"rectangle",id:u.end},points:A.map((f)=>[f.x-C.x,f.y-C.y])});if(m7(U)&&U!=="none")k.strokeColor=U;if(Number.isFinite(z)&&z>0)k.strokeWidth=z;return k},kCu=(u,B)=>{let E=u.getData(),A=E.nodes,C=E.edges,D=[],F=[],U=[];A.forEach((k)=>{let f=Vs4(k,B);D.push(f.container),F.push(...f.lines),U.push(...f.text)});let z=C.map((k)=>hs4(k,B));return{type:"erd",nodes:[D],lines:F,arrows:z,text:U}};var fCu=g(()=>{bU();vg()});var sw=(u)=>{let B=h3(u||"");if(!B)return!1;if(B==="none"||B==="transparent"||B==="rgba(0, 0, 0, 0)"||B==="rgba(0,0,0,0)")return!1;return m7(B)},bCu=(u,B,E)=>{switch(B){case b1.FILL:case b1.STROKE:if(sw(E))u[B]=h3(E);break;case b1.STROKE_WIDTH:case b1.STROKE_DASHARRAY:if(h3(E))u[B]=h3(E);break}},MCu=(u,B,E)=>{if(B===i5.COLOR&&sw(E))u[i5.COLOR]=h3(E)},ms4=(u,B,E)=>{if(!u)return;h7(u).forEach(({property:A,value:C})=>{bCu(B,A,C),MCu(E,A,C)})},rs4=(u,B)=>{if(!u)return;h7(u).forEach(({property:E,value:A})=>{if(E===b1.FILL&&sw(A)){B[i5.COLOR]=h3(A);return}MCu(B,E,A)})},$s4=(u)=>{let B=new Set;return u.filter(Boolean).forEach((E)=>{h7(E||"").forEach(({property:A})=>{B.add(A)})}),B},ys4=(u,B,E)=>{if(!u)return;[[b1.FILL,u.getAttribute("fill")],[b1.STROKE,u.getAttribute("stroke")],[b1.STROKE_WIDTH,u.getAttribute("stroke-width")],[b1.STROKE_DASHARRAY,u.getAttribute("stroke-dasharray")]].forEach(([C,D])=>{if(!E.has(C))return;if(B[C])return;let F=h3(D||"");if(!F)return;bCu(B,C,F)})},cs4=(u,B,E)=>{if(!u)return;let A=[u,...Array.from(u.querySelectorAll("text, foreignObject, div, span, p"))];for(let C of A){if(B[i5.COLOR])break;if(E.has(i5.COLOR)||E.has(b1.FILL)){if(rs4(C.getAttribute("style"),B),B[i5.COLOR])break}let D=h3(C.getAttribute("fill")||C.getAttribute("color")||"");if((E.has(i5.COLOR)||E.has(b1.FILL))&&sw(D))B[i5.COLOR]=D}},NU0=(u,B)=>{let E=0,A=0,C=u;while(C&&C!==B){let{transformX:D,transformY:F}=dC(C);E+=D,A+=F,C=C.parentElement}return{tx:E,ty:A}},gs4=(u,B)=>{let E=u.getBBox(),{tx:A,ty:C}=NU0(u,B);return{x:E.x+A,y:E.y+C,width:E.width,height:E.height}},_s4=(u,B)=>{let E=u.querySelector("line.divider");if(!E)return;let{tx:A,ty:C}=NU0(E,B);return{startX:Number(E.getAttribute("x1"))+A,startY:Number(E.getAttribute("y1"))+C,endX:Number(E.getAttribute("x2"))+A,endY:Number(E.getAttribute("y2"))+C}},ns4=(u)=>{let B=u.getBBox();return Math.abs(B.width*B.height)},lCu=(u,B)=>{let E=u.getAttribute("style");if(!E)return;let A=h7(E).find((C)=>C.property===B);if(!A)return;return h3(A.value)},jU0=(u,B)=>{let E=u.map((C)=>({element:C,area:ns4(C)})).filter(({area:C})=>Number.isFinite(C)&&C>0);if(E.length===0)return null;return E.sort((C,D)=>B==="largest"?D.area-C.area:C.area-D.area)[0].element},ps4=(u,B)=>{if(!u)return;if(!B.has(b1.FILL)&&!B.has(b1.STROKE))return;let E=h3(u.getAttribute("fill")||lCu(u,b1.FILL)||""),A=h3(u.getAttribute("stroke")||lCu(u,b1.STROKE)||"");if(sw(E))return E;if(sw(A))return A;return},ds4=(u,B)=>{let E=Array.from(u.querySelectorAll("circle, ellipse, path")),A=jU0(E,"smallest");return ps4(A,B)},ss4=(u)=>{if(u.length<2)return u;let B=u.slice(1),E=B.filter((A)=>A.trim().length>0).reduce((A,C)=>{let D=C.match(/^\s*/)?.[0].length??0;return Math.min(A,D)},Number.POSITIVE_INFINITY);if(!Number.isFinite(E)||E<=0)return u.map((A)=>A.trimEnd());return[u[0].trimEnd(),...B.map((A)=>A.replace(new RegExp(`^\\s{0,${E}}`),"").trimEnd())]},os4=(u)=>{let B=Array.isArray(u.label)?u.label.map((A)=>D5(A)):D5(u.label||"").split(`
`);return ss4(B).join(`
`)},ts4=(u)=>{if(!u.description)return[];return(Array.isArray(u.description)?u.description:[u.description]).map((E)=>D5(E)).filter((E)=>E.length>0)},es4=(u)=>{let B=new Set,E=(C)=>{if(C)B.add(C);return C},A=(C)=>{let D=C.find((F)=>!B.has(F));return E(D||null)};return(C)=>{let D=[`[id='${C.domId}']`,`[id='${C.id}']`,`[data-id='${C.id}']`];for(let F of D){let U=u.querySelector(F);if(U)return E(U)}switch(C.shape){case"divider":return A(Array.from(u.querySelectorAll("g.statediagram-cluster-alt")));case"stateStart":return A(Array.from(u.querySelectorAll("g.node.default")).filter((F)=>F.querySelector("circle.state-start")));case"stateEnd":return A(Array.from(u.querySelectorAll("g.node.default")).filter((F)=>!F.querySelector("circle.state-start")));default:return null}}},uo4=(u,B)=>{switch(B){case"roundedWithTitle":return u.querySelector("rect.outer")||u.querySelector("rect")||u;case"divider":return u.querySelector("rect.divider")||u.querySelector("rect")||u;case"rectWithTitle":return u.querySelector("rect.outer")||u.querySelector("rect")||u;case"stateStart":return jU0(Array.from(u.querySelectorAll("circle, ellipse, path")),"largest")||u;case"stateEnd":return jU0(Array.from(u.querySelectorAll("circle, ellipse, path")),"largest")||u;case"choice":case"fork":case"join":case"note":case"rect":default:return u.querySelector("rect, path, circle, ellipse, polygon")||u}},Bo4=(u,B,E)=>{let A=E(u);if(!A)throw Error(`State node element not found for "${u.id}"`);let C=uo4(A,u.shape),D={},F={},U=[u.labelStyle,...u.cssCompiledStyles||[],...u.cssStyles||[]],z=$s4(U);U.filter(Boolean).forEach((f)=>{ms4(f,D,F)}),ys4(C,D,z),cs4(A,F,z);let k=gs4(C,B);return{id:u.id,shape:u.shape,text:os4(u),description:ts4(u),x:k.x,y:k.y,width:k.width,height:k.height,parentId:u.parentId,position:u.position,containerStyle:D,labelStyle:F,dividerLine:u.shape==="rectWithTitle"?_s4(A,B):void 0,endInnerColor:u.shape==="stateEnd"?ds4(A,z):void 0,isRenderable:u.shape!=="noteGroup"}},Eo4=(u,B)=>{let E=B.querySelector(`[id='${u.id}']`);if(!E)return null;let{tx:A,ty:C}=NU0(E,B),D=qg(E,{x:A,y:C},"MCL");if(D.reflectionPoints.length<2)return null;let F={},U=(k,f)=>{switch(k){case b1.STROKE:if(sw(f))F.strokeColor=h3(f);break;case b1.STROKE_WIDTH:{let l=parseFloat(h3(f));if(Number.isFinite(l)&&l>0)F.strokeWidth=l;break}case b1.STROKE_DASHARRAY:if(h3(f))F.strokeStyle="dashed";break}};[u.style].filter(Boolean).forEach((k)=>{h7(k||"").forEach(({property:f,value:l})=>{U(f,l)})});let z=u.arrowhead==="none"||u.classes?.includes("note-edge");return{id:u.id,start:u.start,end:u.end,text:D5(u.label||""),...D,strokeColor:F.strokeColor,strokeWidth:F.strokeWidth,strokeStyle:z?"dashed":F.strokeStyle,isNoteEdge:z}},ZCu=(u,B)=>{let{nodes:E,edges:A}=u.getData(),C=es4(B);return{type:"state",nodes:E.map((D)=>Bo4(D,B,C)),edges:A.map((D)=>Eo4(D,B)).filter((D)=>D!==null)}};var JCu=g(()=>{uT()});var wCu,KCu=(u)=>{let B=wCu.then(u,u);return wCu=B.then(()=>{return},()=>{return}),B};var QCu=g(()=>{wCu=Promise.resolve()});var GCu=null,Ao4=0,Co4=(u)=>{return JSON.stringify(u)},HCu=(u)=>{let B=u.querySelector("svg");if(!B)throw Error("SVG element not found");let E=B.getBoundingClientRect(),A=E.width,C=E.height;B.setAttribute("width",`${A}`),B.setAttribute("height",`${C}`);let D="image/svg+xml",F=unescape(encodeURIComponent(B.outerHTML)),z=`data:image/svg+xml;base64,${btoa(F)}`;return{type:"graphImage",mimeType:D,dataURL:z,width:A,height:C}},LCu=async(u,B=eR)=>{return KCu(async()=>{let E=B.themeVariables?.fontSize??eR.themeVariables.fontSize,A={...eR,...B,fontSize:E,themeVariables:{...eR.themeVariables,...B.themeVariables,fontSize:E}},C=Co4(A);if(C!==GCu)cw.initialize(A),GCu=C;let D=await cw.mermaidAPI.getDiagramFromText(PAu(u)),F=`mermaid-to-excalidraw-${Ao4++}`,U=document.createElement("div");U.setAttribute("style","opacity: 0; position: fixed; z-index: -1; left: -99999px; top: -99999px;");let z=`${F}-container`;U.id=z,document.getElementById(z)?.remove(),document.body.appendChild(U);try{let{svg:k}=await cw.render(F,u,U);U.innerHTML=k;let f;try{switch(D.type){case"flowchart-v2":case"graph":{f=rAu(D.db,U);break}case"sequence":{f=nAu(D,U);break}case"class":case"classDiagram":{f=DCu(D,U);break}case"er":{f=kCu(D.db,U);break}case"state":case"stateDiagram":{f=ZCu(D.db,U);break}default:f=HCu(U)}}catch(l){console.error("Error processing Mermaid diagram:",l),f=HCu(U)}return f}finally{U.remove()}})};var qCu=g(()=>{LU0();gw();$Au();pAu();FCu();fCu();JCu();QCu()});var aU0={};ju(aU0,{parseMermaidToExcalidraw:()=>iU0});var iU0=async(u,B)=>{let E=B||{},A=parseInt(E.themeVariables?.fontSize??"")||Pb,C=await LCu(u,{...E,themeVariables:{...E.themeVariables}});return jAu(C,{fontSize:A})};var Wg=g(()=>{gw();NAu();qCu()});var Z3;var wq=g(()=>{Z3={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:'{"apiKey":"AIzaSyAd15pYlMci_xIp9ko6wkEsDzAAA0Dn0RU","authDomain":"excalidraw-room-persistence.firebaseapp.com","databaseURL":"https://excalidraw-room-persistence.firebaseio.com","projectId":"excalidraw-room-persistence","storageBucket":"excalidraw-room-persistence.appspot.com","messagingSenderId":"654800341332","appId":"1:654800341332:web:4a692de832b55bd57ce0c1"}',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 XCu,Do4=(u,B,E)=>(B in u)?XCu(u,B,{enumerable:!0,configurable:!0,writable:!0,value:E}):u[B]=E,VU0,xCu=(u)=>(B)=>{var E=u[B];if(E)return E();throw Error("Module not found in bundle: "+B)},hU0=(u,B)=>{for(var E in B)XCu(u,E,{get:B[E],enumerable:!0})},j0=(u,B,E)=>(Do4(u,typeof B!="symbol"?B+"":B,E),E);var m4=g(()=>{XCu=Object.defineProperty,VU0=((u)=>XQ)(function(u){return XQ.apply(this,arguments)})});var rU0=P1((mU0)=>{var vCu;(function(u){if(typeof DO_NOT_EXPORT_CRC>"u")if(typeof mU0==="object")u(mU0);else if(typeof define==="function"&&define.amd)define(function(){var B={};return u(B),B});else u(vCu={});else u(vCu={})})(function(u){u.version="0.3.0";function B(){var z=0,k=Array(256);for(var f=0;f!=256;++f)z=f,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,z=z&1?-306674912^z>>>1:z>>>1,k[f]=z;return typeof Int32Array<"u"?new Int32Array(k):k}var E=B(),A=typeof Buffer<"u";function C(z){if(z.length>32768){if(A)return F(new Buffer(z))}var k=-1,f=z.length-1;for(var l=0;l<f;)k=E[(k^z.charCodeAt(l++))&255]^k>>>8,k=E[(k^z.charCodeAt(l++))&255]^k>>>8;if(l===f)k=k>>>8^E[(k^z.charCodeAt(l))&255];return k^-1}function D(z){if(z.length>1e4)return F(z);for(var k=-1,f=0,l=z.length-3;f<l;)k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255];while(f<l+3)k=k>>>8^E[(k^z[f++])&255];return k^-1}function F(z){for(var k=-1,f=0,l=z.length-7;f<l;)k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255],k=k>>>8^E[(k^z[f++])&255];while(f<l+7)k=k>>>8^E[(k^z[f++])&255];return k^-1}function U(z){for(var k=-1,f=0,l=z.length,b,M;f<l;)if(b=z.charCodeAt(f++),b<128)k=k>>>8^E[(k^b)&255];else if(b<2048)k=k>>>8^E[(k^(192|b>>6&31))&255],k=k>>>8^E[(k^(128|b&63))&255];else if(b>=55296&&b<57344)b=(b&1023)+64,M=z.charCodeAt(f++)&1023,k=k>>>8^E[(k^(240|b>>8&7))&255],k=k>>>8^E[(k^(128|b>>2&63))&255],k=k>>>8^E[(k^(128|M>>6&15|b&3))&255],k=k>>>8^E[(k^(128|M&63))&255];else k=k>>>8^E[(k^(224|b>>12&15))&255],k=k>>>8^E[(k^(128|b>>6&63))&255],k=k>>>8^E[(k^(128|b&63))&255];return k^-1}u.table=E,u.bstr=C,u.buf=D,u.str=U})});var WCu=P1((YH1,SCu)=>{var Fo4=rU0();SCu.exports=ko4;var wU=new Uint8Array(4),Uo4=new Int32Array(wU.buffer),zo4=new Uint32Array(wU.buffer);function ko4(u){if(u[0]!==137)throw Error("Invalid .png file header");if(u[1]!==80)throw Error("Invalid .png file header");if(u[2]!==78)throw Error("Invalid .png file header");if(u[3]!==71)throw Error("Invalid .png file header");if(u[4]!==13)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");if(u[5]!==10)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");if(u[6]!==26)throw Error("Invalid .png file header");if(u[7]!==10)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");var B=!1,E=[],A=8;while(A<u.length){wU[3]=u[A++],wU[2]=u[A++],wU[1]=u[A++],wU[0]=u[A++];var C=zo4[0]+4,D=new Uint8Array(C);D[0]=u[A++],D[1]=u[A++],D[2]=u[A++],D[3]=u[A++];var F=String.fromCharCode(D[0])+String.fromCharCode(D[1])+String.fromCharCode(D[2])+String.fromCharCode(D[3]);if(!E.length&&F!=="IHDR")throw Error("IHDR header missing");if(F==="IEND"){B=!0,E.push({name:F,data:new Uint8Array(0)});break}for(var U=4;U<C;U++)D[U]=u[A++];wU[3]=u[A++],wU[2]=u[A++],wU[1]=u[A++],wU[0]=u[A++];var z=Uo4[0],k=Fo4.buf(D);if(k!==z)throw Error("CRC values for "+F+" header do not match, PNG file is likely corrupted");var f=new Uint8Array(D.buffer.slice(4));E.push({name:F,data:f})}if(!B)throw Error(".png file ended prematurely: no IEND header was found");return E}});var RCu=P1((RH1,YCu)=>{YCu.exports=fo4;function fo4(u,B){if(u=String(u),B=String(B),!/^[\x00-\xFF]+$/.test(u)||!/^[\x00-\xFF]+$/.test(B))throw Error("Only Latin-1 characters are permitted in PNG tEXt chunks. You might want to consider base64 encoding and/or zEXt compression");if(u.length>=80)throw Error('Keyword "'+u+'" is longer than the 79-character limit imposed by the PNG specification');var E=u.length+B.length+1,A=new Uint8Array(E),C=0,D;for(var F=0;F<u.length;F++){if(!(D=u.charCodeAt(F)))throw Error("0x00 character is not permitted in tEXt keywords");A[C++]=D}A[C++]=0;for(var U=0;U<B.length;U++){if(!(D=B.charCodeAt(U)))throw Error("0x00 character is not permitted in tEXt content");A[C++]=D}return{name:"tEXt",data:A}}});var OCu=P1((TH1,TCu)=>{TCu.exports=lo4;function lo4(u){if(u.data&&u.name)u=u.data;var B=!0,E="",A="";for(var C=0;C<u.length;C++){var D=u[C];if(B)if(D)A+=String.fromCharCode(D);else B=!1;else if(D)E+=String.fromCharCode(D);else throw Error("Invalid NULL character found. 0x00 character is not permitted in tEXt content")}return{keyword:A,text:E}}});var ICu=P1((bo4)=>{bo4.encode=RCu();bo4.decode=OCu()});var jCu=P1((IH1,PCu)=>{PCu.exports=function(u,B,E){var A=[],C=u.length;if(C===0)return A;var D=B<0?Math.max(0,B+C):B||0;if(E!==void 0)C=E<0?E+C:E;while(C-- >D)A[C-D]=u[C];return A}});var iCu=P1((PH1,NCu)=>{var Jo4=jCu(),wo4=rU0();NCu.exports=Go4;var KU=new Uint8Array(4),Ko4=new Int32Array(KU.buffer),Qo4=new Uint32Array(KU.buffer);function Go4(u){var B=8,E=B,A;for(A=0;A<u.length;A++)B+=u[A].data.length,B+=12;var C=new Uint8Array(B);C[0]=137,C[1]=80,C[2]=78,C[3]=71,C[4]=13,C[5]=10,C[6]=26,C[7]=10;for(A=0;A<u.length;A++){var D=u[A],F=D.name,U=D.data,z=U.length,k=[F.charCodeAt(0),F.charCodeAt(1),F.charCodeAt(2),F.charCodeAt(3)];Qo4[0]=z,C[E++]=KU[3],C[E++]=KU[2],C[E++]=KU[1],C[E++]=KU[0],C[E++]=k[0],C[E++]=k[1],C[E++]=k[2],C[E++]=k[3];for(var f=0;f<z;)C[E++]=U[f++];var l=k.concat(Jo4(U)),b=wo4.buf(l);Ko4[0]=b,C[E++]=KU[3],C[E++]=KU[2],C[E++]=KU[1],C[E++]=KU[0]}return C}});function Hq(u){let B=u.length;while(--B>=0)u[B]=0}function yU0(u,B,E,A,C){this.static_tree=u,this.extra_bits=B,this.extra_base=E,this.elems=A,this.max_length=C,this.has_stree=u&&u.length}function cU0(u,B){this.dyn_tree=u,this.max_code=0,this.stat_desc=B}function QU(u,B,E,A,C){this.good_length=u,this.max_lazy=B,this.nice_length=E,this.max_chain=A,this.func=C}function xt4(){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=mg,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(Zt4*2),this.dyn_dtree=new Uint16Array((2*bt4+1)*2),this.bl_tree=new Uint16Array((2*Mt4+1)*2),Nb(this.dyn_ltree),Nb(this.dyn_dtree),Nb(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(Jt4+1),this.heap=new Uint16Array(2*Cz0+1),Nb(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Cz0+1),Nb(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 _t4(){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 XT(u){this.options=$g.assign({level:tt4,method:ue4,chunkSize:16384,windowBits:15,memLevel:8,strategy:et4},u||{});let B=this.options;if(B.raw&&B.windowBits>0)B.windowBits=-B.windowBits;else if(B.gzip&&B.windowBits>0&&B.windowBits<16)B.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new rDu,this.strm.avail_out=0;let E=lT.deflateInit2(this.strm,B.level,B.method,B.windowBits,B.memLevel,B.strategy);if(E!==Vg)throw Error(ew[E]);if(B.header)lT.deflateSetHeader(this.strm,B.header);if(B.dictionary){let A;if(typeof B.dictionary==="string")A=GT.string2buf(B.dictionary);else if($Du.call(B.dictionary)==="[object ArrayBuffer]")A=new Uint8Array(B.dictionary);else A=B.dictionary;if(E=lT.deflateSetDictionary(this.strm,A),E!==Vg)throw Error(ew[E]);this._dict_set=!0}}function fz0(u,B){let E=new XT(B);if(E.push(u,!0),E.err)throw E.msg||ew[E.err];return E.result}function Be4(u,B){return B=B||{},B.raw=!0,fz0(u,B)}function Ee4(u,B){return B=B||{},B.gzip=!0,fz0(u,B)}function Se4(){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 ye4(){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 xT(u){this.options=$g.assign({chunkSize:65536,windowBits:15,to:""},u||{});let B=this.options;if(B.raw&&B.windowBits>=0&&B.windowBits<16){if(B.windowBits=-B.windowBits,B.windowBits===0)B.windowBits=-15}if(B.windowBits>=0&&B.windowBits<16&&!(u&&u.windowBits))B.windowBits+=32;if(B.windowBits>15&&B.windowBits<48){if((B.windowBits&15)===0)B.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new rDu,this.strm.avail_out=0;let E=hk.inflateInit2(this.strm,B.windowBits);if(E!==HT)throw Error(ew[E]);if(this.header=new ce4,hk.inflateGetHeader(this.strm,this.header),B.dictionary){if(typeof B.dictionary==="string")B.dictionary=GT.string2buf(B.dictionary);else if(uFu.call(B.dictionary)==="[object ArrayBuffer]")B.dictionary=new Uint8Array(B.dictionary);if(B.raw){if(E=hk.inflateSetDictionary(this.strm,B.dictionary),E!==HT)throw Error(ew[E])}}}function lz0(u,B){let E=new xT(B);if(E.push(u),E.err)throw E.msg||ew[E.err];return E.result}function de4(u,B){return B=B||{},B.raw=!0,lz0(u,B)}var Ho4=0,LDu=1,Lo4=2,qo4=3,Xo4=258,Fz0=29,LT=256,MT,Gq=30,Uz0=19,qDu,ow=15,$U0=16,xo4=7,zz0=256,XDu=16,xDu=17,vDu=18,Ez0,Pg,vo4,SDu,So4=512,Vk,fT,ZT,JT,kz0,ag,WDu,YDu,RDu,TDu=(u)=>{return u<256?ZT[u]:ZT[256+(u>>>7)]},wT=(u,B)=>{u.pending_buf[u.pending++]=B&255,u.pending_buf[u.pending++]=B>>>8&255},T8=(u,B,E)=>{if(u.bi_valid>$U0-E)u.bi_buf|=B<<u.bi_valid&65535,wT(u,u.bi_buf),u.bi_buf=B>>$U0-u.bi_valid,u.bi_valid+=E-$U0;else u.bi_buf|=B<<u.bi_valid&65535,u.bi_valid+=E},GU=(u,B,E)=>{T8(u,E[B*2],E[B*2+1])},ODu=(u,B)=>{let E=0;do E|=u&1,u>>>=1,E<<=1;while(--B>0);return E>>>1},Wo4=(u)=>{if(u.bi_valid===16)wT(u,u.bi_buf),u.bi_buf=0,u.bi_valid=0;else if(u.bi_valid>=8)u.pending_buf[u.pending++]=u.bi_buf&255,u.bi_buf>>=8,u.bi_valid-=8},Yo4=(u,B)=>{let{dyn_tree:E,max_code:A}=B,C=B.stat_desc.static_tree,D=B.stat_desc.has_stree,F=B.stat_desc.extra_bits,U=B.stat_desc.extra_base,z=B.stat_desc.max_length,k,f,l,b,M,Z,J=0;for(b=0;b<=ow;b++)u.bl_count[b]=0;E[u.heap[u.heap_max]*2+1]=0;for(k=u.heap_max+1;k<qDu;k++){if(f=u.heap[k],b=E[E[f*2+1]*2+1]+1,b>z)b=z,J++;if(E[f*2+1]=b,f>A)continue;if(u.bl_count[b]++,M=0,f>=U)M=F[f-U];if(Z=E[f*2],u.opt_len+=Z*(b+M),D)u.static_len+=Z*(C[f*2+1]+M)}if(J===0)return;do{b=z-1;while(u.bl_count[b]===0)b--;u.bl_count[b]--,u.bl_count[b+1]+=2,u.bl_count[z]--,J-=2}while(J>0);for(b=z;b!==0;b--){f=u.bl_count[b];while(f!==0){if(l=u.heap[--k],l>A)continue;if(E[l*2+1]!==b)u.opt_len+=(b-E[l*2+1])*E[l*2],E[l*2+1]=b;f--}}},IDu=(u,B,E)=>{let A=Array(ow+1),C=0,D,F;for(D=1;D<=ow;D++)A[D]=C=C+E[D-1]<<1;for(F=0;F<=B;F++){let U=u[F*2+1];if(U===0)continue;u[F*2]=ODu(A[U]++,U)}},Ro4=()=>{let u,B,E,A,C,D=Array(ow+1);E=0;for(A=0;A<Fz0-1;A++){kz0[A]=E;for(u=0;u<1<<Ez0[A];u++)JT[E++]=A}JT[E-1]=A,C=0;for(A=0;A<16;A++){ag[A]=C;for(u=0;u<1<<Pg[A];u++)ZT[C++]=A}C>>=7;for(;A<Gq;A++){ag[A]=C<<7;for(u=0;u<1<<Pg[A]-7;u++)ZT[256+C++]=A}for(B=0;B<=ow;B++)D[B]=0;u=0;while(u<=143)Vk[u*2+1]=8,u++,D[8]++;while(u<=255)Vk[u*2+1]=9,u++,D[9]++;while(u<=279)Vk[u*2+1]=7,u++,D[7]++;while(u<=287)Vk[u*2+1]=8,u++,D[8]++;IDu(Vk,MT+1,D);for(u=0;u<Gq;u++)fT[u*2+1]=5,fT[u*2]=ODu(u,5);WDu=new yU0(Vk,Ez0,LT+1,MT,ow),YDu=new yU0(fT,Pg,0,Gq,ow),RDu=new yU0([],vo4,0,Uz0,xo4)},PDu=(u)=>{let B;for(B=0;B<MT;B++)u.dyn_ltree[B*2]=0;for(B=0;B<Gq;B++)u.dyn_dtree[B*2]=0;for(B=0;B<Uz0;B++)u.bl_tree[B*2]=0;u.dyn_ltree[zz0*2]=1,u.opt_len=u.static_len=0,u.last_lit=u.matches=0},jDu=(u)=>{if(u.bi_valid>8)wT(u,u.bi_buf);else if(u.bi_valid>0)u.pending_buf[u.pending++]=u.bi_buf;u.bi_buf=0,u.bi_valid=0},To4=(u,B,E,A)=>{if(jDu(u),A)wT(u,E),wT(u,~E);u.pending_buf.set(u.window.subarray(B,B+E),u.pending),u.pending+=E},aCu=(u,B,E,A)=>{let C=B*2,D=E*2;return u[C]<u[D]||u[C]===u[D]&&A[B]<=A[E]},gU0=(u,B,E)=>{let A=u.heap[E],C=E<<1;while(C<=u.heap_len){if(C<u.heap_len&&aCu(B,u.heap[C+1],u.heap[C],u.depth))C++;if(aCu(B,A,u.heap[C],u.depth))break;u.heap[E]=u.heap[C],E=C,C<<=1}u.heap[E]=A},VCu=(u,B,E)=>{let A,C,D=0,F,U;if(u.last_lit!==0)do if(A=u.pending_buf[u.d_buf+D*2]<<8|u.pending_buf[u.d_buf+D*2+1],C=u.pending_buf[u.l_buf+D],D++,A===0)GU(u,C,B);else{if(F=JT[C],GU(u,F+LT+1,B),U=Ez0[F],U!==0)C-=kz0[F],T8(u,C,U);if(A--,F=TDu(A),GU(u,F,E),U=Pg[F],U!==0)A-=ag[F],T8(u,A,U)}while(D<u.last_lit);GU(u,zz0,B)},Az0=(u,B)=>{let E=B.dyn_tree,A=B.stat_desc.static_tree,C=B.stat_desc.has_stree,D=B.stat_desc.elems,F,U,z=-1,k;u.heap_len=0,u.heap_max=qDu;for(F=0;F<D;F++)if(E[F*2]!==0)u.heap[++u.heap_len]=z=F,u.depth[F]=0;else E[F*2+1]=0;while(u.heap_len<2)if(k=u.heap[++u.heap_len]=z<2?++z:0,E[k*2]=1,u.depth[k]=0,u.opt_len--,C)u.static_len-=A[k*2+1];B.max_code=z;for(F=u.heap_len>>1;F>=1;F--)gU0(u,E,F);k=D;do F=u.heap[1],u.heap[1]=u.heap[u.heap_len--],gU0(u,E,1),U=u.heap[1],u.heap[--u.heap_max]=F,u.heap[--u.heap_max]=U,E[k*2]=E[F*2]+E[U*2],u.depth[k]=(u.depth[F]>=u.depth[U]?u.depth[F]:u.depth[U])+1,E[F*2+1]=E[U*2+1]=k,u.heap[1]=k++,gU0(u,E,1);while(u.heap_len>=2);u.heap[--u.heap_max]=u.heap[1],Yo4(u,B),IDu(E,z,u.bl_count)},hCu=(u,B,E)=>{let A,C=-1,D,F=B[1],U=0,z=7,k=4;if(F===0)z=138,k=3;B[(E+1)*2+1]=65535;for(A=0;A<=E;A++){if(D=F,F=B[(A+1)*2+1],++U<z&&D===F)continue;else if(U<k)u.bl_tree[D*2]+=U;else if(D!==0){if(D!==C)u.bl_tree[D*2]++;u.bl_tree[XDu*2]++}else if(U<=10)u.bl_tree[xDu*2]++;else u.bl_tree[vDu*2]++;if(U=0,C=D,F===0)z=138,k=3;else if(D===F)z=6,k=3;else z=7,k=4}},mCu=(u,B,E)=>{let A,C=-1,D,F=B[1],U=0,z=7,k=4;if(F===0)z=138,k=3;for(A=0;A<=E;A++){if(D=F,F=B[(A+1)*2+1],++U<z&&D===F)continue;else if(U<k)do GU(u,D,u.bl_tree);while(--U!==0);else if(D!==0){if(D!==C)GU(u,D,u.bl_tree),U--;GU(u,XDu,u.bl_tree),T8(u,U-3,2)}else if(U<=10)GU(u,xDu,u.bl_tree),T8(u,U-3,3);else GU(u,vDu,u.bl_tree),T8(u,U-11,7);if(U=0,C=D,F===0)z=138,k=3;else if(D===F)z=6,k=3;else z=7,k=4}},Oo4=(u)=>{let B;hCu(u,u.dyn_ltree,u.l_desc.max_code),hCu(u,u.dyn_dtree,u.d_desc.max_code),Az0(u,u.bl_desc);for(B=Uz0-1;B>=3;B--)if(u.bl_tree[SDu[B]*2+1]!==0)break;return u.opt_len+=3*(B+1)+5+5+4,B},Io4=(u,B,E,A)=>{let C;T8(u,B-257,5),T8(u,E-1,5),T8(u,A-4,4);for(C=0;C<A;C++)T8(u,u.bl_tree[SDu[C]*2+1],3);mCu(u,u.dyn_ltree,B-1),mCu(u,u.dyn_dtree,E-1)},Po4=(u)=>{let B=4093624447,E;for(E=0;E<=31;E++,B>>>=1)if(B&1&&u.dyn_ltree[E*2]!==0)return 0;if(u.dyn_ltree[18]!==0||u.dyn_ltree[20]!==0||u.dyn_ltree[26]!==0)return 1;for(E=32;E<LT;E++)if(u.dyn_ltree[E*2]!==0)return 1;return 0},rCu=!1,jo4=(u)=>{if(!rCu)Ro4(),rCu=!0;u.l_desc=new cU0(u.dyn_ltree,WDu),u.d_desc=new cU0(u.dyn_dtree,YDu),u.bl_desc=new cU0(u.bl_tree,RDu),u.bi_buf=0,u.bi_valid=0,PDu(u)},NDu=(u,B,E,A)=>{T8(u,(Ho4<<1)+(A?1:0),3),To4(u,B,E,!0)},No4=(u)=>{T8(u,LDu<<1,3),GU(u,zz0,Vk),Wo4(u)},io4=(u,B,E,A)=>{let C,D,F=0;if(u.level>0){if(u.strm.data_type===2)u.strm.data_type=Po4(u);if(Az0(u,u.l_desc),Az0(u,u.d_desc),F=Oo4(u),C=u.opt_len+3+7>>>3,D=u.static_len+3+7>>>3,D<=C)C=D}else C=D=E+5;if(E+4<=C&&B!==-1)NDu(u,B,E,A);else if(u.strategy===4||D===C)T8(u,(LDu<<1)+(A?1:0),3),VCu(u,Vk,fT);else T8(u,(Lo4<<1)+(A?1:0),3),Io4(u,u.l_desc.max_code+1,u.d_desc.max_code+1,F+1),VCu(u,u.dyn_ltree,u.dyn_dtree);if(PDu(u),A)jDu(u)},ao4=(u,B,E)=>{if(u.pending_buf[u.d_buf+u.last_lit*2]=B>>>8&255,u.pending_buf[u.d_buf+u.last_lit*2+1]=B&255,u.pending_buf[u.l_buf+u.last_lit]=E&255,u.last_lit++,B===0)u.dyn_ltree[E*2]++;else u.matches++,B--,u.dyn_ltree[(JT[E]+LT+1)*2]++,u.dyn_dtree[TDu(B)*2]++;return u.last_lit===u.lit_bufsize-1},Vo4,ho4,mo4,ro4,$o4,yo4,co4=(u,B,E,A)=>{let C=u&65535|0,D=u>>>16&65535|0,F=0;while(E!==0){F=E>2000?2000:E,E-=F;do C=C+B[A++]|0,D=D+C|0;while(--F);C%=65521,D%=65521}return C|D<<16|0},KT,go4=()=>{let u,B=[];for(var E=0;E<256;E++){u=E;for(var A=0;A<8;A++)u=u&1?3988292384^u>>>1:u>>>1;B[E]=u}return B},_o4,no4=(u,B,E,A)=>{let C=_o4,D=A+E;u^=-1;for(let F=A;F<D;F++)u=u>>>8^C[(u^B[F])&255];return u^-1},a5,ew,Lq,po4,do4,so4,Vb,oo4,AK,to4,eo4,hb,$Cu,HU,yCu,vA,ut4,_U0,Bt4,Et4,Yg,At4,Ct4,Dt4,Ft4,mg,Ut4=9,zt4=15,kt4=8,ft4=29,lt4=256,Cz0,bt4=30,Mt4=19,Zt4,Jt4=15,M1=3,ib=258,oC,wt4=32,rg=42,Dz0=69,jg=73,Ng=91,ig=103,tw=113,zT=666,F5=1,qT=2,uK=3,qq=4,Kt4=3,ab=(u,B)=>{return u.msg=ew[B],B},cCu=(u)=>{return(u<<1)-(u>4?9:0)},Nb=(u)=>{let B=u.length;while(--B>=0)u[B]=0},Qt4=(u,B,E)=>(B<<u.hash_shift^E)&u.hash_mask,mb,jb=(u)=>{let B=u.state,E=B.pending;if(E>u.avail_out)E=u.avail_out;if(E===0)return;if(u.output.set(B.pending_buf.subarray(B.pending_out,B.pending_out+E),u.next_out),u.next_out+=E,B.pending_out+=E,u.total_out+=E,u.avail_out-=E,B.pending-=E,B.pending===0)B.pending_out=0},J7=(u,B)=>{so4(u,u.block_start>=0?u.block_start:-1,u.strstart-u.block_start,B),u.block_start=u.strstart,jb(u.strm)},y1=(u,B)=>{u.pending_buf[u.pending++]=B},UT=(u,B)=>{u.pending_buf[u.pending++]=B>>>8&255,u.pending_buf[u.pending++]=B&255},Gt4=(u,B,E,A)=>{let C=u.avail_in;if(C>A)C=A;if(C===0)return 0;if(u.avail_in-=C,B.set(u.input.subarray(u.next_in,u.next_in+C),E),u.state.wrap===1)u.adler=KT(u.adler,B,C,E);else if(u.state.wrap===2)u.adler=a5(u.adler,B,C,E);return u.next_in+=C,u.total_in+=C,C},iDu=(u,B)=>{let{max_chain_length:E,strstart:A}=u,C,D,F=u.prev_length,U=u.nice_match,z=u.strstart>u.w_size-oC?u.strstart-(u.w_size-oC):0,k=u.window,f=u.w_mask,l=u.prev,b=u.strstart+ib,M=k[A+F-1],Z=k[A+F];if(u.prev_length>=u.good_match)E>>=2;if(U>u.lookahead)U=u.lookahead;do{if(C=B,k[C+F]!==Z||k[C+F-1]!==M||k[C]!==k[A]||k[++C]!==k[A+1])continue;A+=2,C++;do;while(k[++A]===k[++C]&&k[++A]===k[++C]&&k[++A]===k[++C]&&k[++A]===k[++C]&&k[++A]===k[++C]&&k[++A]===k[++C]&&k[++A]===k[++C]&&k[++A]===k[++C]&&A<b);if(D=ib-(b-A),A=b-ib,D>F){if(u.match_start=B,F=D,D>=U)break;M=k[A+F-1],Z=k[A+F]}}while((B=l[B&f])>z&&--E!==0);if(F<=u.lookahead)return F;return u.lookahead},BK=(u)=>{let B=u.w_size,E,A,C,D,F;do{if(D=u.window_size-u.lookahead-u.strstart,u.strstart>=B+(B-oC)){u.window.set(u.window.subarray(B,B+B),0),u.match_start-=B,u.strstart-=B,u.block_start-=B,A=u.hash_size,E=A;do C=u.head[--E],u.head[E]=C>=B?C-B:0;while(--A);A=B,E=A;do C=u.prev[--E],u.prev[E]=C>=B?C-B:0;while(--A);D+=B}if(u.strm.avail_in===0)break;if(A=Gt4(u.strm,u.window,u.strstart+u.lookahead,D),u.lookahead+=A,u.lookahead+u.insert>=M1){F=u.strstart-u.insert,u.ins_h=u.window[F],u.ins_h=mb(u,u.ins_h,u.window[F+1]);while(u.insert)if(u.ins_h=mb(u,u.ins_h,u.window[F+M1-1]),u.prev[F&u.w_mask]=u.head[u.ins_h],u.head[u.ins_h]=F,F++,u.insert--,u.lookahead+u.insert<M1)break}}while(u.lookahead<oC&&u.strm.avail_in!==0)},Ht4=(u,B)=>{let E=65535;if(E>u.pending_buf_size-5)E=u.pending_buf_size-5;for(;;){if(u.lookahead<=1){if(BK(u),u.lookahead===0&&B===AK)return F5;if(u.lookahead===0)break}u.strstart+=u.lookahead,u.lookahead=0;let A=u.block_start+E;if(u.strstart===0||u.strstart>=A){if(u.lookahead=u.strstart-A,u.strstart=A,J7(u,!1),u.strm.avail_out===0)return F5}if(u.strstart-u.block_start>=u.w_size-oC){if(J7(u,!1),u.strm.avail_out===0)return F5}}if(u.insert=0,B===hb){if(J7(u,!0),u.strm.avail_out===0)return uK;return qq}if(u.strstart>u.block_start){if(J7(u,!1),u.strm.avail_out===0)return F5}return F5},nU0=(u,B)=>{let E,A;for(;;){if(u.lookahead<oC){if(BK(u),u.lookahead<oC&&B===AK)return F5;if(u.lookahead===0)break}if(E=0,u.lookahead>=M1)u.ins_h=mb(u,u.ins_h,u.window[u.strstart+M1-1]),E=u.prev[u.strstart&u.w_mask]=u.head[u.ins_h],u.head[u.ins_h]=u.strstart;if(E!==0&&u.strstart-E<=u.w_size-oC)u.match_length=iDu(u,E);if(u.match_length>=M1)if(A=Vb(u,u.strstart-u.match_start,u.match_length-M1),u.lookahead-=u.match_length,u.match_length<=u.max_lazy_match&&u.lookahead>=M1){u.match_length--;do u.strstart++,u.ins_h=mb(u,u.ins_h,u.window[u.strstart+M1-1]),E=u.prev[u.strstart&u.w_mask]=u.head[u.ins_h],u.head[u.ins_h]=u.strstart;while(--u.match_length!==0);u.strstart++}else u.strstart+=u.match_length,u.match_length=0,u.ins_h=u.window[u.strstart],u.ins_h=mb(u,u.ins_h,u.window[u.strstart+1]);else A=Vb(u,0,u.window[u.strstart]),u.lookahead--,u.strstart++;if(A){if(J7(u,!1),u.strm.avail_out===0)return F5}}if(u.insert=u.strstart<M1-1?u.strstart:M1-1,B===hb){if(J7(u,!0),u.strm.avail_out===0)return uK;return qq}if(u.last_lit){if(J7(u,!1),u.strm.avail_out===0)return F5}return qT},Kq=(u,B)=>{let E,A,C;for(;;){if(u.lookahead<oC){if(BK(u),u.lookahead<oC&&B===AK)return F5;if(u.lookahead===0)break}if(E=0,u.lookahead>=M1)u.ins_h=mb(u,u.ins_h,u.window[u.strstart+M1-1]),E=u.prev[u.strstart&u.w_mask]=u.head[u.ins_h],u.head[u.ins_h]=u.strstart;if(u.prev_length=u.match_length,u.prev_match=u.match_start,u.match_length=M1-1,E!==0&&u.prev_length<u.max_lazy_match&&u.strstart-E<=u.w_size-oC){if(u.match_length=iDu(u,E),u.match_length<=5&&(u.strategy===Et4||u.match_length===M1&&u.strstart-u.match_start>4096))u.match_length=M1-1}if(u.prev_length>=M1&&u.match_length<=u.prev_length){C=u.strstart+u.lookahead-M1,A=Vb(u,u.strstart-1-u.prev_match,u.prev_length-M1),u.lookahead-=u.prev_length-1,u.prev_length-=2;do if(++u.strstart<=C)u.ins_h=mb(u,u.ins_h,u.window[u.strstart+M1-1]),E=u.prev[u.strstart&u.w_mask]=u.head[u.ins_h],u.head[u.ins_h]=u.strstart;while(--u.prev_length!==0);if(u.match_available=0,u.match_length=M1-1,u.strstart++,A){if(J7(u,!1),u.strm.avail_out===0)return F5}}else if(u.match_available){if(A=Vb(u,0,u.window[u.strstart-1]),A)J7(u,!1);if(u.strstart++,u.lookahead--,u.strm.avail_out===0)return F5}else u.match_available=1,u.strstart++,u.lookahead--}if(u.match_available)A=Vb(u,0,u.window[u.strstart-1]),u.match_available=0;if(u.insert=u.strstart<M1-1?u.strstart:M1-1,B===hb){if(J7(u,!0),u.strm.avail_out===0)return uK;return qq}if(u.last_lit){if(J7(u,!1),u.strm.avail_out===0)return F5}return qT},Lt4=(u,B)=>{let E,A,C,D,F=u.window;for(;;){if(u.lookahead<=ib){if(BK(u),u.lookahead<=ib&&B===AK)return F5;if(u.lookahead===0)break}if(u.match_length=0,u.lookahead>=M1&&u.strstart>0){if(C=u.strstart-1,A=F[C],A===F[++C]&&A===F[++C]&&A===F[++C]){D=u.strstart+ib;do;while(A===F[++C]&&A===F[++C]&&A===F[++C]&&A===F[++C]&&A===F[++C]&&A===F[++C]&&A===F[++C]&&A===F[++C]&&C<D);if(u.match_length=ib-(D-C),u.match_length>u.lookahead)u.match_length=u.lookahead}}if(u.match_length>=M1)E=Vb(u,1,u.match_length-M1),u.lookahead-=u.match_length,u.strstart+=u.match_length,u.match_length=0;else E=Vb(u,0,u.window[u.strstart]),u.lookahead--,u.strstart++;if(E){if(J7(u,!1),u.strm.avail_out===0)return F5}}if(u.insert=0,B===hb){if(J7(u,!0),u.strm.avail_out===0)return uK;return qq}if(u.last_lit){if(J7(u,!1),u.strm.avail_out===0)return F5}return qT},qt4=(u,B)=>{let E;for(;;){if(u.lookahead===0){if(BK(u),u.lookahead===0){if(B===AK)return F5;break}}if(u.match_length=0,E=Vb(u,0,u.window[u.strstart]),u.lookahead--,u.strstart++,E){if(J7(u,!1),u.strm.avail_out===0)return F5}}if(u.insert=0,B===hb){if(J7(u,!0),u.strm.avail_out===0)return uK;return qq}if(u.last_lit){if(J7(u,!1),u.strm.avail_out===0)return F5}return qT},kT,Xt4=(u)=>{u.window_size=2*u.w_size,Nb(u.head),u.max_lazy_match=kT[u.level].max_lazy,u.good_match=kT[u.level].good_length,u.nice_match=kT[u.level].nice_length,u.max_chain_length=kT[u.level].max_chain,u.strstart=0,u.block_start=0,u.lookahead=0,u.insert=0,u.match_length=u.prev_length=M1-1,u.match_available=0,u.ins_h=0},aDu=(u)=>{if(!u||!u.state)return ab(u,vA);u.total_in=u.total_out=0,u.data_type=Ft4;let B=u.state;if(B.pending=0,B.pending_out=0,B.wrap<0)B.wrap=-B.wrap;return B.status=B.wrap?rg:tw,u.adler=B.wrap===2?0:1,B.last_flush=AK,po4(B),HU},VDu=(u)=>{let B=aDu(u);if(B===HU)Xt4(u.state);return B},vt4=(u,B)=>{if(!u||!u.state)return vA;if(u.state.wrap!==2)return vA;return u.state.gzhead=B,HU},hDu=(u,B,E,A,C,D)=>{if(!u)return vA;let F=1;if(B===Bt4)B=6;if(A<0)F=0,A=-A;else if(A>15)F=2,A-=16;if(C<1||C>Ut4||E!==mg||A<8||A>15||B<0||B>9||D<0||D>Ct4)return ab(u,vA);if(A===8)A=9;let U=new xt4;return u.state=U,U.strm=u,U.wrap=F,U.gzhead=null,U.w_bits=A,U.w_size=1<<U.w_bits,U.w_mask=U.w_size-1,U.hash_bits=C+7,U.hash_size=1<<U.hash_bits,U.hash_mask=U.hash_size-1,U.hash_shift=~~((U.hash_bits+M1-1)/M1),U.window=new Uint8Array(U.w_size*2),U.head=new Uint16Array(U.hash_size),U.prev=new Uint16Array(U.w_size),U.lit_bufsize=1<<C+6,U.pending_buf_size=U.lit_bufsize*4,U.pending_buf=new Uint8Array(U.pending_buf_size),U.d_buf=1*U.lit_bufsize,U.l_buf=3*U.lit_bufsize,U.level=B,U.strategy=D,U.method=E,VDu(u)},St4=(u,B)=>{return hDu(u,B,mg,zt4,kt4,Dt4)},Wt4=(u,B)=>{let E,A;if(!u||!u.state||B>$Cu||B<0)return u?ab(u,vA):vA;let C=u.state;if(!u.output||!u.input&&u.avail_in!==0||C.status===zT&&B!==hb)return ab(u,u.avail_out===0?_U0:vA);C.strm=u;let D=C.last_flush;if(C.last_flush=B,C.status===rg)if(C.wrap===2)if(u.adler=0,y1(C,31),y1(C,139),y1(C,8),!C.gzhead)y1(C,0),y1(C,0),y1(C,0),y1(C,0),y1(C,0),y1(C,C.level===9?2:C.strategy>=Yg||C.level<2?4:0),y1(C,Kt4),C.status=tw;else{if(y1(C,(C.gzhead.text?1:0)+(C.gzhead.hcrc?2:0)+(!C.gzhead.extra?0:4)+(!C.gzhead.name?0:8)+(!C.gzhead.comment?0:16)),y1(C,C.gzhead.time&255),y1(C,C.gzhead.time>>8&255),y1(C,C.gzhead.time>>16&255),y1(C,C.gzhead.time>>24&255),y1(C,C.level===9?2:C.strategy>=Yg||C.level<2?4:0),y1(C,C.gzhead.os&255),C.gzhead.extra&&C.gzhead.extra.length)y1(C,C.gzhead.extra.length&255),y1(C,C.gzhead.extra.length>>8&255);if(C.gzhead.hcrc)u.adler=a5(u.adler,C.pending_buf,C.pending,0);C.gzindex=0,C.status=Dz0}else{let F=mg+(C.w_bits-8<<4)<<8,U=-1;if(C.strategy>=Yg||C.level<2)U=0;else if(C.level<6)U=1;else if(C.level===6)U=2;else U=3;if(F|=U<<6,C.strstart!==0)F|=wt4;if(F+=31-F%31,C.status=tw,UT(C,F),C.strstart!==0)UT(C,u.adler>>>16),UT(C,u.adler&65535);u.adler=1}if(C.status===Dz0)if(C.gzhead.extra){E=C.pending;while(C.gzindex<(C.gzhead.extra.length&65535)){if(C.pending===C.pending_buf_size){if(C.gzhead.hcrc&&C.pending>E)u.adler=a5(u.adler,C.pending_buf,C.pending-E,E);if(jb(u),E=C.pending,C.pending===C.pending_buf_size)break}y1(C,C.gzhead.extra[C.gzindex]&255),C.gzindex++}if(C.gzhead.hcrc&&C.pending>E)u.adler=a5(u.adler,C.pending_buf,C.pending-E,E);if(C.gzindex===C.gzhead.extra.length)C.gzindex=0,C.status=jg}else C.status=jg;if(C.status===jg)if(C.gzhead.name){E=C.pending;do{if(C.pending===C.pending_buf_size){if(C.gzhead.hcrc&&C.pending>E)u.adler=a5(u.adler,C.pending_buf,C.pending-E,E);if(jb(u),E=C.pending,C.pending===C.pending_buf_size){A=1;break}}if(C.gzindex<C.gzhead.name.length)A=C.gzhead.name.charCodeAt(C.gzindex++)&255;else A=0;y1(C,A)}while(A!==0);if(C.gzhead.hcrc&&C.pending>E)u.adler=a5(u.adler,C.pending_buf,C.pending-E,E);if(A===0)C.gzindex=0,C.status=Ng}else C.status=Ng;if(C.status===Ng)if(C.gzhead.comment){E=C.pending;do{if(C.pending===C.pending_buf_size){if(C.gzhead.hcrc&&C.pending>E)u.adler=a5(u.adler,C.pending_buf,C.pending-E,E);if(jb(u),E=C.pending,C.pending===C.pending_buf_size){A=1;break}}if(C.gzindex<C.gzhead.comment.length)A=C.gzhead.comment.charCodeAt(C.gzindex++)&255;else A=0;y1(C,A)}while(A!==0);if(C.gzhead.hcrc&&C.pending>E)u.adler=a5(u.adler,C.pending_buf,C.pending-E,E);if(A===0)C.status=ig}else C.status=ig;if(C.status===ig)if(C.gzhead.hcrc){if(C.pending+2>C.pending_buf_size)jb(u);if(C.pending+2<=C.pending_buf_size)y1(C,u.adler&255),y1(C,u.adler>>8&255),u.adler=0,C.status=tw}else C.status=tw;if(C.pending!==0){if(jb(u),u.avail_out===0)return C.last_flush=-1,HU}else if(u.avail_in===0&&cCu(B)<=cCu(D)&&B!==hb)return ab(u,_U0);if(C.status===zT&&u.avail_in!==0)return ab(u,_U0);if(u.avail_in!==0||C.lookahead!==0||B!==AK&&C.status!==zT){let F=C.strategy===Yg?qt4(C,B):C.strategy===At4?Lt4(C,B):kT[C.level].func(C,B);if(F===uK||F===qq)C.status=zT;if(F===F5||F===uK){if(u.avail_out===0)C.last_flush=-1;return HU}if(F===qT){if(B===to4)oo4(C);else if(B!==$Cu){if(do4(C,0,0,!1),B===eo4){if(Nb(C.head),C.lookahead===0)C.strstart=0,C.block_start=0,C.insert=0}}if(jb(u),u.avail_out===0)return C.last_flush=-1,HU}}if(B!==hb)return HU;if(C.wrap<=0)return yCu;if(C.wrap===2)y1(C,u.adler&255),y1(C,u.adler>>8&255),y1(C,u.adler>>16&255),y1(C,u.adler>>24&255),y1(C,u.total_in&255),y1(C,u.total_in>>8&255),y1(C,u.total_in>>16&255),y1(C,u.total_in>>24&255);else UT(C,u.adler>>>16),UT(C,u.adler&65535);if(jb(u),C.wrap>0)C.wrap=-C.wrap;return C.pending!==0?HU:yCu},Yt4=(u)=>{if(!u||!u.state)return vA;let B=u.state.status;if(B!==rg&&B!==Dz0&&B!==jg&&B!==Ng&&B!==ig&&B!==tw&&B!==zT)return ab(u,vA);return u.state=null,B===tw?ab(u,ut4):HU},Rt4=(u,B)=>{let E=B.length;if(!u||!u.state)return vA;let A=u.state,C=A.wrap;if(C===2||C===1&&A.status!==rg||A.lookahead)return vA;if(C===1)u.adler=KT(u.adler,B,E,0);if(A.wrap=0,E>=A.w_size){if(C===0)Nb(A.head),A.strstart=0,A.block_start=0,A.insert=0;let z=new Uint8Array(A.w_size);z.set(B.subarray(E-A.w_size,E),0),B=z,E=A.w_size}let{avail_in:D,next_in:F,input:U}=u;u.avail_in=E,u.next_in=0,u.input=B,BK(A);while(A.lookahead>=M1){let z=A.strstart,k=A.lookahead-(M1-1);do A.ins_h=mb(A,A.ins_h,A.window[z+M1-1]),A.prev[z&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=z,z++;while(--k);A.strstart=z,A.lookahead=M1-1,BK(A)}return A.strstart+=A.lookahead,A.block_start=A.strstart,A.insert=A.lookahead,A.lookahead=0,A.match_length=A.prev_length=M1-1,A.match_available=0,u.next_in=F,u.input=U,u.avail_in=D,A.wrap=C,HU},Tt4,Ot4,It4,Pt4,jt4,Nt4,it4,at4,Vt4="pako deflate (from Nodeca project)",lT,ht4=(u,B)=>{return Object.prototype.hasOwnProperty.call(u,B)},mt4=function(u){let B=Array.prototype.slice.call(arguments,1);while(B.length){let E=B.shift();if(!E)continue;if(typeof E!=="object")throw TypeError(E+"must be non-object");for(let A in E)if(ht4(E,A))u[A]=E[A]}return u},rt4=(u)=>{let B=0;for(let A=0,C=u.length;A<C;A++)B+=u[A].length;let E=new Uint8Array(B);for(let A=0,C=0,D=u.length;A<D;A++){let F=u[A];E.set(F,C),C+=F.length}return E},$g,mDu=!0,QT,$t4=(u)=>{let B,E,A,C,D,F=u.length,U=0;for(C=0;C<F;C++){if(E=u.charCodeAt(C),(E&64512)===55296&&C+1<F){if(A=u.charCodeAt(C+1),(A&64512)===56320)E=65536+(E-55296<<10)+(A-56320),C++}U+=E<128?1:E<2048?2:E<65536?3:4}B=new Uint8Array(U);for(D=0,C=0;D<U;C++){if(E=u.charCodeAt(C),(E&64512)===55296&&C+1<F){if(A=u.charCodeAt(C+1),(A&64512)===56320)E=65536+(E-55296<<10)+(A-56320),C++}if(E<128)B[D++]=E;else if(E<2048)B[D++]=192|E>>>6,B[D++]=128|E&63;else if(E<65536)B[D++]=224|E>>>12,B[D++]=128|E>>>6&63,B[D++]=128|E&63;else B[D++]=240|E>>>18,B[D++]=128|E>>>12&63,B[D++]=128|E>>>6&63,B[D++]=128|E&63}return B},yt4=(u,B)=>{if(B<65534){if(u.subarray&&mDu)return String.fromCharCode.apply(null,u.length===B?u:u.subarray(0,B))}let E="";for(let A=0;A<B;A++)E+=String.fromCharCode(u[A]);return E},ct4=(u,B)=>{let E,A,C=B||u.length,D=Array(C*2);for(A=0,E=0;E<C;){let F=u[E++];if(F<128){D[A++]=F;continue}let U=QT[F];if(U>4){D[A++]=65533,E+=U-1;continue}F&=U===2?31:U===3?15:7;while(U>1&&E<C)F=F<<6|u[E++]&63,U--;if(U>1){D[A++]=65533;continue}if(F<65536)D[A++]=F;else F-=65536,D[A++]=55296|F>>10&1023,D[A++]=56320|F&1023}return yt4(D,A)},gt4=(u,B)=>{if(B=B||u.length,B>u.length)B=u.length;let E=B-1;while(E>=0&&(u[E]&192)===128)E--;if(E<0)return B;if(E===0)return B;return E+QT[u[E]]>B?E:B},GT,rDu,$Du,nt4,pt4,dt4,st4,Vg,ot4,tt4,et4,ue4,Ae4,Ce4,De4,Fe4,Ue4,ze4,Rg=30,ke4=12,fe4=function(B,E){let A,C,D,F,U,z,k,f,l,b,M,Z,J,w,K,Q,G,L,H,q,x,v,W,S,T=B.state;A=B.next_in,W=B.input,C=A+(B.avail_in-5),D=B.next_out,S=B.output,F=D-(E-B.avail_out),U=D+(B.avail_out-257),z=T.dmax,k=T.wsize,f=T.whave,l=T.wnext,b=T.window,M=T.hold,Z=T.bits,J=T.lencode,w=T.distcode,K=(1<<T.lenbits)-1,Q=(1<<T.distbits)-1;u:do{if(Z<15)M+=W[A++]<<Z,Z+=8,M+=W[A++]<<Z,Z+=8;G=J[M&K];B:for(;;){if(L=G>>>24,M>>>=L,Z-=L,L=G>>>16&255,L===0)S[D++]=G&65535;else if(L&16){if(H=G&65535,L&=15,L){if(Z<L)M+=W[A++]<<Z,Z+=8;H+=M&(1<<L)-1,M>>>=L,Z-=L}if(Z<15)M+=W[A++]<<Z,Z+=8,M+=W[A++]<<Z,Z+=8;G=w[M&Q];E:for(;;){if(L=G>>>24,M>>>=L,Z-=L,L=G>>>16&255,L&16){if(q=G&65535,L&=15,Z<L){if(M+=W[A++]<<Z,Z+=8,Z<L)M+=W[A++]<<Z,Z+=8}if(q+=M&(1<<L)-1,q>z){B.msg="invalid distance too far back",T.mode=Rg;break u}if(M>>>=L,Z-=L,L=D-F,q>L){if(L=q-L,L>f){if(T.sane){B.msg="invalid distance too far back",T.mode=Rg;break u}}if(x=0,v=b,l===0){if(x+=k-L,L<H){H-=L;do S[D++]=b[x++];while(--L);x=D-q,v=S}}else if(l<L){if(x+=k+l-L,L-=l,L<H){H-=L;do S[D++]=b[x++];while(--L);if(x=0,l<H){L=l,H-=L;do S[D++]=b[x++];while(--L);x=D-q,v=S}}}else if(x+=l-L,L<H){H-=L;do S[D++]=b[x++];while(--L);x=D-q,v=S}while(H>2)S[D++]=v[x++],S[D++]=v[x++],S[D++]=v[x++],H-=3;if(H){if(S[D++]=v[x++],H>1)S[D++]=v[x++]}}else{x=D-q;do S[D++]=S[x++],S[D++]=S[x++],S[D++]=S[x++],H-=3;while(H>2);if(H){if(S[D++]=S[x++],H>1)S[D++]=S[x++]}}}else if((L&64)===0){G=w[(G&65535)+(M&(1<<L)-1)];continue E}else{B.msg="invalid distance code",T.mode=Rg;break u}break}}else if((L&64)===0){G=J[(G&65535)+(M&(1<<L)-1)];continue B}else if(L&32){T.mode=ke4;break u}else{B.msg="invalid literal/length code",T.mode=Rg;break u}break}}while(A<C&&D<U);H=Z>>3,A-=H,Z-=H<<3,M&=(1<<Z)-1,B.next_in=A,B.next_out=D,B.avail_in=A<C?5+(C-A):5-(A-C),B.avail_out=D<U?257+(U-D):257-(D-U),T.hold=M,T.bits=Z;return},Qq=15,gCu=852,_Cu=592,nCu=0,pU0=1,pCu=2,le4,be4,Me4,Ze4,Je4=(u,B,E,A,C,D,F,U)=>{let z=U.bits,k=0,f=0,l=0,b=0,M=0,Z=0,J=0,w=0,K=0,Q=0,G,L,H,q,x,v=null,W=0,S,T=new Uint16Array(Qq+1),R=new Uint16Array(Qq+1),Y=null,a=0,I,O,i;for(k=0;k<=Qq;k++)T[k]=0;for(f=0;f<A;f++)T[B[E+f]]++;M=z;for(b=Qq;b>=1;b--)if(T[b]!==0)break;if(M>b)M=b;if(b===0)return C[D++]=20971520,C[D++]=20971520,U.bits=1,0;for(l=1;l<b;l++)if(T[l]!==0)break;if(M<l)M=l;w=1;for(k=1;k<=Qq;k++)if(w<<=1,w-=T[k],w<0)return-1;if(w>0&&(u===nCu||b!==1))return-1;R[1]=0;for(k=1;k<Qq;k++)R[k+1]=R[k]+T[k];for(f=0;f<A;f++)if(B[E+f]!==0)F[R[B[E+f]]++]=f;if(u===nCu)v=Y=F,S=19;else if(u===pU0)v=le4,W-=257,Y=be4,a-=257,S=256;else v=Me4,Y=Ze4,S=-1;if(Q=0,f=0,k=l,x=D,Z=M,J=0,H=-1,K=1<<M,q=K-1,u===pU0&&K>gCu||u===pCu&&K>_Cu)return 1;for(;;){if(I=k-J,F[f]<S)O=0,i=F[f];else if(F[f]>S)O=Y[a+F[f]],i=v[W+F[f]];else O=96,i=0;G=1<<k-J,L=1<<Z,l=L;do L-=G,C[x+(Q>>J)+L]=I<<24|O<<16|i|0;while(L!==0);G=1<<k-1;while(Q&G)G>>=1;if(G!==0)Q&=G-1,Q+=G;else Q=0;if(f++,--T[k]===0){if(k===b)break;k=B[E+F[f]]}if(k>M&&(Q&q)!==H){if(J===0)J=M;x+=l,Z=k-J,w=1<<Z;while(Z+J<b){if(w-=T[Z+J],w<=0)break;Z++,w<<=1}if(K+=1<<Z,u===pU0&&K>gCu||u===pCu&&K>_Cu)return 1;H=Q&q,C[H]=M<<24|Z<<16|x-D|0}}if(Q!==0)C[x+Q]=k-J<<24|4194304|0;return U.bits=M,0},bT,we4=0,yDu=1,cDu=2,dCu,Ke4,Tg,EK,Qe4,Ge4,SA,gDu,_Du,He4,sCu,nDu=1,oCu=2,tCu=3,eCu=4,uDu=5,BDu=6,EDu=7,ADu=8,CDu=9,DDu=10,hg=11,ak=12,dU0=13,FDu=14,sU0=15,UDu=16,zDu=17,kDu=18,fDu=19,Og=20,Ig=21,lDu=22,bDu=23,MDu=24,ZDu=25,JDu=26,oU0=27,wDu=28,KDu=29,k9=30,pDu=31,Le4=32,qe4=852,Xe4=592,xe4=15,ve4,QDu=(u)=>{return(u>>>24&255)+(u>>>8&65280)+((u&65280)<<8)+((u&255)<<24)},dDu=(u)=>{if(!u||!u.state)return SA;let B=u.state;if(u.total_in=u.total_out=B.total=0,u.msg="",B.wrap)u.adler=B.wrap&1;return B.mode=nDu,B.last=0,B.havedict=0,B.dmax=32768,B.head=null,B.hold=0,B.bits=0,B.lencode=B.lendyn=new Int32Array(qe4),B.distcode=B.distdyn=new Int32Array(Xe4),B.sane=1,B.back=-1,EK},sDu=(u)=>{if(!u||!u.state)return SA;let B=u.state;return B.wsize=0,B.whave=0,B.wnext=0,dDu(u)},oDu=(u,B)=>{let E;if(!u||!u.state)return SA;let A=u.state;if(B<0)E=0,B=-B;else if(E=(B>>4)+1,B<48)B&=15;if(B&&(B<8||B>15))return SA;if(A.window!==null&&A.wbits!==B)A.window=null;return A.wrap=E,A.wbits=B,sDu(u)},tDu=(u,B)=>{if(!u)return SA;let E=new Se4;u.state=E,E.window=null;let A=oDu(u,B);if(A!==EK)u.state=null;return A},We4=(u)=>{return tDu(u,ve4)},GDu=!0,tU0,eU0,Ye4=(u)=>{if(GDu){tU0=new Int32Array(512),eU0=new Int32Array(32);let B=0;while(B<144)u.lens[B++]=8;while(B<256)u.lens[B++]=9;while(B<280)u.lens[B++]=7;while(B<288)u.lens[B++]=8;bT(yDu,u.lens,0,288,tU0,0,u.work,{bits:9}),B=0;while(B<32)u.lens[B++]=5;bT(cDu,u.lens,0,32,eU0,0,u.work,{bits:5}),GDu=!1}u.lencode=tU0,u.lenbits=9,u.distcode=eU0,u.distbits=5},eDu=(u,B,E,A)=>{let C,D=u.state;if(D.window===null)D.wsize=1<<D.wbits,D.wnext=0,D.whave=0,D.window=new Uint8Array(D.wsize);if(A>=D.wsize)D.window.set(B.subarray(E-D.wsize,E),0),D.wnext=0,D.whave=D.wsize;else{if(C=D.wsize-D.wnext,C>A)C=A;if(D.window.set(B.subarray(E-A,E-A+C),D.wnext),A-=C,A)D.window.set(B.subarray(E-A,E),0),D.wnext=A,D.whave=D.wsize;else{if(D.wnext+=C,D.wnext===D.wsize)D.wnext=0;if(D.whave<D.wsize)D.whave+=C}}return 0},Re4=(u,B)=>{let E,A,C,D,F,U,z,k,f,l,b,M,Z,J,w=0,K,Q,G,L,H,q,x,v,W=new Uint8Array(4),S,T,R=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!u||!u.state||!u.output||!u.input&&u.avail_in!==0)return SA;if(E=u.state,E.mode===ak)E.mode=dU0;F=u.next_out,C=u.output,z=u.avail_out,D=u.next_in,A=u.input,U=u.avail_in,k=E.hold,f=E.bits,l=U,b=z,v=EK;u:for(;;)switch(E.mode){case nDu:if(E.wrap===0){E.mode=dU0;break}while(f<16){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(E.wrap&2&&k===35615){E.check=0,W[0]=k&255,W[1]=k>>>8&255,E.check=a5(E.check,W,2,0),k=0,f=0,E.mode=oCu;break}if(E.flags=0,E.head)E.head.done=!1;if(!(E.wrap&1)||(((k&255)<<8)+(k>>8))%31){u.msg="incorrect header check",E.mode=k9;break}if((k&15)!==sCu){u.msg="unknown compression method",E.mode=k9;break}if(k>>>=4,f-=4,x=(k&15)+8,E.wbits===0)E.wbits=x;else if(x>E.wbits){u.msg="invalid window size",E.mode=k9;break}E.dmax=1<<E.wbits,u.adler=E.check=1,E.mode=k&512?DDu:ak,k=0,f=0;break;case oCu:while(f<16){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(E.flags=k,(E.flags&255)!==sCu){u.msg="unknown compression method",E.mode=k9;break}if(E.flags&57344){u.msg="unknown header flags set",E.mode=k9;break}if(E.head)E.head.text=k>>8&1;if(E.flags&512)W[0]=k&255,W[1]=k>>>8&255,E.check=a5(E.check,W,2,0);k=0,f=0,E.mode=tCu;case tCu:while(f<32){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(E.head)E.head.time=k;if(E.flags&512)W[0]=k&255,W[1]=k>>>8&255,W[2]=k>>>16&255,W[3]=k>>>24&255,E.check=a5(E.check,W,4,0);k=0,f=0,E.mode=eCu;case eCu:while(f<16){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(E.head)E.head.xflags=k&255,E.head.os=k>>8;if(E.flags&512)W[0]=k&255,W[1]=k>>>8&255,E.check=a5(E.check,W,2,0);k=0,f=0,E.mode=uDu;case uDu:if(E.flags&1024){while(f<16){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(E.length=k,E.head)E.head.extra_len=k;if(E.flags&512)W[0]=k&255,W[1]=k>>>8&255,E.check=a5(E.check,W,2,0);k=0,f=0}else if(E.head)E.head.extra=null;E.mode=BDu;case BDu:if(E.flags&1024){if(M=E.length,M>U)M=U;if(M){if(E.head){if(x=E.head.extra_len-E.length,!E.head.extra)E.head.extra=new Uint8Array(E.head.extra_len);E.head.extra.set(A.subarray(D,D+M),x)}if(E.flags&512)E.check=a5(E.check,A,M,D);U-=M,D+=M,E.length-=M}if(E.length)break u}E.length=0,E.mode=EDu;case EDu:if(E.flags&2048){if(U===0)break u;M=0;do if(x=A[D+M++],E.head&&x&&E.length<65536)E.head.name+=String.fromCharCode(x);while(x&&M<U);if(E.flags&512)E.check=a5(E.check,A,M,D);if(U-=M,D+=M,x)break u}else if(E.head)E.head.name=null;E.length=0,E.mode=ADu;case ADu:if(E.flags&4096){if(U===0)break u;M=0;do if(x=A[D+M++],E.head&&x&&E.length<65536)E.head.comment+=String.fromCharCode(x);while(x&&M<U);if(E.flags&512)E.check=a5(E.check,A,M,D);if(U-=M,D+=M,x)break u}else if(E.head)E.head.comment=null;E.mode=CDu;case CDu:if(E.flags&512){while(f<16){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(k!==(E.check&65535)){u.msg="header crc mismatch",E.mode=k9;break}k=0,f=0}if(E.head)E.head.hcrc=E.flags>>9&1,E.head.done=!0;u.adler=E.check=0,E.mode=ak;break;case DDu:while(f<32){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}u.adler=E.check=QDu(k),k=0,f=0,E.mode=hg;case hg:if(E.havedict===0)return u.next_out=F,u.avail_out=z,u.next_in=D,u.avail_in=U,E.hold=k,E.bits=f,Ge4;u.adler=E.check=1,E.mode=ak;case ak:if(B===Ke4||B===Tg)break u;case dU0:if(E.last){k>>>=f&7,f-=f&7,E.mode=oU0;break}while(f<3){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}switch(E.last=k&1,k>>>=1,f-=1,k&3){case 0:E.mode=FDu;break;case 1:if(Ye4(E),E.mode=Og,B===Tg){k>>>=2,f-=2;break u}break;case 2:E.mode=zDu;break;case 3:u.msg="invalid block type",E.mode=k9}k>>>=2,f-=2;break;case FDu:k>>>=f&7,f-=f&7;while(f<32){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if((k&65535)!==(k>>>16^65535)){u.msg="invalid stored block lengths",E.mode=k9;break}if(E.length=k&65535,k=0,f=0,E.mode=sU0,B===Tg)break u;case sU0:E.mode=UDu;case UDu:if(M=E.length,M){if(M>U)M=U;if(M>z)M=z;if(M===0)break u;C.set(A.subarray(D,D+M),F),U-=M,D+=M,z-=M,F+=M,E.length-=M;break}E.mode=ak;break;case zDu:while(f<14){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(E.nlen=(k&31)+257,k>>>=5,f-=5,E.ndist=(k&31)+1,k>>>=5,f-=5,E.ncode=(k&15)+4,k>>>=4,f-=4,E.nlen>286||E.ndist>30){u.msg="too many length or distance symbols",E.mode=k9;break}E.have=0,E.mode=kDu;case kDu:while(E.have<E.ncode){while(f<3){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}E.lens[R[E.have++]]=k&7,k>>>=3,f-=3}while(E.have<19)E.lens[R[E.have++]]=0;if(E.lencode=E.lendyn,E.lenbits=7,S={bits:E.lenbits},v=bT(we4,E.lens,0,19,E.lencode,0,E.work,S),E.lenbits=S.bits,v){u.msg="invalid code lengths set",E.mode=k9;break}E.have=0,E.mode=fDu;case fDu:while(E.have<E.nlen+E.ndist){for(;;){if(w=E.lencode[k&(1<<E.lenbits)-1],K=w>>>24,Q=w>>>16&255,G=w&65535,K<=f)break;if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(G<16)k>>>=K,f-=K,E.lens[E.have++]=G;else{if(G===16){T=K+2;while(f<T){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(k>>>=K,f-=K,E.have===0){u.msg="invalid bit length repeat",E.mode=k9;break}x=E.lens[E.have-1],M=3+(k&3),k>>>=2,f-=2}else if(G===17){T=K+3;while(f<T){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}k>>>=K,f-=K,x=0,M=3+(k&7),k>>>=3,f-=3}else{T=K+7;while(f<T){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}k>>>=K,f-=K,x=0,M=11+(k&127),k>>>=7,f-=7}if(E.have+M>E.nlen+E.ndist){u.msg="invalid bit length repeat",E.mode=k9;break}while(M--)E.lens[E.have++]=x}}if(E.mode===k9)break;if(E.lens[256]===0){u.msg="invalid code -- missing end-of-block",E.mode=k9;break}if(E.lenbits=9,S={bits:E.lenbits},v=bT(yDu,E.lens,0,E.nlen,E.lencode,0,E.work,S),E.lenbits=S.bits,v){u.msg="invalid literal/lengths set",E.mode=k9;break}if(E.distbits=6,E.distcode=E.distdyn,S={bits:E.distbits},v=bT(cDu,E.lens,E.nlen,E.ndist,E.distcode,0,E.work,S),E.distbits=S.bits,v){u.msg="invalid distances set",E.mode=k9;break}if(E.mode=Og,B===Tg)break u;case Og:E.mode=Ig;case Ig:if(U>=6&&z>=258){if(u.next_out=F,u.avail_out=z,u.next_in=D,u.avail_in=U,E.hold=k,E.bits=f,fe4(u,b),F=u.next_out,C=u.output,z=u.avail_out,D=u.next_in,A=u.input,U=u.avail_in,k=E.hold,f=E.bits,E.mode===ak)E.back=-1;break}E.back=0;for(;;){if(w=E.lencode[k&(1<<E.lenbits)-1],K=w>>>24,Q=w>>>16&255,G=w&65535,K<=f)break;if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(Q&&(Q&240)===0){L=K,H=Q,q=G;for(;;){if(w=E.lencode[q+((k&(1<<L+H)-1)>>L)],K=w>>>24,Q=w>>>16&255,G=w&65535,L+K<=f)break;if(U===0)break u;U--,k+=A[D++]<<f,f+=8}k>>>=L,f-=L,E.back+=L}if(k>>>=K,f-=K,E.back+=K,E.length=G,Q===0){E.mode=JDu;break}if(Q&32){E.back=-1,E.mode=ak;break}if(Q&64){u.msg="invalid literal/length code",E.mode=k9;break}E.extra=Q&15,E.mode=lDu;case lDu:if(E.extra){T=E.extra;while(f<T){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}E.length+=k&(1<<E.extra)-1,k>>>=E.extra,f-=E.extra,E.back+=E.extra}E.was=E.length,E.mode=bDu;case bDu:for(;;){if(w=E.distcode[k&(1<<E.distbits)-1],K=w>>>24,Q=w>>>16&255,G=w&65535,K<=f)break;if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if((Q&240)===0){L=K,H=Q,q=G;for(;;){if(w=E.distcode[q+((k&(1<<L+H)-1)>>L)],K=w>>>24,Q=w>>>16&255,G=w&65535,L+K<=f)break;if(U===0)break u;U--,k+=A[D++]<<f,f+=8}k>>>=L,f-=L,E.back+=L}if(k>>>=K,f-=K,E.back+=K,Q&64){u.msg="invalid distance code",E.mode=k9;break}E.offset=G,E.extra=Q&15,E.mode=MDu;case MDu:if(E.extra){T=E.extra;while(f<T){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}E.offset+=k&(1<<E.extra)-1,k>>>=E.extra,f-=E.extra,E.back+=E.extra}if(E.offset>E.dmax){u.msg="invalid distance too far back",E.mode=k9;break}E.mode=ZDu;case ZDu:if(z===0)break u;if(M=b-z,E.offset>M){if(M=E.offset-M,M>E.whave){if(E.sane){u.msg="invalid distance too far back",E.mode=k9;break}}if(M>E.wnext)M-=E.wnext,Z=E.wsize-M;else Z=E.wnext-M;if(M>E.length)M=E.length;J=E.window}else J=C,Z=F-E.offset,M=E.length;if(M>z)M=z;z-=M,E.length-=M;do C[F++]=J[Z++];while(--M);if(E.length===0)E.mode=Ig;break;case JDu:if(z===0)break u;C[F++]=E.length,z--,E.mode=Ig;break;case oU0:if(E.wrap){while(f<32){if(U===0)break u;U--,k|=A[D++]<<f,f+=8}if(b-=z,u.total_out+=b,E.total+=b,b)u.adler=E.check=E.flags?a5(E.check,C,b,F-b):KT(E.check,C,b,F-b);if(b=z,(E.flags?k:QDu(k))!==E.check){u.msg="incorrect data check",E.mode=k9;break}k=0,f=0}E.mode=wDu;case wDu:if(E.wrap&&E.flags){while(f<32){if(U===0)break u;U--,k+=A[D++]<<f,f+=8}if(k!==(E.total&4294967295)){u.msg="incorrect length check",E.mode=k9;break}k=0,f=0}E.mode=KDu;case KDu:v=Qe4;break u;case k9:v=gDu;break u;case pDu:return _Du;case Le4:default:return SA}if(u.next_out=F,u.avail_out=z,u.next_in=D,u.avail_in=U,E.hold=k,E.bits=f,E.wsize||b!==u.avail_out&&E.mode<k9&&(E.mode<oU0||B!==dCu)){if(eDu(u,u.output,u.next_out,b-u.avail_out));}if(l-=u.avail_in,b-=u.avail_out,u.total_in+=l,u.total_out+=b,E.total+=b,E.wrap&&b)u.adler=E.check=E.flags?a5(E.check,C,b,u.next_out-b):KT(E.check,C,b,u.next_out-b);if(u.data_type=E.bits+(E.last?64:0)+(E.mode===ak?128:0)+(E.mode===Og||E.mode===sU0?256:0),(l===0&&b===0||B===dCu)&&v===EK)v=He4;return v},Te4=(u)=>{if(!u||!u.state)return SA;let B=u.state;if(B.window)B.window=null;return u.state=null,EK},Oe4=(u,B)=>{if(!u||!u.state)return SA;let E=u.state;if((E.wrap&2)===0)return SA;return E.head=B,B.done=!1,EK},Ie4=(u,B)=>{let E=B.length,A,C,D;if(!u||!u.state)return SA;if(A=u.state,A.wrap!==0&&A.mode!==hg)return SA;if(A.mode===hg){if(C=1,C=KT(C,B,E,0),C!==A.check)return gDu}if(D=eDu(u,B,E,E),D)return A.mode=pDu,_Du;return A.havedict=1,EK},Pe4,je4,Ne4,ie4,ae4,Ve4,he4,me4,re4,$e4="pako inflate (from Nodeca project)",hk,ce4,uFu,ge4,_e4,HT,uz0,Bz0,ne4,HDu,pe4,se4,oe4,te4,ee4,u03,B03,jH1,E03,NH1,iH1,aH1,A03,VH1,hH1,BFu,EFu;var AFu=g(()=>{/*! pako 2.0.3 https://github.com/nodeca/pako @license (MIT AND Zlib) */MT=LT+1+Fz0,qDu=2*MT+1,Ez0=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]),Pg=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]),vo4=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),SDu=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Vk=Array((MT+2)*2);Hq(Vk);fT=Array(Gq*2);Hq(fT);ZT=Array(So4);Hq(ZT);JT=Array(Xo4-qo4+1);Hq(JT);kz0=Array(Fz0);Hq(kz0);ag=Array(Gq);Hq(ag);Vo4=jo4,ho4=NDu,mo4=io4,ro4=ao4,$o4=No4,yo4={_tr_init:Vo4,_tr_stored_block:ho4,_tr_flush_block:mo4,_tr_tally:ro4,_tr_align:$o4},KT=co4,_o4=new Uint32Array(go4()),a5=no4,ew={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"},Lq={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:po4,_tr_stored_block:do4,_tr_flush_block:so4,_tr_tally:Vb,_tr_align:oo4}=yo4,{Z_NO_FLUSH:AK,Z_PARTIAL_FLUSH:to4,Z_FULL_FLUSH:eo4,Z_FINISH:hb,Z_BLOCK:$Cu,Z_OK:HU,Z_STREAM_END:yCu,Z_STREAM_ERROR:vA,Z_DATA_ERROR:ut4,Z_BUF_ERROR:_U0,Z_DEFAULT_COMPRESSION:Bt4,Z_FILTERED:Et4,Z_HUFFMAN_ONLY:Yg,Z_RLE:At4,Z_FIXED:Ct4,Z_DEFAULT_STRATEGY:Dt4,Z_UNKNOWN:Ft4,Z_DEFLATED:mg}=Lq,Cz0=lt4+1+ft4,Zt4=2*Cz0+1,oC=ib+M1+1,mb=Qt4;kT=[new QU(0,0,0,0,Ht4),new QU(4,4,8,4,nU0),new QU(4,5,16,8,nU0),new QU(4,6,32,32,nU0),new QU(4,4,16,16,Kq),new QU(8,16,32,32,Kq),new QU(8,16,128,128,Kq),new QU(8,32,128,256,Kq),new QU(32,128,258,1024,Kq),new QU(32,258,258,4096,Kq)];Tt4=St4,Ot4=hDu,It4=VDu,Pt4=aDu,jt4=vt4,Nt4=Wt4,it4=Yt4,at4=Rt4,lT={deflateInit:Tt4,deflateInit2:Ot4,deflateReset:It4,deflateResetKeep:Pt4,deflateSetHeader:jt4,deflate:Nt4,deflateEnd:it4,deflateSetDictionary:at4,deflateInfo:Vt4},$g={assign:mt4,flattenChunks:rt4};try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(u){mDu=!1}QT=new Uint8Array(256);for(let u=0;u<256;u++)QT[u]=u>=252?6:u>=248?5:u>=240?4:u>=224?3:u>=192?2:1;QT[254]=QT[254]=1;GT={string2buf:$t4,buf2string:ct4,utf8border:gt4};rDu=_t4,$Du=Object.prototype.toString,{Z_NO_FLUSH:nt4,Z_SYNC_FLUSH:pt4,Z_FULL_FLUSH:dt4,Z_FINISH:st4,Z_OK:Vg,Z_STREAM_END:ot4,Z_DEFAULT_COMPRESSION:tt4,Z_DEFAULT_STRATEGY:et4,Z_DEFLATED:ue4}=Lq;XT.prototype.push=function(u,B){let E=this.strm,A=this.options.chunkSize,C,D;if(this.ended)return!1;if(B===~~B)D=B;else D=B===!0?st4:nt4;if(typeof u==="string")E.input=GT.string2buf(u);else if($Du.call(u)==="[object ArrayBuffer]")E.input=new Uint8Array(u);else E.input=u;E.next_in=0,E.avail_in=E.input.length;for(;;){if(E.avail_out===0)E.output=new Uint8Array(A),E.next_out=0,E.avail_out=A;if((D===pt4||D===dt4)&&E.avail_out<=6){this.onData(E.output.subarray(0,E.next_out)),E.avail_out=0;continue}if(C=lT.deflate(E,D),C===ot4){if(E.next_out>0)this.onData(E.output.subarray(0,E.next_out));return C=lT.deflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===Vg}if(E.avail_out===0){this.onData(E.output);continue}if(D>0&&E.next_out>0){this.onData(E.output.subarray(0,E.next_out)),E.avail_out=0;continue}if(E.avail_in===0)break}return!0};XT.prototype.onData=function(u){this.chunks.push(u)};XT.prototype.onEnd=function(u){if(u===Vg)this.result=$g.flattenChunks(this.chunks);this.chunks=[],this.err=u,this.msg=this.strm.msg};Ae4=XT,Ce4=fz0,De4=Be4,Fe4=Ee4,Ue4=Lq,ze4={Deflate:Ae4,deflate:Ce4,deflateRaw:De4,gzip:Fe4,constants:Ue4},le4=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]),be4=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]),Me4=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]),Ze4=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]),bT=Je4,{Z_FINISH:dCu,Z_BLOCK:Ke4,Z_TREES:Tg,Z_OK:EK,Z_STREAM_END:Qe4,Z_NEED_DICT:Ge4,Z_STREAM_ERROR:SA,Z_DATA_ERROR:gDu,Z_MEM_ERROR:_Du,Z_BUF_ERROR:He4,Z_DEFLATED:sCu}=Lq,ve4=xe4;Pe4=sDu,je4=oDu,Ne4=dDu,ie4=We4,ae4=tDu,Ve4=Re4,he4=Te4,me4=Oe4,re4=Ie4,hk={inflateReset:Pe4,inflateReset2:je4,inflateResetKeep:Ne4,inflateInit:ie4,inflateInit2:ae4,inflate:Ve4,inflateEnd:he4,inflateGetHeader:me4,inflateSetDictionary:re4,inflateInfo:$e4};ce4=ye4,uFu=Object.prototype.toString,{Z_NO_FLUSH:ge4,Z_FINISH:_e4,Z_OK:HT,Z_STREAM_END:uz0,Z_NEED_DICT:Bz0,Z_STREAM_ERROR:ne4,Z_DATA_ERROR:HDu,Z_MEM_ERROR:pe4}=Lq;xT.prototype.push=function(u,B){let E=this.strm,A=this.options.chunkSize,C=this.options.dictionary,D,F,U;if(this.ended)return!1;if(B===~~B)F=B;else F=B===!0?_e4:ge4;if(uFu.call(u)==="[object ArrayBuffer]")E.input=new Uint8Array(u);else E.input=u;E.next_in=0,E.avail_in=E.input.length;for(;;){if(E.avail_out===0)E.output=new Uint8Array(A),E.next_out=0,E.avail_out=A;if(D=hk.inflate(E,F),D===Bz0&&C){if(D=hk.inflateSetDictionary(E,C),D===HT)D=hk.inflate(E,F);else if(D===HDu)D=Bz0}while(E.avail_in>0&&D===uz0&&E.state.wrap>0&&u[E.next_in]!==0)hk.inflateReset(E),D=hk.inflate(E,F);switch(D){case ne4:case HDu:case Bz0:case pe4:return this.onEnd(D),this.ended=!0,!1}if(U=E.avail_out,E.next_out){if(E.avail_out===0||D===uz0)if(this.options.to==="string"){let z=GT.utf8border(E.output,E.next_out),k=E.next_out-z,f=GT.buf2string(E.output,z);if(E.next_out=k,E.avail_out=A-k,k)E.output.set(E.output.subarray(z,z+k),0);this.onData(f)}else this.onData(E.output.length===E.next_out?E.output:E.output.subarray(0,E.next_out))}if(D===HT&&U===0)continue;if(D===uz0)return D=hk.inflateEnd(this.strm),this.onEnd(D),this.ended=!0,!0;if(E.avail_in===0)break}return!0};xT.prototype.onData=function(u){this.chunks.push(u)};xT.prototype.onEnd=function(u){if(u===HT)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=$g.flattenChunks(this.chunks);this.chunks=[],this.err=u,this.msg=this.strm.msg};se4=xT,oe4=lz0,te4=de4,ee4=lz0,u03=Lq,B03={Inflate:se4,inflate:oe4,inflateRaw:te4,ungzip:ee4,constants:u03},{Deflate:jH1,deflate:E03,deflateRaw:NH1,gzip:iH1}=ze4,{Inflate:aH1,inflate:A03,inflateRaw:VH1,ungzip:hH1}=B03,BFu=E03,EFu=A03});var _6;var rb=g(()=>{_6={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 Xq=P1(($H1,UFu)=>{var FFu="Expected a function",CFu=NaN,D03="[object Symbol]",F03=/^\s+|\s+$/g,U03=/^[-+]0x[0-9a-f]+$/i,z03=/^0b[01]+$/i,k03=/^0o[0-7]+$/i,f03=parseInt,l03=typeof global=="object"&&global&&global.Object===Object&&global,b03=typeof self=="object"&&self&&self.Object===Object&&self,M03=l03||b03||Function("return this")(),Z03=Object.prototype,J03=Z03.toString,w03=Math.max,K03=Math.min,bz0=function(){return M03.Date.now()};function Q03(u,B,E){var A,C,D,F,U,z,k=0,f=!1,l=!1,b=!0;if(typeof u!="function")throw TypeError(FFu);if(B=DFu(B)||0,yg(E))f=!!E.leading,l="maxWait"in E,D=l?w03(DFu(E.maxWait)||0,B):D,b="trailing"in E?!!E.trailing:b;function M(q){var x=A,v=C;return A=C=void 0,k=q,F=u.apply(v,x),F}function Z(q){return k=q,U=setTimeout(K,B),f?M(q):F}function J(q){var x=q-z,v=q-k,W=B-x;return l?K03(W,D-v):W}function w(q){var x=q-z,v=q-k;return z===void 0||x>=B||x<0||l&&v>=D}function K(){var q=bz0();if(w(q))return Q(q);U=setTimeout(K,J(q))}function Q(q){if(U=void 0,b&&A)return M(q);return A=C=void 0,F}function G(){if(U!==void 0)clearTimeout(U);k=0,A=z=C=U=void 0}function L(){return U===void 0?F:Q(bz0())}function H(){var q=bz0(),x=w(q);if(A=arguments,C=this,z=q,x){if(U===void 0)return Z(z);if(l)return U=setTimeout(K,B),M(z)}if(U===void 0)U=setTimeout(K,B);return F}return H.cancel=G,H.flush=L,H}function G03(u,B,E){var A=!0,C=!0;if(typeof u!="function")throw TypeError(FFu);if(yg(E))A="leading"in E?!!E.leading:A,C="trailing"in E?!!E.trailing:C;return Q03(u,B,{leading:A,maxWait:B,trailing:C})}function yg(u){var B=typeof u;return!!u&&(B=="object"||B=="function")}function H03(u){return!!u&&typeof u=="object"}function L03(u){return typeof u=="symbol"||H03(u)&&J03.call(u)==D03}function DFu(u){if(typeof u=="number")return u;if(L03(u))return CFu;if(yg(u)){var B=typeof u.valueOf=="function"?u.valueOf():u;u=yg(B)?B+"":B}if(typeof u!="string")return u===0?u:+u;u=u.replace(F03,"");var E=z03.test(u);return E||k03.test(u)?f03(u.slice(2),E?2:8):U03.test(u)?CFu:+u}UFu.exports=G03});var kFu=P1((Mz0,zFu)=>{(function(u,B){if(typeof define==="function"&&define.amd)define([],B);else if(typeof Mz0==="object")zFu.exports=B();else u.PromisePool=B(),u.promisePool=u.PromisePool})(Mz0,function(){var u=function(){this._listeners={}};u.prototype.addEventListener=function(U,z){if(this._listeners[U]=this._listeners[U]||[],this._listeners[U].indexOf(z)<0)this._listeners[U].push(z)},u.prototype.removeEventListener=function(U,z){if(this._listeners[U]){var k=this._listeners[U].indexOf(z);if(k>=0)this._listeners[U].splice(k,1)}},u.prototype.dispatchEvent=function(U){if(this._listeners[U.type]&&this._listeners[U.type].length){var z=this._listeners[U.type].slice();for(var k=0,f=z.length;k<f;++k)z[k].call(this,U)}};var B=function(U){return typeof U.constructor==="function"&&U.constructor.name==="GeneratorFunction"},E=function(U){return{next:function(){var z=U();return z?{value:z}:{done:!0}}}},A=function(U){var z=!1;return{next:function(){if(z)return{done:!0};return z=!0,{value:U}}}},C=function(U,z){var k=typeof U;if(k==="object"){if(typeof U.next==="function")return U;if(typeof U.then==="function")return A(U)}if(k==="function")return B(U)?U():E(U);return A(z.resolve(U))},D=function(U,z,k){this.target=U,this.type=z,this.data=k},F=function(U,z,k){if(u.call(this),typeof z!=="number"||Math.floor(z)!==z||z<1)throw Error("Invalid concurrency");this._concurrency=z,this._options=k||{},this._options.promise=this._options.promise||Promise,this._iterator=C(U,this._options.promise),this._done=!1,this._size=0,this._promise=null,this._callbacks=null};return F.prototype=new u,F.prototype.constructor=F,F.prototype.concurrency=function(U){if(typeof U<"u"){if(this._concurrency=U,this.active())this._proceed()}return this._concurrency},F.prototype.size=function(){return this._size},F.prototype.active=function(){return!!this._promise},F.prototype.promise=function(){return this._promise},F.prototype.start=function(){var U=this,z=this._options.promise;return this._promise=new z(function(k,f){U._callbacks={reject:f,resolve:k},U._proceed()}),this._promise},F.prototype._fireEvent=function(U,z){this.dispatchEvent(new D(this,U,z))},F.prototype._settle=function(U){if(U)this._callbacks.reject(U);else this._callbacks.resolve();this._promise=null,this._callbacks=null},F.prototype._onPooledPromiseFulfilled=function(U,z){if(this._size--,this.active())this._fireEvent("fulfilled",{promise:U,result:z}),this._proceed()},F.prototype._onPooledPromiseRejected=function(U,z){if(this._size--,this.active())this._fireEvent("rejected",{promise:U,error:z}),this._settle(z||Error("Unknown error"))},F.prototype._trackPromise=function(U){var z=this;U.then(function(k){z._onPooledPromiseFulfilled(U,k)},function(k){z._onPooledPromiseRejected(U,k)}).catch(function(k){z._settle(Error("Promise processing failed: "+k))})},F.prototype._proceed=function(){if(!this._done){var U={done:!1};while(this._size<this._concurrency&&!(U=this._iterator.next()).done)this._size++,this._trackPromise(U.value);this._done=U===null||!!U.done}if(this._done&&this._size===0)this._settle()},F.PromisePoolEvent=D,F.PromisePool=F,F})});function Zz0(u,B,E){if(u&&u.length){let[A,C]=B,D=Math.PI/180*E,F=Math.cos(D),U=Math.sin(D);for(let z of u){let[k,f]=z;z[0]=(k-A)*F-(f-C)*U+A,z[1]=(k-A)*U+(f-C)*F+C}}}function q03(u,B,E){let A=[];u.forEach((C)=>A.push(...C)),Zz0(A,B,E)}function X03(u,B){return u[0]===B[0]&&u[1]===B[1]}function fFu(u,B,E,A=1){let C=E,D=Math.max(B,0.1),F=u[0]&&u[0][0]&&typeof u[0][0]==="number"?[u]:u,U=[0,0];if(C)for(let k of F)Zz0(k,U,C);let z=x03(F,D,A);if(C){for(let k of F)Zz0(k,U,-C);q03(z,U,-C)}return z}function x03(u,B,E){let A=[];for(let k of u){let f=[...k];if(!X03(f[0],f[f.length-1]))f.push([f[0][0],f[0][1]]);if(f.length>2)A.push(f)}let C=[];B=Math.max(B,0.1);let D=[];for(let k of A)for(let f=0;f<k.length-1;f++){let l=k[f],b=k[f+1];if(l[1]!==b[1]){let M=Math.min(l[1],b[1]);D.push({ymin:M,ymax:Math.max(l[1],b[1]),x:M===l[1]?l[0]:b[0],islope:(b[0]-l[0])/(b[1]-l[1])})}}if(D.sort((k,f)=>{if(k.ymin<f.ymin)return-1;if(k.ymin>f.ymin)return 1;if(k.x<f.x)return-1;if(k.x>f.x)return 1;if(k.ymax===f.ymax)return 0;return(k.ymax-f.ymax)/Math.abs(k.ymax-f.ymax)}),!D.length)return C;let F=[],U=D[0].ymin,z=0;while(F.length||D.length){if(D.length){let k=-1;for(let l=0;l<D.length;l++){if(D[l].ymin>U)break;k=l}D.splice(0,k+1).forEach((l)=>{F.push({s:U,edge:l})})}if(F=F.filter((k)=>{if(k.edge.ymax<=U)return!1;return!0}),F.sort((k,f)=>{if(k.edge.x===f.edge.x)return 0;return(k.edge.x-f.edge.x)/Math.abs(k.edge.x-f.edge.x)}),E!==1||z%B===0){if(F.length>1)for(let k=0;k<F.length;k=k+2){let f=k+1;if(f>=F.length)break;let l=F[k].edge,b=F[f].edge;C.push([[Math.round(l.x),U],[Math.round(b.x),U]])}}U+=E,F.forEach((k)=>{k.edge.x=k.edge.x+E*k.edge.islope}),z++}return C}function LU(u,B){var E;let A=B.hachureAngle+90,C=B.hachureGap;if(C<0)C=B.strokeWidth*4;C=Math.max(C,0.1);let D=1;if(B.roughness>=1){if((((E=B.randomizer)===null||E===void 0?void 0:E.next())||Math.random())>0.7)D=C}return fFu(u,C,A,D||1)}var xq=()=>{};class CK{constructor(u){this.helper=u}fillPolygons(u,B){return this._fillPolygons(u,B)}_fillPolygons(u,B){let E=LU(u,B);return{type:"fillSketch",ops:this.renderLines(E,B)}}renderLines(u,B){let E=[];for(let A of u)E.push(...this.helper.doubleLineOps(A[0][0],A[0][1],A[1][0],A[1][1],B));return E}}var cg=g(()=>{xq()});function $b(u){let B=u[0],E=u[1];return Math.sqrt(Math.pow(B[0]-E[0],2)+Math.pow(B[1]-E[1],2))}var Jz0;var lFu=g(()=>{cg();xq();Jz0=class Jz0 extends CK{fillPolygons(u,B){let E=B.hachureGap;if(E<0)E=B.strokeWidth*4;E=Math.max(E,0.1);let A=Object.assign({},B,{hachureGap:E}),C=LU(u,A),D=Math.PI/180*B.hachureAngle,F=[],U=E*0.5*Math.cos(D),z=E*0.5*Math.sin(D);for(let[f,l]of C)if($b([f,l]))F.push([[f[0]-U,f[1]+z],[...l]],[[f[0]+U,f[1]-z],[...l]]);return{type:"fillSketch",ops:this.renderLines(F,B)}}}});var wz0;var bFu=g(()=>{cg();wz0=class wz0 extends CK{fillPolygons(u,B){let E=this._fillPolygons(u,B),A=Object.assign({},B,{hachureAngle:B.hachureAngle+90}),C=this._fillPolygons(u,A);return E.ops=E.ops.concat(C.ops),E}}});class Kz0{constructor(u){this.helper=u}fillPolygons(u,B){B=Object.assign({},B,{hachureAngle:0});let E=LU(u,B);return this.dotsOnLines(E,B)}dotsOnLines(u,B){let E=[],A=B.hachureGap;if(A<0)A=B.strokeWidth*4;A=Math.max(A,0.1);let C=B.fillWeight;if(C<0)C=B.strokeWidth/2;let D=A/4;for(let F of u){let U=$b(F),z=U/A,k=Math.ceil(z)-1,f=U-k*A,l=(F[0][0]+F[1][0])/2-A/4,b=Math.min(F[0][1],F[1][1]);for(let M=0;M<k;M++){let Z=b+f+M*A,J=l-D+Math.random()*2*D,w=Z-D+Math.random()*2*D,K=this.helper.ellipse(J,w,C,C,B);E.push(...K.ops)}}return{type:"fillSketch",ops:E}}}var MFu=g(()=>{xq()});class Qz0{constructor(u){this.helper=u}fillPolygons(u,B){let E=LU(u,B);return{type:"fillSketch",ops:this.dashedLine(E,B)}}dashedLine(u,B){let E=B.dashOffset<0?B.hachureGap<0?B.strokeWidth*4:B.hachureGap:B.dashOffset,A=B.dashGap<0?B.hachureGap<0?B.strokeWidth*4:B.hachureGap:B.dashGap,C=[];return u.forEach((D)=>{let F=$b(D),U=Math.floor(F/(E+A)),z=(F+A-U*(E+A))/2,k=D[0],f=D[1];if(k[0]>f[0])k=D[1],f=D[0];let l=Math.atan((f[1]-k[1])/(f[0]-k[0]));for(let b=0;b<U;b++){let M=b*(E+A),Z=M+E,J=[k[0]+M*Math.cos(l)+z*Math.cos(l),k[1]+M*Math.sin(l)+z*Math.sin(l)],w=[k[0]+Z*Math.cos(l)+z*Math.cos(l),k[1]+Z*Math.sin(l)+z*Math.sin(l)];C.push(...this.helper.doubleLineOps(J[0],J[1],w[0],w[1],B))}}),C}}var ZFu=g(()=>{xq()});class Gz0{constructor(u){this.helper=u}fillPolygons(u,B){let E=B.hachureGap<0?B.strokeWidth*4:B.hachureGap,A=B.zigzagOffset<0?E:B.zigzagOffset;B=Object.assign({},B,{hachureGap:E+A});let C=LU(u,B);return{type:"fillSketch",ops:this.zigzagLines(C,A,B)}}zigzagLines(u,B,E){let A=[];return u.forEach((C)=>{let D=$b(C),F=Math.round(D/(2*B)),U=C[0],z=C[1];if(U[0]>z[0])U=C[1],z=C[0];let k=Math.atan((z[1]-U[1])/(z[0]-U[0]));for(let f=0;f<F;f++){let l=f*2*B,b=(f+1)*2*B,M=Math.sqrt(2*Math.pow(B,2)),Z=[U[0]+l*Math.cos(k),U[1]+l*Math.sin(k)],J=[U[0]+b*Math.cos(k),U[1]+b*Math.sin(k)],w=[Z[0]+M*Math.cos(k+Math.PI/4),Z[1]+M*Math.sin(k+Math.PI/4)];A.push(...this.helper.doubleLineOps(Z[0],Z[1],w[0],w[1],E),...this.helper.doubleLineOps(w[0],w[1],J[0],J[1],E))}}),A}}var JFu=g(()=>{xq()});function wFu(u,B){let E=u.fillStyle||"hachure";if(!O8[E])switch(E){case"zigzag":if(!O8[E])O8[E]=new Jz0(B);break;case"cross-hatch":if(!O8[E])O8[E]=new wz0(B);break;case"dots":if(!O8[E])O8[E]=new Kz0(B);break;case"dashed":if(!O8[E])O8[E]=new Qz0(B);break;case"zigzag-line":if(!O8[E])O8[E]=new Gz0(B);break;case"hachure":default:if(E="hachure",!O8[E])O8[E]=new CK(B);break}return O8[E]}var O8;var KFu=g(()=>{cg();lFu();bFu();MFu();ZFu();JFu();O8={}});function QFu(){return Math.floor(Math.random()*2147483648)}class vT{constructor(u){this.seed=u}next(){if(this.seed)return(2147483647&(this.seed=Math.imul(48271,this.seed)))/2147483648;else return Math.random()}}function v03(u){let B=[];while(u!=="")if(u.match(/^([ \t\r\n,]+)/))u=u.substr(RegExp.$1.length);else if(u.match(/^([aAcChHlLmMqQsStTvVzZ])/))B[B.length]={type:0,text:RegExp.$1},u=u.substr(RegExp.$1.length);else if(u.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))B[B.length]={type:1,text:`${parseFloat(RegExp.$1)}`},u=u.substr(RegExp.$1.length);else return[];return B[B.length]={type:2,text:""},B}function Hz0(u,B){return u.type===B}function vq(u){let B=[],E=v03(u),A="BOD",C=0,D=E[C];while(!Hz0(D,2)){let F=0,U=[];if(A==="BOD")if(D.text==="M"||D.text==="m")C++,F=gg[D.text],A=D.text;else return vq("M0,0"+u);else if(Hz0(D,1))F=gg[A];else C++,F=gg[D.text],A=D.text;if(C+F<E.length){for(let z=C;z<C+F;z++){let k=E[z];if(Hz0(k,1))U[U.length]=+k.text;else throw Error("Param not a number: "+A+","+k.text)}if(typeof gg[A]==="number"){let z={key:A,data:U};if(B.push(z),C+=F,D=E[C],A==="M")A="L";if(A==="m")A="l"}else throw Error("Bad segment: "+A)}else throw Error("Path data ended short")}return B}var gg;var GFu=g(()=>{gg={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 ST(u){let B=0,E=0,A=0,C=0,D=[];for(let{key:F,data:U}of u)switch(F){case"M":D.push({key:"M",data:[...U]}),[B,E]=U,[A,C]=U;break;case"m":B+=U[0],E+=U[1],D.push({key:"M",data:[B,E]}),A=B,C=E;break;case"L":D.push({key:"L",data:[...U]}),[B,E]=U;break;case"l":B+=U[0],E+=U[1],D.push({key:"L",data:[B,E]});break;case"C":D.push({key:"C",data:[...U]}),B=U[4],E=U[5];break;case"c":{let z=U.map((k,f)=>f%2?k+E:k+B);D.push({key:"C",data:z}),B=z[4],E=z[5];break}case"Q":D.push({key:"Q",data:[...U]}),B=U[2],E=U[3];break;case"q":{let z=U.map((k,f)=>f%2?k+E:k+B);D.push({key:"Q",data:z}),B=z[2],E=z[3];break}case"A":D.push({key:"A",data:[...U]}),B=U[5],E=U[6];break;case"a":B+=U[5],E+=U[6],D.push({key:"A",data:[U[0],U[1],U[2],U[3],U[4],B,E]});break;case"H":D.push({key:"H",data:[...U]}),B=U[0];break;case"h":B+=U[0],D.push({key:"H",data:[B]});break;case"V":D.push({key:"V",data:[...U]}),E=U[0];break;case"v":E+=U[0],D.push({key:"V",data:[E]});break;case"S":D.push({key:"S",data:[...U]}),B=U[2],E=U[3];break;case"s":{let z=U.map((k,f)=>f%2?k+E:k+B);D.push({key:"S",data:z}),B=z[2],E=z[3];break}case"T":D.push({key:"T",data:[...U]}),B=U[0],E=U[1];break;case"t":B+=U[0],E+=U[1],D.push({key:"T",data:[B,E]});break;case"Z":case"z":D.push({key:"Z",data:[]}),B=A,E=C;break}return D}function YT(u){let B=[],E="",A=0,C=0,D=0,F=0,U=0,z=0;for(let{key:k,data:f}of u){switch(k){case"M":B.push({key:"M",data:[...f]}),[A,C]=f,[D,F]=f;break;case"C":B.push({key:"C",data:[...f]}),A=f[4],C=f[5],U=f[2],z=f[3];break;case"L":B.push({key:"L",data:[...f]}),[A,C]=f;break;case"H":A=f[0],B.push({key:"L",data:[A,C]});break;case"V":C=f[0],B.push({key:"L",data:[A,C]});break;case"S":{let l=0,b=0;if(E==="C"||E==="S")l=A+(A-U),b=C+(C-z);else l=A,b=C;B.push({key:"C",data:[l,b,...f]}),U=f[0],z=f[1],A=f[2],C=f[3];break}case"T":{let[l,b]=f,M=0,Z=0;if(E==="Q"||E==="T")M=A+(A-U),Z=C+(C-z);else M=A,Z=C;let J=A+2*(M-A)/3,w=C+2*(Z-C)/3,K=l+2*(M-l)/3,Q=b+2*(Z-b)/3;B.push({key:"C",data:[J,w,K,Q,l,b]}),U=M,z=Z,A=l,C=b;break}case"Q":{let[l,b,M,Z]=f,J=A+2*(l-A)/3,w=C+2*(b-C)/3,K=M+2*(l-M)/3,Q=Z+2*(b-Z)/3;B.push({key:"C",data:[J,w,K,Q,M,Z]}),U=l,z=b,A=M,C=Z;break}case"A":{let l=Math.abs(f[0]),b=Math.abs(f[1]),M=f[2],Z=f[3],J=f[4],w=f[5],K=f[6];if(l===0||b===0)B.push({key:"C",data:[A,C,w,K,w,K]}),A=w,C=K;else if(A!==w||C!==K)HFu(A,C,w,K,l,b,M,Z,J).forEach(function(G){B.push({key:"C",data:G})}),A=w,C=K;break}case"Z":B.push({key:"Z",data:[]}),A=D,C=F;break}E=k}return B}function S03(u){return Math.PI*u/180}function WT(u,B,E){let A=u*Math.cos(E)-B*Math.sin(E),C=u*Math.sin(E)+B*Math.cos(E);return[A,C]}function HFu(u,B,E,A,C,D,F,U,z,k){let f=S03(F),l=[],b=0,M=0,Z=0,J=0;if(k)[b,M,Z,J]=k;else{[u,B]=WT(u,B,-f),[E,A]=WT(E,A,-f);let R=(u-E)/2,Y=(B-A)/2,a=R*R/(C*C)+Y*Y/(D*D);if(a>1)a=Math.sqrt(a),C=a*C,D=a*D;let I=U===z?-1:1,O=C*C,i=D*D,N=O*i-O*Y*Y-i*R*R,V=O*Y*Y+i*R*R,h=I*Math.sqrt(Math.abs(N/V));if(Z=h*C*Y/D+(u+E)/2,J=h*-D*R/C+(B+A)/2,b=Math.asin(parseFloat(((B-J)/D).toFixed(9))),M=Math.asin(parseFloat(((A-J)/D).toFixed(9))),u<Z)b=Math.PI-b;if(E<Z)M=Math.PI-M;if(b<0)b=Math.PI*2+b;if(M<0)M=Math.PI*2+M;if(z&&b>M)b=b-Math.PI*2;if(!z&&M>b)M=M-Math.PI*2}let w=M-b;if(Math.abs(w)>Math.PI*120/180){let R=M,Y=E,a=A;if(z&&M>b)M=b+Math.PI*120/180*1;else M=b+Math.PI*120/180*-1;E=Z+C*Math.cos(M),A=J+D*Math.sin(M),l=HFu(E,A,Y,a,C,D,F,0,z,[M,R,Z,J])}w=M-b;let K=Math.cos(b),Q=Math.sin(b),G=Math.cos(M),L=Math.sin(M),H=Math.tan(w/4),q=1.3333333333333333*C*H,x=1.3333333333333333*D*H,v=[u,B],W=[u+q*Q,B-x*K],S=[E+q*L,A-x*G],T=[E,A];if(W[0]=2*v[0]-W[0],W[1]=2*v[1]-W[1],k)return[W,S,T].concat(l);else{l=[W,S,T].concat(l);let R=[];for(let Y=0;Y<l.length;Y+=3){let a=WT(l[Y][0],l[Y][1],f),I=WT(l[Y+1][0],l[Y+1][1],f),O=WT(l[Y+2][0],l[Y+2][1],f);R.push([a[0],a[1],I[0],I[1],O[0],O[1]])}return R}}var Lz0=g(()=>{GFu()});function qz0(u,B,E,A,C){return{type:"path",ops:mk(u,B,E,A,C)}}function RT(u,B,E){let A=(u||[]).length;if(A>2){let C=[];for(let D=0;D<A-1;D++)C.push(...mk(u[D][0],u[D][1],u[D+1][0],u[D+1][1],E));if(B)C.push(...mk(u[A-1][0],u[A-1][1],u[0][0],u[0][1],E));return{type:"path",ops:C}}else if(A===2)return qz0(u[0][0],u[0][1],u[1][0],u[1][1],E);return{type:"path",ops:[]}}function Y03(u,B){return RT(u,!0,B)}function vFu(u,B,E,A,C){let D=[[u,B],[u+E,B],[u+E,B+A],[u,B+A]];return Y03(D,C)}function Xz0(u,B){let E=qFu(u,1*(1+B.roughness*0.2),B);if(!B.disableMultiStroke){let A=qFu(u,1.5*(1+B.roughness*0.22),P03(B));E=E.concat(A)}return{type:"path",ops:E}}function R03(u,B,E,A,C){let D=xz0(E,A,C);return pg(u,B,C,D).opset}function xz0(u,B,E){let A=Math.sqrt(Math.PI*2*Math.sqrt((Math.pow(u/2,2)+Math.pow(B/2,2))/2)),C=Math.ceil(Math.max(E.curveStepCount,E.curveStepCount/Math.sqrt(200)*A)),D=Math.PI*2/C,F=Math.abs(u/2),U=Math.abs(B/2),z=1-E.curveFitting;return F+=J3(F*z,E),U+=J3(U*z,E),{increment:D,rx:F,ry:U}}function pg(u,B,E,A){let[C,D]=XFu(A.increment,u,B,A.rx,A.ry,1,A.increment*_g(0.1,_g(0.4,1,E),E),E),F=ng(C,null,E);if(!E.disableMultiStroke&&E.roughness!==0){let[U]=XFu(A.increment,u,B,A.rx,A.ry,1.5,0,E),z=ng(U,null,E);F=F.concat(z)}return{estimatedPoints:D,opset:{type:"path",ops:F}}}function vz0(u,B,E,A,C,D,F,U,z){let k=u,f=B,l=Math.abs(E/2),b=Math.abs(A/2);l+=J3(l*0.01,z),b+=J3(b*0.01,z);let M=C,Z=D;while(M<0)M+=Math.PI*2,Z+=Math.PI*2;if(Z-M>Math.PI*2)M=0,Z=Math.PI*2;let J=Math.PI*2/z.curveStepCount,w=Math.min(J/2,(Z-M)/2),K=xFu(w,k,f,l,b,M,Z,1,z);if(!z.disableMultiStroke){let Q=xFu(w,k,f,l,b,M,Z,1.5,z);K.push(...Q)}if(F)if(U)K.push(...mk(k,f,k+l*Math.cos(M),f+b*Math.sin(M),z),...mk(k,f,k+l*Math.cos(Z),f+b*Math.sin(Z),z));else K.push({op:"lineTo",data:[k,f]},{op:"lineTo",data:[k+l*Math.cos(M),f+b*Math.sin(M)]});return{type:"path",ops:K}}function Sz0(u,B){let E=YT(ST(vq(u))),A=[],C=[0,0],D=[0,0];for(let{key:F,data:U}of E)switch(F){case"M":{D=[U[0],U[1]],C=[U[0],U[1]];break}case"L":A.push(...mk(D[0],D[1],U[0],U[1],B)),D=[U[0],U[1]];break;case"C":{let[z,k,f,l,b,M]=U;A.push(...j03(z,k,f,l,b,M,D,B)),D=[b,M];break}case"Z":A.push(...mk(D[0],D[1],C[0],C[1],B)),D=[C[0],C[1]];break}return{type:"path",ops:A}}function dg(u,B){let E=[];for(let A of u)if(A.length){let C=B.maxRandomnessOffset||0,D=A.length;if(D>2){E.push({op:"move",data:[A[0][0]+J3(C,B),A[0][1]+J3(C,B)]});for(let F=1;F<D;F++)E.push({op:"lineTo",data:[A[F][0]+J3(C,B),A[F][1]+J3(C,B)]})}}return{type:"fillPath",ops:E}}function DK(u,B){return wFu(B,W03).fillPolygons(u,B)}function SFu(u,B,E,A,C,D,F){let U=u,z=B,k=Math.abs(E/2),f=Math.abs(A/2);k+=J3(k*0.01,F),f+=J3(f*0.01,F);let l=C,b=D;while(l<0)l+=Math.PI*2,b+=Math.PI*2;if(b-l>Math.PI*2)l=0,b=Math.PI*2;let M=(b-l)/F.curveStepCount,Z=[];for(let J=l;J<=b;J=J+M)Z.push([U+k*Math.cos(J),z+f*Math.sin(J)]);return Z.push([U+k*Math.cos(b),z+f*Math.sin(b)]),Z.push([U,z]),DK([Z],F)}function T03(u,B){return J3(u,B)}function O03(u,B,E){return _g(u,B,E)}function I03(u,B,E,A,C){return mk(u,B,E,A,C,!0)}function P03(u){let B=Object.assign({},u);if(B.randomizer=void 0,u.seed)B.seed=u.seed+1;return B}function WFu(u){if(!u.randomizer)u.randomizer=new vT(u.seed||0);return u.randomizer.next()}function _g(u,B,E,A=1){return E.roughness*A*(WFu(E)*(B-u)+u)}function J3(u,B,E=1){return _g(-u,u,B,E)}function mk(u,B,E,A,C,D=!1){let F=D?C.disableMultiStrokeFill:C.disableMultiStroke,U=LFu(u,B,E,A,C,!0,!1);if(F)return U;let z=LFu(u,B,E,A,C,!0,!0);return U.concat(z)}function LFu(u,B,E,A,C,D,F){let U=Math.pow(u-E,2)+Math.pow(B-A,2),z=Math.sqrt(U),k=1;if(z<200)k=1;else if(z>500)k=0.4;else k=-0.0016668*z+1.233334;let f=C.maxRandomnessOffset||0;if(f*f*100>U)f=z/10;let l=f/2,b=0.2+WFu(C)*0.2,M=C.bowing*C.maxRandomnessOffset*(A-B)/200,Z=C.bowing*C.maxRandomnessOffset*(u-E)/200;M=J3(M,C,k),Z=J3(Z,C,k);let J=[],w=()=>J3(l,C,k),K=()=>J3(f,C,k),Q=C.preserveVertices;if(D)if(F)J.push({op:"move",data:[u+(Q?0:w()),B+(Q?0:w())]});else J.push({op:"move",data:[u+(Q?0:J3(f,C,k)),B+(Q?0:J3(f,C,k))]});if(F)J.push({op:"bcurveTo",data:[M+u+(E-u)*b+w(),Z+B+(A-B)*b+w(),M+u+2*(E-u)*b+w(),Z+B+2*(A-B)*b+w(),E+(Q?0:w()),A+(Q?0:w())]});else J.push({op:"bcurveTo",data:[M+u+(E-u)*b+K(),Z+B+(A-B)*b+K(),M+u+2*(E-u)*b+K(),Z+B+2*(A-B)*b+K(),E+(Q?0:K()),A+(Q?0:K())]});return J}function qFu(u,B,E){let A=[];A.push([u[0][0]+J3(B,E),u[0][1]+J3(B,E)]),A.push([u[0][0]+J3(B,E),u[0][1]+J3(B,E)]);for(let C=1;C<u.length;C++)if(A.push([u[C][0]+J3(B,E),u[C][1]+J3(B,E)]),C===u.length-1)A.push([u[C][0]+J3(B,E),u[C][1]+J3(B,E)]);return ng(A,null,E)}function ng(u,B,E){let A=u.length,C=[];if(A>3){let D=[],F=1-E.curveTightness;C.push({op:"move",data:[u[1][0],u[1][1]]});for(let U=1;U+2<A;U++){let z=u[U];D[0]=[z[0],z[1]],D[1]=[z[0]+(F*u[U+1][0]-F*u[U-1][0])/6,z[1]+(F*u[U+1][1]-F*u[U-1][1])/6],D[2]=[u[U+1][0]+(F*u[U][0]-F*u[U+2][0])/6,u[U+1][1]+(F*u[U][1]-F*u[U+2][1])/6],D[3]=[u[U+1][0],u[U+1][1]],C.push({op:"bcurveTo",data:[D[1][0],D[1][1],D[2][0],D[2][1],D[3][0],D[3][1]]})}if(B&&B.length===2){let U=E.maxRandomnessOffset;C.push({op:"lineTo",data:[B[0]+J3(U,E),B[1]+J3(U,E)]})}}else if(A===3)C.push({op:"move",data:[u[1][0],u[1][1]]}),C.push({op:"bcurveTo",data:[u[1][0],u[1][1],u[2][0],u[2][1],u[2][0],u[2][1]]});else if(A===2)C.push(...mk(u[0][0],u[0][1],u[1][0],u[1][1],E));return C}function XFu(u,B,E,A,C,D,F,U){let z=U.roughness===0,k=[],f=[];if(z){u=u/4,f.push([B+A*Math.cos(-u),E+C*Math.sin(-u)]);for(let l=0;l<=Math.PI*2;l=l+u){let b=[B+A*Math.cos(l),E+C*Math.sin(l)];k.push(b),f.push(b)}f.push([B+A*Math.cos(0),E+C*Math.sin(0)]),f.push([B+A*Math.cos(u),E+C*Math.sin(u)])}else{let l=J3(0.5,U)-Math.PI/2;f.push([J3(D,U)+B+0.9*A*Math.cos(l-u),J3(D,U)+E+0.9*C*Math.sin(l-u)]);let b=Math.PI*2+l-0.01;for(let M=l;M<b;M=M+u){let Z=[J3(D,U)+B+A*Math.cos(M),J3(D,U)+E+C*Math.sin(M)];k.push(Z),f.push(Z)}f.push([J3(D,U)+B+A*Math.cos(l+Math.PI*2+F*0.5),J3(D,U)+E+C*Math.sin(l+Math.PI*2+F*0.5)]),f.push([J3(D,U)+B+0.98*A*Math.cos(l+F),J3(D,U)+E+0.98*C*Math.sin(l+F)]),f.push([J3(D,U)+B+0.9*A*Math.cos(l+F*0.5),J3(D,U)+E+0.9*C*Math.sin(l+F*0.5)])}return[f,k]}function xFu(u,B,E,A,C,D,F,U,z){let k=D+J3(0.1,z),f=[];f.push([J3(U,z)+B+0.9*A*Math.cos(k-u),J3(U,z)+E+0.9*C*Math.sin(k-u)]);for(let l=k;l<=F;l=l+u)f.push([J3(U,z)+B+A*Math.cos(l),J3(U,z)+E+C*Math.sin(l)]);return f.push([B+A*Math.cos(F),E+C*Math.sin(F)]),f.push([B+A*Math.cos(F),E+C*Math.sin(F)]),ng(f,null,z)}function j03(u,B,E,A,C,D,F,U){let z=[],k=[U.maxRandomnessOffset||1,(U.maxRandomnessOffset||1)+0.3],f=[0,0],l=U.disableMultiStroke?1:2,b=U.preserveVertices;for(let M=0;M<l;M++){if(M===0)z.push({op:"move",data:[F[0],F[1]]});else z.push({op:"move",data:[F[0]+(b?0:J3(k[0],U)),F[1]+(b?0:J3(k[0],U))]});f=b?[C,D]:[C+J3(k[M],U),D+J3(k[M],U)],z.push({op:"bcurveTo",data:[u+J3(k[M],U),B+J3(k[M],U),E+J3(k[M],U),A+J3(k[M],U),f[0],f[1]]})}return z}var W03;var YFu=g(()=>{KFu();Lz0();W03={randOffset:T03,randOffsetWithRange:O03,ellipse:R03,doubleLineOps:I03}});function TT(u){return[...u]}function RFu(u,B=0){let E=u.length;if(E<3)throw Error("A curve must have at least three points.");let A=[];if(E===3)A.push(TT(u[0]),TT(u[1]),TT(u[2]),TT(u[2]));else{let C=[];C.push(u[0],u[0]);for(let U=1;U<u.length;U++)if(C.push(u[U]),U===u.length-1)C.push(u[U]);let D=[],F=1-B;A.push(TT(C[0]));for(let U=1;U+2<C.length;U++){let z=C[U];D[0]=[z[0],z[1]],D[1]=[z[0]+(F*C[U+1][0]-F*C[U-1][0])/6,z[1]+(F*C[U+1][1]-F*C[U-1][1])/6],D[2]=[C[U+1][0]+(F*C[U][0]-F*C[U+2][0])/6,C[U+1][1]+(F*C[U][1]-F*C[U+2][1])/6],D[3]=[C[U+1][0],C[U+1][1]],A.push(D[1],D[2],D[3])}}return A}function N03(u,B){return Math.sqrt(sg(u,B))}function sg(u,B){return Math.pow(u[0]-B[0],2)+Math.pow(u[1]-B[1],2)}function i03(u,B,E){let A=sg(B,E);if(A===0)return sg(u,B);let C=((u[0]-B[0])*(E[0]-B[0])+(u[1]-B[1])*(E[1]-B[1]))/A;return C=Math.max(0,Math.min(1,C)),sg(u,FK(B,E,C))}function FK(u,B,E){return[u[0]+(B[0]-u[0])*E,u[1]+(B[1]-u[1])*E]}function a03(u,B){let E=u[B+0],A=u[B+1],C=u[B+2],D=u[B+3],F=3*A[0]-2*E[0]-D[0];F*=F;let U=3*A[1]-2*E[1]-D[1];U*=U;let z=3*C[0]-2*D[0]-E[0];z*=z;let k=3*C[1]-2*D[1]-E[1];if(k*=k,F<z)F=z;if(U<k)U=k;return F+U}function Wz0(u,B,E,A){let C=A||[];if(a03(u,B)<E){let D=u[B+0];if(C.length){if(N03(C[C.length-1],D)>1)C.push(D)}else C.push(D);C.push(u[B+3])}else{let F=u[B+0],U=u[B+1],z=u[B+2],k=u[B+3],f=FK(F,U,0.5),l=FK(U,z,0.5),b=FK(z,k,0.5),M=FK(f,l,0.5),Z=FK(l,b,0.5),J=FK(M,Z,0.5);Wz0([F,f,M,J],0,E,C),Wz0([J,Z,b,k],0,E,C)}return C}function Yz0(u,B,E,A,C){let D=C||[],F=u[B],U=u[E-1],z=0,k=1;for(let f=B+1;f<E-1;++f){let l=i03(u[f],F,U);if(l>z)z=l,k=f}if(Math.sqrt(z)>A)Yz0(u,B,k+1,A,D),Yz0(u,k,E,A,D);else{if(!D.length)D.push(F);D.push(U)}return D}function TFu(u,B=0.15,E){let A=[],C=(u.length-1)/3;for(let D=0;D<C;D++){let F=D*3;Wz0(u,F,B,A)}if(E&&E>0)return Yz0(A,0,A.length,E);return A}function V03(u,B){return Math.sqrt(og(u,B))}function og(u,B){return Math.pow(u[0]-B[0],2)+Math.pow(u[1]-B[1],2)}function h03(u,B,E){let A=og(B,E);if(A===0)return og(u,B);let C=((u[0]-B[0])*(E[0]-B[0])+(u[1]-B[1])*(E[1]-B[1]))/A;return C=Math.max(0,Math.min(1,C)),og(u,UK(B,E,C))}function UK(u,B,E){return[u[0]+(B[0]-u[0])*E,u[1]+(B[1]-u[1])*E]}function m03(u,B){let E=u[B+0],A=u[B+1],C=u[B+2],D=u[B+3],F=3*A[0]-2*E[0]-D[0];F*=F;let U=3*A[1]-2*E[1]-D[1];U*=U;let z=3*C[0]-2*D[0]-E[0];z*=z;let k=3*C[1]-2*D[1]-E[1];if(k*=k,F<z)F=z;if(U<k)U=k;return F+U}function Rz0(u,B,E,A){let C=A||[];if(m03(u,B)<E){let D=u[B+0];if(C.length){if(V03(C[C.length-1],D)>1)C.push(D)}else C.push(D);C.push(u[B+3])}else{let F=u[B+0],U=u[B+1],z=u[B+2],k=u[B+3],f=UK(F,U,0.5),l=UK(U,z,0.5),b=UK(z,k,0.5),M=UK(f,l,0.5),Z=UK(l,b,0.5),J=UK(M,Z,0.5);Rz0([F,f,M,J],0,E,C),Rz0([J,Z,b,k],0,E,C)}return C}function OFu(u,B){return tg(u,0,u.length,B)}function tg(u,B,E,A,C){let D=C||[],F=u[B],U=u[E-1],z=0,k=1;for(let f=B+1;f<E-1;++f){let l=h03(u[f],F,U);if(l>z)z=l,k=f}if(Math.sqrt(z)>A)tg(u,B,k+1,A,D),tg(u,k,E,A,D);else{if(!D.length)D.push(F);D.push(U)}return D}function IFu(u,B=0.15,E){let A=[],C=(u.length-1)/3;for(let D=0;D<C;D++){let F=D*3;Rz0(u,F,B,A)}if(E&&E>0)return tg(A,0,A.length,E);return A}function PFu(u,B,E){let A=vq(u),C=YT(ST(A)),D=[],F=[],U=[0,0],z=[],k=()=>{if(z.length>=4)F.push(...IFu(z,B));z=[]},f=()=>{if(k(),F.length)D.push(F),F=[]};for(let{key:b,data:M}of C)switch(b){case"M":f(),U=[M[0],M[1]],F.push(U);break;case"L":k(),F.push([M[0],M[1]]);break;case"C":if(!z.length){let Z=F.length?F[F.length-1]:U;z.push([Z[0],Z[1]])}z.push([M[0],M[1]]),z.push([M[2],M[3]]),z.push([M[4],M[5]]);break;case"Z":k(),F.push([U[0],U[1]]);break}if(f(),!E)return D;let l=[];for(let b of D){let M=OFu(b,E);if(M.length)l.push(M)}return l}var jFu=g(()=>{Lz0()});class qU{constructor(u){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=u||{},this.config.options)this.defaultOptions=this._o(this.config.options)}static newSeed(){return QFu()}_o(u){return u?Object.assign({},this.defaultOptions,u):this.defaultOptions}_d(u,B,E){return{shape:u,sets:B||[],options:E||this.defaultOptions}}line(u,B,E,A,C){let D=this._o(C);return this._d("line",[qz0(u,B,E,A,D)],D)}rectangle(u,B,E,A,C){let D=this._o(C),F=[],U=vFu(u,B,E,A,D);if(D.fill){let z=[[u,B],[u+E,B],[u+E,B+A],[u,B+A]];if(D.fillStyle==="solid")F.push(dg([z],D));else F.push(DK([z],D))}if(D.stroke!==vE)F.push(U);return this._d("rectangle",F,D)}ellipse(u,B,E,A,C){let D=this._o(C),F=[],U=xz0(E,A,D),z=pg(u,B,D,U);if(D.fill)if(D.fillStyle==="solid"){let k=pg(u,B,D,U).opset;k.type="fillPath",F.push(k)}else F.push(DK([z.estimatedPoints],D));if(D.stroke!==vE)F.push(z.opset);return this._d("ellipse",F,D)}circle(u,B,E,A){let C=this.ellipse(u,B,E,E,A);return C.shape="circle",C}linearPath(u,B){let E=this._o(B);return this._d("linearPath",[RT(u,!1,E)],E)}arc(u,B,E,A,C,D,F=!1,U){let z=this._o(U),k=[],f=vz0(u,B,E,A,C,D,F,!0,z);if(F&&z.fill)if(z.fillStyle==="solid"){let l=Object.assign({},z);l.disableMultiStroke=!0;let b=vz0(u,B,E,A,C,D,!0,!1,l);b.type="fillPath",k.push(b)}else k.push(SFu(u,B,E,A,C,D,z));if(z.stroke!==vE)k.push(f);return this._d("arc",k,z)}curve(u,B){let E=this._o(B),A=[],C=Xz0(u,E);if(E.fill&&E.fill!==vE&&u.length>=3)if(E.fillStyle==="solid"){let D=Xz0(u,Object.assign(Object.assign({},E),{disableMultiStroke:!0,roughness:E.roughness?E.roughness+E.fillShapeRoughnessGain:0}));A.push({type:"fillPath",ops:this._mergedShape(D.ops)})}else{let D=RFu(u),F=TFu(D,10,(1+E.roughness)/2);A.push(DK([F],E))}if(E.stroke!==vE)A.push(C);return this._d("curve",A,E)}polygon(u,B){let E=this._o(B),A=[],C=RT(u,!0,E);if(E.fill)if(E.fillStyle==="solid")A.push(dg([u],E));else A.push(DK([u],E));if(E.stroke!==vE)A.push(C);return this._d("polygon",A,E)}path(u,B){let E=this._o(B),A=[];if(!u)return this._d("path",A,E);u=(u||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let C=E.fill&&E.fill!=="transparent"&&E.fill!==vE,D=E.stroke!==vE,F=!!(E.simplification&&E.simplification<1),U=F?4-4*(E.simplification||1):(1+E.roughness)/2,z=PFu(u,1,U),k=Sz0(u,E);if(C)if(E.fillStyle==="solid")if(z.length===1){let f=Sz0(u,Object.assign(Object.assign({},E),{disableMultiStroke:!0,roughness:E.roughness?E.roughness+E.fillShapeRoughnessGain:0}));A.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else A.push(dg(z,E));else A.push(DK(z,E));if(D)if(F)z.forEach((f)=>{A.push(RT(f,!1,E))});else A.push(k);return this._d("path",A,E)}opsToPath(u,B){let E="";for(let A of u.ops){let C=typeof B==="number"&&B>=0?A.data.map((D)=>+D.toFixed(B)):A.data;switch(A.op){case"move":E+=`M${C[0]} ${C[1]} `;break;case"bcurveTo":E+=`C${C[0]} ${C[1]}, ${C[2]} ${C[3]}, ${C[4]} ${C[5]} `;break;case"lineTo":E+=`L${C[0]} ${C[1]} `;break}}return E.trim()}toPaths(u){let B=u.sets||[],E=u.options||this.defaultOptions,A=[];for(let C of B){let D=null;switch(C.type){case"path":D={d:this.opsToPath(C),stroke:E.stroke,strokeWidth:E.strokeWidth,fill:vE};break;case"fillPath":D={d:this.opsToPath(C),stroke:vE,strokeWidth:0,fill:E.fill||vE};break;case"fillSketch":D=this.fillSketch(C,E);break}if(D)A.push(D)}return A}fillSketch(u,B){let E=B.fillWeight;if(E<0)E=B.strokeWidth/2;return{d:this.opsToPath(u),stroke:B.fill||vE,strokeWidth:E,fill:vE}}_mergedShape(u){return u.filter((B,E)=>{if(E===0)return!0;if(B.op==="move")return!1;return!0})}}var vE="none";var OT=g(()=>{YFu();jFu()});class Tz0{constructor(u,B){this.canvas=u,this.ctx=this.canvas.getContext("2d"),this.gen=new qU(B)}draw(u){let B=u.sets||[],E=u.options||this.getDefaultOptions(),A=this.ctx,C=u.options.fixedDecimalPlaceDigits;for(let D of B)switch(D.type){case"path":if(A.save(),A.strokeStyle=E.stroke==="none"?"transparent":E.stroke,A.lineWidth=E.strokeWidth,E.strokeLineDash)A.setLineDash(E.strokeLineDash);if(E.strokeLineDashOffset)A.lineDashOffset=E.strokeLineDashOffset;this._drawToContext(A,D,C),A.restore();break;case"fillPath":{A.save(),A.fillStyle=E.fill||"";let F=u.shape==="curve"||u.shape==="polygon"||u.shape==="path"?"evenodd":"nonzero";this._drawToContext(A,D,C,F),A.restore();break}case"fillSketch":this.fillSketch(A,D,E);break}}fillSketch(u,B,E){let A=E.fillWeight;if(A<0)A=E.strokeWidth/2;if(u.save(),E.fillLineDash)u.setLineDash(E.fillLineDash);if(E.fillLineDashOffset)u.lineDashOffset=E.fillLineDashOffset;u.strokeStyle=E.fill||"",u.lineWidth=A,this._drawToContext(u,B,E.fixedDecimalPlaceDigits),u.restore()}_drawToContext(u,B,E,A="nonzero"){u.beginPath();for(let C of B.ops){let D=typeof E==="number"&&E>=0?C.data.map((F)=>+F.toFixed(E)):C.data;switch(C.op){case"move":u.moveTo(D[0],D[1]);break;case"bcurveTo":u.bezierCurveTo(D[0],D[1],D[2],D[3],D[4],D[5]);break;case"lineTo":u.lineTo(D[0],D[1]);break}}if(B.type==="fillPath")u.fill(A);else u.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(u,B,E,A,C){let D=this.gen.line(u,B,E,A,C);return this.draw(D),D}rectangle(u,B,E,A,C){let D=this.gen.rectangle(u,B,E,A,C);return this.draw(D),D}ellipse(u,B,E,A,C){let D=this.gen.ellipse(u,B,E,A,C);return this.draw(D),D}circle(u,B,E,A){let C=this.gen.circle(u,B,E,A);return this.draw(C),C}linearPath(u,B){let E=this.gen.linearPath(u,B);return this.draw(E),E}polygon(u,B){let E=this.gen.polygon(u,B);return this.draw(E),E}arc(u,B,E,A,C,D,F=!1,U){let z=this.gen.arc(u,B,E,A,C,D,F,U);return this.draw(z),z}curve(u,B){let E=this.gen.curve(u,B);return this.draw(E),E}path(u,B){let E=this.gen.path(u,B);return this.draw(E),E}}var NFu=g(()=>{OT()});var IT="http://www.w3.org/2000/svg";class Oz0{constructor(u,B){this.svg=u,this.gen=new qU(B)}draw(u){let B=u.sets||[],E=u.options||this.getDefaultOptions(),A=this.svg.ownerDocument||window.document,C=A.createElementNS(IT,"g"),D=u.options.fixedDecimalPlaceDigits;for(let F of B){let U=null;switch(F.type){case"path":{if(U=A.createElementNS(IT,"path"),U.setAttribute("d",this.opsToPath(F,D)),U.setAttribute("stroke",E.stroke),U.setAttribute("stroke-width",E.strokeWidth+""),U.setAttribute("fill","none"),E.strokeLineDash)U.setAttribute("stroke-dasharray",E.strokeLineDash.join(" ").trim());if(E.strokeLineDashOffset)U.setAttribute("stroke-dashoffset",`${E.strokeLineDashOffset}`);break}case"fillPath":{if(U=A.createElementNS(IT,"path"),U.setAttribute("d",this.opsToPath(F,D)),U.setAttribute("stroke","none"),U.setAttribute("stroke-width","0"),U.setAttribute("fill",E.fill||""),u.shape==="curve"||u.shape==="polygon")U.setAttribute("fill-rule","evenodd");break}case"fillSketch":{U=this.fillSketch(A,F,E);break}}if(U)C.appendChild(U)}return C}fillSketch(u,B,E){let A=E.fillWeight;if(A<0)A=E.strokeWidth/2;let C=u.createElementNS(IT,"path");if(C.setAttribute("d",this.opsToPath(B,E.fixedDecimalPlaceDigits)),C.setAttribute("stroke",E.fill||""),C.setAttribute("stroke-width",A+""),C.setAttribute("fill","none"),E.fillLineDash)C.setAttribute("stroke-dasharray",E.fillLineDash.join(" ").trim());if(E.fillLineDashOffset)C.setAttribute("stroke-dashoffset",`${E.fillLineDashOffset}`);return C}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(u,B){return this.gen.opsToPath(u,B)}line(u,B,E,A,C){let D=this.gen.line(u,B,E,A,C);return this.draw(D)}rectangle(u,B,E,A,C){let D=this.gen.rectangle(u,B,E,A,C);return this.draw(D)}ellipse(u,B,E,A,C){let D=this.gen.ellipse(u,B,E,A,C);return this.draw(D)}circle(u,B,E,A){let C=this.gen.circle(u,B,E,A);return this.draw(C)}linearPath(u,B){let E=this.gen.linearPath(u,B);return this.draw(E)}polygon(u,B){let E=this.gen.polygon(u,B);return this.draw(E)}arc(u,B,E,A,C,D,F=!1,U){let z=this.gen.arc(u,B,E,A,C,D,F,U);return this.draw(z)}curve(u,B){let E=this.gen.curve(u,B);return this.draw(E)}path(u,B){let E=this.gen.path(u,B);return this.draw(E)}}var iFu=g(()=>{OT()});var WA;var PT=g(()=>{NFu();OT();iFu();WA={canvas(u,B){return new Tz0(u,B)},svg(u,B){return new Oz0(u,B)},generator(u){return new qU(u)},newSeed(){return qU.newSeed()}}});function aFu(u,B,E,A=(C)=>C){return u*A(0.5-B*(0.5-E))}function r03(u){return[-u[0],-u[1]]}function eC(u,B){return[u[0]+B[0],u[1]+B[1]]}function YA(u,B){return[u[0]-B[0],u[1]-B[1]]}function tC(u,B){return[u[0]*B,u[1]*B]}function $03(u,B){return[u[0]/B,u[1]/B]}function jT(u){return[u[1],-u[0]]}function VFu(u,B){return u[0]*B[0]+u[1]*B[1]}function y03(u,B){return u[0]===B[0]&&u[1]===B[1]}function c03(u){return Math.hypot(u[0],u[1])}function g03(u){return u[0]*u[0]+u[1]*u[1]}function hFu(u,B){return g03(YA(u,B))}function $Fu(u){return $03(u,c03(u))}function _03(u,B){return Math.hypot(u[1]-B[1],u[0]-B[0])}function NT(u,B,E){let A=Math.sin(E),C=Math.cos(E),D=u[0]-B[0],F=u[1]-B[1],U=D*C-F*A,z=D*A+F*C;return[U+B[0],z+B[1]]}function Iz0(u,B,E){return eC(u,tC(YA(B,u),E))}function mFu(u,B,E){return eC(u,tC(B,E))}function p03(u,B={}){let{size:E=16,smoothing:A=0.5,thinning:C=0.5,simulatePressure:D=!0,easing:F=(i)=>i,start:U={},end:z={},last:k=!1}=B,{cap:f=!0,easing:l=(i)=>i*(2-i)}=U,{cap:b=!0,easing:M=(i)=>--i*i*i+1}=z;if(u.length===0||E<=0)return[];let Z=u[u.length-1].runningLength,J=U.taper===!1?0:U.taper===!0?Math.max(E,Z):U.taper,w=z.taper===!1?0:z.taper===!0?Math.max(E,Z):z.taper,K=Math.pow(E*A,2),Q=[],G=[],L=u.slice(0,10).reduce((i,N)=>{let V=N.pressure;if(D){let h=Sq(1,N.distance/E),r=Sq(1,1-h);V=Sq(1,i+(r-i)*(h*rFu))}return(i+V)/2},u[0].pressure),H=aFu(E,C,u[u.length-1].pressure,F),q,x=u[0].vector,v=u[0].point,W=v,S=v,T=W,R=!1;for(let i=0;i<u.length;i++){let{pressure:N}=u[i],{point:V,vector:h,distance:r,runningLength:m}=u[i];if(i<u.length-1&&Z-m<3)continue;if(C){if(D){let k0=Sq(1,r/E),f0=Sq(1,1-k0);N=Sq(1,L+(f0-L)*(k0*rFu))}H=aFu(E,C,N,F)}else H=E/2;q===void 0&&(q=H);let $=m<J?l(m/J):1,y=Z-m<w?M((Z-m)/w):1;H=Math.max(0.01,H*Math.min($,y));let p=(i<u.length-1?u[i+1]:u[i]).vector,e=i<u.length-1?VFu(h,p):1,_=VFu(h,x)<0&&!R,b0=e!==null&&e<0;if(_||b0){let k0=tC(jT(x),H);for(let f0=0.07692307692307693,D0=0;D0<=1;D0+=f0)S=NT(YA(V,k0),V,iT*D0),Q.push(S),T=NT(eC(V,k0),V,iT*-D0),G.push(T);v=S,W=T,b0&&(R=!0);continue}if(R=!1,i===u.length-1){let k0=tC(jT(h),H);Q.push(YA(V,k0)),G.push(eC(V,k0));continue}let B0=tC(jT(Iz0(p,h,e)),H);S=YA(V,B0),(i<=1||hFu(v,S)>K)&&(Q.push(S),v=S),T=eC(V,B0),(i<=1||hFu(W,T)>K)&&(G.push(T),W=T),L=N,x=h}let Y=u[0].point.slice(0,2),a=u.length>1?u[u.length-1].point.slice(0,2):eC(u[0].point,[1,1]),I=[],O=[];if(u.length===1){if(!(J||w)||k){let i=mFu(Y,$Fu(jT(YA(Y,a))),-(q||H)),N=[];for(let V=0.07692307692307693,h=V;h<=1;h+=V)N.push(NT(i,Y,iT*2*h));return N}}else{if(!(J||w&&u.length===1))if(f)for(let N=0.07692307692307693,V=N;V<=1;V+=N){let h=NT(G[0],Y,iT*V);I.push(h)}else{let N=YA(Q[0],G[0]),V=tC(N,0.5),h=tC(N,0.51);I.push(YA(Y,V),YA(Y,h),eC(Y,h),eC(Y,V))}let i=jT(r03(u[u.length-1].vector));if(w||J&&u.length===1)O.push(a);else if(b){let N=mFu(a,i,H);for(let V=0.034482758620689655,h=V;h<1;h+=V)O.push(NT(N,a,iT*3*h))}else O.push(eC(a,tC(i,H)),eC(a,tC(i,H*0.99)),YA(a,tC(i,H*0.99)),YA(a,tC(i,H)))}return Q.concat(O,G.reverse(),I)}function d03(u,B={}){var E;let{streamline:A=0.5,size:C=16,last:D=!1}=B;if(u.length===0)return[];let F=0.15+(1-A)*0.85,U=Array.isArray(u[0])?u:u.map(({x:M,y:Z,pressure:J=0.5})=>[M,Z,J]);if(U.length===2){let M=U[1];U=U.slice(0,-1);for(let Z=1;Z<5;Z++)U.push(Iz0(U[0],M,Z/4))}U.length===1&&(U=[...U,[...eC(U[0],[1,1]),...U[0].slice(2)]]);let z=[{point:[U[0][0],U[0][1]],pressure:U[0][2]>=0?U[0][2]:0.25,vector:[1,1],distance:0,runningLength:0}],k=!1,f=0,l=z[0],b=U.length-1;for(let M=1;M<U.length;M++){let Z=D&&M===b?U[M].slice(0,2):Iz0(l.point,U[M],F);if(y03(l.point,Z))continue;let J=_03(Z,l.point);if(f+=J,M<b&&!k){if(f<C)continue;k=!0}l={point:Z,pressure:U[M][2]>=0?U[M][2]:0.5,vector:$Fu(YA(l.point,Z)),distance:J,runningLength:f},z.push(l)}return z[0].vector=((E=z[1])==null?void 0:E.vector)||[0,0],z}function yFu(u,B={}){return p03(d03(u,B),B)}var Sq,n03,rFu=0.275,iT;var cFu=g(()=>{({min:Sq,PI:n03}=Math),iT=n03+0.0001});var Gu=P1((lu3)=>{var aT=Symbol.for("react.element"),s03=Symbol.for("react.portal"),o03=Symbol.for("react.fragment"),t03=Symbol.for("react.strict_mode"),e03=Symbol.for("react.profiler"),uu3=Symbol.for("react.provider"),Bu3=Symbol.for("react.context"),Eu3=Symbol.for("react.forward_ref"),Au3=Symbol.for("react.suspense"),Cu3=Symbol.for("react.memo"),Du3=Symbol.for("react.lazy"),gFu=Symbol.iterator;function Fu3(u){if(u===null||typeof u!=="object")return null;return u=gFu&&u[gFu]||u["@@iterator"],typeof u==="function"?u:null}var pFu={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},dFu=Object.assign,sFu={};function Wq(u,B,E){this.props=u,this.context=B,this.refs=sFu,this.updater=E||pFu}Wq.prototype.isReactComponent={};Wq.prototype.setState=function(u,B){if(typeof u!=="object"&&typeof u!=="function"&&u!=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,u,B,"setState")};Wq.prototype.forceUpdate=function(u){this.updater.enqueueForceUpdate(this,u,"forceUpdate")};function oFu(){}oFu.prototype=Wq.prototype;function jz0(u,B,E){this.props=u,this.context=B,this.refs=sFu,this.updater=E||pFu}var Nz0=jz0.prototype=new oFu;Nz0.constructor=jz0;dFu(Nz0,Wq.prototype);Nz0.isPureReactComponent=!0;var _Fu=Array.isArray,tFu=Object.prototype.hasOwnProperty,iz0={current:null},eFu={key:!0,ref:!0,__self:!0,__source:!0};function uUu(u,B,E){var A,C={},D=null,F=null;if(B!=null)for(A in B.ref!==void 0&&(F=B.ref),B.key!==void 0&&(D=""+B.key),B)tFu.call(B,A)&&!eFu.hasOwnProperty(A)&&(C[A]=B[A]);var U=arguments.length-2;if(U===1)C.children=E;else if(1<U){for(var z=Array(U),k=0;k<U;k++)z[k]=arguments[k+2];C.children=z}if(u&&u.defaultProps)for(A in U=u.defaultProps,U)C[A]===void 0&&(C[A]=U[A]);return{$$typeof:aT,type:u,key:D,ref:F,props:C,_owner:iz0.current}}function Uu3(u,B){return{$$typeof:aT,type:u.type,key:B,ref:u.ref,props:u.props,_owner:u._owner}}function az0(u){return typeof u==="object"&&u!==null&&u.$$typeof===aT}function zu3(u){var B={"=":"=0",":":"=2"};return"$"+u.replace(/[=:]/g,function(E){return B[E]})}var nFu=/\/+/g;function Pz0(u,B){return typeof u==="object"&&u!==null&&u.key!=null?zu3(""+u.key):B.toString(36)}function u_(u,B,E,A,C){var D=typeof u;if(D==="undefined"||D==="boolean")u=null;var F=!1;if(u===null)F=!0;else switch(D){case"string":case"number":F=!0;break;case"object":switch(u.$$typeof){case aT:case s03:F=!0}}if(F)return F=u,C=C(F),u=A===""?"."+Pz0(F,0):A,_Fu(C)?(E="",u!=null&&(E=u.replace(nFu,"$&/")+"/"),u_(C,B,E,"",function(k){return k})):C!=null&&(az0(C)&&(C=Uu3(C,E+(!C.key||F&&F.key===C.key?"":(""+C.key).replace(nFu,"$&/")+"/")+u)),B.push(C)),1;if(F=0,A=A===""?".":A+":",_Fu(u))for(var U=0;U<u.length;U++){D=u[U];var z=A+Pz0(D,U);F+=u_(D,B,E,z,C)}else if(z=Fu3(u),typeof z==="function")for(u=z.call(u),U=0;!(D=u.next()).done;)D=D.value,z=A+Pz0(D,U++),F+=u_(D,B,E,z,C);else if(D==="object")throw B=String(u),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(u).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.");return F}function eg(u,B,E){if(u==null)return u;var A=[],C=0;return u_(u,A,"","",function(D){return B.call(E,D,C++)}),A}function ku3(u){if(u._status===-1){var B=u._result;B=B(),B.then(function(E){if(u._status===0||u._status===-1)u._status=1,u._result=E},function(E){if(u._status===0||u._status===-1)u._status=2,u._result=E}),u._status===-1&&(u._status=0,u._result=B)}if(u._status===1)return u._result.default;throw u._result}var jB={current:null},B_={transition:null},fu3={ReactCurrentDispatcher:jB,ReactCurrentBatchConfig:B_,ReactCurrentOwner:iz0};function BUu(){throw Error("act(...) is not supported in production builds of React.")}lu3.Children={map:eg,forEach:function(u,B,E){eg(u,function(){B.apply(this,arguments)},E)},count:function(u){var B=0;return eg(u,function(){B++}),B},toArray:function(u){return eg(u,function(B){return B})||[]},only:function(u){if(!az0(u))throw Error("React.Children.only expected to receive a single React element child.");return u}};lu3.Component=Wq;lu3.Fragment=o03;lu3.Profiler=e03;lu3.PureComponent=jz0;lu3.StrictMode=t03;lu3.Suspense=Au3;lu3.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=fu3;lu3.act=BUu;lu3.cloneElement=function(u,B,E){if(u===null||u===void 0)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+u+".");var A=dFu({},u.props),C=u.key,D=u.ref,F=u._owner;if(B!=null){if(B.ref!==void 0&&(D=B.ref,F=iz0.current),B.key!==void 0&&(C=""+B.key),u.type&&u.type.defaultProps)var U=u.type.defaultProps;for(z in B)tFu.call(B,z)&&!eFu.hasOwnProperty(z)&&(A[z]=B[z]===void 0&&U!==void 0?U[z]:B[z])}var z=arguments.length-2;if(z===1)A.children=E;else if(1<z){U=Array(z);for(var k=0;k<z;k++)U[k]=arguments[k+2];A.children=U}return{$$typeof:aT,type:u.type,key:C,ref:D,props:A,_owner:F}};lu3.createContext=function(u){return u={$$typeof:Bu3,_currentValue:u,_currentValue2:u,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},u.Provider={$$typeof:uu3,_context:u},u.Consumer=u};lu3.createElement=uUu;lu3.createFactory=function(u){var B=uUu.bind(null,u);return B.type=u,B};lu3.createRef=function(){return{current:null}};lu3.forwardRef=function(u){return{$$typeof:Eu3,render:u}};lu3.isValidElement=az0;lu3.lazy=function(u){return{$$typeof:Du3,_payload:{_status:-1,_result:u},_init:ku3}};lu3.memo=function(u,B){return{$$typeof:Cu3,type:u,compare:B===void 0?null:B}};lu3.startTransition=function(u){var B=B_.transition;B_.transition={};try{u()}finally{B_.transition=B}};lu3.unstable_act=BUu;lu3.useCallback=function(u,B){return jB.current.useCallback(u,B)};lu3.useContext=function(u){return jB.current.useContext(u)};lu3.useDebugValue=function(){};lu3.useDeferredValue=function(u){return jB.current.useDeferredValue(u)};lu3.useEffect=function(u,B){return jB.current.useEffect(u,B)};lu3.useId=function(){return jB.current.useId()};lu3.useImperativeHandle=function(u,B,E){return jB.current.useImperativeHandle(u,B,E)};lu3.useInsertionEffect=function(u,B){return jB.current.useInsertionEffect(u,B)};lu3.useLayoutEffect=function(u,B){return jB.current.useLayoutEffect(u,B)};lu3.useMemo=function(u,B){return jB.current.useMemo(u,B)};lu3.useReducer=function(u,B,E){return jB.current.useReducer(u,B,E)};lu3.useRef=function(u){return jB.current.useRef(u)};lu3.useState=function(u){return jB.current.useState(u)};lu3.useSyncExternalStore=function(u,B,E){return jB.current.useSyncExternalStore(u,B,E)};lu3.useTransition=function(){return jB.current.useTransition()};lu3.version="18.3.1"});function EUu(u){var B,E,A="";if(typeof u==="string"||typeof u==="number")A+=u;else if(typeof u==="object"){if(Array.isArray(u)){for(B=0;B<u.length;B++)if(u[B]){if(E=EUu(u[B]))A&&(A+=" "),A+=E}}else for(B in u)if(u[B])A&&(A+=" "),A+=B}return A}function Yu(){var u=0,B,E,A="";while(u<arguments.length)if(B=arguments[u++]){if(E=EUu(B))A&&(A+=" "),A+=E}return A}function CUu(u,B,E){var A,C={},D=null,F=null;E!==void 0&&(D=""+E),B.key!==void 0&&(D=""+B.key),B.ref!==void 0&&(F=B.ref);for(A in B)su3.call(B,A)&&!tu3.hasOwnProperty(A)&&(C[A]=B[A]);if(u&&u.defaultProps)for(A in B=u.defaultProps,B)C[A]===void 0&&(C[A]=B[A]);return{$$typeof:pu3,type:u,key:D,ref:F,props:C,_owner:ou3.current}}var AUu,pu3,du3,su3,ou3,tu3,tu,P,l0;var Mu=g(()=>{AUu=Eu(Gu(),1),pu3=Symbol.for("react.element"),du3=Symbol.for("react.fragment"),su3=Object.prototype.hasOwnProperty,ou3=AUu.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,tu3={key:!0,ref:!0,__self:!0,__source:!0};tu=du3,P=CUu,l0=CUu});function eu3(u,B){return Math.sqrt(E_(u,B))}function E_(u,B){return Math.pow(u[0]-B[0],2)+Math.pow(u[1]-B[1],2)}function u43(u,B,E){let A=E_(B,E);if(A===0)return E_(u,B);let C=((u[0]-B[0])*(E[0]-B[0])+(u[1]-B[1])*(E[1]-B[1]))/A;return C=Math.max(0,Math.min(1,C)),E_(u,zK(B,E,C))}function zK(u,B,E){return[u[0]+(B[0]-u[0])*E,u[1]+(B[1]-u[1])*E]}function B43(u,B){let E=u[B+0],A=u[B+1],C=u[B+2],D=u[B+3],F=3*A[0]-2*E[0]-D[0];F*=F;let U=3*A[1]-2*E[1]-D[1];U*=U;let z=3*C[0]-2*D[0]-E[0];z*=z;let k=3*C[1]-2*D[1]-E[1];if(k*=k,F<z)F=z;if(U<k)U=k;return F+U}function Vz0(u,B,E,A){let C=A||[];if(B43(u,B)<E){let D=u[B+0];if(C.length){if(eu3(C[C.length-1],D)>1)C.push(D)}else C.push(D);C.push(u[B+3])}else{let F=u[B+0],U=u[B+1],z=u[B+2],k=u[B+3],f=zK(F,U,0.5),l=zK(U,z,0.5),b=zK(z,k,0.5),M=zK(f,l,0.5),Z=zK(l,b,0.5),J=zK(M,Z,0.5);Vz0([F,f,M,J],0,E,C),Vz0([J,Z,b,k],0,E,C)}return C}function DUu(u,B){return A_(u,0,u.length,B)}function A_(u,B,E,A,C){let D=C||[],F=u[B],U=u[E-1],z=0,k=1;for(let f=B+1;f<E-1;++f){let l=u43(u[f],F,U);if(l>z)z=l,k=f}if(Math.sqrt(z)>A)A_(u,B,k+1,A,D),A_(u,k,E,A,D);else{if(!D.length)D.push(F);D.push(U)}return D}function FUu(u,B=0.15,E){let A=[],C=(u.length-1)/3;for(let D=0;D<C;D++){let F=D*3;Vz0(u,F,B,A)}if(E&&E>0)return A_(A,0,A.length,E);return A}var kUu=P1((UUu)=>{Object.defineProperty(UUu,"__esModule",{value:!0});UUu.sanitizeUrl=void 0;var E43=/^([^\w]*)(javascript|data|vbscript)/im,A43=/&#(\w+)(^\w|;)?/g,C43=/&(newline|tab);/gi,D43=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,F43=/^.+(:|&colon;)/gim,U43=[".","/"];function z43(u){return U43.indexOf(u[0])>-1}function k43(u){return u.replace(A43,function(B,E){return String.fromCharCode(E)})}function f43(u){var B=k43(u||"").replace(C43,"").replace(D43,"").trim();if(!B)return"about:blank";if(z43(B))return B;var E=B.match(F43);if(!E)return B;var A=E[0];if(E43.test(A))return"about:blank";return B}UUu.sanitizeUrl=f43});function Rq(u,B,E){let A=E[0];if(B!=null&&u>=B)throw Error(u+" >= "+B);if(u.slice(-1)===A||B&&B.slice(-1)===A)throw Error("trailing zero");if(B){let F=0;while((u[F]||A)===B[F])F++;if(F>0)return B.slice(0,F)+Rq(u.slice(F),B.slice(F),E)}let C=u?E.indexOf(u[0]):0,D=B!=null?E.indexOf(B[0]):E.length;if(D-C>1){let F=Math.round(0.5*(C+D));return E[F]}else if(B&&B.length>1)return B.slice(0,1);else return E[C]+Rq(u.slice(1),null,E)}function bUu(u){if(u.length!==MUu(u[0]))throw Error("invalid integer part of order key: "+u)}function MUu(u){if(u>="a"&&u<="z")return u.charCodeAt(0)-97+2;else if(u>="A"&&u<="Z")return 90-u.charCodeAt(0)+2;else throw Error("invalid order key head: "+u)}function VT(u){let B=MUu(u[0]);if(B>u.length)throw Error("invalid order key: "+u);return u.slice(0,B)}function fUu(u,B){if(u==="A"+B[0].repeat(26))throw Error("invalid order key: "+u);let E=VT(u);if(u.slice(E.length).slice(-1)===B[0])throw Error("invalid order key: "+u)}function lUu(u,B){bUu(u);let[E,...A]=u.split(""),C=!0;for(let D=A.length-1;C&&D>=0;D--){let F=B.indexOf(A[D])+1;if(F===B.length)A[D]=B[0];else A[D]=B[F],C=!1}if(C){if(E==="Z")return"a"+B[0];if(E==="z")return null;let D=String.fromCharCode(E.charCodeAt(0)+1);if(D>"a")A.push(B[0]);else A.pop();return D+A.join("")}else return E+A.join("")}function l43(u,B){bUu(u);let[E,...A]=u.split(""),C=!0;for(let D=A.length-1;C&&D>=0;D--){let F=B.indexOf(A[D])-1;if(F===-1)A[D]=B.slice(-1);else A[D]=B[F],C=!1}if(C){if(E==="a")return"Z"+B.slice(-1);if(E==="A")return null;let D=String.fromCharCode(E.charCodeAt(0)-1);if(D<"Z")A.push(B.slice(-1));else A.pop();return D+A.join("")}else return E+A.join("")}function Yq(u,B,E="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"){if(u!=null)fUu(u,E);if(B!=null)fUu(B,E);if(u!=null&&B!=null&&u>=B)throw Error(u+" >= "+B);if(u==null){if(B==null)return"a"+E[0];let z=VT(B),k=B.slice(z.length);if(z==="A"+E[0].repeat(26))return z+Rq("",k,E);if(z<B)return z;let f=l43(z,E);if(f==null)throw Error("cannot decrement any more");return f}if(B==null){let z=VT(u),k=u.slice(z.length),f=lUu(z,E);return f==null?z+Rq(k,null,E):f}let A=VT(u),C=u.slice(A.length),D=VT(B),F=B.slice(D.length);if(A===D)return A+Rq(C,F,E);let U=lUu(A,E);if(U==null)throw Error("cannot increment any more");if(U<B)return U;return A+Rq(C,null,E)}function C_(u,B,E,A="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"){if(E===0)return[];if(E===1)return[Yq(u,B,A)];if(B==null){let F=Yq(u,B,A),U=[F];for(let z=0;z<E-1;z++)F=Yq(F,B,A),U.push(F);return U}if(u==null){let F=Yq(u,B,A),U=[F];for(let z=0;z<E-1;z++)F=Yq(u,F,A),U.push(F);return U.reverse(),U}let C=Math.floor(E/2),D=Yq(u,B,A);return[...C_(u,D,C,A),D,...C_(D,B,E-C-1,A)]}var ZUu={};ju(ZUu,{default:()=>M43});var b43=async(u)=>{let B=await u.getFile();return B.handle=u,B},M43=async(u=[{}])=>{Array.isArray(u)||(u=[u]);let B=[];u.forEach((C,D)=>{B[D]={description:C.description||"",accept:{}},C.mimeTypes?C.mimeTypes.map((F)=>{B[D].accept[F]=C.extensions||[]}):B[D].accept["*/*"]=C.extensions||[]});let E=await window.showOpenFilePicker({id:u[0].id,startIn:u[0].startIn,types:B,multiple:u[0].multiple||!1,excludeAcceptAllOption:u[0].excludeAcceptAllOption||!1}),A=await Promise.all(E.map(b43));return u[0].multiple?A:A[0]};var JUu=()=>{};var wUu={};ju(wUu,{default:()=>Z43});var Z43=async(u=[{}])=>(Array.isArray(u)||(u=[u]),new Promise((B,E)=>{let A=document.createElement("input");A.type="file";let C=[...u.map((U)=>U.mimeTypes||[]),...u.map((U)=>U.extensions||[])].join();A.multiple=u[0].multiple||!1,A.accept=C||"";let D=(U)=>{typeof F=="function"&&F(),B(U)},F=u[0].legacySetup&&u[0].legacySetup(D,()=>F(E),A);A.addEventListener("change",()=>{D(A.multiple?Array.from(A.files):A.files[0])}),A.click()}));var KUu=()=>{};var GUu={};ju(GUu,{default:()=>J43});function D_(u){function B(E){if(Object(E)!==E)return Promise.reject(TypeError(E+" is not an object."));var A=E.done;return Promise.resolve(E.value).then(function(C){return{value:C,done:A}})}return D_=function(E){this.s=E,this.n=E.next},D_.prototype={s:null,n:null,next:function(){return B(this.n.apply(this.s,arguments))},return:function(E){var A=this.s.return;return A===void 0?Promise.resolve({value:E,done:!0}):B(A.apply(this.s,arguments))},throw:function(E){var A=this.s.return;return A===void 0?Promise.reject(E):B(A.apply(this.s,arguments))}},new D_(u)}var QUu=async(u,B,E=u.name,A)=>{let C=[],D=[];var F,U=!1,z=!1;try{for(var k,f=function(l){var b,M,Z,J=2;for(typeof Symbol<"u"&&(M=Symbol.asyncIterator,Z=Symbol.iterator);J--;){if(M&&(b=l[M])!=null)return b.call(l);if(Z&&(b=l[Z])!=null)return new D_(b.call(l));M="@@asyncIterator",Z="@@iterator"}throw TypeError("Object is not async iterable")}(u.values());U=!(k=await f.next()).done;U=!1){let l=k.value,b=`${E}/${l.name}`;l.kind==="file"?D.push(l.getFile().then((M)=>(M.directoryHandle=u,M.handle=l,Object.defineProperty(M,"webkitRelativePath",{configurable:!0,enumerable:!0,get:()=>b})))):l.kind!=="directory"||!B||A&&A(l)||C.push(QUu(l,B,b,A))}}catch(l){z=!0,F=l}finally{try{U&&f.return!=null&&await f.return()}finally{if(z)throw F}}return[...(await Promise.all(C)).flat(),...await Promise.all(D)]},J43=async(u={})=>{u.recursive=u.recursive||!1;let B=await window.showDirectoryPicker({id:u.id,startIn:u.startIn});return QUu(B,u.recursive,void 0,u.skipDirectory)};var HUu=()=>{};var LUu={};ju(LUu,{default:()=>w43});var w43=async(u=[{}])=>(Array.isArray(u)||(u=[u]),u[0].recursive=u[0].recursive||!1,new Promise((B,E)=>{let A=document.createElement("input");A.type="file",A.webkitdirectory=!0;let C=(F)=>{typeof D=="function"&&D(),B(F)},D=u[0].legacySetup&&u[0].legacySetup(C,()=>D(E),A);A.addEventListener("change",()=>{let F=Array.from(A.files);u[0].recursive?u[0].recursive&&u[0].skipDirectory&&(F=F.filter((U)=>U.webkitRelativePath.split("/").every((z)=>!u[0].skipDirectory({name:z,kind:"directory"})))):F=F.filter((U)=>U.webkitRelativePath.split("/").length===2),C(F)}),A.click()}));var qUu=()=>{};var XUu={};ju(XUu,{default:()=>K43});var K43=async(u,B=[{}],E=null,A=!1,C=null)=>{Array.isArray(B)||(B=[B]),B[0].fileName=B[0].fileName||"Untitled";let D=[],F=null;if(u instanceof Blob&&u.type?F=u.type:u.headers&&u.headers.get("content-type")&&(F=u.headers.get("content-type")),B.forEach((k,f)=>{D[f]={description:k.description||"",accept:{}},k.mimeTypes?(f===0&&F&&k.mimeTypes.push(F),k.mimeTypes.map((l)=>{D[f].accept[l]=k.extensions||[]})):F&&(D[f].accept[F]=k.extensions||[])}),E)try{await E.getFile()}catch(k){if(E=null,A)throw k}let U=E||await window.showSaveFilePicker({suggestedName:B[0].fileName,id:B[0].id,startIn:B[0].startIn,types:D,excludeAcceptAllOption:B[0].excludeAcceptAllOption||!1});!E&&C&&C();let z=await U.createWritable();if("stream"in u)return await u.stream().pipeTo(z),U;return"body"in u?(await u.body.pipeTo(z),U):(await z.write(await u),await z.close(),U)};var xUu=()=>{};var vUu={};ju(vUu,{default:()=>Q43});var Q43=async(u,B={})=>{Array.isArray(B)&&(B=B[0]);let E=document.createElement("a"),A=u;"body"in u&&(A=await async function(F,U){let z=F.getReader(),k=new ReadableStream({start:(b)=>async function M(){return z.read().then(({done:Z,value:J})=>{if(!Z)return b.enqueue(J),M();b.close()})}()}),f=new Response(k),l=await f.blob();return z.releaseLock(),new Blob([l],{type:U})}(u.body,u.headers.get("content-type"))),E.download=B.fileName||"Untitled",E.href=URL.createObjectURL(await A);let C=()=>{typeof D=="function"&&D()},D=B.legacySetup&&B.legacySetup(C,()=>D(reject),E);return E.addEventListener("click",()=>{setTimeout(()=>URL.revokeObjectURL(E.href),30000),C()}),E.click(),null};var SUu=()=>{};async function WUu(...u){return(await G43).default(...u)}async function YUu(...u){return(await H43).default(...u)}var rk,G43,Dq1,H43;var RUu=g(()=>{rk=(()=>{if(typeof self>"u")return!1;if("top"in self&&self!==top)try{}catch(u){return!1}else if("showOpenFilePicker"in self)return"showOpenFilePicker";return!1})(),G43=rk?Promise.resolve().then(() => (JUu(),ZUu)):Promise.resolve().then(() => (KUu(),wUu));Dq1=rk?Promise.resolve().then(() => (HUu(),GUu)):Promise.resolve().then(() => (qUu(),LUu)),H43=rk?Promise.resolve().then(() => (xUu(),XUu)):Promise.resolve().then(() => (SUu(),vUu))});function TUu(u){let B=[];for(let E=0,A=u.size();E<A;E++)B.push(u.get(E));return new Uint8Array(B)}function R43(u,B,E,A){let C=u.hb_subset_input_create_or_fail();if(C===0)throw Error("hb_subset_input_create_or_fail (harfbuzz) returned zero, indicating failure");let D=u.malloc(E.byteLength);B.set(new Uint8Array(E),D);let F=u.hb_blob_create(D,E.byteLength,2,0,0),U=u.hb_face_create(F,0);u.hb_blob_destroy(F);let z=u.hb_subset_input_set(C,6);u.hb_set_clear(z),u.hb_set_invert(z);let k=u.hb_subset_input_unicode_set(C);for(let J of A)u.hb_set_add(k,J);let f;try{if(f=u.hb_subset_or_fail(U,C),f===0)throw u.hb_face_destroy(U),u.free(D),Error("hb_subset_or_fail (harfbuzz) returned zero, indicating failure. Maybe the input file is corrupted?")}finally{u.hb_subset_input_destroy(C)}let l=u.hb_face_reference_blob(f),b=u.hb_blob_get_data(l,0),M=u.hb_blob_get_length(l);if(M===0)throw u.hb_blob_destroy(l),u.hb_face_destroy(f),u.hb_face_destroy(U),u.free(D),Error("Failed to create subset font, maybe the input file is corrupted?");let Z=new Uint8Array(B.subarray(b,b+M));return u.hb_blob_destroy(l),u.hb_face_destroy(f),u.hb_face_destroy(U),u.free(D),Z}var __dirname="/home/vercel-sandbox/gstack/lib/diagram-render/node_modules/@excalidraw/excalidraw/dist/prod",L43,q43,X43,x43,hz0=null,v43=()=>new Promise((u,B)=>{try{x43({wasmBinary:q43}).then((E)=>{try{u({compress:(A)=>TUu(E.woff2Enc(A,A.byteLength)),decompress:(A)=>TUu(E.woff2Dec(A,A.byteLength))})}catch(A){B(A)}})}catch(E){B(E)}}),S43=()=>(hz0||(hz0=v43()),hz0),W43,Y43,T43,mz0=null,O43=()=>new Promise(async(u,B)=>{try{let E=(await WebAssembly.instantiate(Y43)).instance.exports,A=new Uint8Array(E.memory.buffer);u({subset:(C,D)=>T43.subset(E,A,C,D)})}catch(E){B(E)}}),I43=()=>(mz0||(mz0=O43()),mz0),U_,OUu=async(u,B)=>{try{let E=await hT(u,B);return F_(E)}catch(E){return console.error("Skipped glyph subsetting",E),F_(u)}},hT=async(u,B)=>{let{compress:E,decompress:A}=await S43(),{subset:C}=await I43(),D=A(u).buffer,F=C(D,new Set(B));return E(F.buffer).buffer},F_=async(u)=>{let B;if(typeof Buffer<"u")B=Buffer.from(u).toString("base64");else{let E=String.fromCharCode(...new Uint8Array(u));B=btoa(E)}return`data:font/woff2;base64,${B}`};var rz0=g(()=>{m4();L43=(()=>{let u=new Uint8Array(128);for(let B=0;B<64;B++)u[B<26?B+65:B<52?B+71:B<62?B-4:B*4-205]=B;return(B)=>{let E=B.length,A=new Uint8Array((E-(B[E-1]=="=")-(B[E-2]=="="))*3/4|0);for(let C=0,D=0;C<E;){let F=u[B.charCodeAt(C++)],U=u[B.charCodeAt(C++)],z=u[B.charCodeAt(C++)],k=u[B.charCodeAt(C++)];A[D++]=F<<2|U>>4,A[D++]=U<<4|z>>2,A[D++]=z<<6|k}return A}})(),q43=L43("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/ajYCFCABIAVBAWo2AhAFIAEoAgwhAgtBICACayIEBH8gASgCCCACdgVBAAshCyAEIAFBtAJqIAtBH3EiBUECdGotAAAiCUkEf0EBBQJ/IAEgBUECdGouAbYCIghB//8DcSEHIAhB//8DcUEQSARAIAEgAiAJajYCDCABKAK0AyEFIAFBADYCrAIgCARAIAFB2A5qIAdBAnRqIgIoAgBBAXQgBWogAzsBACACIAM2AgAgASAHNgKUAiABIAZBgIACIAd2ayIGNgKwAiABQeoPaiAHQQF0aiICIAIuAQBBAWo7AQALIAEgA0EBaiIDNgKoAkEADAELIAQgCSAHQXJqIgRqIgVJBH9BAQUgBEECdEGgDGooAgAhBCABIAIgBWo2AgwgASgCtAMhByAIQRBGBH8gASgClAIhCkECBUEAIQpBAwshAiABKAKQAiAKRgR/IAEoAqwCIgVBfmogAnQhAiAFBH8gASACNgKsAiAFBUEAIQJBAAsFIAFBADYCrAIgASAKNgKQAkEAIQJBAAshCCABIAIgBCALIAl2cWoiC0EDaiICNgKsAiADIAIgCGsiDGoiBCAASw0DIApFBEAgASAENgKoAiAEIQNBAAwCCyADIQYgAUHYDmogCkECdGoiCSgCACECA0AgAkEBdCAHaiAGOwEAIAZBAWoiBSAERwRAIAYhAiAFIQYMAQsLIAEgBDYCqAIgCSADIAtBAmpqIAhrNgIAIAEgASgCsAIgDEEPIAEoApACIgNrdGsiBjYCsAIgAUHqD2ogA0EBdGoiAyADLwEAIAxqOwEAIAEoAqgCIQNBAAsLCyECIAMgAEkNAUEBDAILCyABIAA2AqgCIAFB//8/NgKwAkEBCwVBAQsLOAECfyAAKAIEIAAoAgAiBGsiAyABSQRAIAAgASADayACEMAHBSADIAFLBEAgACABIARqNgIECwsLrQUBEH8gASgCqAIhAyABKAKsAiEGIAEoArACIQggASgClAIhCSABKAKQAiEEIAEoArQDIQ8gAUEIaiIMEKQCBEAgCEEARyADIABJcQR/An8gASgCFCENA0AgDUECTwRAIAwoAgAhByABKAIMIgJBD0sEQCAMIAdBEHYiBzYCACABIAJBEHMiAjYCDCAMIAEoAhAiBS8AAEEQdCAHciIHNgIAIAEgDUF+aiINNgIUIAEgBUECajYCEAsgASACIAFBtAJqIAcgAnZBH3EiAkECdGotAABqIgo2AgwgASACQQJ0ai4BtgIiBUH//wNxIQIgBUH//wNxQRBIBEAgBQRAIAFB2A5qIAJBAnRqIgkoAgBBAXQgD2ogAzsBACAJIAM2AgAgAUHqD2ogAkEBdGoiCSAJLgEAQQFqOwEAIAIhCSAIQYCAAiACdmshCAtBACEGIANBAWohAwVBAkEDIAVBEEYiAhsiC0ECdEGgDGooAgAhBSABIAogC2o2AgwgBCAJQQAgAhsiAkYEfyAGIQ4gBCECIAZBfmogC3RBACAGGwVBACEOQQALIAUgByAKdnFqIhFBA2oiByAOayIQIANqIgUgAEsEQEH//z8hCEEBDAQLIAIEfyADIQQgAUHYDmogAkECdGoiCigCACEGA0AgBkEBdCAPaiAEOwEAIARBAWoiCyAFRwRAIAQhBiALIQQMAQsLIAogEUECaiADaiAOazYCACABQeoPaiACQQF0aiIEIAQvAQAgEGo7AQAgByEGIAggEEEPIAJrdGshCCAFIQMgAgUgByEGIAUhA0EACyEECyAIQQBHIAMgAElxDQFBAQwCCwsgASADNgKoAiABIAY2AqwCIAEgCTYClAIgASAENgKQAkECCwVBAQshACABIAg2ArACBUECIQALIAALzAMBCn8gACgCrAIhBSAAKAKwAiEGAn8CQCAAKAJgIgdBEkkEfyAAKAIMIQEDQAJAAn8gB0HQhQxqLQAAIQoCQAJAQSAgAWtBBEkEfyAAKAIUIQQDQCAEBEAgACAAKAIIQQh2IgI2AgggACAAKAIQIggtAABBGHQgAnIiAzYCCCAAIAFBeGoiAjYCDCAAIARBf2oiBDYCFCAAIAhBAWo2AhBBKCABa0EESQRAIAIhAQwCBSACIQEMBAsACwtBICABayICBH8gACgCCCABdkEPcQVBAAshAyACIANBwDpqLQAAIgRJDQQgASECIAMFIAAoAgghAwwBCyEBDAELIAEhAiADIAF2QQ9xIgFBwDpqLQAAIQQLIAFB0DpqLAAAIgNB/wFxIQggACACIARqIgI2AgwgCgsgAEHYD2pqIAM6AABB7t0DIAF2QQFxBEAgBUEBaiEFIABB6g9qIAhBAXRqIgEgAS4BAEEBajsBACAGQSAgCHZrIgZBf2pBH0sNBAsgB0EBaiIHQRJPDQMgAiEBDAELCyAAIAc2AmAgACAFNgKsAiAAIAY2ArACIABB0CZqQQQ2AgBBAgUMAQsMAQtBAUF6IAZFIAVBAUZyGwsLjgMBCH8gAEF/aiIDBH9BACEAA38gAEEBaiEAIANBAXYiAw0AIAALBUEACyEEAn8CQCACKAJgIgUgAigCqAIiBksNAAJ/IARBAnRBoAxqIQkgAigCDCEAA0ACQEEgIABrIARJBEAgAigCFCEHIAAhAwNAIAdFDQIgAiACKAIIQQh2IgA2AgggAiACKAIQIgotAABBGHQgAHIiCDYCCCACIANBeGoiADYCDCACIAdBf2oiBzYCFCACIApBAWo2AhBBKCADayAESQRAIAAhAwwBCwsFIAIoAgghCAsgCSgCACAIIAB2cSEDIAIgACAEaiIANgIMQXwgAyABTw0CGiACQbgDaiAFQQF0aiADOwEAIAVBAWoiBSAGTQ0BDAMLCyACIAU2AmAgAkHQJmpBAjYCAEECCwwBCyAGBH9BACEBA38gAkG4A2ogAUEBdGouAQAhAyABQQFqIgEhAANAQXsgAyACQbgDaiAAQQF0ai4BAEYNAxogAEEBaiIAIAZNDQALIAEgBkkNAEEBCwVBAQsLC9MBAQZ/IAJBuCRqIgQoAgAhBSACQcAkaiIGQYCCiBg2AgBBASECQYCCiBghAwNAIAJBAnQgBmogA0GEiJAgaiIDNgIAIAJBAWoiAiAFTQ0ACyAEIAEEfyAGQX9qIQhBACEDQQAhBQNAIAYgACADaiIELQAAIgdqLAAAIQIgBCACOgAAIAggAjoAACAHIQIDQCACIAZqIAYgAkF/aiIEaiwAADoAACACQQBKBEAgBCECDAELCyAFIAdyIQUgA0EBaiIDIAFHDQALIAVBAnYFQQALNgIAC7IIAQ5/IAAoAqwBQcAnaiEFIAAoArABQeAYaiEHIAAoAtgBIgpBAk8EQCAAKAIIIQEgACgCDCICQQ9LBEAgACABQRB2IgE2AgggACACQRBzIgI2AgwgACAAKAIQIgMvAABBEHQgAXIiATYCCCAAIAAoAhRBfmo2AhQgACADQQJqNgIQCyABIAJ2IgZB/wFxIghBAnQgBWoiAywAACIEQf8BcUEISgRAIAAgAkEIaiICNgIMIAhBAnQgBWovAQJBAnQgA2ogBEH/AXFBAnRBgAxqKAIAIAZBCHZxQQJ0aiIDLAAAIQQLIAAgAiAEQf8BcWoiAjYCDCADLgECIQsgAkEPSwRAIAAgAUEQdiIBNgIIIAAgAkEQcyICNgIMIAAgACgCECIDLwAAQRB0IAFyIgE2AgggACAAKAIUQX5qNgIUIAAgA0ECajYCEAsgASACdiIFQf8BcSIGQQJ0IAdqIgMsAAAiBEH/AXFBCEoEQCAAIAJBCGoiAjYCDCAGQQJ0IAdqLwECQQJ0IANqIARB/wFxQQJ0QYAMaigCACAFQQh2cUECdGoiAywAACEECyAAIAIgBEH/AXFqIgU2AgwgAy4BAiIDQf//A3EiAkECdEGyDWotAAAhCSACQQJ0QbANai8BACEMIAVBD0shAiADQRlGBH8CfwJAIAIEfyAAIAFBEHYiATYCCCAAIAVBEHMiBDYCDCAAIABBEGoiBSgCACICLwAAQRB0IAFyIgE2AgggAEEUaiIGKAIAQX5qIQggBiAINgIAIAUgAkECaiIHNgIAIAEgBHZB//8DcSECIAAgBEEQaiIDNgIMIARBcEkEfyABIQQgBiEBDAIFIAEhBCADCwUgACAFQRBqIgM2AgwgASEEIABBEGoiBigCACEHIABBFGoiDSgCACEIIAEgBXZB//8DcSECIA0hASAGIQUMAQsMAQsgACAEQRB2IgQ2AgggACADQRBzIgM2AgwgACAHLwAAQRB0IARyIgQ2AgggASAIQX5qNgIAIAUgB0ECajYCACADCyEBIAlBcGoiA0ECdEGgDGooAgAgBCABdnEhBCAAIAEgA2o2AgwgAiAEQRB0cgUgAgRAIAAgAUEQdiICNgIIIAAgBUEQcyIBNgIMIAAgACgCECIDLwAAQRB0IAJyIgI2AgggACAAKAIUQX5qNgIUIAAgA0ECajYCEAUgASECIAUhAQsgCUECdEGgDGooAgAgAiABdnEhDiAAIAEgCWo2AgwgDgshASALQf//A3EhAiAAIAEgDGo2AswBAn8CQAJAAkAgCw4CAQACCyAAKALwAUEBagwCCyAAKALsAQwBCyACQX5qCyEBIAAgACgC8AE2AuwBIAAgAUEAIAogASAKSRtrIgE2AvABIAAgACgChAIgAUECdGoiATYCeCAAIAAoArgBIAFqLAAAOgCMAgsLoQgBDn8gACgCrAFB4BNqIQUgACgCsAFBsAxqIQcgACgC1AEiCkECTwRAIAAoAgghASAAKAIMIgJBD0sEQCAAIAFBEHYiATYCCCAAIAJBEHMiAjYCDCAAIAAoAhAiAy8AAEEQdCABciIBNgIIIAAgACgCFEF+ajYCFCAAIANBAmo2AhALIAEgAnYiBkH/AXEiCEECdCAFaiIDLAAAIgRB/wFxQQhKBEAgACACQQhqIgI2AgwgCEECdCAFai8BAkECdCADaiAEQf8BcUECdEGADGooAgAgBkEIdnFBAnRqIgMsAAAhBAsgACACIARB/wFxaiICNgIMIAMuAQIhCyACQQ9LBEAgACABQRB2IgE2AgggACACQRBzIgI2AgwgACAAKAIQIgMvAABBEHQgAXIiATYCCCAAIAAoAhRBfmo2AhQgACADQQJqNgIQCyABIAJ2IgVB/wFxIgZBAnQgB2oiAywAACIEQf8BcUEISgRAIAAgAkEIaiICNgIMIAZBAnQgB2ovAQJBAnQgA2ogBEH/AXFBAnRBgAxqKAIAIAVBCHZxQQJ0aiIDLAAAIQQLIAAgAiAEQf8BcWoiBTYCDCADLgECIgNB//8DcSICQQJ0QbINai0AACEJIAJBAnRBsA1qLwEAIQwgBUEPSyECIANBGUYEfwJ/AkAgAgR/IAAgAUEQdiIBNgIIIAAgBUEQcyIENgIMIAAgAEEQaiIFKAIAIgIvAABBEHQgAXIiATYCCCAAQRRqIgYoAgBBfmohCCAGIAg2AgAgBSACQQJqIgc2AgAgASAEdkH//wNxIQIgACAEQRBqIgM2AgwgBEFwSQR/IAEhBCAGIQEMAgUgASEEIAMLBSAAIAVBEGoiAzYCDCABIQQgAEEQaiIGKAIAIQcgAEEUaiINKAIAIQggASAFdkH//wNxIQIgDSEBIAYhBQwBCwwBCyAAIARBEHYiBDYCCCAAIANBEHMiAzYCDCAAIAcvAABBEHQgBHIiBDYCCCABIAhBfmo2AgAgBSAHQQJqNgIAIAMLIQEgCUFwaiIDQQJ0QaAMaigCACAEIAF2cSEEIAAgASADajYCDCACIARBEHRyBSACBEAgACABQRB2IgI2AgggACAFQRBzIgE2AgwgACAAKAIQIgMvAABBEHQgAnIiAjYCCCAAIAAoAhRBfmo2AhQgACADQQJqNgIQBSABIQIgBSEBCyAJQQJ0QaAMaigCACACIAF2cSEOIAAgASAJajYCDCAOCyEBIAtB//8DcSECIAAgASAMajYCyAECfwJAAkACQCALDgIBAAILIAAoAugBQQFqDAILIAAoAuQBDAELIAJBfmoLIQEgACAAKALoATYC5AEgACABQQAgCiABIApJG2siATYC6AEgACAAKAKMASABQQJ0aigCADYCbAsLkgkBEH8jAiELIwJBEGokAiMCIwNOBEBBEBAACyALQQRqIQcgCyEIIAAoAqwBQcAnaiEJIAAoArABQeAYaiEKIABBCGohBQJAAkAgACgC2AEiDkECSQ0AIAUoAgAhDCAAKAIQIQ8gACgCFCEQAkACQEEgIAAoAgwiDWtBD0kEQCAPIQEgDSECIBAhAyAMIQQDQCADBEAgBSAEQQh2IgQ2AgAgBSABLQAAQRh0IARyIgQ2AgAgACACQXhqIgY2AgwgACADQX9qIgM2AhQgACABQQFqIgE2AhBBKCACa0EPSQRAIAYhAgwCBSAGIQEMBAsACwsgCSAFIAgQY0UNAwUgDCEEIA0hAQwBCwwBCyAEIAF2IgRB/wFxIgZBAnQgCWoiAiwAACIDQf8BcUEISgRAIAAgAUEIaiIBNgIMIAZBAnQgCWovAQJBAnQgAmogA0H/AXFBAnRBgAxqKAIAIARBCHZB/wBxcUECdGoiAiwAACEDCyAAIAEgA0H/AXFqNgIMIAggAi8BAjYCAAsCQAJAAkAgAEHYJmoiCSgCAARAIAcgACgCwAEiAzYCAAwBBQJAQSAgACgCDCIBa0EPSQRAAkAgACgCFCEDA0AgAwRAIAUgBSgCAEEIdiICNgIAIAUgACgCECIGLQAAQRh0IAJyIgQ2AgAgACABQXhqIgI2AgwgACADQX9qIgM2AhQgACAGQQFqNgIQQSggAWtBD0kEQCACIQEMAgUgBCEDIAIhAQwDCwALCyAKIAUgBxBjRQ0CIAcoAgAhAwwECwUgBSgCACEDCyADIAF2IgRB/wFxIgZBAnQgCmoiAiwAACIDQf8BcUEISgRAIAAgAUEIaiIBNgIMIAZBAnQgCmovAQJBAnQgAmogA0H/AXFBAnRBgAxqKAIAIARBCHZB/wBxcUECdGoiAiwAACEDCyAAIAEgA0H/AXFqNgIMIAcgAi8BAiIDNgIADAILCwwBC0EgIAAoAgwiAWsgA0ECdEGyDWotAAAiB0kEQAJAIAAoAhQhBANAIAQEQCAFIAUoAgBBCHYiAjYCACAFIAAoAhAiCi0AAEEYdCACciIGNgIAIAAgAUF4aiICNgIMIAAgBEF/aiIENgIUIAAgCkEBajYCEEEoIAFrIAdJBEAgAiEBDAIFIAYhBAwDCwALCyAAIAM2AsABIAlBATYCAAwCCwUgBSgCACEEIAEhAgsgB0ECdEGgDGooAgAgBCACdnEhASAAIAIgB2o2AgwgACABIANBAnRBsA1qLwEAajYCzAEgCUEANgIAAkACQAJAAkAgCCgCACIBDgIBAAILIAggACgC8AFBAWoiATYCAAwCCyAIIAAoAuwBIgE2AgAMAQsgCCABQX5qIgE2AgALIAEgDmshAiABIA5PBEAgCCACNgIAIAIhAQsgACAAKALwATYC7AEgACABNgLwASAAIAAoAoQCIAFBAnRqIgE2AnggACAAKAK4ASABaiwAADoAjAJBASEADAELIAlBADYCACAFIAw2AgAgACANNgIMIAAgDzYCECAAIBA2AhQMAQsMAQtBACEACyALJAIgAAuBCQEQfyMCIQsjAkEQaiQCIwIjA04EQEEQEAALIAtBBGohByALIQggACgCrAFB4BNqIQkgACgCsAFBsAxqIQogAEEIaiEFAkACQCAAKALUASIOQQJJDQAgBSgCACEMIAAoAhAhDyAAKAIUIRACQAJAQSAgACgCDCINa0EPSQRAIA8hASANIQIgECEDIAwhBANAIAMEQCAFIARBCHYiBDYCACAFIAEtAABBGHQgBHIiBDYCACAAIAJBeGoiBjYCDCAAIANBf2oiAzYCFCAAIAFBAWoiATYCEEEoIAJrQQ9JBEAgBiECDAIFIAYhAQwECwALCyAJIAUgCBBjRQ0DBSAMIQQgDSEBDAELDAELIAQgAXYiBEH/AXEiBkECdCAJaiICLAAAIgNB/wFxQQhKBEAgACABQQhqIgE2AgwgBkECdCAJai8BAkECdCACaiADQf8BcUECdEGADGooAgAgBEEIdkH/AHFxQQJ0aiICLAAAIQMLIAAgASADQf8BcWo2AgwgCCACLwECNgIACwJAAkACQCAAQdgmaiIJKAIABEAgByAAKALAASIDNgIADAEFAkBBICAAKAIMIgFrQQ9JBEACQCAAKAIUIQMDQCADBEAgBSAFKAIAQQh2IgI2AgAgBSAAKAIQIgYtAABBGHQgAnIiBDYCACAAIAFBeGoiAjYCDCAAIANBf2oiAzYCFCAAIAZBAWo2AhBBKCABa0EPSQRAIAIhAQwCBSAEIQMgAiEBDAMLAAsLIAogBSAHEGNFDQIgBygCACEDDAQLBSAFKAIAIQMLIAMgAXYiBEH/AXEiBkECdCAKaiICLAAAIgNB/wFxQQhKBEAgACABQQhqIgE2AgwgBkECdCAKai8BAkECdCACaiADQf8BcUECdEGADGooAgAgBEEIdkH/AHFxQQJ0aiICLAAAIQMLIAAgASADQf8BcWo2AgwgByACLwECIgM2AgAMAgsLDAELQSAgACgCDCIBayADQQJ0QbINai0AACIHSQRAAkAgACgCFCEEA0AgBARAIAUgBSgCAEEIdiICNgIAIAUgACgCECIKLQAAQRh0IAJyIgY2AgAgACABQXhqIgI2AgwgACAEQX9qIgQ2AhQgACAKQQFqNgIQQSggAWsgB0kEQCACIQEMAgUgBiEEDAMLAAsLIAAgAzYCwAEgCUEBNgIADAILBSAFKAIAIQQgASECCyAHQQJ0QaAMaigCACAEIAJ2cSEBIAAgAiAHajYCDCAAIAEgA0ECdEGwDWovAQBqNgLIASAJQQA2AgACQAJAAkACQCAIKAIAIgEOAgEAAgsgCCAAKALoAUEBaiIBNgIADAILIAggACgC5AEiATYCAAwBCyAIIAFBfmoiATYCAAsgASAOayECIAEgDk8EQCAIIAI2AgAgAiEBCyAAIAAoAugBNgLkASAAIAE2AugBIAAgACgCjAEgAUECdGooAgA2AmxBASEADAELIAlBADYCACAFIAw2AgAgACANNgIMIAAgDzYCECAAIBA2AhQMAQsMAQtBACEACyALJAIgAAsyAQF/IAAoAgQiAiAAKAIIRgRAIAAgARBDBSACIAEsAAA6AAAgACAAKAIEQQFqNgIECwsnAQJ/IwIhAiAAIwJqJAIjAkEPakFwcSQCIwIjA04EQCAAEAALIAILNAEBfyAAQdwmaiIBLgEAQQhxBEAgACgCZCAAKAJoIAAoAjQQMhogASABLgEAQXdxOwEACwu/IgEqfyMCISMjAkEQaiQCIwIjA04EQEEQEAALICMhESAAKAI0IQEgACgCBCECIABBCGohCAJ/AkACQAJAAkACQCAAKAIAQQdrDgQAAQIDBAsgAiEeIAEhGEEBIR9BgwEMBAsgAEEUaiEaIABBDGohEiACISQgAEEQaiEbIAEhJUEBISYgCCETQSAMAwsgAiEcIAEhD0EBIRZByQAMAgsgAiEgIAEhIUEBIR1B/AAMAQtBYSEXQYYBCyEBA0ACQCABQSBGBEAgAEFAayELICQhBCAlIQMgJiEBAkACQAJAA0ACQCAEIQIDQAJAIABBCDYCACAAKAK0AUUNACAAKALEASEFIAMhBANAAkAgBUUEQCAAENYDRQRAIAIhDCAEIQ1BAiEODAwLIAAoArQBRQ0BCyAAKAKIAiEJAkACQEEgIBIoAgAiA2tBD0kEfyAaKAIAIQYDQCAGBEAgEyATKAIAQQh2IgU2AgAgEyAbKAIAIgotAABBGHQgBXIiBzYCACASIANBeGoiBTYCACAaIAZBf2oiBjYCACAbIApBAWo2AgBBKCADa0EPSQRAIAUhAwwCBSAHIQYgBSEDDAQLAAsLIAkgCCAREGNFDQcgESgCAAUgEygCACEGDAELIQMMAQsgBiADdiIHQf8BcSIKQQJ0IAlqIgUsAAAiBkH/AXFBCEoEQCASIANBCGoiAzYCACAKQQJ0IAlqLwECQQJ0IAVqIAZB/wFxQQJ0QYAMaigCACAHQQh2Qf8AcXFBAnRqIgUsAAAhBgsgEiADIAZB/wFxajYCACARIAUvAQIiAzYCAAsgACgCZCAEaiADOgAAIAAgACgCxAFBf2oiBTYCxAEgBEEBaiIDIAsoAgBGDQYgAkF/aiICBEAgAyEEDAIFQQAhBCADIQIMCQsACwsgBCEDDAELCyAAKALEASEHIAIhBCAAKAJkIgIgACgCRCIGIANBf2pxaiwAACEFIAIgBiADQX5qcWosAAAhBiADIQIDQAJAIAdFBEAgABDWA0UEQCAEIQwgAiENQQIhDgwKCyAAKAK0AQRAQQQhAwwCCwsgACgCfCAAKAJ0IAAoAnAiAyAFQf8BcWosAAAgA0GAAmogBkH/AXFqLAAAckH/AXFqLQAAQQJ0aigCACEKAkACQEEgIBIoAgAiA2tBD0kEQCAaKAIAIQcDQCAHBEAgEyATKAIAQQh2IgY2AgAgEyAbKAIAIhQtAABBGHQgBnIiCTYCACASIANBeGoiBjYCACAaIAdBf2oiBzYCACAbIBRBAWo2AgBBKCADa0EPSQRAIAYhAwwCBSAJIQcgBiEDDAQLAAsLAn8gCiAIIBEQYyEoIBEoAgBB/wFxIQYgKAtFBEBBAiEDQQIhAQwECwUgEygCACEHDAELDAELIAcgA3YiCUH/AXEiFEECdCAKaiIGLAAAIgdB/wFxQQhKBEAgEiADQQhqIgM2AgAgFEECdCAKai8BAkECdCAGaiAHQf8BcUECdEGADGooAgAgCUEIdkH/AHFxQQJ0aiIGLAAAIQcLIBIgAyAHQf8BcWo2AgAgBi4BAkH/AXEhBgsgACgCZCACaiAGOgAAIAAgACgCxAFBf2oiBzYCxAEgBEF/aiEEIAJBAWoiAiALKAIARg0FIAQEQAJ/IAUhKSAGIQUgKQshBgwCBUEAIQQMBwsACwsCQAJAAkACQCADDgUIAgACAQILIAQhDCACIQ0gASEODAkLIAIhAwwBC0EAIRdBhgEhAQwICwwBCwsgAiEMIAQhDUECIQ4MBAsgAEENNgIAIAJBf2ohDCADIQ0gASEODAMLIABBDTYCACAEIQwgAiENIAEhDgwCCyAAKAK8AUEBTgRAIAQhHCACIQ8gASEWQckAIQEMAwsgAEEONgIAIAQhDCACIQ0gASEOBSABQckARgRAIABBCTYCACAAKAKcAiIBQX9KBEAgACABRSIENgK4ASAAIAAoAkhBf2oiATYCSCAAIABBzABqIAFBA3FBAnRqKAIAIgI2ApwCBQJAIAAoAswBRQRAIAAQ8wdFBEAgHCEMIA8hDUECIQ4MBgsLIAAoApwBIAAtAIwCQQJ0aigCACELIAgoAgAhBiAAKAIQIQkgACgCFCEKAkACQEEgIAAoAgwiB2tBD0kEfyAKIQEgBiEDIAkhAiAHIQQDQCABBEAgCCADQQh2IgM2AgAgCCACLQAAQRh0IANyIgM2AgAgACAEQXhqIgU2AgwgACABQX9qIgE2AhQgACACQQFqIgI2AhBBKCAEa0EPSQRAIAUhBAwCBSAFIQEMBAsACwsgCyAIIBEQYwR/IBEoAgAFIBwhDCAPIQ1BAiEODAgLBSAGIQMgByEBDAELIQEMAQsgAyABdiIDQf8BcSIFQQJ0IAtqIgIsAAAiBEH/AXFBCEoEQCAAIAFBCGoiATYCDCAFQQJ0IAtqLwECQQJ0IAJqIARB/wFxQQJ0QYAMaigCACADQQh2Qf8AcXFBAnRqIgIsAAAhBAsgACABIARB/wFxajYCDCARIAIvAQIiATYCAAsgACABNgKcAiAAQQA2ArgBIAFBEEkEQCABBH8gACAAQcwAaiAAKAJIQZv+v9V6IAFBAXQiBHZqQQNxQQJ0aigCACICNgKcAkGAyv5SIAR2QQNxIQQgAUEBcQRAIAAgAiAEaiIBNgKcAgUgAEH/////ByACIARrIgEgAUEBSBsiATYCnAILQQAFIAAgACgCSEF/aiIBNgJIIAAgAEHMAGogAUEDcUECdGooAgAiATYCnAIgAEEBNgK4AUEBCyEEIAAgACgCzAFBf2o2AswBIAEhAgwBCyABIAAoAvgBIhRrIgVBf0oEQCAAKAL8ASEiQSAgACgCDCIBayAFIAAoAvQBIhB2IhVBAXYiC0sEQCAIKAIAIQQgASECBQJAIAAoAhQhBANAIAQEQCAIIAgoAgBBCHYiAjYCACAIIAAoAhAiGS0AAEEYdCACciIDNgIAIAAgAUF4aiICNgIMIAAgBEF/aiIENgIUIAAgGUEBajYCEEEoIAFrIAtLBEAgAyEEDAMFIAIhAQwCCwALCyAAQX82ApwCIAggBjYCACAAIAc2AgwgACAJNgIQIAAgCjYCFCAcIQwgDyENQQIhDgwHCwsgC0EBaiIBQQJ0QaAMaigCACAEIAJ2cSEEIAAgASACajYCDCAAIBQgBSAicWogBCAVQQFxQQJyIAF0QXxqaiAQdGoiATYCnAILIAAgAUFxaiICNgKcAiAAIAAoAswBQX9qNgLMAUEAIQQLCyAPIAAoAjgiBSAPIAVIGyEDIAAoAjwiASAFRgRAIAEhAwUgACADNgI8CyAAKAKYAiEBIAIgA0oEQCACQfz///8HSgRAQXAhF0GGASEBDAULIAFBfGpBFU8EQEF0IRdBhgEhAQwFCyAAQfgmaigCACEFIABB9CZqKAIAIgZBIGogAUECdGooAgAhByABIAZqLQAAIglBAnRBoAxqKAIAIQogACAAKAJIIARqNgJIIAYoAqQBIgRFBEBBbSEXQYYBIQEMBQsgAiADa0F/aiIDIAl1IgIgBSgCDE4EQEF1IRdBhgEhAQwFCyAEIAcgASADIApxbGpqIQQgACgCZCAPaiEDIAUuARQgAkYEfyADIAQgARAyGiABBSADIAQgASAFIAIQ0QMLIQIgACAAKAK8ASACayIENgK8ASACIA9qIgIgAEFAaygCAE4EQCAAQQ82AgAgASEMIAIhDSAWIQ4MBAsFIAAoAmQiAyAPaiEEIAMgACgCRCAPIAJrcSIDaiEFIABBzABqIAAoAkgiBkEDcUECdGogAjYCACAAIAZBAWo2AkggACAAKAK8ASABazYCvAEgBCAFQRAQVBogASADaiIGIA9KIAEgD2oiAiADSnEEQCABISAgDyEhIBYhHUH8ACEBDAULIAIgAEFAaygCACIDSCAGIANIcUUEQCABISAgDyEhIBYhHUH8ACEBDAULIAFBEEoEQCAEQRBqIQQgBUEQaiEDIAFBIEoEfyAEIAMgAUFwahAyBSAEIANBEBBUCxoLIAAoArwBIQQLIARBAU4EQCABIR4gAiEYIBYhH0GDASEBDAQLIABBDjYCACABIQwgAiENIBYhDgUgAUH8AEYEQCAgQX9qIQEgIEEASgRAAkAgAEFAaygCACAhIgJrIQQDQAJAIAAoAmQiAyACaiADIAAoAkQgAiAAKAKcAmtxaiwAADoAACACQQFqIQIgBEF/aiIDRQ0AIAFBf2ohBCABQQBKBEAgBCEBIAMhBAwCBSAEIQEMAwsACwsgAEEQNgIAIAEhDCACIQ0gHSEODAULBSAhIQILIAAoArwBQQFOBEAgASEeIAIhGCAdIR9BgwEhAQwFCyAAQQ42AgAgASEMIAIhDSAdIQ4FIAFBgwFGBEAgAEEHNgIAIAAoAsgBRQRAA0AgABD0B0UEQCAeIQwgGCENQQIhDgwHCyAAQQc2AgAgACgCyAFFDQALCyAIKAIAIQYgAEEQaiIKKAIAIRQgAEEUaiILKAIAISIgACgCbCEQAn8CQAJAQSAgAEEMaiIJKAIAIgdrQQ9JBH8gIiEBIAYhAyAUIQIgByEEA0AgAQRAIAggA0EIdiIDNgIAIAggAi0AAEEYdCADciIDNgIAIAkgBEF4aiIFNgIAIAsgAUF/aiIBNgIAIAogAkEBaiICNgIAQSggBGtBD0kEQCAFIQQMAgUgBSEBDAQLAAsLIBAgCCAREGMEfyARKAIAIQEMAwUgHgsFIAYhAyAHIQEMAQsMAgsgAyABdiIDQf8BcSIFQQJ0IBBqIgIsAAAiBEH/AXFBCEoEQCAJIAFBCGoiATYCACAFQQJ0IBBqLwECQQJ0IAJqIARB/wFxQQJ0QYAMaigCACADQQh2Qf8AcXFBAnRqIgIsAAAhBAsgCSABIARB/wFxajYCACARIAIvAQIiATYCAAsgAUEDdEGgDmosAAAhAiABQQN0QaEOaiwAACEZIAFBA3RBow5qLQAAIQQCfyABQQN0QaQOai8BACEqIAFBA3RBpg5qLwEAIScgACABQQN0QaIOaiwAADYCnAIgACAEQf8BcSIBNgK4ASAAIAAoAnggAWosAAA6AIwCICoLQf//A3EhAyACQf8BcSEQAkACQCACBEACQEEgIAkoAgAiAWsgEEkEfyALKAIAIQQDfyAERQ0CIAggCCgCAEEIdiICNgIAIAggCigCACIVLQAAQRh0IAJyIgU2AgAgCSABQXhqIgI2AgAgCyAEQX9qIgQ2AgAgCiAVQQFqNgIAQSggAWsgEEkEfyACIQEMAQUgBQsLBSABIQIgCCgCAAshBCAQQQJ0QaAMaigCACAEIAJ2cSEFIAkgAiAQajYCAAwCCwVBACEFDAELDAELIBlB/wFxIRUgGQRAQSAgCSgCACIBayAVSQR/IAsoAgAhBAN/IARFDQMgCCAIKAIAQQh2IgI2AgAgCCAKKAIAIhktAABBGHQgAnIiEDYCACAJIAFBeGoiAjYCACALIARBf2oiBDYCACAKIBlBAWo2AgBBKCABayAVSQR/IAIhAQwBBSAQCwsFIAEhAiAIKAIACyEEIBVBAnRBoAxqKAIAIAQgAnZxIQEgCSACIBVqNgIABUEAIQELIAAgASAnajYCmAIgACAAKALIAUF/ajYCyAEgAyAFaiIBRQRAQQAhHCAYIQ8gHyEWQckAIQEMCAsgACAAKAK8ASABazYCvAEgCyEaIAkhEiABISQgCiEbIBghJSAfISYgCCETQSAhAQwHCyAIIAY2AgAgCSAHNgIAIAogFDYCACALICI2AgAgAwshDCAYIQ1BAiEOBSABQYYBRgRAICMkAiAXDwsLCwsLCyAAIA02AjQgACAMNgIEIA4hF0GGASEBDAAACwALqysBMX8gACgCNCEBIAAoAgQhAiAAQQhqIQgCQAJAIAAoAhRBHEkEQCACIQQgASENQQIhBgwBBQJAIAgQpAIaAkACQAJAAkACQAJAIAAoAgBBB2sOBAABAgMECyACISEgASENQYgBIQEMBAsgAEEMaiEOIAIhJSABISYgCCEMQSAhAQwDCyABIQZBxQAhAQwCCyACIRwgASEdQYEBIQEMAQtBYSEVDAELAkACQAJAAkACQAJAAkACQAJAAkACQAN/An8gAUEgRgR/IABBQGshByAAKAK0ASECICUhASAmIQYDQAJAIAJFBEACQCABIR4gACgCZCICIAAoAkQiEyAGQX9qcWosAAAhASACIBMgBkF+anFqLAAAIQIgBiETA0BBOSAAKAIUQRxJDQYaIAAoAsQBRQRAIAAQ1QMgACgCtAEEQCAeIQEgEyEGDAMLCyAAKAJ8IAAoAnQgACgCcCIGIAFB/wFxaiwAACAGQYACaiACQf8BcWosAAByQf8BcWotAABBAnRqKAIAIRYgDCgCACECIA4oAgAiBkEPSwRAIAwgAkEQdiICNgIAIA4gBkEQcyIGNgIAIAwgACgCECIDLwAAQRB0IAJyIgI2AgAgACAAKAIUQX5qNgIUIAAgA0ECajYCEAsgAiAGdiIaQf8BcSIFQQJ0IBZqIgIsAAAiA0H/AXFBCEoEQCAOIAZBCGoiBjYCACAFQQJ0IBZqLwECQQJ0IAJqIANB/wFxQQJ0QYAMaigCACAaQQh2cUECdGoiAiwAACEDCyAOIAYgA0H/AXFqNgIAIAAoAmQgE2ogAi4BAkH/AXEiAjoAACAAIAAoAsQBQX9qNgLEASAeQX9qIRpBwQAgE0EBaiIWIAcoAgBGDQYaIBoEQAJ/IAEhKiAaIR4gAiEBIBYhEyAqCyECDAEFIBYhIgwECwAACwALCyAAKAKIAiEDIAwoAgAhAiAOKAIAIhFBD0sEQCAMIAJBEHYiAjYCACAOIBFBEHMiETYCACAMIAAoAhAiFC8AAEEQdCACciICNgIAIAAgACgCFEF+ajYCFCAAIBRBAmo2AhALIAIgEXZB/wFxIgVBAnQgA2otAAAhAiABIREgBiEUIAVBAnQgA2ovAQIhBgNAAkBBJyAAKAIUQRxJDQUaIAAoAsQBBH8gDigCACEDIAAoAogCIRIgAiEFIAYFIAAQ1QMgACgCiAIhAiAMKAIAIQEgDigCACIGQQ9LBEAgDCABQRB2IgE2AgAgDiAGQRBzIgY2AgAgDCAAKAIQIgMvAABBEHQgAXIiATYCACAAIAAoAhRBfmo2AhQgACADQQJqNgIQCwJ/IAEgBnZB/wFxIgFBAnQgAmotAAAhKyABQQJ0IAJqLwECIQEgACgCtAFFDQIgBiEDIAIhEiArC0H/AXEhBSABQf//A3ELIQIgBUEISwRAIAwoAgAhASADQQ9LBEAgDCABQRB2IgY2AgAgDiADQRBzIgM2AgAgDCAAKAIQIgovAABBEHQgBnIiATYCACAAIAAoAhRBfmo2AhQgACAKQQJqNgIQCyAOIAVBAnRBgAxqKAIAIAEgA3YiBkEIdnFBAnQgBkH/AXFBAnQgEmogAkECdGpqIgItAAAgA0EIamoiBjYCACACLwECIQIFIA4gAyAFaiIGNgIAIAwoAgAhAQsgBkEPSwRAIAwgAUEQdiIBNgIAIA4gBkEQcyIGNgIAIAwgACgCECIDLwAAQRB0IAFyIgE2AgAgACAAKAIUQX5qNgIUIAAgA0ECajYCEAsCfyABIAZ2Qf8BcSIGQQJ0IBJqLQAAIS0CfyAGQQJ0IBJqLwECISwgACgCZCAUaiACOgAAIAAgACgCxAFBf2o2AsQBQTUgFEEBaiISIAcoAgBGDQcaICwLQf//A3EhBiAtC0H/AXEhAiARQX9qIgEEQCABIREgEiEUDAIFIBIhIgwDCwALC0EAIQIgESEBIBQhBgwBCwsgACgCvAFBAUgEf0HEAAUgIiEGQcUAIQEMAwsFIAFBxQBGBEAgACgCnAIiBEF/SgRAIAAgBEUiAjYCuAEgACAAKAJIQX9qIgQ2AkggACAAQcwAaiAEQQNxQQJ0aigCACIBNgKcAgUCQCAAKALMAUUEQCAAEPEHCyAAKAKcASAALQCMAkECdGooAgAhBSAIKAIAIQQgACgCDCIBQQ9LBEAgCCAEQRB2IgQ2AgAgACABQRBzIgE2AgwgCCAAKAIQIgIvAABBEHQgBHIiBDYCACAAIAAoAhRBfmo2AhQgACACQQJqNgIQCyAEIAF2IgdB/wFxIgpBAnQgBWoiAiwAACIDQf8BcUEISgRAIAAgAUEIaiIBNgIMIApBAnQgBWovAQJBAnQgAmogA0H/AXFBAnRBgAxqKAIAIAdBCHZxQQJ0aiICLAAAIQMLIAAgASADQf8BcWoiATYCDCAAIAIuAQIiA0H//wNxIgI2ApwCIABBADYCuAEgA0H//wNxQRBIBEAgAwR/IAAgAEHMAGogACgCSEGb/r/VeiACQQF0IgF2akEDcUECdGooAgAiBDYCnAJBgMr+UiABdkEDcSEBIAJBAXEEQCAAIAEgBGoiBDYCnAIFIABB/////wcgBCABayIEIARBAUgbIgQ2ApwCC0EABSAAIAAoAkhBf2oiBDYCSCAAIABBzABqIARBA3FBAnRqKAIAIgQ2ApwCIABBATYCuAFBAQshAiAAIAAoAswBQX9qNgLMASAEIQEMAQsgAiAAKAL4ASIPayIJQX9KBEAgACAAKAL0ASIQBH8gACgC/AEhGyABQQ9LIQIgCSAQdiIfQQF2IiNBAWoiC0ERSQRAIAIEQCAIIARBEHYiBDYCACAAIAFBEHMiATYCDCAIIAAoAhAiAi8AAEEQdCAEciIENgIAIAAgACgCFEF+ajYCFCAAIAJBAmo2AhALIAtBAnRBoAxqKAIAIAQgAXZxIQQgACABIAtqNgIMBQJ/AkAgAgR/IAggBEEQdiIENgIAIAAgAUEQcyIDNgIMIAggAEEQaiIHKAIAIgEvAABBEHQgBHIiBDYCACAAIAAoAhRBfmoiCjYCFCAHIAFBAmoiBTYCACAEIAN2Qf//A3EhASAAIANBEGoiAjYCDCADQXBJBH8gBCEDDAIFIAQhAyACCwUgACABQRBqIgI2AgwgAEEQaiIHKAIAIQUgACgCFCEKIAQiAyABdkH//wNxIQEMAQsMAQsCfyAHIS4gCCADQRB2IgM2AgAgACACQRBzIgI2AgwgCCAFLwAAQRB0IANyIgM2AgAgACAKQX5qNgIUIC4LIAVBAmo2AgAgAgshBCAjQXFqIgJBAnRBoAxqKAIAIAMgBHZxIQMgACACIARqNgIMIAEgA0EQdHIhBAsgBCAfQQFxQQJyIAt0QXxqaiAQdCEEIA8gCSAbcWoFIAFBD0shAiAJQQF2IhBBAWoiC0ERSQRAIAIEQCAIIARBEHYiBDYCACAAIAFBEHMiATYCDCAIIAAoAhAiAi8AAEEQdCAEciIENgIAIAAgACgCFEF+ajYCFCAAIAJBAmo2AhALIAtBAnRBoAxqKAIAIAQgAXZxIQQgACABIAtqNgIMBQJ/AkAgAgR/IAggBEEQdiIENgIAIAAgAUEQcyIDNgIMIAggAEEQaiIHKAIAIgEvAABBEHQgBHIiBDYCACAAIAAoAhRBfmoiCjYCFCAHIAFBAmoiBTYCACAEIAN2Qf//A3EhASAAIANBEGoiAjYCDCADQXBJBH8gBCEDDAIFIAQhAyACCwUgACABQRBqIgI2AgwgAEEQaiIHKAIAIQUgACgCFCEKIAQiAyABdkH//wNxIQEMAQsMAQsCfyAHIS8gCCADQRB2IgM2AgAgACACQRBzIgI2AgwgCCAFLwAAQRB0IANyIgM2AgAgACAKQX5qNgIUIC8LIAVBAmo2AgAgAgshBCAQQXFqIgJBAnRBoAxqKAIAIAMgBHZxIQMgACACIARqNgIMIAEgA0EQdHIhBAsgD0F8aiAJQQFxQQJyIAt0agsgBGoiBDYCnAIFIAIhBAsgACAEQXFqIgE2ApwCIAAgACgCzAFBf2o2AswBQQAhAgsLIAYgACgCOCIFIAYgBUgbIQMgACgCPCIEIAVGBEAgBCEDBSAAIAM2AjwLIAAoApgCIQRBgAEgASADSgR/IAFB/P///wdKBEBBcCEVDBELIARBfGpBFU8EQEF0IRUMEQsgAEH4JmooAgAhFyAAQfQmaigCACIFQSBqIARBAnRqKAIAIQcgBCAFai0AACIKQQJ0QaAMaigCACEJIAAgACgCSCACajYCSCAFKAKkASICRQRAQW0hFQwRCyABIANrQX9qIgMgCnUiASAXKAIMTgRAQXUhFQwRCyACIAcgBCADIAlxbGpqIQIgACgCZCAGaiEDIBcuARQgAUYEfyADIAIgBBAyGiAEBSADIAIgBCAXIAEQ0QMLIQEgACAAKAK8ASABayICNgK8AUH3ACABIAZqIhcgAEFAaygCAE4NAxogFyEYIAIFIAAoAmQiAiAGaiEDIAIgACgCRCAGIAFrcSIFaiEHIABBzABqIAAoAkgiAkEDcUECdGogATYCACAAIAJBAWo2AkggACAAKAK8ASAEazYCvAEgAyAHQRAQVBogBCAFaiIBIAZKIAQgBmoiAiAFSnEEQCAEIRwgBiEdQYEBIQEMBQsgAiAAQUBrKAIAIgVIIAEgBUhxRQRAIAQhHCAGIR1BgQEhAQwFCyAEQRBKBEAgA0EQaiEBIAdBEGohGCAEQSBKBH8gASAYIARBcGoQMgUgASAYQRAQVAsaCyACIRggACgCvAELQQFIDQIaIAQhISAYIQ1BiAEhAQwDBSABQYEBRgRAIBxBf2ohASAcQQBKBH8gASEgIABBQGsoAgAgHSIZayEBA38gACgCZCICIBlqIAIgACgCRCAZIAAoApwCa3FqLAAAOgAAIBlBAWohGUGFASABQX9qIgJFDQUaICBBf2ohASAgQQBKBH8gASEgIAIhAQwBBSAZISQgAQsLBSAdISQgAQshJ0GHASAAKAK8AUEBSA0DGiAnISEgJCENQYgBIQEMBAUgAUGIAUYEQEEEIAAoAhQiAkEcSQ0EGgNAIAAoAsgBIiNFBEAgABDyB0EEIAAoAhQiAkEcSQ0GGgwBCwsgACgCbCEKIAgoAgAhASAAQQxqIgkoAgAiA0EPSwRAIAggAUEQdiIBNgIAIAkgA0EQcyIDNgIAIAggACgCECIFLwAAQRB0IAFyIgE2AgAgACACQX5qIgI2AhQgACAFQQJqNgIQCyABIAN2IgtB/wFxIg9BAnQgCmoiBSwAACIHQf8BcUEISgRAIAkgA0EIaiIDNgIAIA9BAnQgCmovAQJBAnQgBWogB0H/AXFBAnRBgAxqKAIAIAtBCHZxQQJ0aiIFLAAAIQcLIAkgAyAHQf8BcWoiAzYCACAFLwECIgVBA3RBoA5qLAAAIQcgBUEDdEGhDmotAAAhHyAFQQN0QaMOai0AACEKIAVBA3RBpA5qLwEAISggBUEDdEGmDmovAQAhKSAAIAVBA3RBog5qLAAANgKcAiAAIApB/wFxIgU2ArgBIAAgACgCeCAFaiwAADoAjAIgBwRAAkAgB0H/AXEhECADQQ9LIQUgB0H/AXFBEUgEQCAFBEAgCCABQRB2IgE2AgAgCSADQRBzIgM2AgAgCCAAKAIQIgUvAABBEHQgAXIiATYCACAAIAJBfmoiAjYCFCAAIAVBAmo2AhALIBBBAnRBoAxqKAIAIAEgA3ZxIQsgCSADIBBqIgM2AgAMAQsCQAJAIAUEQCAIIAFBEHYiATYCACAJIANBEHMiBzYCACAIIABBEGoiDygCACIDLwAAQRB0IAFyIgE2AgAgACACQX5qIgI2AhQgDyADQQJqIgs2AgAgASAHdkH//wNxIQUgCSAHQRBqIgM2AgAgB0FwSQRAIAEhByADIQoMAgsFIAkgA0EQaiIKNgIAIAEhByAAQRBqIg8oAgAhCyABIAN2Qf//A3EhBQwBCwwBCwJ/IA8hMCAIIAdBEHYiBzYCACAJIApBEHMiAzYCACAIIAsvAABBEHQgB3IiBzYCACAAIAJBfmoiAjYCFCAwCyALQQJqNgIAIAchAQsgEEFwaiIHQQJ0QaAMaigCACABIAN2cSEKIAkgAyAHaiIDNgIAIAUgCkEQdHIhCwsFQQAhCwsgH0H/AXEhGyADQQ9LIQUgH0H/AXFBEUgEQCAFBEAgCCABQRB2IgE2AgAgCSADQRBzIgM2AgAgCCAAKAIQIgUvAABBEHQgAXIiATYCACAAIAJBfmo2AhQgACAFQQJqNgIQCyAbQQJ0QaAMaigCACABIAN2cSEBIAkgAyAbajYCAAUCfwJAIAUEfyAIIAFBEHYiATYCACAJIANBEHMiBTYCACAIIABBEGoiECgCACIDLwAAQRB0IAFyIgE2AgAgACACQX5qIgc2AhQgECADQQJqIg82AgAgASAFdkH//wNxIQIgCSAFQRBqIgM2AgAgBUFwSQR/IAEhBSADIQoMAgUgASEFIAMLBSAJIANBEGoiCjYCACABIQUgAEEQaiIQKAIAIQ8gAiEHIAEgA3ZB//8DcSECDAELDAELAn8gECExIAggBUEQdiIFNgIAIAkgCkEQcyIDNgIAIAggDy8AAEEQdCAFciIFNgIAIAAgB0F+ajYCFCAxCyAPQQJqNgIAIAMLIQEgG0FwaiIDQQJ0QaAMaigCACAFIAF2cSEFIAkgASADajYCACACIAVBEHRyIQELIAAgASApajYCmAIgACAjQX9qNgLIASALIChqIgFFBEAgDSEGQcUAIQEMBgsgACAAKAK8ASABazYCvAEgCSEOIAEhJSANISYgCCEMQSAhAQwFCwsLDAILCwtBBGsOhAEACgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgEKCgoKCgoKCgoKCgoKAgoKCgMKCgoKCgoKBAoKBQoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKBgoKCgoKCgoKBwoKCgoICgkKCyAAQQc2AgAgISEEQQIhBgwMCyAAQQg2AgAgESEEIBQhDUECIQYMCwsgAEENNgIAIBFBf2ohBCASIQ1BASEGDAoLIABBCDYCACAeIQQgEyENQQIhBgwJCyAAQQ02AgAgGiEEIBYhDUEBIQYMCAsgAEEONgIAQQAhBCAiIQ1BASEGDAcLIABBDzYCACAXIQ1BASEGDAYLIABBDjYCACAYIQ1BASEGDAULIABBEDYCACAgIQQgGSENQQEhBgwECyAAQQ42AgAgJyEEICQhDUEBIQYMAwsLCwwBCyAAIA02AjQgACAENgIEIAYhFQsgFQvxAQEHfyMCIQYjAkEQaiQCIwIjA04EQEEQEAALIAYhBwJAAkAgAUHEJmoiCCgCAEEBRgR/IAFBjBBqIgMoAgAFIAFBkBBqIAAoAgQ2AgAgAUGMEGoiA0EANgIAIAhBATYCAEEACyAALwEMTg0AIAFBkBBqIgQoAgAhAgNAIAAvAQggAC8BCiACIAcgARDXASICQQFGBEAgACgCACADKAIAIgVBAnRqIAQoAgA2AgAgBCAEKAIAIAcoAgBBAnRqIgI2AgAgAyAFQQFqIgU2AgAgBSAALwEMTg0CDAELCwwBCyAIQQA2AgBBASECCyAGJAIgAgtYAQJ/QQEgAXQhAiABQQJ0QaA6aigCACIDIABLBH8gAUECdEGwOmooAgAgACACamoFIAFBAnRBsDpqKAIAIQEgAiADaiICIABJBH8gACABagUgASACagsLC+oBAQd/IAAoAgQiAyAAKALQAUgEfwJ/IABB8CZqIQUDQAJAQSAgACgCDCIEa0ECSQR/IAAoAhQhAgN/IAJFDQIgACAAKAIIQQh2IgE2AgggACAAKAIQIgYtAABBGHQgAXIiBzYCCCAAIARBeGoiATYCDCAAIAJBf2oiAjYCFCAAIAZBAWo2AhBBKCAEa0ECSQR/IAEhBAwBBSAHCwsFIAQhASAAKAIICyECIAAgAUECajYCDCAFKAIAIANqIAIgAXZBA3E6AAAgA0EBaiIDIAAoAtABSA0BQQEMAgsLIAAgAzYCBEECCwVBAQsLRQEBfyABKAIAIgEgAigCACIDRwRAIAAoAgQhAgNAIAIgASwAADoAACAAIAAoAgRBAWoiAjYCBCABQQFqIgEgA0cNAAsLC4sDAQl/IAMQ1wMEQAJAIANBQGshCCADQeAmaiEJIANBzCZqIgooAgAhBANAAkACQAJAA0ACQCAEDgICAAELCwwBCyAIKAIAIgYgAygCNCILayADKAK8ASIFIAMoAhRBICADKAIMIgxrIgdBA3ZqIgQgBCAFShsiBCAEIAtqIAZKGyEGIAsgAygCZGohBSAGQQBHIAdBB0txBEAgBiEEA0AgBSADKAIIIAx2OgAAIAMgAygCDCIHQQhqIgw2AgwgBUEBaiEFIARBf2oiBEEAR0EYIAdrQQdLcQ0ACwUgBiEECyAFIAMoAhAgBBAyGiADIAMoAhQgBGs2AhQgAyADKAIQIARqNgIQIAMgAygCNCAGaiIFNgI0IAMgAygCvAEgBmsiBDYCvAEgBUEBIAkoAgB0SA0BIApBATYCAAsgAyAAIAEgAkEAENgBIgRBAUcNAiAIKAIAQQEgCSgCAHRGBEAgAyADKAI4NgI8CyAKQQA2AgBBACEEDAELC0ECQQEgBBshBAsFQWYhBAsgBAuIAQEEfyAAQUBrKAIAIgFBgAggARshAiABQQEgAEHgJmooAgB0IgFHBEAgAEHcJmouAQAiBEEEcUUEQCAAKAJkBH8gACgCNAVBAAsgACgCvAFqIgMgAiACIANIGyEDIARBEHEEQANAIAFBAXUiAiADTgRAIAIhAQwBCwsLIABB5CZqIAE2AgALCwvhDgEJfyAAQdwmaiEGIABBwCZqIggoAgAhAgJAAkACQAJAAkACQAJAAkACQAJAAkACQANAAkAgCAJ/AkACQAJAAkACQCACDggAAwEKCwwNDgILIAEoAgQiAkEgRgRAIAEoAgwiBEUEQEECIQAMBwsgASABKAIAQQh2IgI2AgAgASABKAIIIgMtAABBGHQgAnIiAjYCACABQRg2AgQgASAEQX9qNgIMIAEgA0EBajYCCEEYIQMFIAIhAyABKAIAIQILIAEgA0EBajYCBEEBIAN0IAJxQQBHIgMgBi4BAEF4cXIhAiAAQQA2ArwBIAYgAjsBACADBH8gCEEBNgIADAMFQQILDAQLIAEoAgQhAgwCC0FhIQAMAwsgASgCBCICQSBGBH8gASgCDCIERQRAQQIhAAwECyABIAEoAgBBCHYiAjYCACABIAEoAggiAy0AAEEYdCACciICNgIAIAFBGDYCBCABIARBf2o2AgwgASADQQFqNgIIQRghBCACBSACIQQgASgCAAshAyABIARBAWoiAjYCBEEBIAR0IANxDQQgCEECNgIAC0EgIAJrQQJJBEAgASgCDCEEIAIhAwNAIARFBEBBAiEADAQLIAEgASgCAEEIdiICNgIAIAEgASgCCCIHLQAAQRh0IAJyIgU2AgAgASADQXhqIgI2AgQgASAEQX9qIgQ2AgwgASAHQQFqNgIIQSggA2tBAkkEQCACIQMMAQsLBSABKAIAIQULIAEgAkECajYCBCAGIAYuAQBBv4B/cSAFIAJ2QQNxIgNBBHJBBnRBwP8AcXIiAjsBACAAQQA2AgQgA0EDRw0EIAYgAkEEcjsBAEEFCyICNgIADAELCwwLCyAIQQA2AgBBASEADAoLIAhBAzYCAEEAIQQMBQsgACgCBCEEIAYuAQAhAgwECyAGLgEAIQIMBQsgASgCBCICQSBGBH8gASgCDCIERQRAQQIhAAwICyABIAEoAgBBCHYiAjYCACABIAEoAggiAy0AAEEYdCACciICNgIAIAFBGDYCBCABIARBf2o2AgwgASADQQFqNgIIQRghBCACBSACIQQgASgCAAshAyABIARBAWoiAjYCBEEBIAR0IANxBH9BfgUgCEEGNgIADAQLIQAMBgsgASgCBCECDAILIAYuAQAhAgwDCyAEIAJB//8DcUEGdkH/AXFIBEACQCABKAIEIQIDQAJAQSAgAmtBBEkEQCABKAIMIQUgAiEDA0AgBUUNAiABIAEoAgBBCHYiAjYCACABIAEoAggiCS0AAEEYdCACciIHNgIAIAEgA0F4aiICNgIEIAEgBUF/aiIFNgIMIAEgCUEBajYCCEEoIANrQQRJBEAgAiEDDAELCwUgASgCACEHCyAHIAJ2QQ9xIQogASACQQRqIgI2AgQgBEEBaiIDIAYuAQAiBUH//wNxQQZ2Qf8BcSIJIgdGBEAgCkUgCUEESnEEQEF/IQAMCQsLIAAgACgCvAEgCiAEQQJ0dHI2ArwBIAMgB0gEQCADIQQMAgUgBSECDAMLAAsLIAAgBDYCBEECIQAMBQsLIAhBBDYCAAwBC0EgIAJrQQJJBEAgASgCDCEEIAIhAwNAIARFBEBBAiEADAULIAEgASgCAEEIdiICNgIAIAEgASgCCCIHLQAAQRh0IAJyIgU2AgAgASADQXhqIgI2AgQgASAEQX9qIgQ2AgwgASAHQQFqNgIIQSggA2tBAkkEQCACIQMMAQsLBSABKAIAIQULIAEgAkECajYCBCAFIAJ2QQNxIgIEfyAGIAYuAQBBv4B/cSACQQZ0QcD/AHFyIgI7AQAgCEEHNgIADAIFIAhBADYCAEEBCyEADAILIAJBAXFFBEAgASgCBCICQSBGBEAgASgCDCIERQRAQQIhAAwECyABIAEoAgBBCHYiAjYCACABIAEoAggiAy0AAEEYdCACciICNgIAIAFBGDYCBCABIARBf2o2AgwgASADQQFqNgIIQRghAwUgAiEDIAEoAgAhAgsgASADQQFqNgIEIAYgBi4BAEF9cUEBIAN0IAJxQQBHQQF0cjsBAAsgACAAKAK8AUEBajYCvAEgCEEANgIAQQEhAAwBCyAAKAIEIgQgAkH//wNxQQZ2Qf8BcUgEQAJAIAEoAgQhAgNAAkBBICACa0EISQRAIAEoAgwhBSACIQMDQCAFRQ0CIAEgASgCAEEIdiICNgIAIAEgASgCCCIJLQAAQRh0IAJyIgc2AgAgASADQXhqIgI2AgQgASAFQX9qIgU2AgwgASAJQQFqNgIIQSggA2tBCEkEQCACIQMMAQsLBSABKAIAIQcLIAcgAnZB/wFxIQkgASACQQhqIgI2AgQgBEEBaiIDIAYvAQBBBnZB/wFxIgciBUYEQCAJRSAHQQFKcQRAQX0hAAwGCwsgACAAKAK8ASAJIARBA3R0ciIENgK8ASADIAVODQIgAyEEDAELCyAAIAQ2AgRBAiEADAILBSAAKAK8ASEECyAAIARBAWo2ArwBIAhBADYCAEEBIQALIAAL9QEBBn8gAEHcJmoiBS4BACICQSBxIQcgBSACQV9xOwEAIAEoAgAhAiABIAEoAgQiBEEBaiIDNgIEIAJBASAEdHEEfwJ/IAEgBEEEaiIGNgIEIAIgA3ZBB3EiAwRAIABB4CZqIANBEWo2AgBBAQwBCyABIARBB2oiAzYCBAJAAkACQCACIAZ2IgZBB3EOAgEAAgtBcyAHRQ0CGiABIARBCGo2AgRBcyACQQEgA3RxDQIaIAUgBS4BAEEgcjsBAEEBDAILIABB4CZqQRE2AgBBAQwBCyAAQeAmaiAGQQdxQQhyNgIAQQELBSAAQeAmakEQNgIAQQELC8seASB/IwIhGiMCQRBqJAIjAiMDTgRAQRAQAAsgBQRAIAUgACgCpAI2AgALIBohESAAQQhqIQggACgCXEEASAR/QQAFAkACQCADKAIARSIGDQAgBARAIAQoAgANAQtBbCEEDAELQQAgBCAGGyESIABB4CZqIRQgAEHYJmohFSAAQegmaiEbIABB7CZqIRYgAEHcJmohDiAAQfAmaiEcIABB/CZqIRMgAEGAAmohHSAAQYQCaiEeIABB/ABqIRcgAEGMAWohHyAAQZwBaiEgIABBQGshISAAKAIwBH8gAEEQaiIPIABBKGoiGDYCACACIRAgAEEUaiEKIA8hDEECBSAAQRRqIgogASgCADYCACAAQRBqIg8gAigCADYCACACIRAgAEEoaiEYIA8hDEEBCyEEAkACQANAAkACQAJAIARBAWsOAgABAgsCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCAA4ZAAECERQHDwkJCQkDBAoLCgoFBhIVExYIEAwLIAgQpAJFBEBBAiEEDBoLIAAgCBCBCCIEQQFHDRkgDi4BAEEgcQRAIABBATYCAAUgAEECNgIAC0EBIQQMGQsgFEEgIAAoAgwiBGtBBkkEfyAKKAIAIQcDfyAHRQRAQQIhBAwbCyAIIAgoAgBBCHYiBjYCACAIIAwoAgAiCS0AAEEYdCAGciILNgIAIAAgBEF4aiIGNgIMIAogB0F/aiIHNgIAIAwgCUEBajYCAEEoIARrQQZJBH8gBiEEDAEFIAsLCwUgBCEGIAgoAgALIAZ2QT9xIgQ2AgAgACAGQQZqNgIMIARBdmpBFEsEQEFzIQQMGQsgAEECNgIADAsLIBQoAgAhBAwKCyADIBIgBSAAEP4HIgRBAUcNFiAAQQ42AgBBASEEDBYLIAAoArwBIgZBAEoEQCAAKAIMIQQDQCAAQSAgBGtBCEkEfyAKKAIAIQkDfyAJRQRAQQIhBAwaCyAIIAgoAgBBCHYiBzYCACAIIAwoAgAiCy0AAEEYdCAHcjYCACAAIARBeGoiBzYCDCAKIAlBf2oiCTYCACAMIAtBAWo2AgBBKCAEa0EISQR/IAchBAwBBSAHCwsFIAQLQQhqIgQ2AgwgACAGQX9qIgc2ArwBIAZBAUoEQCAHIQYMAQsLCyAAQQ42AgBBASEEDBULIAAoAgQiBEECSgRAIABBBTYCAEEBIQQMFQsgACAIIABB0AFqIARBAnRqENkDIgRBAUcNFCAAQdABaiAAKAIEQQJ0aiIEIAQoAgBBAWo2AgAgAEHQAWogACgCBCIEQQJ0aigCACIGQQJJBEAgACAEQQFqNgIEQQEhBAwVBSAAQRI2AgAMCQsACyAAQdABaiAAKAIEIgRBAnRqKAIAIQYMBwtBICAAKAIMIgRrQQZJBH8gCigCACEHA38gB0UEQEECIQQMFQsgCCAIKAIAQQh2IgY2AgAgCCAMKAIAIgktAABBGHQgBnIiCzYCACAAIARBeGoiBjYCDCAKIAdBf2oiBzYCACAMIAlBAWo2AgBBKCAEa0EGSQR/IAYhBAwBBSALCwsFIAQhBiAIKAIACyEEIAAgBkEGajYCDCAAIAQgBnYiBkEDcSIENgL0ASAAIAZBAnZBD3EgBHRBEGo2AvgBIAAgBEECdEGgDGooAgA2AvwBIBwgACgCICAAKALQASAAKAIYQR9xQQxqEQYAIgQ2AgAgBEUEQEFrIQQMEwsgAEEANgIEIABBBjYCAAwHCwJAAkACQAJAIAAoAgQOAwABAgMLIBcMEQsgHwwQCyAgDA8LQWEhBAwUCyAAEPkHIgRBAkcNECAAEPgHIQQMEAsgACADIBIgBUEAENgBIgRBAUcNDyAAEPcHICEoAgBBASAUKAIAdEYEQCAAIAAoAjg2AjwLAkACQAJAIAAoAgBBD2sOAgABAgsgACgCvAEEQCAAQQc2AgAFIABBDjYCAAtBASEEDBELIABBCjYCAEEBIQQMEAsgACgCBARAIABBCDYCAEEBIQQMEAsgACgCvAEEQCAAQQk2AgAFIABBDjYCAAtBASEEDA8LIAAoArwBQQBIBEBBdiEEDA8LIAAQ0gMgDi4BAEEBcUUEQCAAQQM2AgBBASEEDA8LQQAgACgCDCIEa0EHcSIGBEACfyAGQQJ0QaAMaigCACAIKAIAIAR2cSEjIAAgBCAGaiIENgIMICMLBEBBcSEEDBALCyAAKAIwRQRAIApBICAEayIGQQN2IgcgCigCAGoiCTYCACAMIAwoAgAgB2siBzYCACAIIAZBeHEiBkEgRgR/QQAFIAgoAgAgBnQLNgIAIAAgBCAGajYCDCABIAk2AgAgECAHNgIACyAAQRg2AgAMBAtBASEEDA0LIABBASAEdEFwajYCOCAAIAAoAiBBsOAAIAAoAhhBH3FBDGoRBgAiBDYCrAEgBEUEQEFiIQQMDQsgACAEQaA7ajYCsAEgAEEDNgIADAMLIAZBAmoiBiAGIAAoAqwBIARB+ARsQQJ0akEAIAAQ1wEiBEEBRw0LIABBEzYCAAwDCyAAEPwHIgRBAUcNCiAAQRU2AgAMAwsgACgCZEUEQEEBIQQMDQsgACADIBIgBUEBENgBIgRBAUcNCUEBIQQMDAsgABDoByAAQQQ2AgAMAgtBGkEaIAAoArABIAAoAgRBjANsQQJ0akEAIAAQ1wEiBEEBRw0HIABBFDYCAAwCCyAAKALQAUEGdCAbIBYgABDYAyIEQQFHDQYgE0IANwIAIBNCADcCCCATQgA3AhAgE0IANwIYIAAoAtABIhkEQCAWKAIAIQlBACEGA0AgCSAGQQZ0IgtqLAAAIQ1BACEHQQAhBANAIA0gCSAEQQNyIAtqaiwAAHNB/wFxIA0gCSAEQQJyIAtqaiwAAHNB/wFxIA0gCSAEQQFyIAtqaiwAAHNB/wFxIAcgDSAJIAQgC2pqLAAAc0H/AXFycnJyIQcgBEEEaiIEQcAASQ0ACyAAQfwmaiAGQQV2QQJ0aiEEIAdFBEAgBCAEKAIAQQEgBkEfcXRyNgIACyAGQQFqIgYgGUcNAAsLIABBFjYCAAwCCyAAIAgQgAgiBEEBRw0FIA4uAQAiB0EGcQRAQQAgACgCDCIEa0EHcSIGBEACfyAGQQJ0QaAMaigCACAIKAIAIAR2cSEkIAAgBCAGajYCDCAkCwRAQXIhBAwICwsLIAdBBHEEQCAAQQw2AgBBASEEDAYLIAAoArwBRQRAIABBDjYCAEEBIQQMBgsgABD/ByAOLgEAQQJxBEAgAEELNgIABSAAQQA2AgQgAEERNgIAC0EBIQQMBQsgACgCsAEgACgCBCIZQYwDbEECdGohCyAVKAIABEAgESAAKALAASIHNgIABQJAQSAgACgCDCIEa0EPSQRAAkAgCigCACEHA0AgBwRAIAggCCgCAEEIdiIGNgIAIAggDCgCACINLQAAQRh0IAZyIgk2AgAgACAEQXhqIgY2AgwgCiAHQX9qIgc2AgAgDCANQQFqNgIAQSggBGtBD0kEQCAGIQQMAgUgCSEHIAYhBAwDCwALCyALIAggERBjBEAgESgCACEHDAMFQQIhBAwJCwALBSAIKAIAIQcLIAAgByAEdiIJQf8BcSINQQJ0IAtqIgYsAAAiB0H/AXFBCEoEfyAAIARBCGoiBDYCDCANQQJ0IAtqLwECQQJ0IAZqIAdB/wFxQQJ0QYAMaigCACAJQQh2Qf8AcXFBAnRqIgYsAAAFIAcLQf8BcSAEajYCDCARIAYvAQIiBzYCAAsLQSAgACgCDCIEayAHQQJ0QbINai0AACINSQRAAkAgCigCACEJA0AgCQRAIAggCCgCAEEIdiIGNgIAIAggDCgCACIiLQAAQRh0IAZyIgs2AgAgACAEQXhqIgY2AgwgCiAJQX9qIgk2AgAgDCAiQQFqNgIAQSggBGsgDUkEQCAGIQQMAgUgCyEJDAMLAAsLIAAgBzYCwAEgFUEBNgIAQQIhBAwGCwUgCCgCACEJIAQhBgsgDUECdEGgDGooAgAgCSAGdnEhBCAAIAYgDWo2AgwgAEHEAWogGUECdGogBCAHQQJ0QbANai8BAGo2AgAgFUEANgIAIAAgACgCBEEBajYCBCAAQRE2AgBBASEEDAQLIAAoAvgBIgRBPkEYIA4uAQBBIHFBAEciBxsgACgC9AEiCUEBanRqIQYgBwR/IARBcGogCRD7BwUgBgshByAAKALYAUECdCAdIB4gABDYAyIEQQFHDQMgACAXQYACQYACIBsoAgAQowJBAXEgACAfQcAFQcAFIAAoAtQBEKMCcSAAICAgBiAHIB0oAgAQowJxRQRAQWohBAwHCyAAQQA2AgQgAEEXNgIAIBcLIAAQ+gciBEEBRgRAIAAgACgCBCIEQQFqNgIEIARBAUoEfyAAIBYoAgAgACgC4AEiBEEGdGoiBjYCdCAAIABB/CZqIARBBXZBAnRqKAIAIARBH3F2QQFxNgK0ASAAIAAoAnwgBi0AAEECdGooAgA2AogCIAAgBCAcKAIAaiwAAEEDcUEJdEGAiw1qNgJwIAAgHigCADYCeCAAIAAoAowBKAIANgJsIAAQ1wMEfyAAQQc2AgBBAQVBZQsFQQELIQQLDAILIAAoAmQEQCAAIAMgEiAFQQEQ2AEiBEEASA0FCyAAKAIwIgRFDQIgCigCAEUEQCAAQQA2AjAgCiABKAIANgIAIA8gECgCADYCAEEBIQQMAgsgASgCAARAIAQgGGogAigCACwAADoAACAAIAAoAjBBAWoiBDYCMCAKIAQ2AgAgAiACKAIAQQFqNgIAIAEgASgCAEF/ajYCAEEBIQQMAgVBAiEEDAULAAsLDAELIBAgDygCACIDNgIAIAEgCigCACIENgIAIARFBEBBAiEEDAILQQAhBANAIAQgGGogAywAADoAACAAIAAoAjBBAWoiBDYCMCACIAIoAgBBAWoiAzYCACABIAEoAgBBf2oiBTYCACAFDQALQQIhBAwBCyAAKAIwBEAgAEEANgIwDAELIApBICAAKAIMIgNrIgJBA3YiBSAKKAIAaiIGNgIAIAwgDCgCACAFayIFNgIAIAggAkF4cSICQSBGBH9BAAUgCCgCACACdAs2AgAgACACIANqNgIMIAEgBjYCACAQIAU2AgALIAAgBDYCXCAEQQAgBEF/akEDSRsLISUgGiQCICULngEBB38jAiEEIwJBwCdqJAIjAiMDTgRAQcAnEAALIARBsCdqIgVBADYCACAEQawnaiIGIAA2AgAgBEGoJ2oiByABNgIAIARBpCdqIgEgAigCADYCACAEQaAnaiIIIAM2AgAgBCIAEOkHBH8CfyAAIAYgByABIAggBRCCCCEJIAIgBSgCADYCACAAEOcHIAkLQQFGBUEACyEKIAQkAiAKC+oEAQV/An8CQAJAAkACQAJAAkAgAg4FAAECAwQFCyAAQQA6AAAgACABLgEAOwECQQEMBQsgAEEBOgAAIABBAToABCABLgECIgRB//8DcSABLgEAIgJB//8DcUoEQCAAIAI7AQIgACABLgECOwEGBSAAIAQ7AQIgACABLgEAOwEGC0ECDAQLIABBAToAACAAIAEuAQA7AQIgAEEBOgAIIAAgAS4BADsBCiABLgEEIgRB//8DcSABLgECIgJB//8DcUohAyAAIAIgBCADGzsBBiAAIAEuAQQgAS4BAiADGzsBDiAAQQI6AAQgAEECOgAMQQQMAwsDQCAFQQF0IAFqIgYuAQAhAyAFQQFqIgUhAgNAIAJBAXQgAWoiBy4BACIEQf//A3EgA0H//wNxSARAIAcgAzsBACAGIAQ7AQAgBCEDCyACQQFqIgJBBEcNAAsgBUEDRw0AC0EAIQMDQCADQQJ0IABqQQI6AAAgA0EBaiIDQQRHDQALIAAgAS4BADsBAiAAIAEuAQI7AQogACABLgEEOwEGIAAgAS4BBjsBDkEEDAILIAEuAQYiBEH//wNxIAEuAQQiAkH//wNxSARAIAEgAjsBBiABIAQ7AQQLA0AgA0ECdCAAaiABLgEAOwECIANBAnQgAGogA0EBcUEBajoAACADQQFqIgNBB0cNAAsgACABLgECOwEGIAAgAS4BBDsBDiAAIAEuAQI7ARYgACABLgEGOwEeIABBAzoADCAAQQM6ABxBCAwBC0EBCyIDQYACRwRAA0AgA0ECdCAAaiAAIANBAnQQMhogA0EBdCIDQYACRw0ACwtBgAILigYBEn9BfyEDA0AgA0F/aiEEIANBAXQgAWouAQBBf0YEQCAEIQMMAQsLIANBEGoiDUEISCEDIA1BCCADGyELQQEgDXRBgAIiESADGyEIQQEhBEEAIQNBgAEhBkECIQkDQCAEQQF0IAJqLgEAIgUEQCAEQf8BcSEMIAVB//8DcSIKIAZsIQ4gAyEHIARBcGohBQNAIAdBoApqLQAAQQJ0IABqIQ8gDCAFQQF0IAFqLwEAIhJBEHRyIRAgCCEFA0AgBSAJayIFQQJ0IA9qIBA2AQAgBUEASg0ACyAGIAdqIQcgCkF/aiIKBEAgEiEFDAELCyADIA5qIQMLIAlBAXQhCSAGQQF2IQYgBEEBaiEFIAQgC0gEQCAFIQQMAQsLIAhBgAJHBEAgCCEHA0AgB0ECdCAAaiAAIAdBAnQQMhogB0EBdCIHQYACRw0ACwsgDUEISgRAIAAhEkEIIQZBAiELQYACIQRBgAEhDCAAIQpBgAIhBQNAIAZBAWoiB0EBdCACaiIOLgEAIgkEQCAGQQ5IIRMgB0EIayIIQf8BcSEUQQEgCHQhDyADIQggBkFxaiEQA38gBEGAAkYEQCATBH8gDyAJQf//A3FrIgZBAUgEQCAHIQMFAkAgByEEA0AgBEEBaiEDIARBDk4NASAGQQF0IANBAXQgAmovAQBrIgZBAU4EQCADIQQMAQsLCwsgAyEEQQEgA0EIa3QFIAchBCAPCyEDIAhBoApqLQAAIgZBAnQgAGogBDoAACAGQQJ0IABqIAVBAnQgCmoiCiASa0ECdiAGazsBAiAIQQFqIQhBACEEIAMgEWohEQUgBSEDCyAEQaAKai0AAEECdCAKaiEGIBQgEEEBdCABai8BACIQQRB0ciEJIAMhBQNAIAUgC2siBUECdCAGaiAJNgEAIAVBAEoNAAsgBCAMaiEEIA4gDi4BAEF/akEQdEEQdSIJOwEAIAkEfyADIQUMAQUgAwsLIQUFIAMhCAsgC0EBdCELIAxBAXYhDCAHIA1HBEAgCCEDIAchBgwBCwsLIBELvgUBDn8jAiELIwJB8ABqJAIjAiMDTgRAQfAAEAALIAtBIGohCCALIgUgAi4BAiIJQf//A3FBf2oiBDYCBCAFIAQgAi8BBGoiBDYCCCAFIAQgAi8BBmoiBDYCDCAFIAQgAi8BCGoiBDYCECAFIAQgAi8BCmo2AhQgBUERNgIAQRIhBANAIAEgBEF/aiIGai0AAEECdCAFaiIHKAIAIQMgByADQX9qNgIAIANBAnQgCGogBjYCACABIARBfmoiBmotAABBAnQgBWoiBygCACEDIAcgA0F/ajYCACADQQJ0IAhqIAY2AgAgASAEQX1qIgZqLQAAQQJ0IAVqIgcoAgAhAyAHIANBf2o2AgAgA0ECdCAIaiAGNgIAIAEgBEF8aiIGai0AAEECdCAFaiIHKAIAIQMgByADQX9qNgIAIANBAnQgCGogBjYCACABIARBe2oiBmotAABBAnQgBWoiBygCACEDIAcgA0F/ajYCACADQQJ0IAhqIAY2AgAgASAEQXpqIgRqLQAAQQJ0IAVqIgYoAgAhAyAGIANBf2o2AgAgA0ECdCAIaiAENgIAIAQNAAsgBSgCAARAAkAgCSEFQQEhA0EAIQFBgAEhCkECIQxBACEEA0AgBUH//wNxBEACfyAFQf//A3EiByAKbCABaiEQIAchCSAEIQUDQCABQaAKai0AAEECdCAAaiEOIAMgBUECdCAIaigCAEEQdHIhD0EgIQYDQCAGIAxrIgZBAnQgDmogDzYBACAGQQBKDQALIAVBAWohBSABIApqIQEgCUF/aiIJDQALIBALIQEgBCAHaiEECyADQQFqIgNBBkYNASADQQF0IAJqLgEAIQUgCkEBdiEKIAxBAXQhDAwAAAsACwUgCCgCAEEQdCECQQAhAQNAIAFBAnQgAGogAjYBACABQQFqIgFBIEcNAAsLIAskAguzAQEEfyAAKAIIIgQgAkkgBCACayADSXIEf0EABSAAKAIEIgQsAAsiBkEASCIHBH8gBCgCBAUgBkH/AXELIAJGBEAgBCABIAMQxQggAiADaiEFBSACIANqIgUgBwR/IAQoAgQFIAZB/wFxC0sEQCAEIAUgBwR/IAQoAgQFIAZB/wFxC2sQxwggACgCBCEECyAEIAIgAyABIAMQxAgLIAAgBSAAKAIMIgAgACAFSRs2AgxBAQsLJAEBfyAAKAIAKAIMIQMgACABIAAoAgwgAiADQQNxQTxqEQUAC0IBAX8gACgCCCECA0AgAkIANwIAIAJCADcCCCACQgA3AhAgAkIANwIYIAAgACgCCEEgaiICNgIIIAFBf2oiAQ0ACwtCAQF/IAAoAgQhAgNAIAJCADcCACACQgA3AgggAkIANwIQIAJCADcCGCAAIAAoAgRBIGoiAjYCBCABQX9qIgENAAsLsgEBBn8jAiEEIwJBIGokAiMCIwNOBEBBIBAACyAEIQIgACgCCCAAKAIEIgNrQQV1IAFJBEBB////PyABIAMgACgCAGtBBXVqIgVJBEAQAgUgAiAFIAAoAgggACgCACIGayIHQQR1IgMgAyAFSRtB////PyAHQQV1Qf///x9JGyAAKAIEIAZrQQV1IABBCGoQrQIgAiABEIkIIAAgAhDeAyACEN0DCwUgACABEIoICyAEJAILXgAgACABKQIANwIAIAAgASgCCDYCCCAAQQA2AgwgAEEANgIQIABBADYCFCAAIAEoAgw2AgwgACABKAIQNgIQIAAgASgCFDYCFCABQQA2AhQgAUEANgIQIAFBADYCDAtKAQJ/IAAoAgQiAiAAKAIIIgFHBEADQCAAIAFBaGoiATYCCCABEPIBIAAoAggiASACRw0ACwsgACgCACIBBEAgACgCDBogARA/Cwu8AQEFfyABQQRqIQMgACgCACIGIAAoAgQiAkYEfyAAIQQgAygCACECIAMFIAMoAgAhBQNAIAVBaGogAkFoaiIEEIwIIAMgAygCAEFoaiICNgIAIAQgBkcEQCACIQUgBCECDAELCyAAIQQgACgCACEGIAMLIQUgBCACNgIAIAUgBjYCACAAKAIEIQIgACABKAIINgIEIAEgAjYCCCAAKAIIIQIgACABKAIMNgIIIAEgAjYCDCABIAUoAgA2AgALQAEBfyAAKAIIIQIDQCACQgA3AgAgAkIANwIIIAJCADcCECACEN8DIAAgACgCCEEYaiICNgIIIAFBf2oiAQ0ACwt3AQF/IABBADYCDCAAIAM2AhAgAQRAIAFBqtWq1QBLBEBBCBAFIgNBlu8ZEG8gA0Go5xk2AgAgA0HQxxlBzgAQBAUgAUEYbBBCIQQLCyAAIAQ2AgAgACACQRhsIARqIgI2AgggACACNgIEIAAgAUEYbCAEajYCDAtAAQF/IAAoAgQhAgNAIAJCADcCACACQgA3AgggAkIANwIQIAIQ3wMgACAAKAIEQRhqIgI2AgQgAUF/aiIBDQALC7QBAQZ/IwIhBCMCQSBqJAIjAiMDTgRAQSAQAAsgBCECIAAoAgggACgCBCIDa0EYbSABSQRAQarVqtUAIAEgAyAAKAIAa0EYbWoiBUkEQBACBSACIAUgACgCCCAAKAIAIgZrQRhtIgdBAXQiAyADIAVJG0Gq1arVACAHQdWq1SpJGyAAKAIEIAZrQRhtIABBCGoQkAggAiABEI8IIAAgAhCOCCACEI0ICwUgACABEJEICyAEJAILYAEDfyAAKAIEIgMgACgCACICa0EYbSIEIAFJBEAgACABIARrEJIIBSAEIAFLBEAgAUEYbCACaiICIANHBEAgAyEBA0AgAUFoaiIBEPIBIAEgAkcNAAsLIAAgAjYCBAsLC8UDAQx/IwIhByMCQRBqJAIjAiMDTgRAQRAQAAsgB0EMaiELIAdBCGohCCAHQQRqIQwgByEJIAIEfwJ/AkADQAJAIAEoAgAhBiAAIAsQakUNACALLAAAIgRBP3EiA0E/RgRAIAAgCBBGRQ0DIAssAAAhBCAIKAIAIQMFIAggA0ECdEGgCGooAgAiAzYCAAsgBEH/AXFBBnYiBAJ/AkAgA0Hhxr3jBkgEQCADQebysbsGaw0BBSADQeHGveMGaw0BC0EAQYACIAQbDAELQYACQQAgBBsLIgRyIQ1BACAAIAwQ3AMEfyAJIAwoAgAiAzYCAAJ/AkAgBAR/IAAgCRDcAwR/IAgoAgBB4ca94wZGIAkoAgAiA0EAR3EEf0EBBQwDCwVBAQsFDAELDAELIAMgCmoiBCAKSQR/QQEFIAVBBXQgBmogCjYCCCAFQQV0IAZqIAM2AgwgBUEFdCAGaiAIKAIANgIAIAVBBXQgBmogDTYCBCAFQQV0IAZqIAkoAgA2AhAgBUEFdCAGaiAMKAIANgIYIAQhCkEACwsFQQELDQMaIAVBAWoiBSACSQ0BQQEMAwsLQQAMAQtBAAsFQQELIQ4gByQCIA4LPAECfyAAKAIEIAAoAgAiA2tBBXUiAiABSQRAIAAgASACaxCLCAUgAiABSwRAIAAgAUEFdCADajYCBAsLCy4AIAIgAWsiAkEASgRAIAAoAgQgASACEDIaIAAgACgCBCACQQV2QQV0ajYCBAsLXwEBf0H///8/IAFJBEAQAgsgAUH///8/SwRAQQgQBSIAQZbvGRBvIABBqOcZNgIAIABB0McZQc4AEAQFIAAgAUEFdBBCIgI2AgQgACACNgIAIAAgAUEFdCACajYCCAsLNAEBfyAAQRgQQiIDNgIAIAAgAUEEajYCBCADIAIoAgAoAgA2AhAgA0EAOwEUIABBAToACAtvAQR/IwIhBSMCQRBqJAIjAiMDTgRAQRAQAAsgASAFIgQiBkEMaiACELoBIgcoAgAiAgR/QQAFIAQgASADEJgIIAEgBigCDCAHIAQoAgAQjAEgBCgCACECQQELIQEgACACNgIAIAAgAToABCAFJAILjgIBBn8jAiEGIwJBIGokAiMCIwNOBEBBIBAACyAGIQMgACAAQSBqIABBQGsiAhCdARogAEHgAGoiBCABRwRAA0AgBCACEEcEQCADIAQpAgA3AgAgAyAEKQIINwIIIAMgBCkCEDcCECADIAQpAhg3AhggBCEFA0ACQCAFIAIpAgA3AgAgBSACKQIINwIIIAUgAikCEDcCECAFIAIpAhg3AhggACACRgRAIAAhAgwBCyADIAJBYGoiBxBHBEAgAiEFIAchAgwCCwsLIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGAsgBEEgaiIFIAFHBEAgBCECIAUhBAwBCwsLIAYkAgtrACAAIAEoAgA2AgAgACABLgEEOwEEIABBADYCCCAAQQA2AgwgAEEANgIQIAAgASgCCDYCCCAAIAEoAgw2AgwgACABKAIQNgIQIAFBADYCECABQQA2AgwgAUEANgIIIABBFGogAUEUahDjAwtKAQJ/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+gAgLAuayAEHMgAgLAgwFAEHWgAgLCmQTFgGlXAAABE4AQfiACAsMTgjmPgAAAAAAAGU4AEGSgQgLCmdozQgAAAAAZEMAQa6BCAsCJg4AQbiBCAsCyFkAQcaBCAsGB0EAAMeFAEHWgQgLAma9AEH0gQgLAs8JAEG4gggLEExMAAAAAMRdAAAAAAAAZCYAQeaCCAsChXgAQaqDCAsC5nwAQbyDCAsQqlBkCQAAJVGNBkcjAAAEGQBB8oMICwKnygBBkIQICxZpGiYcAAAAAOhVx1kAAAAAyQ0AAEgHAEGyhAgLGiYrAAAAAKklAAAAAAAAaxkAAAAARpBIVKfzAEHehAgLAmYgAEHuhAgLDGefAAAA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//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/wCEAEMBjACjAYQKNwGGCswGBABwAYcAgQIHCqoACApaAAgKsQAICp8BCwrKAo4KGQEEC0UABQt6AAkLkAKKC9ABBQtRA4YLYQYIAAoCjgBIAQsKWwANCoEADwplAJEKfQAHADICCAAnAgQK7gEGCkoABwosAAsL8wEMChEADwoFAJQKCwAEChQBhQooAQkAXACTAFsABAoHAAUKWgAFCp4ABgoeAgcK3QAHCiYGCQrqAQoKHAILCrsBiwr1AgYADQIGALgHCAAmAwkAbAOMABwBBQtbAwcKTAIHC4gECAtrAAkKrwAJCyMBCQu3AQoKEgIKC5cCCwthAowLxQAHC6gADQvEAI0L7QCLAL4DhQBSAocKRAIHClgAiApzAgYA3wEGADICBwAkBA0ABgAFCmgDBgo5AAcK1wEJCr8BiQrGAYgLnQGRCxMABAt1AAYLdAEHC3EHjgtDAQQL0gKLC9cBEQA9AAUKHwCGCmYCCApKAYwK3QEHCrAEigrMAQYKqAGHCkoHBgBpBogANAMGABQGhgBSBgkLBQAMC9gADAsmAQwLKgEMC5ABDAsGAg0L5QCPC4sADwubAJALTwAEAC4BhwDmBgUKDQCGCo4ABgCUAAcAIQUHCnQACApCAQgK8wIJCiQCCgrKAgsKdAONCkQBiQCkAgkLWACLCw4BBQsMAAcLdwGJC7YBhgCKBgcKwAWHChIGCwCyAAcKLwQHCgUGBwrnBgcKDgcLCqIACwryAAwKXQIPChoAkAosAAYAhQEHAJUACQCOAIoAXgCMC0cAkQpzAAYACAAHAFkHCABbAAsLxgMMCx8BDQtWAQ0LkgEPC24AjwujAAQLAgGIC38CBgsWAAcLhwOKC0EChQupAocKVwSHCwYFCQBwAAgKAQCKCkYBBQroAQYKDwIHCukBBwpkBggKeQAICpAA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Cgu5AgsLyAGLC/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+AAYAKQcGAEUHiABuA4YAIQYICmUBCgrpAg4KqgERCl4A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AAIAAAAFAAAACQAAAAwAAAAAAAAAsF8GAAEAAAACAAAAAwAAAAQAAAAGAAAAAgAAAAMAAAAJAAAADQAAAAAAAADAXwYABQAAAAIAAAADAAAABAAAAAcAAAAIAAAAAwAAAAkAAAAOAAAAAAAAANBfBgAGAAAAAgAAAAMAAAAEAAAACQAAAAoAAAADAAAACQAAAA8AAAAAAAAA4F8GAAEAAAACAAAAAwAAAAQAAAALAAAAAgAAAAwAAAAJAAAAEAAAAAAAAADwXwYAAQAAAAIAAAADAAAABAAAAA0AAAACAAAAAwAAAAkAAAARAEHB0hkLuAVgBgAHAAAACAAAAAkAAAAKAAAADgAAAA8AAAADAAAACQAAABIAAAAAAAAAEGAGAAEAAAACAAAAAwAAAAQAAAAQAAAAAgAAAAMAAAAJAAAAEwAAAAAAAAAgYAYAAQAAAAIAAAADAAAABAAAABEAAAACAAAAAwAAAAkAAAAUAAAAAAAAADBgBgABAAAAAgAAAAMAAAAEAAAAEgAAAAIAAAADAAAACQAAABUAAAAAAAAAQGAGAAEAAAACAAAAAwAAAAQAAAATAAAAAgAAAAMAAAAJAAAAFgAAAAAAAABQYAYAAQAAAAIAAAADAAAABAAAABQAAAACAAAAAwAAAAkAAAAXAAAAAAAAAGBgBgABAAAAAgAAAAMAAAAEAAAAFQAAAAIAAAADAAAACQAAABgAAAAAAAAAcGAGAAEAAAACAAAAAwAAAAQAAAAWAAAAAgAAAAMAAAAJAAAAGQAAAAAAAACAYAYAAQAAAAIAAAADAAAABAAAABcAAAACAAAAAwAAAAkAAAAaAAAAAAAAAJBgBgABAAAAAgAAAAMAAAAEAAAAGAAAAAIAAAADAAAACQAAABsAAAAAAAAAoGAGAAEAAAACAAAAAwAAAAQAAAAZAAAAAgAAAAMAAAAJAAAAHAAAAAAAAACwYAYAAQAAAAIAAAADAAAABAAAABoAAAACAAAAAwAAAAkAAAAdAAAAAAAAAMBgBgABAAAAAgAAAAMAAAAEAAAAGwAAAAIAAAADAAAACQAAAB4AAAAAAAAA0GAGAAEAAAACAAAAAwAAAAQAAAAcAAAAAgAAAAMAAAAJAAAAHwAAAAAAAADgYAYAAQAAAAIAAAADAAAABAAAAB0AAAACAAAAAwAAAAkAAAAgAAAAAAAAAPBgBgABAAAAAgAAAAMAAAAEAAAAHgAAAAIAAAADAAAACQAAACEAQYHYGQu4BWEGAAEAAAACAAAAAwAAAAQAAAAfAAAAAgAAAAMAAAAJAAAAIgAAAAAAAAAQYQYAAQAAAAIAAAADAAAABAAAACAAAAACAAAAAwAAAAkAAAAjAAAAAAAAACBhBgABAAAAAgAAAAMAAAAEAAAAIQAAAAIAAAADAAAACQAAACQAAAAAAAAAMGEGAAEAAAACAAAAAwAAAAQAAAAiAAAAAgAAAAMAAAAJAAAAJQAAAAAAAABAYQYAAQAAAAIAAAADAAAABAAAACMAAAACAAAAJAAAAAkAAAAmAAAAAAAAAFBhBgABAAAAAgAAAAMAAAAEAAAAJQAAAAIAAAADAAAACQAAACcAAAAAAAAAYGEGAAEAAAACAAAAAwAAAAQAAAAmAAAAAgAAAAMAAAAJAAAAKAAAAAAAAABwYQYAAQAAAAIAAAADAAAABAAAACcAAAACAAAAKAAAAAkAAAApAAAAAAAAAIBhBgABAAAAAgAAAAMAAAAEAAAAKQAAAAIAAAADAAAACQAAACoAAAAAAAAAkGEGAAEAAAACAAAAAwAAAAQAAAAqAAAAAgAAAAMAAAAJAAAAKwAAAAAAAACgYQYAAQAAAAIAAAADAAAABAAAACsAAAACAAAAAwAAAAkAAAAsAAAAAAAAALBhBgABAAAAAgAAAAMAAAAEAAAALAAAAAIAAAAtAAAACQAAAC0AAAAAAAAAwGEGAAEAAAACAAAAAwAAAAQAAAAuAAAAAgAAAAMAAAAJAAAALgAAAAAAAADQYQYAAQAAAAIAAAADAAAABAAAAC8AAAACAAAAAwAAAAkAAAAvAAAAAAAAAOBhBgABAAAAAgAAAAMAAAAEAAAAMAAAAAIAAAADAAAACQAAADAAAAAAAAAA8GEGAAEAAAACAAAAAwAAAAQAAAAxAAAAAgAAAAMAAAAJAAAAMQBBwd0ZC7gFYgYAAQAAAAIAAAADAAAABAAAADIAAAACAAAAAwAAAAkAAAAyAAAAAAAAABBiBgABAAAAAgAAAAMAAAAEAAAAMwAAAAIAAAADAAAACQAAADMAAAAAAAAAIGIGAAEAAAACAAAAAwAAAAQAAAA0AAAAAgAAAAMAAAAJAAAANAAAAAAAAAAwYgYACwAAAAwAAAANAAAADgAAADUAAAA2AAAAAwAAAAkAAAA1AAAAAAAAAEBiBgABAAAAAgAAAAMAAAAEAAAANwAAAAIAAAADAAAACQAAADYAAAAAAAAAUGIGAAEAAAACAAAAAwAAAAQAAAA4AAAAAgAAADkAAAAJAAAANwAAAAAAAABgYgYAAQAAAAIAAAADAAAABAAAADoAAAACAAAAAwAAAAkAAAA4AAAAAAAAAHBiBgABAAAAAgAAAAMAAAAEAAAAOwAAAAIAAAADAAAACQAAADkAAAAAAAAAgGIGAAEAAAACAAAAAwAAAAQAAAA8AAAAAgAAAAMAAAAJAAAAOgAAAAAAAACQYgYAAQAAAAIAAAADAAAABAAAAD0AAAACAAAAAwAAAAkAAAA7AAAAAAAAAKBiBgABAAAAAgAAAAMAAAAEAAAAPgAAAAIAAAADAAAACQAAADwAAAAAAAAAsGIGAAEAAAACAAAAAwAAAAQAAAA/AAAAAgAAAEAAAAAJAAAAPQAAAAAAAADAYgYAAQAAAAIAAAADAAAABAAAAEEAAAACAAAAQgAAAAkAAAA+AAAAAAAAANBiBgAPAAAAAgAAAAMAAAAEAAAAQwAAAEQAAAADAAAACQAAAD8AAAAAAAAA4GIGABAAAAARAAAAAwAAAAQAAABFAAAARgAAAAMAAAAJAAAAQAAAAAAAAADwYgYAAQAAAAIAAAADAAAABAAAAEcAAAACAAAAAwAAAAkAAABBAEGB4xkL4ARjBgABAAAAAgAAAAMAAAAEAAAASAAAAAIAAAADAAAACQAAAEIAAAAAAAAAEGMGABIAAAATAAAAFAAAAAQAAABJAAAASgAAAAMAAAAJAAAAQwAAAAAAAAAgYwYAAQAAAAIAAAADAAAABAAAAEsAAAACAAAAAwAAAAkAAABEAAAAAAAAADBjBgABAAAAAgAAAAMAAAAEAAAATAAAAAIAAAADAAAACQAAAEUAAAAAAAAAQGMGABUAAAACAAAAFgAAAAQAAABNAAAATgAAAAMAAAAJAAAARgAAAAAAAABQYwYAAQAAAAIAAAADAAAABAAAAE8AAAACAAAAAwAAAAkAAABHAAAAAAAAAGBjBgABAAAAAgAAAAMAAAAEAAAAUAAAAAIAAAADAAAACQAAAEgAAAAAAAAAcGMGAAEAAAACAAAAAwAAAAQAAABRAAAAAgAAAAMAAAAJAAAASQAAAAAAAACAYwYAAQAAAAIAAAADAAAABAAAAFIAAAACAAAAAwAAAAkAAABKAAAAAAAAAJBjBgAXAAAAAgAAABgAAAAEAAAAUwAAAFQAAAADAAAACQAAAEsAAAAAAAAAoGMGAAEAAAACAAAAAwAAAAQAAABVAAAAAgAAAAMAAAAJAAAATAAAAAAAAACwYwYAAQAAAAIAAAADAAAABAAAAFYAAAACAAAAAwAAAAkAAABNAAAAAAAAAMBjBgBOAAAATwAAAAQAAAAAAAAA0GMGAE4AAABQAAAABAAAAAAAAADgYwYATgAAAFEAAAAEAAAAAAAAADBkBgAEAAAAUgAAAAYAAAAHAAAABQBB6ecZC5BEZAYABAAAAFMAAAAGAAAABwAAAAYAAAAAAAAAsGQGAAQAAABUAAAABgAAAAcAAAAEAAAAAwAAAAMAAAADAAAAdmVjdG9yPHVpbnQ4X3Q+AHdvZmYyRGVjAHdvZmYyRW5jAHB1c2hfYmFjawByZXNpemUAc2l6ZQBnZXQAc2V0AE5TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAE5TdDNfXzIxM19fdmVjdG9yX2Jhc2VJaE5TXzlhbGxvY2F0b3JJaEVFRUUATlN0M19fMjIwX192ZWN0b3JfYmFzZV9jb21tb25JTGIxRUVFAFBOU3QzX18yNnZlY3RvckloTlNfOWFsbG9jYXRvckloRUVFRQBQS05TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAGlpAHYAdmkAdmlpaQB2aWlpaQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWkAaWlpaWkATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQB4X21pbnMuc2l6ZSgpID09IG51bV9nbHlwaHMAd29mZjIvc3JjL3dvZmYyX2RlYy5jYwBSZWNvbnN0cnVjdFRyYW5zZm9ybWVkSG10eABONXdvZmYyMTRXT0ZGMlN0cmluZ091dEUATjV3b2ZmMjhXT0ZGMk91dEUAZ2x5Zi9sb2NhIHRyYW5zZm9ybWF0aW9uIGZhaWxlZC4KAFBhcnNpbmcgb2YgdGhlIGlucHV0IGZvbnQgZmFpbGVkLgoAQ29tcHJlc3Npb24gb2YgY29tYmluZWQgdGFibGUgZmFpbGVkLgoAQ29tcHJlc3NlZCAlenUgdG8gJXUuCgBDb21wcmVzc2lvbiBvZiBleHRlbmRlZCBtZXRhZGF0YSBmYWlsZWQuCgBSZXN1bHQgYWxsb2NhdGlvbiB3YXMgdG9vIHNtYWxsICglemQgdnMgJXpkIGJ5dGVzKS4KAE1pc3NpbmcgdGFibGUgaW5kZXggZm9yIG9mZnNldCAweCUwOHgKAE1pc21hdGNoIGJldHdlZW4gY29tcHV0ZWQgYW5kIGFjdHVhbCBsZW5ndGggKCV6ZCB2cyAlemQpCgBtYXA6OmF0OiAga2V5IG5vdCBmb3VuZABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAMGxcqPzgwO0ACBAMCAgQABwMCAQ8tKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4AdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAX1oAX19fWgBfYmxvY2tfaW52b2tlAGludm9jYXRpb24gZnVuY3Rpb24gZm9yIGJsb2NrIGluIABsb25nIGxvbmcAX19pbnQxMjgAdW5zaWduZWQgX19pbnQxMjgAbG9uZyBkb3VibGUAX19mbG9hdDEyOAAuLi4AZGVjaW1hbDY0AGRlY2ltYWwxMjgAZGVjaW1hbDMyAGRlY2ltYWwxNgBjaGFyMzJfdABjaGFyMTZfdABhdXRvAGRlY2x0eXBlKGF1dG8pAHN0ZDo6bnVsbHB0cl90AFthYmk6AF0ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBBYmlUYWdBdHRyRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU0Tm9kZUUAUHVyZSB2aXJ0dWFsIGZ1bmN0aW9uIGNhbGxlZCEAYWxsb2NhdG9yAGJhc2ljX3N0cmluZwBzdHJpbmcAaXN0cmVhbQBvc3RyZWFtAGlvc3RyZWFtAHN0ZDo6YWxsb2NhdG9yAHN0ZDo6YmFzaWNfc3RyaW5nAHN0ZDo6aXN0cmVhbQBzdGQ6Om9zdHJlYW0Ac3RkOjppb3N0cmVhbQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxOVNwZWNpYWxTdWJzdGl0dXRpb25FACBpbWFnaW5hcnkATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBQb3N0Zml4UXVhbGlmaWVkVHlwZUUAIGNvbXBsZXgAKQAgACgAJgAmJgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM1JlZmVyZW5jZVR5cGVFAG9iamNfb2JqZWN0ACoAaWQ8AD4ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTFQb2ludGVyVHlwZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBOYW1lV2l0aFRlbXBsYXRlQXJnc0UAPAAsIABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMlRlbXBsYXRlQXJnc0UATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTNQYXJhbWV0ZXJQYWNrRQB3Y2hhcl90AGIwRQBiMUUAdQBsAHVsAGxsAHVsbABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUludGVnZXJDYXN0RXhwckUAJUxhTABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNkZsb2F0TGl0ZXJhbEltcGxJZUVFACVhAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE2RmxvYXRMaXRlcmFsSW1wbElkRUUAJWFmAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE2RmxvYXRMaXRlcmFsSW1wbElmRUUAdHJ1ZQBmYWxzZQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU4Qm9vbEV4cHJFAC0ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTRJbnRlZ2VyTGl0ZXJhbEUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBUZW1wbGF0ZUFyZ3VtZW50UGFja0UAZ3MAJj0APQBhbGlnbm9mICgALAB+AC4qAC8ALz0AXgBePQA9PQA+PQA8PQA8PAA8PD0ALT0AKj0ALS0AIT0AIQB8fAB8AHw9AC0+KgArACs9ACsrAC0+ACUAJT0APj4APj49AHNpemVvZiAoAHR5cGVpZCAoAHRocm93AHRocm93IABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU5VGhyb3dFeHByRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkluaXRMaXN0RXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTNOb2RlQXJyYXlOb2RlRQBzaXplb2YuLi4gKABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM0VuY2xvc2luZ0V4cHJFAHNpemVvZi4uLigATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjJQYXJhbWV0ZXJQYWNrRXhwYW5zaW9uRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxOVNpemVvZlBhcmFtUGFja0V4cHJFAHN0YXRpY19jYXN0AD4oAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZThDYXN0RXhwckUAcmVpbnRlcnByZXRfY2FzdAApID8gKAApIDogKABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUNvbmRpdGlvbmFsRXhwckUAbm9leGNlcHQgKABudwBuYQBwaQA6Om9wZXJhdG9yIABuZXcAW10ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlN05ld0V4cHJFAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTExUG9zdGZpeEV4cHJFACAuLi4gACA9IABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUJyYWNlZFJhbmdlRXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBCcmFjZWRFeHByRQBfR0xPQkFMX19OAChhbm9ueW1vdXMgbmFtZXNwYWNlKQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU4TmFtZVR5cGVFAClbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE4QXJyYXlTdWJzY3JpcHRFeHByRQAuAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwTWVtYmVyRXhwckUAc3JOAHNyADo6AE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE5R2xvYmFsUXVhbGlmaWVkTmFtZUUAZG4Ab24Ab3BlcmF0b3ImJgBvcGVyYXRvciYAb3BlcmF0b3ImPQBvcGVyYXRvcj0Ab3BlcmF0b3IoKQBvcGVyYXRvciwAb3BlcmF0b3J+AG9wZXJhdG9yIGRlbGV0ZVtdAG9wZXJhdG9yKgBvcGVyYXRvci8Ab3BlcmF0b3IvPQBvcGVyYXRvcl4Ab3BlcmF0b3JePQBvcGVyYXRvcj09AG9wZXJhdG9yPj0Ab3BlcmF0b3I+AG9wZXJhdG9yW10Ab3BlcmF0b3I8PQBvcGVyYXRvcjw8AG9wZXJhdG9yPDw9AG9wZXJhdG9yPABvcGVyYXRvci0Ab3BlcmF0b3ItPQBvcGVyYXRvcio9AG9wZXJhdG9yLS0Ab3BlcmF0b3IgbmV3W10Ab3BlcmF0b3IhPQBvcGVyYXRvciEAb3BlcmF0b3IgbmV3AG9wZXJhdG9yfHwAb3BlcmF0b3J8AG9wZXJhdG9yfD0Ab3BlcmF0b3ItPioAb3BlcmF0b3IrAG9wZXJhdG9yKz0Ab3BlcmF0b3IrKwBvcGVyYXRvci0+AG9wZXJhdG9yPwBvcGVyYXRvciUAb3BlcmF0b3IlPQBvcGVyYXRvcj4+AG9wZXJhdG9yPj49AG9wZXJhdG9yPD0+AG9wZXJhdG9yIiIgAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1TGl0ZXJhbE9wZXJhdG9yRQBvcGVyYXRvciBkZWxldGUAb3BlcmF0b3IgAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIyQ29udmVyc2lvbk9wZXJhdG9yVHlwZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOER0b3JOYW1lRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM1F1YWxpZmllZE5hbWVFAGR5bmFtaWNfY2FzdABkZWxldGUAW10gAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwRGVsZXRlRXhwckUAY3YAKSgATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTRDb252ZXJzaW9uRXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOENhbGxFeHByRQBjb25zdF9jYXN0AE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwUHJlZml4RXhwckUAKSAAICgATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBCaW5hcnlFeHByRQBhYQBhbgBhTgBhUwBjbQBkcwBkdgBkVgBlbwBlTwBlcQBnZQBndABsZQBscwBsUwBsdABtaQBtSQBtbABtTABuZQBvbwBvcgBvUgBwbABwTABybQByTQBycwByUwAuLi4gACAuLi4ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOEZvbGRFeHByRQBmcABmTABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM0Z1bmN0aW9uUGFyYW1FAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTI0Rm9yd2FyZFRlbXBsYXRlUmVmZXJlbmNlRQBUcwBzdHJ1Y3QAVHUAdW5pb24AVGUAZW51bQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUyMkVsYWJvcmF0ZWRUeXBlU3BlZlR5cGVFAFN0TABTdABzdGQ6OgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNlN0ZFF1YWxpZmllZE5hbWVFAERDAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIxU3RydWN0dXJlZEJpbmRpbmdOYW1lRQBVdABVbAB2RQAnbGFtYmRhACcoAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1Q2xvc3VyZVR5cGVOYW1lRQAndW5uYW1lZAAnAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1VW5uYW1lZFR5cGVOYW1lRQBzdHJpbmcgbGl0ZXJhbABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU5TG9jYWxOYW1lRQBzdGQATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTJDdG9yRHRvck5hbWVFAGJhc2ljX2lzdHJlYW0AYmFzaWNfb3N0cmVhbQBiYXNpY19pb3N0cmVhbQBzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LCBzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+AHN0ZDo6YmFzaWNfaXN0cmVhbTxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ID4Ac3RkOjpiYXNpY19vc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBzdGQ6OmJhc2ljX2lvc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUyN0V4cGFuZGVkU3BlY2lhbFN1YnN0aXR1dGlvbkUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBOZXN0ZWROYW1lRQA6OioATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTlQb2ludGVyVG9NZW1iZXJUeXBlRQBbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTlBcnJheVR5cGVFAER2ACB2ZWN0b3JbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwVmVjdG9yVHlwZUUAcGl4ZWwgdmVjdG9yWwBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNVBpeGVsVmVjdG9yVHlwZUUAZGVjbHR5cGUoAHVuc2lnbmVkIGxvbmcgbG9uZwBvYmpjcHJvdG8AIGNvbnN0ACB2b2xhdGlsZQAgcmVzdHJpY3QATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOFF1YWxUeXBlRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxN1ZlbmRvckV4dFF1YWxUeXBlRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM09iakNQcm90b05hbWVFAERvAG5vZXhjZXB0AERPAER3AER4AFJFAE9FACAmACAmJgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkZ1bmN0aW9uVHlwZUUAdGhyb3coAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIwRHluYW1pY0V4Y2VwdGlvblNwZWNFAG5vZXhjZXB0KABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMk5vZXhjZXB0U3BlY0UATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTFTcGVjaWFsTmFtZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOURvdFN1ZmZpeEUAVWE5ZW5hYmxlX2lmSQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNkZ1bmN0aW9uRW5jb2RpbmdFACBbZW5hYmxlX2lmOgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkVuYWJsZUlmQXR0ckUAdGhyZWFkLWxvY2FsIHdyYXBwZXIgcm91dGluZSBmb3IgAHJlZmVyZW5jZSB0ZW1wb3JhcnkgZm9yIABndWFyZCB2YXJpYWJsZSBmb3IgAG5vbi12aXJ0dWFsIHRodW5rIHRvIAB2aXJ0dWFsIHRodW5rIHRvIAB0aHJlYWQtbG9jYWwgaW5pdGlhbGl6YXRpb24gcm91dGluZSBmb3IgAGNvbnN0cnVjdGlvbiB2dGFibGUgZm9yIAAtaW4tAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIxQ3RvclZ0YWJsZVNwZWNpYWxOYW1lRQBjb3ZhcmlhbnQgcmV0dXJuIHRodW5rIHRvIAB0eXBlaW5mbyBuYW1lIGZvciAAdHlwZWluZm8gZm9yIABWVFQgZm9yIAB2dGFibGUgZm9yIABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBTdDEyb3V0X29mX3JhbmdlAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjBfX2Z1bmN0aW9uX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTI5X19wb2ludGVyX3RvX21lbWJlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AERuAGIAYwBoAGEAcwB0AGkAagBtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAHZvaWQAYm9vbABjaGFyAHNpZ25lZCBjaGFyAHVuc2lnbmVkIGNoYXIAc2hvcnQAdW5zaWduZWQgc2hvcnQAaW50AHVuc2lnbmVkIGludABsb25nAHVuc2lnbmVkIGxvbmcAZmxvYXQAZG91YmxlAHN0ZDo6c3RyaW5nAHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AHN0ZDo6d3N0cmluZwBlbXNjcmlwdGVuOjp2YWwAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nIGRvdWJsZT4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lmRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWxFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUU="),X43=function(){let u=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return function(E){E=E||{};var E=typeof E<"u"?E:{};let A={},C;for(C in E)E.hasOwnProperty(C)&&(A[C]=E[C]);let D=[],F="./this.program",U=function(U0,K0){throw K0},z=!1,k=!1,f=!1,l=!1,b=!1;if(z=typeof window=="object",k=typeof importScripts=="function",l=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",f=l&&!z&&!k,b=!z&&!f&&!k,E.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 M="";function Z(U0){return E.locateFile?E.locateFile(U0,M):M+U0}let J,w,K,Q;if(f){M=`${__dirname}/`;let U0,K0;J=function(s0,Fu){let Pu;return U0||(U0=VU0(["fs"].join())),K0||(K0=VU0(["path"].join())),s0=K0.normalize(s0),Pu=U0.readFileSync(s0),Fu?Pu:Pu.toString()},K=function(s0){let Fu=J(s0,!0);return Fu.buffer||(Fu=new Uint8Array(Fu)),O(Fu.buffer),Fu},process.argv.length>1&&(F=process.argv[1].replace(/\\/g,"/")),D=process.argv.slice(2),process.on("uncaughtException",(s0)=>{if(!(s0 instanceof dK0))throw s0}),process.on("unhandledRejection",Du),U=function(s0){process.exit(s0)},E.inspect=function(){return"[Emscripten Module object]"}}else if(b)typeof read<"u"&&(J=function(U0){return read(U0)}),K=function(U0){let K0;return typeof readbuffer=="function"?new Uint8Array(readbuffer(U0)):(K0=read(U0,"binary"),O(typeof K0=="object"),K0)},typeof scriptArgs<"u"?D=scriptArgs:typeof arguments<"u"&&(D=arguments),typeof quit=="function"&&(U=function(U0){quit(U0)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print);else if(z||k)k?M=self.location.href:document.currentScript&&(M=document.currentScript.src),u&&(M=u),M.indexOf("blob:")!==0?M=M.substr(0,M.lastIndexOf("/")+1):M="",J=function(U0){let K0=new XMLHttpRequest;return K0.open("GET",U0,!1),K0.send(null),K0.responseText},k&&(K=function(U0){let K0=new XMLHttpRequest;return K0.open("GET",U0,!1),K0.responseType="arraybuffer",K0.send(null),new Uint8Array(K0.response)}),w=function(U0,K0,s0){let Fu=new XMLHttpRequest;Fu.open("GET",U0,!0),Fu.responseType="arraybuffer",Fu.onload=function(){if(Fu.status==200||Fu.status==0&&Fu.response){K0(Fu.response);return}s0()},Fu.onerror=s0,Fu.send(null)},Q=function(U0){document.title=U0};else throw Error("environment detection error");let G=E.print||function(){},L=E.printErr||function(){};for(C in A)A.hasOwnProperty(C)&&(E[C]=A[C]);A=null,E.arguments&&(D=E.arguments),Object.getOwnPropertyDescriptor(E,"arguments")||Object.defineProperty(E,"arguments",{configurable:!0,get(){Du("Module.arguments has been replaced with plain arguments_")}}),E.thisProgram&&(F=E.thisProgram),Object.getOwnPropertyDescriptor(E,"thisProgram")||Object.defineProperty(E,"thisProgram",{configurable:!0,get(){Du("Module.thisProgram has been replaced with plain thisProgram")}}),E.quit&&(U=E.quit),Object.getOwnPropertyDescriptor(E,"quit")||Object.defineProperty(E,"quit",{configurable:!0,get(){Du("Module.quit has been replaced with plain quit_")}}),O(typeof E.memoryInitializerPrefixURL>"u","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"),O(typeof E.pthreadMainPrefixURL>"u","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"),O(typeof E.cdInitializerPrefixURL>"u","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"),O(typeof E.filePackagePrefixURL>"u","Module.filePackagePrefixURL option was removed, use Module.locateFile instead"),O(typeof E.read>"u","Module.read option was removed (modify read_ in JS)"),O(typeof E.readAsync>"u","Module.readAsync option was removed (modify readAsync in JS)"),O(typeof E.readBinary>"u","Module.readBinary option was removed (modify readBinary in JS)"),O(typeof E.setWindowTitle>"u","Module.setWindowTitle option was removed (modify setWindowTitle in JS)"),Object.getOwnPropertyDescriptor(E,"read")||Object.defineProperty(E,"read",{configurable:!0,get(){Du("Module.read has been replaced with plain read_")}}),Object.getOwnPropertyDescriptor(E,"readAsync")||Object.defineProperty(E,"readAsync",{configurable:!0,get(){Du("Module.readAsync has been replaced with plain readAsync")}}),Object.getOwnPropertyDescriptor(E,"readBinary")||Object.defineProperty(E,"readBinary",{configurable:!0,get(){Du("Module.readBinary has been replaced with plain readBinary")}}),zo=pK0=Uo=function(){Du("cannot use the stack before compiled code is ready to run, and has provided stack access")};function H(U0){H.shown||(H.shown={}),H.shown[U0]||(H.shown[U0]=1,L(U0))}let q={"f64-rem"(U0,K0){return U0%K0},debugger(){debugger}},x=[],v=0,W=function(U0){v=U0},S;E.wasmBinary&&(S=E.wasmBinary),Object.getOwnPropertyDescriptor(E,"wasmBinary")||Object.defineProperty(E,"wasmBinary",{configurable:!0,get(){Du("Module.wasmBinary has been replaced with plain wasmBinary")}});let T;E.noExitRuntime&&(T=E.noExitRuntime),Object.getOwnPropertyDescriptor(E,"noExitRuntime")||Object.defineProperty(E,"noExitRuntime",{configurable:!0,get(){Du("Module.noExitRuntime has been replaced with plain noExitRuntime")}}),typeof WebAssembly!="object"&&Du("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.");let R,Y=new WebAssembly.Table({initial:352,maximum:352,element:"anyfunc"}),a=!1,I=0;function O(U0,K0){U0||Du(`Assertion failed: ${K0}`)}function i(U0){let K0=E[`_${U0}`];return O(K0,`Cannot call unknown function ${U0}, make sure it is exported`),K0}function N(U0,K0,s0,Fu,Pu){let gu={string(a3){let q1=0;if(a3!=null&&a3!==0){let w2=(a3.length<<2)+1;q1=Uo(w2),y(a3,q1,w2)}return q1},array(a3){let q1=Uo(a3.length);return _(a3,q1),q1}};function ou(a3){return K0==="string"?m(a3):K0==="boolean"?!!a3:a3}let mu=i(U0),D4=[],h4=0;if(O(K0!=="array",'Return type should not be "array".'),Fu)for(let a3=0;a3<Fu.length;a3++){let q1=gu[s0[a3]];q1?(h4===0&&(h4=zo()),D4[a3]=q1(Fu[a3])):D4[a3]=Fu[a3]}let o3=mu.apply(null,D4);return o3=ou(o3),h4!==0&&pK0(h4),o3}function V(U0,K0,s0,Fu){return function(){return N(U0,K0,s0,arguments,Fu)}}let h=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function r(U0,K0,s0){let Fu=K0+s0,Pu=K0;for(;U0[Pu]&&!(Pu>=Fu);)++Pu;if(Pu-K0>16&&U0.subarray&&h)return h.decode(U0.subarray(K0,Pu));let gu="";for(;K0<Pu;){let ou=U0[K0++];if(!(ou&128)){gu+=String.fromCharCode(ou);continue}let mu=U0[K0++]&63;if((ou&224)==192){gu+=String.fromCharCode((ou&31)<<6|mu);continue}let D4=U0[K0++]&63;if((ou&240)==224?ou=(ou&15)<<12|mu<<6|D4:((ou&248)!=240&&H(`Invalid UTF-8 leading byte 0x${ou.toString(16)} encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!`),ou=(ou&7)<<18|mu<<12|D4<<6|U0[K0++]&63),ou<65536)gu+=String.fromCharCode(ou);else{let h4=ou-65536;gu+=String.fromCharCode(55296|h4>>10,56320|h4&1023)}}return gu}function m(U0,K0){return U0?r(D0,U0,K0):""}function $(U0,K0,s0,Fu){if(!(Fu>0))return 0;let Pu=s0,gu=s0+Fu-1;for(let ou=0;ou<U0.length;++ou){let mu=U0.charCodeAt(ou);if(mu>=55296&&mu<=57343){let D4=U0.charCodeAt(++ou);mu=65536+((mu&1023)<<10)|D4&1023}if(mu<=127){if(s0>=gu)break;K0[s0++]=mu}else if(mu<=2047){if(s0+1>=gu)break;K0[s0++]=192|mu>>6,K0[s0++]=128|mu&63}else if(mu<=65535){if(s0+2>=gu)break;K0[s0++]=224|mu>>12,K0[s0++]=128|mu>>6&63,K0[s0++]=128|mu&63}else{if(s0+3>=gu)break;mu>=2097152&&H(`Invalid Unicode code point 0x${mu.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).`),K0[s0++]=240|mu>>18,K0[s0++]=128|mu>>12&63,K0[s0++]=128|mu>>6&63,K0[s0++]=128|mu&63}}return K0[s0]=0,s0-Pu}function y(U0,K0,s0){return O(typeof s0=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"),$(U0,D0,K0,s0)}function p(U0){let K0=0;for(let s0=0;s0<U0.length;++s0){let Fu=U0.charCodeAt(s0);Fu>=55296&&Fu<=57343&&(Fu=65536+((Fu&1023)<<10)|U0.charCodeAt(++s0)&1023),Fu<=127?++K0:Fu<=2047?K0+=2:Fu<=65535?K0+=3:K0+=4}return K0}let e=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function _(U0,K0){O(U0.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)"),f0.set(U0,K0)}let b0=65536;function B0(U0,K0){return U0%K0>0&&(U0+=K0-U0%K0),U0}let k0,f0,D0,P0,q0,m0,a0,_0,w0;function v0(U0){k0=U0,E.HEAP8=f0=new Int8Array(U0),E.HEAP16=P0=new Int16Array(U0),E.HEAP32=m0=new Int32Array(U0),E.HEAPU8=D0=new Uint8Array(U0),E.HEAPU16=q0=new Uint16Array(U0),E.HEAPU32=a0=new Uint32Array(U0),E.HEAPF32=_0=new Float32Array(U0),E.HEAPF64=w0=new Float64Array(U0)}let T0=434112,Z0=5676992,F0=5676992,u0=433920;O(T0%16===0,"stack must start aligned"),O(F0%16===0,"heap must start aligned");let M0=5242880;E.TOTAL_STACK&&O(M0===E.TOTAL_STACK,"the stack size can no longer be determined at runtime");let X0=E.TOTAL_MEMORY||16777216;Object.getOwnPropertyDescriptor(E,"TOTAL_MEMORY")||Object.defineProperty(E,"TOTAL_MEMORY",{configurable:!0,get(){Du("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}}),O(X0>=M0,`TOTAL_MEMORY should be larger than TOTAL_STACK, was ${X0}! (TOTAL_STACK=${M0})`),O(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"),E.wasmMemory?R=E.wasmMemory:R=new WebAssembly.Memory({initial:X0/b0}),R&&(k0=R.buffer),X0=k0.byteLength,O(X0%b0===0),v0(k0),m0[u0>>2]=F0;function S0(){O((Z0&3)==0),a0[(Z0>>2)-1]=34821223,a0[(Z0>>2)-2]=2310721022,m0[0]=1668509029}function Y0(){let U0=a0[(Z0>>2)-1],K0=a0[(Z0>>2)-2];(U0!=34821223||K0!=2310721022)&&Du(`Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x${K0.toString(16)} ${U0.toString(16)}`),m0[0]!==1668509029&&Du("Runtime error: The application has corrupted its heap memory area (address zero)!")}function h0(U0){Du(`Stack overflow! Attempted to allocate ${U0} bytes on the stack, but stack has only ${Z0-zo()+U0} bytes available!`)}(function(){let U0=new Int16Array(1),K0=new Int8Array(U0.buffer);if(U0[0]=25459,K0[0]!==115||K0[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function J0(U0,K0){Du(`Invalid function pointer ${U0} called with signature '${K0}'. 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 n(U0){for(;U0.length>0;){let K0=U0.shift();if(typeof K0=="function"){K0();continue}let s0=K0.func;typeof s0=="number"?K0.arg===void 0?E.dynCall_v(s0):E.dynCall_vi(s0,K0.arg):s0(K0.arg===void 0?null:K0.arg)}}let d=[],H0=[],o=[],L0=[],E0=!1,r0=!1;function c0(){if(E.preRun)for(typeof E.preRun=="function"&&(E.preRun=[E.preRun]);E.preRun.length;)e0(E.preRun.shift());n(d)}function p0(){Y0(),O(!E0),E0=!0,n(H0)}function g0(){Y0(),n(o)}function Bu(){Y0(),r0=!0}function n0(){if(Y0(),E.postRun)for(typeof E.postRun=="function"&&(E.postRun=[E.postRun]);E.postRun.length;)t0(E.postRun.shift());n(L0)}function e0(U0){d.unshift(U0)}function t0(U0){L0.unshift(U0)}O(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),O(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),O(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),O(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 zu=0,W0=null,$u=null,i0={};function vu(U0){zu++,E.monitorRunDependencies&&E.monitorRunDependencies(zu),U0?(O(!i0[U0]),i0[U0]=1,W0===null&&typeof setInterval<"u"&&(W0=setInterval(()=>{if(a){clearInterval(W0),W0=null;return}let K0=!1;for(let s0 in i0)K0||(K0=!0,L("still waiting on run dependencies:")),L(`dependency: ${s0}`);K0&&L("(end of list)")},1e4))):L("warning: run dependency added without ID")}function cu(U0){if(zu--,E.monitorRunDependencies&&E.monitorRunDependencies(zu),U0?(O(i0[U0]),delete i0[U0]):L("warning: run dependency removed without ID"),zu==0&&(W0!==null&&(clearInterval(W0),W0=null),$u)){let K0=$u;$u=null,K0()}}E.preloadedImages={},E.preloadedAudios={};function Du(U0){E.onAbort&&E.onAbort(U0),U0+="",G(U0),L(U0),a=!0,I=1;let K0="";throw`abort(${U0}) at ${Ru()}${K0}`}var Nu={error(){Du("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(){Nu.error()},createDataFile(){Nu.error()},createPreloadedFile(){Nu.error()},createLazyFile(){Nu.error()},open(){Nu.error()},mkdev(){Nu.error()},registerDevice(){Nu.error()},analyzePath(){Nu.error()},loadFilesFromDB(){Nu.error()},ErrnoError:function(){Nu.error()}};E.FS_createDataFile=Nu.createDataFile,E.FS_createPreloadedFile=Nu.createPreloadedFile;let du="data:application/octet-stream;base64,";function Iu(U0){return String.prototype.startsWith?U0.startsWith(du):U0.indexOf(du)===0}let x0="woff2.wasm";Iu(x0)||(x0=Z(x0));function Tu(){try{if(S)return new Uint8Array(S);if(K)return K(x0);throw"both async and sync fetching of the wasm failed"}catch(U0){Du(U0)}}function Vu(){return!S&&(z||k)&&typeof fetch=="function"?fetch(x0,{credentials:"same-origin"}).then((U0)=>{if(!U0.ok)throw`failed to load wasm binary file at '${x0}'`;return U0.arrayBuffer()}).catch(()=>Tu()):new Promise((U0,K0)=>{U0(Tu())})}function Zu(){let U0={env:Do,wasi_unstable:Do,global:{NaN:NaN,Infinity:1/0},"global.Math":Math,asm2wasm:q};function K0(ou,mu){let D4=ou.exports;E.asm=D4,cu("wasm-instantiate")}vu("wasm-instantiate");let s0=E;function Fu(ou){O(E===s0,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"),s0=null,K0(ou.instance)}function Pu(ou){return Vu().then((mu)=>WebAssembly.instantiate(mu,U0)).then(ou,(mu)=>{L(`failed to asynchronously prepare wasm: ${mu}`),Du(mu)})}function gu(){if(!S&&typeof WebAssembly.instantiateStreaming=="function"&&!Iu(x0)&&typeof fetch=="function"&&typeof process=="object"&&process.versions&&process.versions.node&&+process.versions.node.split(".")[0]<17)fetch(x0,{credentials:"same-origin"}).then((ou)=>WebAssembly.instantiateStreaming(ou,U0).then(Fu,(mu)=>{L(`wasm streaming compile failed: ${mu}`),L("falling back to ArrayBuffer instantiation"),Pu(Fu)}));else return Pu(Fu)}if(E.instantiateWasm)try{return E.instantiateWasm(U0,K0)}catch(ou){return L(`Module.instantiateWasm callback failed with error: ${ou}`),!1}return gu(),{}}E.asm=Zu,H0.push({func(){I04()}}),O(!0);function I0(U0){let K0=E.___cxa_demangle||E.__cxa_demangle;O(K0);try{let gu=U0;gu.startsWith("__Z")&&(gu=gu.substr(1));let ou=p(gu)+1;var s0=Tx(ou);y(gu,s0,ou);var Fu=Tx(4),Pu=K0(s0,0,0,Fu);if(m0[Fu>>2]===0&&Pu)return m(Pu)}catch{}finally{s0&&AC(s0),Fu&&AC(Fu),Pu&&AC(Pu)}return U0}function lu(U0){let K0=/\b__Z[\w\d_]+/g;return U0.replace(K0,(s0)=>{let Fu=I0(s0);return s0===Fu?s0:`${Fu} [${s0}]`})}function Hu(){let U0=Error();if(!U0.stack){try{throw Error(0)}catch(K0){U0=K0}if(!U0.stack)return"(no stack trace available)"}return U0.stack.toString()}function Ru(){let U0=Hu();return E.extraStackTrace&&(U0+=`
${E.extraStackTrace()}`),lu(U0)}function W4(U0,K0,s0,Fu){Du(`Assertion failed: ${m(U0)}, at: ${[K0?m(K0):"unknown filename",s0,Fu?m(Fu):"unknown function"]}`)}function ru(U0){return Tx(U0)}let q4={},F3=0;function i4(U0,K0,s0){throw q4[U0]={ptr:U0,adjusted:[U0],type:K0,destructor:s0,refcount:0,caught:!1,rethrown:!1},F3=U0,"uncaught_exception"in Fo?Fo.uncaught_exceptions++:Fo.uncaught_exceptions=1,`${U0} - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.`}function b4(){}function P4(){}var bu={splitPath(U0){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(U0).slice(1)},normalizeArray(U0,K0){let s0=0;for(let Fu=U0.length-1;Fu>=0;Fu--){let Pu=U0[Fu];Pu==="."?U0.splice(Fu,1):Pu===".."?(U0.splice(Fu,1),s0++):s0&&(U0.splice(Fu,1),s0--)}if(K0)for(;s0;s0--)U0.unshift("..");return U0},normalize(U0){let K0=U0.charAt(0)==="/",s0=U0.substr(-1)==="/";return U0=bu.normalizeArray(U0.split("/").filter((Fu)=>!!Fu),!K0).join("/"),!U0&&!K0&&(U0="."),U0&&s0&&(U0+="/"),(K0?"/":"")+U0},dirname(U0){let K0=bu.splitPath(U0),s0=K0[0],Fu=K0[1];return!s0&&!Fu?".":(Fu&&(Fu=Fu.substr(0,Fu.length-1)),s0+Fu)},basename(U0){if(U0==="/")return"/";let K0=U0.lastIndexOf("/");return K0===-1?U0:U0.substr(K0+1)},extname(U0){return bu.splitPath(U0)[3]},join(){let U0=Array.prototype.slice.call(arguments,0);return bu.normalize(U0.join("/"))},join2(U0,K0){return bu.normalize(`${U0}/${K0}`)}},qu={buffers:[null,[],[]],printChar(U0,K0){let s0=qu.buffers[U0];O(s0),K0===0||K0===10?((U0===1?G:L)(r(s0,0)),s0.length=0):s0.push(K0)},varargs:0,get(U0){return qu.varargs+=4,m0[qu.varargs-4>>2]},getStr(){return m(qu.get())},get64(){let U0=qu.get(),K0=qu.get();return U0>=0?O(K0===0):O(K0===-1),U0},getZero(){O(qu.get()===0)}};function nu(U0){try{return Du("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM"),0}catch(K0){return(typeof Nu>"u"||!(K0 instanceof Nu.ErrnoError))&&Du(K0),K0.errno}}function c4(){return nu.apply(null,arguments)}function $4(U0,K0,s0,Fu,Pu){try{return Du("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM"),0}catch(gu){return(typeof Nu>"u"||!(gu instanceof Nu.ErrnoError))&&Du(gu),gu.errno}}function B3(){return $4.apply(null,arguments)}function z1(){let U0=E._fflush;U0&&U0(0);let K0=qu.buffers;K0[1].length&&qu.printChar(1,10),K0[2].length&&qu.printChar(2,10)}function E3(U0,K0,s0,Fu){try{let Pu=0;for(let gu=0;gu<s0;gu++){let ou=m0[K0+gu*8>>2],mu=m0[K0+(gu*8+4)>>2];for(let D4=0;D4<mu;D4++)qu.printChar(U0,D0[ou+D4]);Pu+=mu}return m0[Fu>>2]=Pu,0}catch(Pu){return(typeof Nu>"u"||!(Pu instanceof Nu.ErrnoError))&&Du(Pu),Pu.errno}}function eu(){return E3.apply(null,arguments)}function au(U0){switch(U0){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw TypeError(`Unknown type size: ${U0}`)}}function f4(){let U0=Array(256);for(let K0=0;K0<256;++K0)U0[K0]=String.fromCharCode(K0);U4=U0}var U4=void 0;function iu(U0){let K0="",s0=U0;for(;D0[s0];)K0+=U4[D0[s0++]];return K0}let X4={},O0={},J1={},V0=48,A3=57;function f6(U0){if(U0===void 0)return"_unknown";U0=U0.replace(/[^a-zA-Z0-9_]/g,"$");let K0=U0.charCodeAt(0);return K0>=V0&&K0<=A3?`_${U0}`:U0}function h2(U0,K0){return U0=f6(U0),Function("body",`return function ${U0}() {
"use strict"; return body.apply(this, arguments);
};
`)(K0)}function o9(U0,K0){let s0=h2(K0,function(Fu){this.name=K0,this.message=Fu;let Pu=Error(Fu).stack;Pu!==void 0&&(this.stack=`${this.toString()}
${Pu.replace(/^Error(:[^\n]*)?\n/,"")}`)});return s0.prototype=Object.create(U0.prototype),s0.prototype.constructor=s0,s0.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},s0}let CB;function g3(U0){throw new CB(U0)}let S6;function Q5(U0){throw new S6(U0)}function DB(U0,K0,s0){U0.forEach((mu)=>{J1[mu]=K0});function Fu(mu){let D4=s0(mu);D4.length!==U0.length&&Q5("Mismatched type converter count");for(let h4=0;h4<U0.length;++h4)t9(U0[h4],D4[h4])}let Pu=Array(K0.length),gu=[],ou=0;K0.forEach((mu,D4)=>{O0.hasOwnProperty(mu)?Pu[D4]=O0[mu]:(gu.push(mu),X4.hasOwnProperty(mu)||(X4[mu]=[]),X4[mu].push(()=>{Pu[D4]=O0[mu],++ou,ou===gu.length&&Fu(Pu)}))}),gu.length===0&&Fu(Pu)}function t9(U0,K0,s0){if(s0=s0||{},!("argPackAdvance"in K0))throw TypeError("registerType registeredInstance requires argPackAdvance");let Fu=K0.name;if(U0||g3(`type "${Fu}" must have a positive integer typeid pointer`),O0.hasOwnProperty(U0)){if(s0.ignoreDuplicateRegistrations)return;g3(`Cannot register type '${Fu}' twice`)}if(O0[U0]=K0,delete J1[U0],X4.hasOwnProperty(U0)){let Pu=X4[U0];delete X4[U0],Pu.forEach((gu)=>{gu()})}}function Ez(U0,K0,s0,Fu,Pu){let gu=au(s0);K0=iu(K0),t9(U0,{name:K0,fromWireType(ou){return!!ou},toWireType(ou,mu){return mu?Fu:Pu},argPackAdvance:8,readValueFromPointer(ou){let mu;if(s0===1)mu=f0;else if(s0===2)mu=P0;else if(s0===4)mu=m0;else throw TypeError(`Unknown boolean type size: ${K0}`);return this.fromWireType(mu[ou>>gu])},destructorFunction:null})}function m2(U0){if(!(this instanceof K9)||!(U0 instanceof K9))return!1;let K0=this.$$.ptrType.registeredClass,s0=this.$$.ptr,Fu=U0.$$.ptrType.registeredClass,Pu=U0.$$.ptr;for(;K0.baseClass;)s0=K0.upcast(s0),K0=K0.baseClass;for(;Fu.baseClass;)Pu=Fu.upcast(Pu),Fu=Fu.baseClass;return K0===Fu&&s0===Pu}function Az(U0){return{count:U0.count,deleteScheduled:U0.deleteScheduled,preservePointerOnDelete:U0.preservePointerOnDelete,ptr:U0.ptr,ptrType:U0.ptrType,smartPtr:U0.smartPtr,smartPtrType:U0.smartPtrType}}function e9(U0){function K0(s0){return s0.$$.ptrType.registeredClass.name}g3(`${K0(U0)} instance already deleted`)}let Cz=!1;function n8(U0){}function r2(U0){U0.smartPtr?U0.smartPtrType.rawDestructor(U0.smartPtr):U0.ptrType.registeredClass.rawDestructor(U0.ptr)}function UZ(U0){U0.count.value-=1,U0.count.value===0&&r2(U0)}function su(U0){return typeof FinalizationGroup>"u"?(su=function(K0){return K0},U0):(Cz=new FinalizationGroup((K0)=>{for(let s0=K0.next();!s0.done;s0=K0.next()){let Fu=s0.value;Fu.ptr?UZ(Fu):console.warn(`object already deleted: ${Fu.ptr}`)}}),su=function(K0){return Cz.register(K0,K0.$$,K0.$$),K0},n8=function(K0){Cz.unregister(K0.$$)},su(U0))}function N0(){if(this.$$.ptr||e9(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;let U0=su(Object.create(Object.getPrototypeOf(this),{$$:{value:Az(this.$$)}}));return U0.$$.count.value+=1,U0.$$.deleteScheduled=!1,U0}function fu(){this.$$.ptr||e9(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&g3("Object already scheduled for deletion"),n8(this),UZ(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function hu(){return!this.$$.ptr}let Z4,x4=[];function d4(){for(;x4.length;){let U0=x4.pop();U0.$$.deleteScheduled=!1,U0.delete()}}function n3(){return this.$$.ptr||e9(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&g3("Object already scheduled for deletion"),x4.push(this),x4.length===1&&Z4&&Z4(d4),this.$$.deleteScheduled=!0,this}function h6(){K9.prototype.isAliasOf=m2,K9.prototype.clone=N0,K9.prototype.delete=fu,K9.prototype.isDeleted=hu,K9.prototype.deleteLater=n3}function K9(){}let g5={};function HQ(U0,K0,s0){if(U0[K0].overloadTable===void 0){let Fu=U0[K0];U0[K0]=function(){return U0[K0].overloadTable.hasOwnProperty(arguments.length)||g3(`Function '${s0}' called with an invalid number of arguments (${arguments.length}) - expects one of (${U0[K0].overloadTable})!`),U0[K0].overloadTable[arguments.length].apply(this,arguments)},U0[K0].overloadTable=[],U0[K0].overloadTable[Fu.argCount]=Fu}}function G5(U0,K0,s0){E.hasOwnProperty(U0)?((s0===void 0||E[U0].overloadTable!==void 0&&E[U0].overloadTable[s0]!==void 0)&&g3(`Cannot register public name '${U0}' twice`),HQ(E,U0,U0),E.hasOwnProperty(s0)&&g3(`Cannot register multiple overloads of a function with the same number of arguments (${s0})!`),E[U0].overloadTable[s0]=K0):(E[U0]=K0,s0!==void 0&&(E[U0].numArguments=s0))}function Weu(U0,K0,s0,Fu,Pu,gu,ou,mu){this.name=U0,this.constructor=K0,this.instancePrototype=s0,this.rawDestructor=Fu,this.baseClass=Pu,this.getActualType=gu,this.upcast=ou,this.downcast=mu,this.pureVirtualFunctions=[]}function Bo(U0,K0,s0){for(;K0!==s0;)K0.upcast||g3(`Expected null or instance of ${s0.name}, got an instance of ${K0.name}`),U0=K0.upcast(U0),K0=K0.baseClass;return U0}function Yeu(U0,K0){if(K0===null)return this.isReference&&g3(`null is not a valid ${this.name}`),0;K0.$$||g3(`Cannot pass "${LQ(K0)}" as a ${this.name}`),K0.$$.ptr||g3(`Cannot pass deleted object as a pointer of type ${this.name}`);let s0=K0.$$.ptrType.registeredClass;return Bo(K0.$$.ptr,s0,this.registeredClass)}function Reu(U0,K0){let s0;if(K0===null)return this.isReference&&g3(`null is not a valid ${this.name}`),this.isSmartPointer?(s0=this.rawConstructor(),U0!==null&&U0.push(this.rawDestructor,s0),s0):0;K0.$$||g3(`Cannot pass "${LQ(K0)}" as a ${this.name}`),K0.$$.ptr||g3(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&K0.$$.ptrType.isConst&&g3(`Cannot convert argument of type ${K0.$$.smartPtrType?K0.$$.smartPtrType.name:K0.$$.ptrType.name} to parameter type ${this.name}`);let Fu=K0.$$.ptrType.registeredClass;if(s0=Bo(K0.$$.ptr,Fu,this.registeredClass),this.isSmartPointer)switch(K0.$$.smartPtr===void 0&&g3("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:K0.$$.smartPtrType===this?s0=K0.$$.smartPtr:g3(`Cannot convert argument of type ${K0.$$.smartPtrType?K0.$$.smartPtrType.name:K0.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:s0=K0.$$.smartPtr;break;case 2:if(K0.$$.smartPtrType===this)s0=K0.$$.smartPtr;else{let Pu=K0.clone();s0=this.rawShare(s0,Co(()=>{Pu.delete()})),U0!==null&&U0.push(this.rawDestructor,s0)}break;default:g3("Unsupporting sharing policy")}return s0}function Teu(U0,K0){if(K0===null)return this.isReference&&g3(`null is not a valid ${this.name}`),0;K0.$$||g3(`Cannot pass "${LQ(K0)}" as a ${this.name}`),K0.$$.ptr||g3(`Cannot pass deleted object as a pointer of type ${this.name}`),K0.$$.ptrType.isConst&&g3(`Cannot convert argument of type ${K0.$$.ptrType.name} to parameter type ${this.name}`);let s0=K0.$$.ptrType.registeredClass;return Bo(K0.$$.ptr,s0,this.registeredClass)}function YP(U0){return this.fromWireType(a0[U0>>2])}function Oeu(U0){return this.rawGetPointee&&(U0=this.rawGetPointee(U0)),U0}function Ieu(U0){this.rawDestructor&&this.rawDestructor(U0)}function Peu(U0){U0!==null&&U0.delete()}function hK0(U0,K0,s0){if(K0===s0)return U0;if(s0.baseClass===void 0)return null;let Fu=hK0(U0,K0,s0.baseClass);return Fu===null?null:s0.downcast(Fu)}function jeu(){return Object.keys(Rx).length}function Neu(){let U0=[];for(let K0 in Rx)Rx.hasOwnProperty(K0)&&U0.push(Rx[K0]);return U0}function ieu(U0){Z4=U0,x4.length&&Z4&&Z4(d4)}function aeu(){E.getInheritedInstanceCount=jeu,E.getLiveInheritedInstances=Neu,E.flushPendingDeletes=d4,E.setDelayFunction=ieu}var Rx={};function Veu(U0,K0){for(K0===void 0&&g3("ptr should not be undefined");U0.baseClass;)K0=U0.upcast(K0),U0=U0.baseClass;return K0}function heu(U0,K0){return K0=Veu(U0,K0),Rx[K0]}function RP(U0,K0){(!K0.ptrType||!K0.ptr)&&Q5("makeClassHandle requires ptr and ptrType");let s0=!!K0.smartPtrType,Fu=!!K0.smartPtr;return s0!==Fu&&Q5("Both smartPtrType and smartPtr must be specified"),K0.count={value:1},su(Object.create(U0,{$$:{value:K0}}))}function meu(U0){let K0=this.getPointee(U0);if(!K0)return this.destructor(U0),null;let s0=heu(this.registeredClass,K0);if(s0!==void 0){if(s0.$$.count.value===0)return s0.$$.ptr=K0,s0.$$.smartPtr=U0,s0.clone();let D4=s0.clone();return this.destructor(U0),D4}function Fu(){return this.isSmartPointer?RP(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:K0,smartPtrType:this,smartPtr:U0}):RP(this.registeredClass.instancePrototype,{ptrType:this,ptr:U0})}let Pu=this.registeredClass.getActualType(K0),gu=g5[Pu];if(!gu)return Fu.call(this);let ou;this.isConst?ou=gu.constPointerType:ou=gu.pointerType;let mu=hK0(K0,this.registeredClass,ou.registeredClass);return mu===null?Fu.call(this):this.isSmartPointer?RP(ou.registeredClass.instancePrototype,{ptrType:ou,ptr:mu,smartPtrType:this,smartPtr:U0}):RP(ou.registeredClass.instancePrototype,{ptrType:ou,ptr:mu})}function reu(){Dz.prototype.getPointee=Oeu,Dz.prototype.destructor=Ieu,Dz.prototype.argPackAdvance=8,Dz.prototype.readValueFromPointer=YP,Dz.prototype.deleteObject=Peu,Dz.prototype.fromWireType=meu}function Dz(U0,K0,s0,Fu,Pu,gu,ou,mu,D4,h4,o3){this.name=U0,this.registeredClass=K0,this.isReference=s0,this.isConst=Fu,this.isSmartPointer=Pu,this.pointeeType=gu,this.sharingPolicy=ou,this.rawGetPointee=mu,this.rawConstructor=D4,this.rawShare=h4,this.rawDestructor=o3,!Pu&&K0.baseClass===void 0?Fu?(this.toWireType=Yeu,this.destructorFunction=null):(this.toWireType=Teu,this.destructorFunction=null):this.toWireType=Reu}function mK0(U0,K0,s0){E.hasOwnProperty(U0)||Q5("Replacing nonexistant public symbol"),E[U0].overloadTable!==void 0&&s0!==void 0?E[U0].overloadTable[s0]=K0:(E[U0]=K0,E[U0].argCount=s0)}function zZ(U0,K0){U0=iu(U0);function s0(Pu){let gu=[];for(let mu=1;mu<U0.length;++mu)gu.push(`a${mu}`);let ou=`return function ${`dynCall_${U0}_${K0}`}(${gu.join(", ")}) {
`;return ou+=` return dynCall(rawFunction${gu.length?", ":""}${gu.join(", ")});
`,ou+=`};
`,Function("dynCall","rawFunction",ou)(Pu,K0)}let Fu;if(E[`FUNCTION_TABLE_${U0}`]!==void 0)Fu=E[`FUNCTION_TABLE_${U0}`][K0];else if(typeof FUNCTION_TABLE<"u")Fu=FUNCTION_TABLE[K0];else{let Pu=E[`dynCall_${U0}`];Pu===void 0&&(Pu=E[`dynCall_${U0.replace(/f/g,"d")}`],Pu===void 0&&g3(`No dynCall invoker for signature: ${U0}`)),Fu=s0(Pu)}return typeof Fu!="function"&&g3(`unknown function pointer with signature ${U0}: ${K0}`),Fu}let rK0;function $K0(U0){let K0=O04(U0),s0=iu(K0);return AC(K0),s0}function TP(U0,K0){let s0=[],Fu={};function Pu(gu){if(!Fu[gu]&&!O0[gu]){if(J1[gu]){J1[gu].forEach(Pu);return}s0.push(gu),Fu[gu]=!0}}throw K0.forEach(Pu),new rK0(`${U0}: ${s0.map($K0).join([", "])}`)}function $eu(U0,K0,s0,Fu,Pu,gu,ou,mu,D4,h4,o3,a3,q1){o3=iu(o3),gu=zZ(Pu,gu),mu&&(mu=zZ(ou,mu)),h4&&(h4=zZ(D4,h4)),q1=zZ(a3,q1);let w2=f6(o3);G5(w2,()=>{TP(`Cannot construct ${o3} due to unbound types`,[Fu])}),DB([U0,K0,s0],Fu?[Fu]:[],(dD)=>{dD=dD[0];let CC,fo;Fu?(CC=dD.registeredClass,fo=CC.instancePrototype):fo=K9.prototype;let Qf=h2(w2,function(){if(Object.getPrototypeOf(this)!==lo)throw new CB(`Use 'new' to construct ${o3}`);if(qQ.constructor_body===void 0)throw new CB(`${o3} has no accessible constructor`);let tK0=qQ.constructor_body[arguments.length];if(tK0===void 0)throw new CB(`Tried to invoke ctor of ${o3} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(qQ.constructor_body).toString()}) parameters instead!`);return tK0.apply(this,arguments)});var lo=Object.create(fo,{constructor:{value:Qf}});Qf.prototype=lo;var qQ=new Weu(o3,Qf,lo,q1,CC,gu,mu,h4);let N04=new Dz(o3,qQ,!0,!1,!1),sK0=new Dz(`${o3}*`,qQ,!1,!1,!1),oK0=new Dz(`${o3} const*`,qQ,!1,!0,!1);return g5[U0]={pointerType:sK0,constPointerType:oK0},mK0(w2,Qf),[N04,sK0,oK0]})}function Eo(U0,K0){let s0=[];for(let Fu=0;Fu<U0;Fu++)s0.push(m0[(K0>>2)+Fu]);return s0}function yK0(U0){for(;U0.length;){let K0=U0.pop();U0.pop()(K0)}}function yeu(U0,K0,s0,Fu,Pu,gu){let ou=Eo(K0,s0);Pu=zZ(Fu,Pu),DB([],[U0],(mu)=>{mu=mu[0];let D4=`constructor ${mu.name}`;if(mu.registeredClass.constructor_body===void 0&&(mu.registeredClass.constructor_body=[]),mu.registeredClass.constructor_body[K0-1]!==void 0)throw new CB(`Cannot register multiple constructors with identical number of parameters (${K0-1}) for class '${mu.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return mu.registeredClass.constructor_body[K0-1]=function(){TP(`Cannot construct ${mu.name} due to unbound types`,ou)},DB([],ou,(h4)=>(mu.registeredClass.constructor_body[K0-1]=function(){arguments.length!==K0-1&&g3(`${D4} called with ${arguments.length} arguments, expected ${K0-1}`);let o3=[],a3=Array(K0);a3[0]=gu;for(let w2=1;w2<K0;++w2)a3[w2]=h4[w2].toWireType(o3,arguments[w2-1]);let q1=Pu.apply(null,a3);return yK0(o3),h4[0].fromWireType(q1)},[])),[]})}function ceu(U0,K0){if(!(U0 instanceof Function))throw TypeError(`new_ called with constructor type ${typeof U0} which is not a function`);let s0=h2(U0.name||"unknownFunctionName",()=>{});s0.prototype=U0.prototype;let Fu=new s0,Pu=U0.apply(Fu,K0);return Pu instanceof Object?Pu:Fu}function cK0(U0,K0,s0,Fu,Pu){let gu=K0.length;gu<2&&g3("argTypes array size mismatch! Must at least get return value and 'this' types!");let ou=K0[1]!==null&&s0!==null,mu=!1;for(var D4=1;D4<K0.length;++D4)if(K0[D4]!==null&&K0[D4].destructorFunction===void 0){mu=!0;break}let h4=K0[0].name!=="void",o3="",a3="";for(var D4=0;D4<gu-2;++D4)o3+=`${D4!==0?", ":""}arg${D4}`,a3+=`${D4!==0?", ":""}arg${D4}Wired`;let q1=`return function ${f6(U0)}(${o3}) {
if (arguments.length !== ${gu-2}) {
throwBindingError('function ${U0} called with ' + arguments.length + ' arguments, expected ${gu-2} args!');
}
`;mu&&(q1+=`var destructors = [];
`);let w2=mu?"destructors":"null",dD=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],CC=[g3,Fu,Pu,yK0,K0[0],K0[1]];ou&&(q1+=`var thisWired = classParam.toWireType(${w2}, this);
`);for(var D4=0;D4<gu-2;++D4)q1+=`var arg${D4}Wired = argType${D4}.toWireType(${w2}, arg${D4}); // ${K0[D4+2].name}
`,dD.push(`argType${D4}`),CC.push(K0[D4+2]);if(ou&&(a3=`thisWired${a3.length>0?", ":""}${a3}`),q1+=`${h4?"var rv = ":""}invoker(fn${a3.length>0?", ":""}${a3});
`,mu)q1+=`runDestructors(destructors);
`;else for(var D4=ou?1:2;D4<K0.length;++D4){let Qf=D4===1?"thisWired":`arg${D4-2}Wired`;K0[D4].destructorFunction!==null&&(q1+=`${Qf}_dtor(${Qf}); // ${K0[D4].name}
`,dD.push(`${Qf}_dtor`),CC.push(K0[D4].destructorFunction))}return h4&&(q1+=`var ret = retType.fromWireType(rv);
return ret;
`),q1+=`}
`,dD.push(q1),ceu(Function,dD).apply(null,CC)}function geu(U0,K0,s0,Fu,Pu,gu,ou,mu){let D4=Eo(s0,Fu);K0=iu(K0),gu=zZ(Pu,gu),DB([],[U0],(h4)=>{h4=h4[0];let o3=`${h4.name}.${K0}`;mu&&h4.registeredClass.pureVirtualFunctions.push(K0);function a3(){TP(`Cannot call ${o3} due to unbound types`,D4)}let q1=h4.registeredClass.instancePrototype,w2=q1[K0];return w2===void 0||w2.overloadTable===void 0&&w2.className!==h4.name&&w2.argCount===s0-2?(a3.argCount=s0-2,a3.className=h4.name,q1[K0]=a3):(HQ(q1,K0,o3),q1[K0].overloadTable[s0-2]=a3),DB([],D4,(dD)=>{let CC=cK0(o3,dD,h4,gu,ou);return q1[K0].overloadTable===void 0?(CC.argCount=s0-2,q1[K0]=CC):q1[K0].overloadTable[s0-2]=CC,[]}),[]})}let Ao=[],EC=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function gK0(U0){U0>4&&--EC[U0].refcount===0&&(EC[U0]=void 0,Ao.push(U0))}function _eu(){let U0=0;for(let K0=5;K0<EC.length;++K0)EC[K0]!==void 0&&++U0;return U0}function neu(){for(let U0=5;U0<EC.length;++U0)if(EC[U0]!==void 0)return EC[U0];return null}function peu(){E.count_emval_handles=_eu,E.get_first_emval=neu}function Co(U0){switch(U0){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{let K0=Ao.length?Ao.pop():EC.length;return EC[K0]={refcount:1,value:U0},K0}}}function deu(U0,K0){K0=iu(K0),t9(U0,{name:K0,fromWireType(s0){let Fu=EC[s0].value;return gK0(s0),Fu},toWireType(s0,Fu){return Co(Fu)},argPackAdvance:8,readValueFromPointer:YP,destructorFunction:null})}function LQ(U0){if(U0===null)return"null";let K0=typeof U0;return K0==="object"||K0==="array"||K0==="function"?U0.toString():`${U0}`}function seu(U0,K0){switch(K0){case 2:return function(s0){return this.fromWireType(_0[s0>>2])};case 3:return function(s0){return this.fromWireType(w0[s0>>3])};default:throw TypeError(`Unknown float type: ${U0}`)}}function oeu(U0,K0,s0){let Fu=au(s0);K0=iu(K0),t9(U0,{name:K0,fromWireType(Pu){return Pu},toWireType(Pu,gu){if(typeof gu!="number"&&typeof gu!="boolean")throw TypeError(`Cannot convert "${LQ(gu)}" to ${this.name}`);return gu},argPackAdvance:8,readValueFromPointer:seu(K0,Fu),destructorFunction:null})}function teu(U0,K0,s0,Fu,Pu,gu){let ou=Eo(K0,s0);U0=iu(U0),Pu=zZ(Fu,Pu),G5(U0,()=>{TP(`Cannot call ${U0} due to unbound types`,ou)},K0-1),DB([],ou,(mu)=>{let D4=[mu[0],null].concat(mu.slice(1));return mK0(U0,cK0(U0,D4,null,Pu,gu),K0-1),[]})}function eeu(U0,K0,s0){switch(K0){case 0:return s0?function(Fu){return f0[Fu]}:function(Fu){return D0[Fu]};case 1:return s0?function(Fu){return P0[Fu>>1]}:function(Fu){return q0[Fu>>1]};case 2:return s0?function(Fu){return m0[Fu>>2]}:function(Fu){return a0[Fu>>2]};default:throw TypeError(`Unknown integer type: ${U0}`)}}function u04(U0,K0,s0,Fu,Pu){K0=iu(K0),Pu===-1&&(Pu=4294967295);let gu=au(s0),ou=function(D4){return D4};if(Fu===0){let D4=32-8*s0;ou=function(h4){return h4<<D4>>>D4}}let mu=K0.indexOf("unsigned")!=-1;t9(U0,{name:K0,fromWireType:ou,toWireType(D4,h4){if(typeof h4!="number"&&typeof h4!="boolean")throw TypeError(`Cannot convert "${LQ(h4)}" to ${this.name}`);if(h4<Fu||h4>Pu)throw TypeError(`Passing a number "${LQ(h4)}" from JS side to C/C++ side to an argument of type "${K0}", which is outside the valid range [${Fu}, ${Pu}]!`);return mu?h4>>>0:h4|0},argPackAdvance:8,readValueFromPointer:eeu(K0,gu,Fu!==0),destructorFunction:null})}function B04(U0,K0,s0){let Fu=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][K0];function Pu(gu){gu=gu>>2;let ou=a0,mu=ou[gu],D4=ou[gu+1];return new Fu(ou.buffer,D4,mu)}s0=iu(s0),t9(U0,{name:s0,fromWireType:Pu,argPackAdvance:8,readValueFromPointer:Pu},{ignoreDuplicateRegistrations:!0})}function E04(U0,K0){K0=iu(K0);let s0=K0==="std::string";t9(U0,{name:K0,fromWireType(Fu){let Pu=a0[Fu>>2],gu;if(s0){let mu=D0[Fu+4+Pu],D4=0;mu!=0&&(D4=mu,D0[Fu+4+Pu]=0);let h4=Fu+4;for(var ou=0;ou<=Pu;++ou){let o3=Fu+4+ou;if(D0[o3]==0){let a3=m(h4);gu===void 0?gu=a3:(gu+="\x00",gu+=a3),h4=o3+1}}D4!=0&&(D0[Fu+4+Pu]=D4)}else{let mu=Array(Pu);for(var ou=0;ou<Pu;++ou)mu[ou]=String.fromCharCode(D0[Fu+4+ou]);gu=mu.join("")}return AC(Fu),gu},toWireType(Fu,Pu){Object.prototype.toString.call(Pu)==="[object ArrayBuffer]"&&(Pu=new Uint8Array(Pu));let gu,ou=typeof Pu=="string";ou||Pu instanceof Uint8Array||Pu instanceof Uint8ClampedArray||Pu instanceof Int8Array||g3("Cannot pass non-string to std::string"),s0&&ou?gu=function(){return p(Pu)}:gu=function(){return Pu.length};let mu=gu(),D4=Tx(4+mu+1);if(a0[D4>>2]=mu,s0&&ou)y(Pu,D4+4,mu+1);else if(ou)for(var h4=0;h4<mu;++h4){let o3=Pu.charCodeAt(h4);o3>255&&(AC(D4),g3("String has UTF-16 code units that do not fit in 8 bits")),D0[D4+4+h4]=o3}else for(var h4=0;h4<mu;++h4)D0[D4+4+h4]=Pu[h4];return Fu!==null&&Fu.push(AC,D4),D4},argPackAdvance:8,readValueFromPointer:YP,destructorFunction(Fu){AC(Fu)}})}function A04(U0,K0,s0){s0=iu(s0);let Fu,Pu;K0===2?(Fu=function(){return q0},Pu=1):K0===4&&(Fu=function(){return a0},Pu=2),t9(U0,{name:s0,fromWireType(gu){let ou=Fu(),mu=a0[gu>>2],D4=Array(mu),h4=gu+4>>Pu;for(let o3=0;o3<mu;++o3)D4[o3]=String.fromCharCode(ou[h4+o3]);return AC(gu),D4.join("")},toWireType(gu,ou){let mu=ou.length,D4=Tx(4+mu*K0),h4=Fu();a0[D4>>2]=mu;let o3=D4+4>>Pu;for(let a3=0;a3<mu;++a3)h4[o3+a3]=ou.charCodeAt(a3);return gu!==null&&gu.push(AC,D4),D4},argPackAdvance:8,readValueFromPointer:YP,destructorFunction(gu){AC(gu)}})}function C04(U0,K0){K0=iu(K0),t9(U0,{isVoid:!0,name:K0,argPackAdvance:0,fromWireType(){},toWireType(s0,Fu){}})}function D04(U0){U0>4&&(EC[U0].refcount+=1)}function F04(U0,K0){let s0=O0[U0];return s0===void 0&&g3(`${K0} has unknown type ${$K0(U0)}`),s0}function U04(U0,K0){U0=F04(U0,"_emval_take_value");let s0=U0.readValueFromPointer(K0);return Co(s0)}function z04(){Du()}function _K0(){return f0.length}function k04(U0){try{return R.grow(U0-k0.byteLength+65535>>16),v0(R.buffer),1}catch(K0){console.error(`emscripten_realloc_buffer: Attempted to grow heap from ${k0.byteLength} bytes to ${U0} bytes, but got error: ${K0}`)}}function f04(U0){let K0=_K0();O(U0>K0);let s0=65536,Fu=2147483648-s0;if(U0>Fu)return L(`Cannot enlarge memory, asked to go up to ${U0} bytes, but the limit is ${Fu} bytes!`),!1;let Pu=Math.max(K0,16777216);for(;Pu<U0;)Pu<=536870912?Pu=B0(2*Pu,s0):Pu=Math.min(B0((3*Pu+2147483648)/4,s0),Fu),Pu===K0&&H(`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 ${f0.length}`);return k04(Pu)?!0:(L(`Failed to grow the heap from ${K0} bytes to ${Pu} bytes, not enough memory!`),!1)}function l04(U0){j04(U0)}function b04(U0){return Math.log(U0)/Math.LN2}function M04(U0){return b04(U0)}function Z04(){Du("trap!")}function J04(U0,K0,s0){D0.set(D0.subarray(K0,K0+s0),U0)}f4(),CB=E.BindingError=o9(Error,"BindingError"),S6=E.InternalError=o9(Error,"InternalError"),h6(),reu(),aeu(),rK0=E.UnboundTypeError=o9(Error,"UnboundTypeError"),peu();function w04(U0){J0(U0,"i")}function K04(U0){J0(U0,"ii")}function Q04(U0){J0(U0,"iidiiii")}function G04(U0){J0(U0,"iii")}function H04(U0){J0(U0,"iiii")}function L04(U0){J0(U0,"iiiii")}function q04(U0){J0(U0,"jiji")}function X04(U0){J0(U0,"v")}function x04(U0){J0(U0,"vi")}function v04(U0){J0(U0,"vii")}function S04(U0){J0(U0,"viii")}function W04(U0){J0(U0,"viiii")}function Y04(U0){J0(U0,"viiiii")}function R04(U0){J0(U0,"viiiiii")}let T04={};var Do={___assert_fail:W4,___cxa_allocate_exception:ru,___cxa_throw:i4,___lock:b4,___unlock:P4,___wasi_fd_close:c4,___wasi_fd_seek:B3,___wasi_fd_write:eu,__embind_register_bool:Ez,__embind_register_class:$eu,__embind_register_class_constructor:yeu,__embind_register_class_function:geu,__embind_register_emval:deu,__embind_register_float:oeu,__embind_register_function:teu,__embind_register_integer:u04,__embind_register_memory_view:B04,__embind_register_std_string:E04,__embind_register_std_wstring:A04,__embind_register_void:C04,__emval_decref:gK0,__emval_incref:D04,__emval_take_value:U04,__memory_base:1024,__table_base:0,_abort:z04,_emscripten_get_heap_size:_K0,_emscripten_memcpy_big:J04,_emscripten_resize_heap:f04,_exit:l04,_llvm_log2_f64:M04,_llvm_trap:Z04,abortStackOverflow:h0,memory:R,nullFunc_i:w04,nullFunc_ii:K04,nullFunc_iidiiii:Q04,nullFunc_iii:G04,nullFunc_iiii:H04,nullFunc_iiiii:L04,nullFunc_jiji:q04,nullFunc_v:X04,nullFunc_vi:x04,nullFunc_vii:v04,nullFunc_viii:S04,nullFunc_viiii:W04,nullFunc_viiiii:Y04,nullFunc_viiiiii:R04,setTempRet0:W,table:Y};let nK0=E.asm(T04,Do,k0);E.asm=nK0;var Fo=E.__ZSt18uncaught_exceptionv=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.__ZSt18uncaught_exceptionv.apply(null,arguments)};let FJ3=E.___cxa_demangle=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.___cxa_demangle.apply(null,arguments)},UJ3=E.___embind_register_native_and_builtin_types=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.___embind_register_native_and_builtin_types.apply(null,arguments)};var O04=E.___getTypeName=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.___getTypeName.apply(null,arguments)};let zJ3=E._fflush=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._fflush.apply(null,arguments)};var AC=E._free=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._free.apply(null,arguments)},Tx=E._malloc=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm._malloc.apply(null,arguments)};let kJ3=E.establishStackSpace=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.establishStackSpace.apply(null,arguments)};var I04=E.globalCtors=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.globalCtors.apply(null,arguments)},Uo=E.stackAlloc=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.stackAlloc.apply(null,arguments)},pK0=E.stackRestore=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.stackRestore.apply(null,arguments)},zo=E.stackSave=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.stackSave.apply(null,arguments)};let fJ3=E.dynCall_i=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_i.apply(null,arguments)},lJ3=E.dynCall_ii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_ii.apply(null,arguments)},bJ3=E.dynCall_iidiiii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iidiiii.apply(null,arguments)},MJ3=E.dynCall_iii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iii.apply(null,arguments)},ZJ3=E.dynCall_iiii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiii.apply(null,arguments)},JJ3=E.dynCall_iiiii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_iiiii.apply(null,arguments)},wJ3=E.dynCall_jiji=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_jiji.apply(null,arguments)},KJ3=E.dynCall_v=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_v.apply(null,arguments)},QJ3=E.dynCall_vi=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_vi.apply(null,arguments)},GJ3=E.dynCall_vii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_vii.apply(null,arguments)},HJ3=E.dynCall_viii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viii.apply(null,arguments)},LJ3=E.dynCall_viiii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiii.apply(null,arguments)},qJ3=E.dynCall_viiiii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiiii.apply(null,arguments)},XJ3=E.dynCall_viiiiii=function(){return O(E0,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),O(!r0,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),E.asm.dynCall_viiiiii.apply(null,arguments)};E.asm=nK0,Object.getOwnPropertyDescriptor(E,"intArrayFromString")||(E.intArrayFromString=function(){Du("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"intArrayToString")||(E.intArrayToString=function(){Du("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),E.ccall=N,E.cwrap=V,Object.getOwnPropertyDescriptor(E,"setValue")||(E.setValue=function(){Du("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getValue")||(E.getValue=function(){Du("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"allocate")||(E.allocate=function(){Du("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getMemory")||(E.getMemory=function(){Du("'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(E,"AsciiToString")||(E.AsciiToString=function(){Du("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stringToAscii")||(E.stringToAscii=function(){Du("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"UTF8ArrayToString")||(E.UTF8ArrayToString=function(){Du("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"UTF8ToString")||(E.UTF8ToString=function(){Du("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stringToUTF8Array")||(E.stringToUTF8Array=function(){Du("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),E.stringToUTF8=y,Object.getOwnPropertyDescriptor(E,"lengthBytesUTF8")||(E.lengthBytesUTF8=function(){Du("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"UTF16ToString")||(E.UTF16ToString=function(){Du("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stringToUTF16")||(E.stringToUTF16=function(){Du("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"lengthBytesUTF16")||(E.lengthBytesUTF16=function(){Du("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"UTF32ToString")||(E.UTF32ToString=function(){Du("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stringToUTF32")||(E.stringToUTF32=function(){Du("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"lengthBytesUTF32")||(E.lengthBytesUTF32=function(){Du("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"allocateUTF8")||(E.allocateUTF8=function(){Du("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stackTrace")||(E.stackTrace=function(){Du("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addOnPreRun")||(E.addOnPreRun=function(){Du("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addOnInit")||(E.addOnInit=function(){Du("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addOnPreMain")||(E.addOnPreMain=function(){Du("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addOnExit")||(E.addOnExit=function(){Du("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addOnPostRun")||(E.addOnPostRun=function(){Du("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"writeStringToMemory")||(E.writeStringToMemory=function(){Du("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"writeArrayToMemory")||(E.writeArrayToMemory=function(){Du("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"writeAsciiToMemory")||(E.writeAsciiToMemory=function(){Du("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addRunDependency")||(E.addRunDependency=function(){Du("'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(E,"removeRunDependency")||(E.removeRunDependency=function(){Du("'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(E,"ENV")||(E.ENV=function(){Du("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"FS")||(E.FS=function(){Du("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"FS_createFolder")||(E.FS_createFolder=function(){Du("'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(E,"FS_createPath")||(E.FS_createPath=function(){Du("'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(E,"FS_createDataFile")||(E.FS_createDataFile=function(){Du("'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(E,"FS_createPreloadedFile")||(E.FS_createPreloadedFile=function(){Du("'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(E,"FS_createLazyFile")||(E.FS_createLazyFile=function(){Du("'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(E,"FS_createLink")||(E.FS_createLink=function(){Du("'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(E,"FS_createDevice")||(E.FS_createDevice=function(){Du("'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(E,"FS_unlink")||(E.FS_unlink=function(){Du("'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(E,"GL")||(E.GL=function(){Du("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"dynamicAlloc")||(E.dynamicAlloc=function(){Du("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"loadDynamicLibrary")||(E.loadDynamicLibrary=function(){Du("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"loadWebAssemblyModule")||(E.loadWebAssemblyModule=function(){Du("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getLEB")||(E.getLEB=function(){Du("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getFunctionTables")||(E.getFunctionTables=function(){Du("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"alignFunctionTables")||(E.alignFunctionTables=function(){Du("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"registerFunctions")||(E.registerFunctions=function(){Du("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"addFunction")||(E.addFunction=function(){Du("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"removeFunction")||(E.removeFunction=function(){Du("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getFuncWrapper")||(E.getFuncWrapper=function(){Du("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"prettyPrint")||(E.prettyPrint=function(){Du("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"makeBigInt")||(E.makeBigInt=function(){Du("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"dynCall")||(E.dynCall=function(){Du("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getCompilerSetting")||(E.getCompilerSetting=function(){Du("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stackSave")||(E.stackSave=function(){Du("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stackRestore")||(E.stackRestore=function(){Du("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"stackAlloc")||(E.stackAlloc=function(){Du("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"establishStackSpace")||(E.establishStackSpace=function(){Du("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"print")||(E.print=function(){Du("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"printErr")||(E.printErr=function(){Du("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"getTempRet0")||(E.getTempRet0=function(){Du("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"setTempRet0")||(E.setTempRet0=function(){Du("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"callMain")||(E.callMain=function(){Du("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"abort")||(E.abort=function(){Du("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"Pointer_stringify")||(E.Pointer_stringify=function(){Du("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(E,"warnOnce")||(E.warnOnce=function(){Du("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),E.writeStackCookie=S0,E.checkStackCookie=Y0,E.abortStackOverflow=h0,Object.getOwnPropertyDescriptor(E,"ALLOC_NORMAL")||Object.defineProperty(E,"ALLOC_NORMAL",{configurable:!0,get(){Du("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(E,"ALLOC_STACK")||Object.defineProperty(E,"ALLOC_STACK",{configurable:!0,get(){Du("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(E,"ALLOC_DYNAMIC")||Object.defineProperty(E,"ALLOC_DYNAMIC",{configurable:!0,get(){Du("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(E,"ALLOC_NONE")||Object.defineProperty(E,"ALLOC_NONE",{configurable:!0,get(){Du("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(E,"calledRun")||Object.defineProperty(E,"calledRun",{configurable:!0,get(){Du("'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 Ox;E.then=function(U0){if(Ox)U0(E);else{let K0=E.onRuntimeInitialized;E.onRuntimeInitialized=function(){K0&&K0(),U0(E)}}return E};function dK0(U0){this.name="ExitStatus",this.message=`Program terminated with exit(${U0})`,this.status=U0}$u=function U0(){Ox||ko(),Ox||($u=U0)};function ko(U0){if(U0=U0||D,zu>0||(S0(),c0(),zu>0))return;function K0(){Ox||(Ox=!0,!a&&(p0(),g0(),E.onRuntimeInitialized&&E.onRuntimeInitialized(),O(!E._main,'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'),n0()))}E.setStatus?(E.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>{E.setStatus("")},1),K0()},1)):K0(),Y0()}E.run=ko;function P04(){let U0=G,K0=L,s0=!1;G=L=function(Fu){s0=!0};try{let Fu=z1;Fu&&Fu(0)}catch{}G=U0,L=K0,s0&&(H("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."),H("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)"))}function j04(U0,K0){P04(),!(K0&&T&&U0===0)&&(T?K0||L(`program exited (with status: ${U0}), 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)`):(a=!0,I=U0,Bu(),E.onExit&&E.onExit(U0)),U(U0,new dK0(U0)))}if(E.preInit)for(typeof E.preInit=="function"&&(E.preInit=[E.preInit]);E.preInit.length>0;)E.preInit.pop()();return T=!0,ko(),E}}(),x43=X43;W43=(()=>{let u=new Uint8Array(128);for(let B=0;B<64;B++)u[B<26?B+65:B<52?B+71:B<62?B-4:B*4-205]=B;return(B)=>{let E=B.length,A=new Uint8Array((E-(B[E-1]=="=")-(B[E-2]=="="))*3/4|0);for(let C=0,D=0;C<E;){let F=u[B.charCodeAt(C++)],U=u[B.charCodeAt(C++)],z=u[B.charCodeAt(C++)],k=u[B.charCodeAt(C++)];A[D++]=F<<2|U>>4,A[D++]=U<<4|z>>2,A[D++]=z<<6|k}return A}})(),Y43=W43("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//8DNgIEIAEgBCACIAMQ2gQLIANBEGokACAAKAIAIgIoAggiBCACKAIEIgNLDQAgAi0AEEEBcUUNAQsLIAULPAEBf0GgEiEEAkAgAUUNACACKAIMIAAgAWoiACACKAIEa0kNACAAQaASIAIgACADKAIAENYEGyEECyAECy0AIAAQNyAAQThqEC0gAEHsAGoQ2AQgAEH4AGoQ2AQgACgCMBAPIABBADYCMAsNACAAIAEgAkEBEKUECw0AIAAgAUEcQRgQ7gwLJwAgACgCAARAIABBABDXBCAAKAIIEOcMCyAAQQA2AgggAEIANwIACw0AIAAgAUECQQUQ7wwLXgECfyAAQQRqIAMQJSIDIAE2AgQgAigCCCEBIAIoAgQhBCADIAAoAgAiBSACKAIAajYCACADIAQgBWsiAkEAIAIgBE0bIgIgASAFayIDIAIgA0kbOgAIIAAgATYCAAtNAAJAAkAgAEGkAkcEQCAAQYcCRg0CIABBEUcNASACIAFBEGoQ+QM2AhAMAgsgAiABQRBqEPkDNgIUDAELIAAgARDcBA8LIAFBADYCFAu+CAINfwN8AkACQAJAIABBHWsOAgABAgsgAUEQagJ/IAEoAggiAiABKAIEIgVPBEAgASAFQQFqNgIIQaASDAELIAEoAgAgAmoLLQAAIQIgAUEBEPYDLQAAQRB0IAJBGHRyIAFBAhD2Ay0AAEEIdHIgAUEDEPYDLQAAchD3AyABIAEoAghBBGo2AggPC0EAIQAjAEEwayIFJAACfCABKAIIIgIgASgCBCIETQRAIARBAmohBiAEQQFqIQogASgCACEJA0ACQCAAQR9LDQACQAJAAn8gB0EBcUUEQCACQQFqIgggBEsNBAJ/IAIgBE8EQCABIAo2AghBoBIhAyAGDAELIAIgCWohAyAICyECIAMtAAAhAyABIAI2AgggA0EEdgwBCyADQQ9xCyIIQQ1rDgMCAQABCyAFIAVBEGoiAjYCDAJ/IAAgAmohAkEAIQNBACEIQQAhCSAFKAIMIgwhAANAAkAgACACTw0AIAAtAABBCWsiBEEXS0EBIAR0QZ+AgARxRXINACAAQQFqIQAMAQsLAkAgACACRgRAIAIhAAwBC0EAIQRBASEGAkADQCAGQegcaiwAACELAkBBywQgACwAACIHIAZBAXQiDUGAG2otAAAiDk4EfyALIAcgDmsgByANQYEbai0AAEsbBSALCyAGQd8cai0AAEGgG2pqLAAAIgZ2QQFxDQACQAJAAkACQAJAIAZB+xxqLQAAQQFrDgUAAgMBBAULQQEhBAwEC0EBIQkMAwsgD0QAAAAAAAAkQKIgB0Ewa7egIQ8MAgsgEUSQmZmZmZn5QmVFDQEgEUQAAAAAAAAkQKIgB0Ewa7egIREgEEQAAAAAAADwP6AhEAwBCyADIANBCmwgB2pBMGsiAyADQf8PSyIHGyEDIAcgCHIhCAsgBkEBRg0BIAZB8RxqLAAAIQYgAEEBaiIAIAJHDQALIAIhAAsCQAJAAkACQAJAIBBEAAAAAAAAAABiBEAgDyARAn8gEEQAAAAAAADwQWMgEEQAAAAAAAAAAGZxBEAgEKsMAQtBAAsQkAGjoCEPIAQNAQwCCyAERQ0BCyAPmiEPIAhBAXFFDQEMAgsgCEEBcQ0BCyADRQ0CIAMQkAEhECAJRQ0BIA8gEKMhDwwCCyAPRAAAAAAAAAAAYQ0BIAkEQEQAAAAAAAAQgEQAAAAAAAAQACAEGyEPDAILRP///////+//RP///////+9/IAQbIQ8MAQsgDyAQoiEPCyAFIA85AwBBACAAIAxGDQAaIAUgADYCDCAAIAJGC0UNASAFKwMADAQLIAVBEGogAGogCEGXHmotAAA6AAAgCEEMRgRAIABBAWoiAEEgRg0BIAVBEGogAGpBLToAAAsgAEEBaiEAIAdBAWohBwwBCwsgASAKNgIIC0QAAAAAAAAAAAshDyAFQTBqJAAgAUEQahD4AyAPOQMADwsgACABEO4DCx8BAX4gAq0iBEIgiFAEfyAAIAEgBKcgAxClBAVBAAsLIgAgASgCDCAAIAEoAgRrSQRAQQAPCyABIAAgASgCKBDWBAvFAwEHfwJAIAEoAgwgACABKAIEa0kiBA0AIAEoAgggAGtBAkkiBQ0AIAQgBXJFBEAgASAAQQJqIAAvAAAiA0EIdCADQQh2ckH//wNxQQNsEJMEIQMLIANFDQAgAC8AACIDQQh0IANBCHZyQf//A3EhByAAQQJqIQVBACEDA0AgAyAHRwRAIANBA2whBCADQQFqIQNBACEGAkAgASgCDCAEIAVqIgQgASgCBGtJDQAgASgCCCAEa0EDSQ0AIAEoAiggBC8AACIIQQh0IAhBCHZyQf//A3FNDQAgBC0AAiACSSEGCyAGDQEMAgsLIAAvAABFDQAgBS8AAA0AQQEhAwNAIAAvAAAiAkEIdCACQQh2ckH//wNxIANLBEAgA0EDbCAFaiICQQNrLwAAIgRBCHQgBEEIdnJBoBIgAiAALwAAIgJBCHQgAkEIdnJB//8DcSADTRshAiADQQFqIQNB//8DcSACLwAAIgJBCHQgAkEIdnJB//8DcUkNAQwCCwsgABDgBCICIAEoAgRrIAEoAgxLDQAgASgCCCACa0ECSQ0AIAAQ4AQhACABKAIoIAAvAAAiAEEIdCAAQQh2ckH//wNxRiEJCyAJCy4BAX8gAC8AACIBBH8gAUEIdCABQQh2ckH//wNxQQNsIABqQQFrBUGgEgtBA2oLaQICfwF+AkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBBEkNACAAKAAAIgJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyrUIGfiIEQiCIpw0AIAEgAEEEaiAEpxCTBCEDCyADCxkAIAAgASgCADYCACAAQQRqIAFBBGoQxAMLHQEBfyAAEPkDIgFBAEgEfyAAQQE6AABBAAUgAQsLIgAgAC0ApCBFBEAgACAAQRBqEOMENgKgIAsgAEEBOgCkIAvuAQEDfyAALQAsRQRAIAEQRyECIABBAToALCAAIAI2AigLAn8gACABQaCMmZoEEEMiARA1A0AgABA2IAAoAgQiAkUEQCAAEDcgAQwCCyACIAAQ9QQhBCAAKAIgIQMCQAJAAkACQCAEBEAgA0UNAiAAQQA2AiAgAiAAEPUEIQIgACgCICAAEDcgAkVyDQEMAwsCQCADRQ0AIAAtABwNACAAIAEQFiICNgIEIAAgAiABKAIQajYCCCACDQQLIAAQNwsgARAPQaASDAQLIAAQNwsgASgCBARAIAFBADYCBAsgAQwCCyAAQQE6ABwMAAsACwu5AQEEfwJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQJJDQAgAC8AACIERQRAQQEPCyABKAIMIABBAmoiAiABKAIEa0kNACABKAIIIAJGDQAgAi0AACIFQQFrQf8BcUEDSw0AIAEgAEEDaiAFIARBCHQgBEEIdnJB//8DcUEBahDdBEUNACABIAIgAC0AAiAALwAAIgFBCHQgAUEIdnJB//8DcSIBQQFqbGogACABEJcBEJMEIQMLIAMLPAECfyAALwAAIgFFBEBBAg8LIAAtAAIhAiAAIAFBCHQgAUEIdnJB//8DcSIAEJcBIAIgAEEBamxqQQJqCzcBAX9BoBIhAwJAIAFFDQAgAigCDCAAIAFqIgAgAigCBGtJDQAgAEGgEiAAIAIQ5gQbIQMLIAML+gMBBX8gARCTAiAAKAIAIgIoAgQhBCACKAIIIQUDQAJAIAVBAWogBEsiBg0AIAIQmAEhBCAAKAIAIQIjAEEQayIFJAAgBUEAOgAIIAVCgICAgPD/PzcCACAFIAIoAqQgIAEoAgBBf3NqNgIMAkACQAJAAkACQAJAAkACQAJAAkACQAJAIARBgAJrDicICQkJCQkJBwkHBwcHBwcHBwcHBwkICAkHBwcHBwcCCQkJAQkHBQgACyAEDhMHBwcHBwgGBgYGBgYGCAgDAgYFBgsgASACQRBqEOMENgJMDAcLIAEgAkEQaiIDEOMENgJIIAEgAxDjBDYCQCABIAMQ4wQ2AjwMBgsgASACQRBqEPkDIgM2AlAgAkEANgIUIAMNBgwHCyABIAJBEGoQ+QMiAzYCVCACQQA2AhQgAw0FDAYLIAEgAkEQahD5AzYCWAwDCyABIAJBEGoiAxD5AzYCXCABIAMQ4wQ2AmAMAgsgAiACKAIINgKkICAEIAIgARDbBCACKAIURQ0CDAMLIAJBEGoQ4wQhAyABIAQQ9gRBAnRqIAM2AhgLIAJBADYCFAsgAigCCCACKAIESw0AIAItABBBAXENACABIAQgAiAFEJUCCyAFQRBqJAAgACgCACICKAIIIgUgAigCBCIESw0AIAItABBBAXFFDQELCyAGC4sDAQJ/QaASIQQCQCABRQ0AIAIoAgwgACABaiIBIAIoAgRrSQ0AIAFBoBICfyADKAIAIQBBACEDAkAgAigCDCABIAIoAgRrSQ0AIAIoAgggAUYNAAJAAkACQCABLQAADgMAAQIDCyABQQFqIQMgAigCKCEBIAAEQCAAIAE2AgALIAIgAyABQQFrEPkEDAMLIAFBAWohBSACKAIoQQFrIQECQANAIAEEQCACKAIMIAUgA0EDbGoiBCACKAIEa0kNAiACKAIIIARrQQNJDQIgASAELQACIgRNDQIgA0EBaiEDIAEgBEF/c2ohAQwBCwsgAEUNACAAIAM2AgALIAFFDAILIAFBAWohBSACKAIoQQFrIQECQANAIAEEQCACKAIMIAUgA0ECdGoiBCACKAIEa0kNAiACKAIIIARrQQRJDQIgASAELwACIgRBCHQgBEEIdnJB//8DcSIETQ0CIANBAWohAyABIARBf3NqIQEMAQsLIABFDQAgACADNgIACyABRSEDCyADCxshBAsgBAuZAQEBf0GgEiEEAkAgAUUNACACKAIMIAAgAWoiACACKAIEa0kNACAAQaASAn8gAy8AACIBQQh0IAFBCHZyQf//A3EhA0EAIQECQCACKAIMIAAgAigCBGtJDQAgAigCCCAARg0AAkACQCAALQAADgQAAgIBAgsgAEEBaiACEN4EDAILIABBAWogAiADEN8EIQELIAELGyEECyAEC/gBAQJ/QaASIQMCQCABRQ0AIAIoAgwgACABaiIAIAIoAgRrSQ0AQQAhAQJAIAIoAgwgACACKAIEa0kNACACKAIIIABGDQACQAJAAkAgAC0AAEH/AHEOAgABAwsCQCACKAIMIABBAWoiAyACKAIEa0kNACACKAIIIANGDQAgAiADQQFqIAMtAAAQkwQhBAsgBA0BDAILAkAgAigCDCAAQQFqIgMgAigCBGtJDQAgAigCCCADRg0AIAIgA0EBaiADLQAAQQF0EJMEIQQLIARFDQELQQEhASAALAAAQQBODQAgABD6BCACEPsEIQELIABBoBIgARshAwsgAwucAwEIfyABQQAgAUEAShshAwJAIAAoAgAiAkEASA0AQQEhBSACIANPDQAgAiEBA0AgASADSQRAIAEgAUEBdmpBCGohAQwBCwsCfyABQavVqtUATwRAIAJBf3MhAUEADAELAn8CQCABRQRAIABBCGohBwwBC0EAIAFBGGwQ5gwiBkUNARogAEEIaiEHQQAhAgNAIAIgACgCBE8NASAGIAJBGGwiCGoiBEIANwIAIARCADcCECAEQgA3AgggBCAAKAIIIAhqIgkQ4gQgBCAJKQIQNwIQIAAoAgggCGpBBGoQLSACQQFqIQIMAAsACyAHKAIAEOcMIAYLIgIgAUVyRQRAIAEgACgCACICTQ0CIAJBf3MhAUEADAELIAAgAjYCCEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEYbGoiAUIANwIAIAFCADcCECABQgA3AgggACAAKAIEQQFqIgE2AgQMAQsLDAELIAEgA00NACAAIAMQ8gQLIAAgAzYCBAsgBQv2AwEJfyAAKAIEQQFqIgFBACABQQBKGyEDAkAgACgCACICQQBIDQBBASEFIAIgA08NACACIQEDQCABIANJBEAgASABQQF2akEIaiEBDAELCwJ/IAFBgICAwABPBEAgAkF/cyEBQQAMAQsCfwJAIAFFBEAgAEEIaiEGDAELQQAgAUEFdBDmDCIHRQ0BGiAAQQhqIQYDQCAEIAAoAgRPDQEgByAEQQV0IghqIgJCADcCACACQgA3AhggAkIANwIQIAJCADcCCCACIAAoAgggCGoiCRDiBCACIAkpAhg3AhggAiAJKQIQNwIQIAAoAgggCGpBBGoQLSAEQQFqIQQMAAsACyAGKAIAEOcMIAcLIgIgAUVyRQRAIAEgACgCACICTQ0CIAJBf3MhAUEADAELIAAgAjYCCEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEFdGoiAUIANwIAIAFCADcCGCABQgA3AhAgAUIANwIIIAAgACgCBEEBaiIBNgIEDAELCwwBCyABIANNDQAgACADEPwECyAAIAM2AgQLIAVFBEBB6NAAQgA3AwBB4NAAQgA3AwBB2NAAQgA3AwBB0NAAQgA3AwBB0NAADwsgACgCCCAAKAIEQQV0akEgawuyAgEFfyABQgA3AgAgAUIANwIQIAFCADcCCCABQoCAgIBwNwIYIAAoAgAiAigCBCEDIAIoAgghBANAAkAgBEEBaiADSyIGDQAgAhCYASEDIAAoAgAhAiMAQRBrIgQkAAJAAkACQAJ/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//wNxagVBoBILIANBzAFqIANBmAFqEJEHIAMgASgCCEHsBUGQBiABKAIQQcKqzboERhtqNgKUASABKAIMIgIoAiwiBgRAIAYoAgwhCyAGKAIYIQcLIANBpAFqIRAgAigCCCEMIAIoAgQhDSACKAIYIQ4gAC8ACiECIANBADYCaCADIABBDGo2AmAgA0KAgICAEDcDWCADIAJBCHQg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CxoDQCAAIAAoAqgBIAAoArABaiIINgKoASAIIAAoAqwBRg0CIA8gCBDkC0UNAAsMAQsLIAkgCyAJQQEQhgJBAEEAEIUGQQEMAQsgCRCJAkEACyAEciEECwNAIABB2ABqIggQvQUgCBC2BUUNASAAKAJ4IABBqAFqIAgQtwVBDGogACgCqAEQ4AFFDQALDAALAAtBACEECyAAQZACaiQAIAJBIGokACAEQQFxBEAgByABIAdBARCGAkEAQQAQhQZBAQwCCyAHEIkCC0EACyECDAMLIAgQiQIMAQsgCBCJAgtBACECCyAGQYwBahAvCyAGQfACaiQAIAIFQQELDAULIAEgABC5CwwECyABIAAQgwsMAwsgASAAEIQLDAILIAEvAABBgAJGBH8jAEEQayICJAAgACgCDCIDIAMoAgQiAxDXAwR/IAMgAS8AADsAACADIAEvAAI7AAIgAiABLwACIgRBCHQgBEEIdnJB//8DcTYCDAJ/IAJBDGohBCADQQRqIgZBADYAACABKAAEBEAgACgCDCIDECEaIAAgASgABCIABH8gASAAQRh0IABBgP4DcUEIdHIgAEEIdkGA/gNxIABBGHZycmoFQaASCyAEELgLBEAgAyAGIANBARCGAkEAQQAQ/ghBAQwCCyADEIkCC0EACwVBAAsgAkEQaiQABUEBCyEDCyADCwuiDQILfwF+IAAvAABBgAJGBH8jAEHgAmsiAiQAIAEoAggiBCgCHCEHIAEoAgwiAyADKAIEIgUQKQRAIAUgAC8AADsAACACQgA3AbICIAJCADcBuAIgAkIANwGqAiACQQE6AKgCIAJBADYCpAIgAkKBgICAEDcCnAIgAC8AAiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAC8ACCIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgBEHQBGoiCSACQZwCahDqByACKAKsAiIDBEAgBSADQQh0IANBgP4DcUEIdnI7AAYgAkG4AWoiBCAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyAAQQhqIggvAAAiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILELMFIAJBth42AlwgAiAJNgJYIAJB9AFqIgMgBCACQdgAahDuByACQQA2AvABIAJCADcC6AEgBCADQSgQ0gwaIAIg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BH8gByAELwAAOwEAIARBAmohBCACQQFxBH8gASAHEMsJBUEACwVBAAshCiAGQQJxBEAgByAELwAAOwEIIAJBAnEEQCABIAdBCGoQywkhCAsgBEECaiEECyAGQQRxBH8gByAELwAAOwEQIARBAmohBCACQQRxBH8gASAHQRBqEMsJBUEACwVBAAshCyAGQQhxBEAgByAELwAAOwEYIAJBCHEEQCABIAdBGGoQywkhCQsgBEECaiEECyAALwAAQYAgSQ0AIAZBEHEEQCAKIAMgBCAFEMALIAEgAyAEIAUgAkEQEMELIARBAmohBAsgBkEgcQRAIAggAyAEIAUQwAsgASADIAQgBSACQSAQwQsgBEECaiEECyAGQcAAcQRAIAsgAyAEIAUQwAsgASADIAQgBSACQcAAEMELIARBAmohBAsgBkGAAXFFDQAgCSADIAQgBRDACyABIAMgBCAFIAJBgAEQwQsLIAdBIGokAAvtBwIIfwF+IwBBgAFrIgMkACAAQQA7AAAgARAhIQYgAyACKQIYNwMYIAMgAikCEDcDECADIAIpAgg3AwggAyACKQIANwMAAkACQCABIAYQkAJFDQAgAygCCCEIIAMgAykDGDcDeCADIAMpAxA3A3AgAyADKQMINwNoIAMgAykDADcDYCADQUBrIAMQwgtBfiEEQQAhAgNAAkACQCADKAJkIAMoAkRHDQAgAygCYCADKAJARw0AIAZBgARBgAIgCSAIIAdBA2xLckEBcSIEGzsAACACQf//A0sEQCABKAIYDQQgAUEINgIYDAQLIARFBEAgAyADKQMYNwN4IAMgAykDEDcDcCADIAMpAwgiCzcDaCADIAMpAwA3A2BBACECIAZBAmogASALpyIEQQAQngNFDQQgBkEEaiEFA0AgAiAERg0DIAUgAkEBdGogA0HgAGoiCBCgCy8BACIGQQh0IAZBCHZyOwAAIAJBAWohAiAIEL0BDAALAAsgAyADKQMYNwM4IAMgAykDEDcDMCADIAMpAwg3AyggAyADKQMANwMgIAEgBhAoRQ0DIAMgAykDODcDeCADIAMpAzA3A3AgAyADKQMoNwNoIAMgAykDIDcDYCADQUBrIANBIGoQwgtBACECQX4hBANAAkAgAygCZCADKAJERw0AIAMoAmAgAygCQEcNACAGQQJqIAEgAhCKBkUNBSACRQ0D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AkAgAiAAKAIQIgMEfyADBSAAENUMDQEgACgCEAsgACgCFCIEa0sEQCAAIAEgAiAAKAIkEQQAGgwBCwJAAkAgAkUgACgCUEEASHINACACIQMDQCABIANqIgVBAWstAABBCkcEQCADQQFrIgMNAQwCCwsgACABIAMgACgCJBEEACADSQ0CIAIgA2shAiAAKAIUIQQMAQsgASEFCyAEIAUgAhDSDBogACAAKAIUIAJqNgIUCwsLbwEFfyAAKAIAIgMsAABBMGsiAUEJSwRAQQAPCwNAQX8hBCACQcyZs+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==");T43={subset:R43},U_={Subset:"SUBSET"}});var IUu={};ju(IUu,{WorkerUrl:()=>P43});var P43;var PUu=g(()=>{rz0();wq();m4();P43=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async(u)=>{switch(u.data.command){case U_.Subset:let B=await hT(u.data.arrayBuffer,u.data.codePoints);self.postMessage(B,{transfer:[B]});break}})});var jUu={};ju(jUu,{toBase64:()=>F_,subsetToBinary:()=>hT,subsetToBase64:()=>OUu,Commands:()=>U_});var NUu=g(()=>{rz0();wq();m4()});var $z0={};ju($z0,{getTEXtChunk:()=>cz0,encodePngMetadata:()=>iUu,decodePngMetadata:()=>aUu});var yz0=g(()=>{gz0();wq();m4()});var hUu=P1((VUu,_z0)=>{/*!
pica
https://github.com/nodeca/pica
*/(function(u){if(typeof VUu==="object"&&typeof _z0<"u")_z0.exports=u();else if(typeof define==="function"&&define.amd)define([],u);else{var B;if(typeof window<"u")B=window;else if(typeof global<"u")B=global;else if(typeof self<"u")B=self;else B=this;B.pica=u()}})(function(){var u,B,E;return function(){function A(C,D,F){function U(f,l){if(!D[f]){if(!C[f]){var b=XQ;if(!l&&b)return b(f,!0);if(z)return z(f,!0);var M=Error("Cannot find module '"+f+"'");throw M.code="MODULE_NOT_FOUND",M}var Z=D[f]={exports:{}};C[f][0].call(Z.exports,function(J){var w=C[f][1][J];return U(w||J)},Z,Z.exports,A,C,D,F)}return D[f].exports}for(var z=XQ,k=0;k<F.length;k++)U(F[k]);return U}return A}()({1:[function(A,C,D){var F=A("inherits"),U=A("multimath"),z=A("./mm_unsharp_mask"),k=A("./mm_resize");function f(l){var b=l||[],M={js:b.indexOf("js")>=0,wasm:b.indexOf("wasm")>=0};U.call(this,M),this.features={js:M.js,wasm:M.wasm&&this.has_wasm()},this.use(z),this.use(k)}F(f,U),f.prototype.resizeAndUnsharp=function(b,M){var Z=this.resize(b,M);if(b.unsharpAmount)this.unsharp_mask(Z,b.toWidth,b.toHeight,b.unsharpAmount,b.unsharpRadius,b.unsharpThreshold);return Z},C.exports=f},{"./mm_resize":4,"./mm_unsharp_mask":9,inherits:19,multimath:20}],2:[function(A,C,D){function F(k){return k<0?0:k>255?255:k}function U(k,f,l,b,M,Z){var J,w,K,Q,G,L,H,q,x,v,W,S=0,T=0;for(x=0;x<b;x++){G=0;for(v=0;v<M;v++){L=Z[G++],H=Z[G++],q=S+L*4|0,J=w=K=Q=0;for(;H>0;H--)W=Z[G++],Q=Q+W*k[q+3]|0,K=K+W*k[q+2]|0,w=w+W*k[q+1]|0,J=J+W*k[q]|0,q=q+4|0;f[T+3]=F(Q+8192>>14),f[T+2]=F(K+8192>>14),f[T+1]=F(w+8192>>14),f[T]=F(J+8192>>14),T=T+b*4|0}T=(x+1)*4|0,S=(x+1)*l*4|0}}function z(k,f,l,b,M,Z){var J,w,K,Q,G,L,H,q,x,v,W,S=0,T=0;for(x=0;x<b;x++){G=0;for(v=0;v<M;v++){L=Z[G++],H=Z[G++],q=S+L*4|0,J=w=K=Q=0;for(;H>0;H--)W=Z[G++],Q=Q+W*k[q+3]|0,K=K+W*k[q+2]|0,w=w+W*k[q+1]|0,J=J+W*k[q]|0,q=q+4|0;f[T+3]=F(Q+8192>>14),f[T+2]=F(K+8192>>14),f[T+1]=F(w+8192>>14),f[T]=F(J+8192>>14),T=T+b*4|0}T=(x+1)*4|0,S=(x+1)*l*4|0}}C.exports={convolveHorizontally:U,convolveVertically:z}},{}],3:[function(A,C,D){C.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEXA2AAAGAGf39/f39/AGAHf39/f39/fwACDwEDZW52Bm1lbW9yeQIAAAMEAwABAgYGAX8AQQALB1cFEV9fd2FzbV9jYWxsX2N0b3JzAAAIY29udm9sdmUAAQpjb252b2x2ZUhWAAIMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAK7AMDAwABC8YDAQ9/AkAgA0UNACAERQ0AA0AgDCENQQAhE0EAIQcDQCAHQQJqIQYCfyAHQQF0IAVqIgcuAQIiFEUEQEGAwAAhCEGAwAAhCUGAwAAhCkGAwAAhCyAGDAELIBIgBy4BAGohCEEAIQsgFCEHQQAhDiAGIQlBACEPQQAhEANAIAUgCUEBdGouAQAiESAAIAhBAnRqKAIAIgpBGHZsIBBqIRAgCkH/AXEgEWwgC2ohCyAKQRB2Qf8BcSARbCAPaiEPIApBCHZB/wFxIBFsIA5qIQ4gCEEBaiEIIAlBAWohCSAHQQFrIgcNAAsgC0GAQGshCCAOQYBAayEJIA9BgEBrIQogEEGAQGshCyAGIBRqCyEHIAEgDUECdGogCUEOdSIGQf8BIAZB/wFIGyIGQQAgBkEAShtBCHRBgP4DcSAKQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EQdEGAgPwHcSALQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobcjYCACADIA1qIQ0gE0EBaiITIARHDQALIAxBAWoiDCACbCESIAMgDEcNAAsLCx4AQQAgAiADIAQgBSAAEAEgAkEAIAQgBSAGIAEQAQs="},{}],4:[function(A,C,D){C.exports={name:"resize",fn:A("./resize"),wasm_fn:A("./resize_wasm"),wasm_src:A("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(A,C,D){var F=A("./resize_filter_gen"),U=A("./convolve").convolveHorizontally,z=A("./convolve").convolveVertically;function k(f,l,b){var M=3,Z=l*b*4|0;while(M<Z)f[M]=255,M=M+4|0}C.exports=function(l){var{src:b,width:M,height:Z,toWidth:J,toHeight:w}=l,K=l.scaleX||l.toWidth/l.width,Q=l.scaleY||l.toHeight/l.height,G=l.offsetX||0,L=l.offsetY||0,H=l.dest||new Uint8Array(J*w*4),q=typeof l.quality>"u"?3:l.quality,x=l.alpha||!1,v=F(q,M,J,K,G),W=F(q,Z,w,Q,L),S=new Uint8Array(J*Z*4);if(U(b,S,M,Z,J,v),z(S,H,Z,J,w,W),!x)k(H,J,w);return H}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(A,C,D){var F=A("./resize_filter_info"),U=14;function z(k){return Math.round(k*((1<<U)-1))}C.exports=function(f,l,b,M,Z){var J=F[f].filter,w=1/M,K=Math.min(1,M),Q=F[f].win/K,G,L,H,q,x,v,W,S,T,R,Y,a,I,O,i,N,V,h=Math.floor((Q+1)*2),r=new Int16Array((h+2)*b),m=0,$=!r.subarray||!r.set;for(G=0;G<b;G++){L=(G+0.5)*w+Z,H=Math.max(0,Math.floor(L-Q)),q=Math.min(l-1,Math.ceil(L+Q)),x=q-H+1,v=new Float32Array(x),W=new Int16Array(x),S=0;for(T=H,R=0;T<=q;T++,R++)Y=J((T+0.5-L)*K),S+=Y,v[R]=Y;a=0;for(R=0;R<v.length;R++)I=v[R]/S,a+=I,W[R]=z(I);W[b>>1]+=z(1-a),O=0;while(O<W.length&&W[O]===0)O++;if(O<W.length){i=W.length-1;while(i>0&&W[i]===0)i--;if(N=H+O,V=i-O+1,r[m++]=N,r[m++]=V,!$)r.set(W.subarray(O,i+1),m),m+=V;else for(R=O;R<=i;R++)r[m++]=W[R]}else r[m++]=0,r[m++]=0}return r}},{"./resize_filter_info":7}],7:[function(A,C,D){C.exports=[{win:0.5,filter:function(U){return U>=-0.5&&U<0.5?1:0}},{win:1,filter:function(U){if(U<=-1||U>=1)return 0;if(U>-0.00000011920929&&U<0.00000011920929)return 1;var z=U*Math.PI;return Math.sin(z)/z*(0.54+0.46*Math.cos(z/1))}},{win:2,filter:function(U){if(U<=-2||U>=2)return 0;if(U>-0.00000011920929&&U<0.00000011920929)return 1;var z=U*Math.PI;return Math.sin(z)/z*Math.sin(z/2)/(z/2)}},{win:3,filter:function(U){if(U<=-3||U>=3)return 0;if(U>-0.00000011920929&&U<0.00000011920929)return 1;var z=U*Math.PI;return Math.sin(z)/z*Math.sin(z/3)/(z/3)}}]},{}],8:[function(A,C,D){var F=A("./resize_filter_gen");function U(l,b,M){var Z=3,J=b*M*4|0;while(Z<J)l[Z]=255,Z=Z+4|0}function z(l){return new Uint8Array(l.buffer,0,l.byteLength)}var k=!0;try{k=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1}catch(l){}function f(l,b,M){if(k){b.set(z(l),M);return}for(var Z=M,J=0;J<l.length;J++){var w=l[J];b[Z++]=w&255,b[Z++]=w>>8&255}}C.exports=function(b){var{src:M,width:Z,height:J,toWidth:w,toHeight:K}=b,Q=b.scaleX||b.toWidth/b.width,G=b.scaleY||b.toHeight/b.height,L=b.offsetX||0,H=b.offsetY||0,q=b.dest||new Uint8Array(w*K*4),x=typeof b.quality>"u"?3:b.quality,v=b.alpha||!1,W=F(x,Z,w,Q,L),S=F(x,J,K,G,H),T=0,R=this.__align(T+Math.max(M.byteLength,q.byteLength)),Y=this.__align(R+J*w*4),a=this.__align(Y+W.byteLength),I=a+S.byteLength,O=this.__instance("resize",I),i=new Uint8Array(this.__memory.buffer),N=new Uint32Array(this.__memory.buffer),V=new Uint32Array(M.buffer);N.set(V),f(W,i,Y),f(S,i,a);var h=O.exports.convolveHV||O.exports._convolveHV;h(Y,a,R,Z,J,w,K);var r=new Uint32Array(q.buffer);if(r.set(new Uint32Array(this.__memory.buffer,0,K*w)),!v)U(q,w,K);return q}},{"./resize_filter_gen":6}],9:[function(A,C,D){C.exports={name:"unsharp_mask",fn:A("./unsharp_mask"),wasm_fn:A("./unsharp_mask_wasm"),wasm_src:A("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":10,"./unsharp_mask_wasm":11,"./unsharp_mask_wasm_base64":12}],10:[function(A,C,D){var F=A("glur/mono16");function U(z,k,f){var l=k*f,b=new Uint16Array(l),M,Z,J,w;for(var K=0;K<l;K++)M=z[4*K],Z=z[4*K+1],J=z[4*K+2],w=M>=Z&&M>=J?M:Z>=J&&Z>=M?Z:J,b[K]=w<<8;return b}C.exports=function(k,f,l,b,M,Z){var J,w,K,Q,G;if(b===0||M<0.5)return;if(M>2)M=2;var L=U(k,f,l),H=new Uint16Array(L);F(H,f,l,M);var q=b/100*4096+0.5|0,x=Z<<8,v=f*l;for(var W=0;W<v;W++)if(J=L[W],Q=J-H[W],Math.abs(Q)>=x)w=J+(q*Q+2048>>12),w=w>65280?65280:w,w=w<0?0:w,J=J!==0?J:1,K=(w<<12)/J|0,G=W*4,k[G]=k[G]*K+2048>>12,k[G+1]=k[G+1]*K+2048>>12,k[G+2]=k[G+2]*K+2048>>12}},{"glur/mono16":18}],11:[function(A,C,D){C.exports=function(U,z,k,f,l,b){if(f===0||l<0.5)return;if(l>2)l=2;var M=z*k,Z=M*4,J=M*2,w=M*2,K=Math.max(z,k)*4,Q=32,G=0,L=Z,H=L+J,q=H+w,x=q+w,v=x+K,W=this.__instance("unsharp_mask",Z+J+w*2+K+Q,{exp:Math.exp}),S=new Uint32Array(U.buffer),T=new Uint32Array(this.__memory.buffer);T.set(S);var R=W.exports.hsv_v16||W.exports._hsv_v16;R(G,L,z,k),R=W.exports.blurMono16||W.exports._blurMono16,R(L,H,q,x,v,z,k,l),R=W.exports.unsharp||W.exports._unsharp,R(G,G,L,H,z,k,f,b),S.set(new Uint32Array(this.__memory.buffer,0,M))}},{}],12:[function(A,C,D){C.exports="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"},{}],13:[function(A,C,D){var F=100;function U(z,k){this.create=z,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=k||2000}U.prototype.acquire=function(){var z=this,k;if(this.available.length!==0)k=this.available.pop();else k=this.create(),k.id=this.lastId++,k.release=function(){return z.release(k)};return this.acquired[k.id]=k,k},U.prototype.release=function(z){var k=this;if(delete this.acquired[z.id],z.lastUsed=Date.now(),this.available.push(z),this.timeoutId===0)this.timeoutId=setTimeout(function(){return k.gc()},F)},U.prototype.gc=function(){var z=this,k=Date.now();if(this.available=this.available.filter(function(f){if(k-f.lastUsed>z.idle)return f.destroy(),!1;return!0}),this.available.length!==0)this.timeoutId=setTimeout(function(){return z.gc()},F);else this.timeoutId=0},C.exports=U},{}],14:[function(A,C,D){var F=2;C.exports=function(z,k,f,l,b,M){var Z=f/z,J=l/k,w=(2*M+F+1)/b;if(w>0.5)return[[f,l]];var K=Math.ceil(Math.log(Math.min(Z,J))/Math.log(w));if(K<=1)return[[f,l]];var Q=[];for(var G=0;G<K;G++){var L=Math.round(Math.pow(Math.pow(z,K-G-1)*Math.pow(f,G+1),1/K)),H=Math.round(Math.pow(Math.pow(k,K-G-1)*Math.pow(l,G+1),1/K));Q.push([L,H])}return Q}},{}],15:[function(A,C,D){var F=0.00001;function U(k){var f=Math.round(k);if(Math.abs(k-f)<F)return f;return Math.floor(k)}function z(k){var f=Math.round(k);if(Math.abs(k-f)<F)return f;return Math.ceil(k)}C.exports=function(f){var l=f.toWidth/f.width,b=f.toHeight/f.height,M=U(f.srcTileSize*l)-2*f.destTileBorder,Z=U(f.srcTileSize*b)-2*f.destTileBorder;if(M<1||Z<1)throw Error("Internal error in pica: target tile width/height is too small.");var J,w,K,Q,G,L,H=[],q;for(Q=0;Q<f.toHeight;Q+=Z)for(K=0;K<f.toWidth;K+=M){if(J=K-f.destTileBorder,J<0)J=0;if(G=K+M+f.destTileBorder-J,J+G>=f.toWidth)G=f.toWidth-J;if(w=Q-f.destTileBorder,w<0)w=0;if(L=Q+Z+f.destTileBorder-w,w+L>=f.toHeight)L=f.toHeight-w;q={toX:J,toY:w,toWidth:G,toHeight:L,toInnerX:K,toInnerY:Q,toInnerWidth:M,toInnerHeight:Z,offsetX:J/l-U(J/l),offsetY:w/b-U(w/b),scaleX:l,scaleY:b,x:U(J/l),y:U(w/b),width:z(G/l),height:z(L/b)},H.push(q)}return H}},{}],16:[function(A,C,D){function F(U){return Object.prototype.toString.call(U)}C.exports.isCanvas=function(z){var k=F(z);return k==="[object HTMLCanvasElement]"||k==="[object OffscreenCanvas]"||k==="[object Canvas]"},C.exports.isImage=function(z){return F(z)==="[object HTMLImageElement]"},C.exports.isImageBitmap=function(z){return F(z)==="[object ImageBitmap]"},C.exports.limiter=function(z){var k=0,f=[];function l(){if(k<z&&f.length)k++,f.shift()()}return function(M){return new Promise(function(Z,J){f.push(function(){M().then(function(w){Z(w),k--,l()},function(w){J(w),k--,l()})}),l()})}},C.exports.cib_quality_name=function(z){switch(z){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},C.exports.cib_support=function(z){return Promise.resolve().then(function(){if(typeof createImageBitmap>"u")return!1;var k=z(100,100);return createImageBitmap(k,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(f){var l=f.width===10;return f.close(),k=null,l})}).catch(function(){return!1})},C.exports.worker_offscreen_canvas_support=function(){return new Promise(function(z,k){if(typeof OffscreenCanvas>"u"){z(!1);return}function f(M){if(typeof createImageBitmap>"u"){M.postMessage(!1);return}Promise.resolve().then(function(){var Z=new OffscreenCanvas(10,10),J=Z.getContext("2d");return J.rect(0,0,1,1),createImageBitmap(Z,0,0,1,1)}).then(function(){return M.postMessage(!0)},function(){return M.postMessage(!1)})}var l=btoa("(".concat(f.toString(),")(self);")),b=new Worker("data:text/javascript;base64,".concat(l));b.onmessage=function(M){return z(M.data)},b.onerror=k}).then(function(z){return z},function(){return!1})},C.exports.can_use_canvas=function(z){var k=!1;try{var f=z(2,1),l=f.getContext("2d"),b=l.createImageData(2,1);if(b.data[0]=12,b.data[1]=23,b.data[2]=34,b.data[3]=255,b.data[4]=45,b.data[5]=56,b.data[6]=67,b.data[7]=255,l.putImageData(b,0,0),b=null,b=l.getImageData(0,0,2,1),b.data[0]===12&&b.data[1]===23&&b.data[2]===34&&b.data[3]===255&&b.data[4]===45&&b.data[5]===56&&b.data[6]===67&&b.data[7]===255)k=!0}catch(M){}return k},C.exports.cib_can_use_region=function(){return new Promise(function(z){if(typeof createImageBitmap>"u"){z(!1);return}var k=new Image;k.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",k.onload=function(){createImageBitmap(k,0,0,k.width,k.height).then(function(f){if(f.width===k.width&&f.height===k.height)z(!0);else z(!1)},function(){return z(!1)})},k.onerror=function(){return z(!1)}})}},{}],17:[function(A,C,D){C.exports=function(){var F=A("./mathlib"),U;onmessage=function(k){var f=k.data.opts,l=!1;if(!f.src&&f.srcBitmap){var b=new OffscreenCanvas(f.width,f.height),M=b.getContext("2d",{alpha:Boolean(f.alpha)});M.drawImage(f.srcBitmap,0,0),f.src=M.getImageData(0,0,f.width,f.height).data,b.width=b.height=0,b=null,f.srcBitmap.close(),f.srcBitmap=null}if(!U)U=new F(k.data.features);var Z=U.resizeAndUnsharp(f);if(l){var J=new ImageData(new Uint8ClampedArray(Z),f.toWidth,f.toHeight),w=new OffscreenCanvas(f.toWidth,f.toHeight),K=w.getContext("2d",{alpha:Boolean(f.alpha)});K.putImageData(J,0,0),createImageBitmap(w).then(function(Q){postMessage({bitmap:Q},[Q])})}else postMessage({data:Z},[Z.buffer])}}},{"./mathlib":1}],18:[function(A,C,D){var F,U,z,k,f,l,b,M;function Z(K){if(K<0.5)K=0.5;var Q=Math.exp(0.527076)/K,G=Math.exp(-Q),L=Math.exp(-2*Q),H=(1-G)*(1-G)/(1+2*Q*G-L);return F=H,U=H*(Q-1)*G,z=H*(Q+1)*G,k=-H*L,f=2*G,l=-L,b=(F+U)/(1-f-l),M=(z+k)/(1-f-l),new Float32Array([F,U,z,k,f,l,b,M])}function J(K,Q,G,L,H,q){var x,v,W,S,T,R,Y,a,I,O,i,N,V,h;for(I=0;I<q;I++){R=I*H,Y=I,a=0,x=K[R],T=x*L[6],S=T,i=L[0],N=L[1],V=L[4],h=L[5];for(O=0;O<H;O++)v=K[R],W=v*i+x*N+S*V+T*h,T=S,S=W,x=v,G[a]=S,a++,R++;R--,a--,Y+=q*(H-1),x=K[R],T=x*L[7],S=T,v=x,i=L[2],N=L[3];for(O=H-1;O>=0;O--)W=v*i+x*N+S*V+T*h,T=S,S=W,x=v,v=K[R],Q[Y]=G[a]+S,R--,a--,Y-=q}}function w(K,Q,G,L){if(!L)return;var H=new Uint16Array(K.length),q=new Float32Array(Math.max(Q,G)),x=Z(L);J(K,H,q,x,Q,G,L),J(H,K,q,x,G,Q,L)}C.exports=w},{}],19:[function(A,C,D){if(typeof Object.create==="function")C.exports=function(U,z){if(z)U.super_=z,U.prototype=Object.create(z.prototype,{constructor:{value:U,enumerable:!1,writable:!0,configurable:!0}})};else C.exports=function(U,z){if(z){U.super_=z;var k=function(){};k.prototype=z.prototype,U.prototype=new k,U.prototype.constructor=U}}},{}],20:[function(A,C,D){var F=A("object-assign"),U=A("./lib/base64decode"),z=A("./lib/wa_detect"),k={js:!0,wasm:!0};function f(l){if(!(this instanceof f))return new f(l);var b=F({},k,l||{});if(this.options=b,this.__cache={},this.__init_promise=null,this.__modules=b.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')}f.prototype.has_wasm=z,f.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},f.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(b){var M=l.__modules[b];if(!l.options.wasm||!l.has_wasm()||!M.wasm_fn)return null;if(l.__wasm[b])return null;return WebAssembly.compile(l.__base64decode(M.wasm_src)).then(function(Z){l.__wasm[b]=Z})})).then(function(){return l}),this.__init_promise},f.prototype.__base64decode=U,f.prototype.__reallocate=function(b){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(b/65536)}),this.__memory;var M=this.__memory.buffer.byteLength;if(M<b)this.__memory.grow(Math.ceil((b-M)/65536));return this.__memory},f.prototype.__instance=function(b,M,Z){if(M)this.__reallocate(M);if(!this.__wasm[b]){var J=this.__modules[b];this.__wasm[b]=new WebAssembly.Module(this.__base64decode(J.wasm_src))}if(!this.__cache[b]){var w={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[b]=new WebAssembly.Instance(this.__wasm[b],{env:F(w,Z||{})})}return this.__cache[b]},f.prototype.__align=function(b,M){M=M||8;var Z=b%M;return b+(Z?M-Z:0)},C.exports=f},{"./lib/base64decode":21,"./lib/wa_detect":22,"object-assign":23}],21:[function(A,C,D){var F="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";C.exports=function(z){var k=z.replace(/[\r\n=]/g,""),f=k.length,l=new Uint8Array(f*3>>2),b=0,M=0;for(var Z=0;Z<f;Z++){if(Z%4===0&&Z)l[M++]=b>>16&255,l[M++]=b>>8&255,l[M++]=b&255;b=b<<6|F.indexOf(k.charAt(Z))}var J=f%4*6;if(J===0)l[M++]=b>>16&255,l[M++]=b>>8&255,l[M++]=b&255;else if(J===18)l[M++]=b>>10&255,l[M++]=b>>2&255;else if(J===12)l[M++]=b>>4&255;return l}},{}],22:[function(A,C,D){var F;C.exports=function(){if(typeof F<"u")return F;if(F=!1,typeof WebAssembly>"u")return F;try{var z=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]),k=new WebAssembly.Module(z),f=new WebAssembly.Instance(k,{});if(f.exports.test(4)!==0)F=!0;return F}catch(l){}return F}},{}],23:[function(A,C,D){var F=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable;function k(l){if(l===null||l===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(l)}function f(){try{if(!Object.assign)return!1;var l=new String("abc");if(l[5]="de",Object.getOwnPropertyNames(l)[0]==="5")return!1;var b={};for(var M=0;M<10;M++)b["_"+String.fromCharCode(M)]=M;var Z=Object.getOwnPropertyNames(b).map(function(w){return b[w]});if(Z.join("")!=="0123456789")return!1;var J={};if("abcdefghijklmnopqrst".split("").forEach(function(w){J[w]=w}),Object.keys(Object.assign({},J)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(w){return!1}}C.exports=f()?Object.assign:function(l,b){var M,Z=k(l),J;for(var w=1;w<arguments.length;w++){M=Object(arguments[w]);for(var K in M)if(U.call(M,K))Z[K]=M[K];if(F){J=F(M);for(var Q=0;Q<J.length;Q++)if(z.call(M,J[Q]))Z[J[Q]]=M[J[Q]]}}return Z}},{}],24:[function(A,C,D){var F=arguments[3],U=arguments[4],z=arguments[5],k=JSON.stringify;C.exports=function(f,l){var b,M=Object.keys(z);for(var Z=0,J=M.length;Z<J;Z++){var w=M[Z],K=z[w].exports;if(K===f||K&&K.default===f){b=w;break}}if(!b){b=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var Q={};for(var Z=0,J=M.length;Z<J;Z++){var w=M[Z];Q[w]=w}U[b]=["function(require,module,exports){"+f+"(self); }",Q]}var G=Math.floor(Math.pow(16,8)*Math.random()).toString(16),L={};L[b]=b,U[G]=["function(require,module,exports){var f = require("+k(b)+");(f.default ? f.default : f)(self);}",L];var H={};q(G);function q(R){H[R]=!0;for(var Y in U[R][1]){var a=U[R][1][Y];if(!H[a])q(a)}}var x="("+F+")({"+Object.keys(H).map(function(R){return k(R)+":["+U[R][0]+","+k(U[R][1])+"]"}).join(",")+"},{},["+k(G)+"])",v=window.URL||window.webkitURL||window.mozURL||window.msURL,W=new Blob([x],{type:"text/javascript"});if(l&&l.bare)return W;var S=v.createObjectURL(W),T=new Worker(S);return T.objectURL=S,T}},{}],"/index.js":[function(A,C,D){function F(O,i){return l(O)||f(O,i)||z(O,i)||U()}function U(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function z(O,i){if(!O)return;if(typeof O==="string")return k(O,i);var N=Object.prototype.toString.call(O).slice(8,-1);if(N==="Object"&&O.constructor)N=O.constructor.name;if(N==="Map"||N==="Set")return Array.from(O);if(N==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(N))return k(O,i)}function k(O,i){if(i==null||i>O.length)i=O.length;for(var N=0,V=Array(i);N<i;N++)V[N]=O[N];return V}function f(O,i){var N=O==null?null:typeof Symbol<"u"&&O[Symbol.iterator]||O["@@iterator"];if(N==null)return;var V=[],h=!0,r=!1,m,$;try{for(N=N.call(O);!(h=(m=N.next()).done);h=!0)if(V.push(m.value),i&&V.length===i)break}catch(y){r=!0,$=y}finally{try{if(!h&&N.return!=null)N.return()}finally{if(r)throw $}}return V}function l(O){if(Array.isArray(O))return O}var b=A("object-assign"),M=A("webworkify"),Z=A("./lib/mathlib"),J=A("./lib/pool"),w=A("./lib/utils"),K=A("./lib/worker"),Q=A("./lib/stepper"),G=A("./lib/tiler"),L={},H=!1;try{if(typeof navigator<"u"&&navigator.userAgent)H=navigator.userAgent.indexOf("Safari")>=0}catch(O){}var q=1;if(typeof navigator<"u")q=Math.min(navigator.hardwareConcurrency||1,4);var x={tile:1024,concurrency:q,features:["js","wasm","ww"],idle:2000,createCanvas:function(i,N){var V=document.createElement("canvas");return V.width=i,V.height=N,V}},v={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},W=!1,S=!1,T=!1,R=!1,Y=!1;function a(){return{value:M(K),destroy:function(){if(this.value.terminate(),typeof window<"u"){var i=window.URL||window.webkitURL||window.mozURL||window.msURL;if(i&&i.revokeObjectURL&&this.value.objectURL)i.revokeObjectURL(this.value.objectURL)}}}}function I(O){if(!(this instanceof I))return new I(O);this.options=b({},x,O||{});var i="lk_".concat(this.options.concurrency);if(this.__limit=L[i]||w.limiter(this.options.concurrency),!L[i])L[i]=this.__limit;this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}I.prototype.init=function(){var O=this;if(this.__initPromise)return this.__initPromise;if(typeof ImageData<"u"&&typeof Uint8ClampedArray<"u")try{new ImageData(new Uint8ClampedArray(400),10,10),W=!0}catch(y){}if(typeof ImageBitmap<"u")if(ImageBitmap.prototype&&ImageBitmap.prototype.close)S=!0;else this.debug("ImageBitmap does not support .close(), disabled");var i=this.options.features.slice();if(i.indexOf("all")>=0)i=["cib","wasm","js","ww"];if(this.__requested_features=i,this.__mathlib=new Z(i),i.indexOf("ww")>=0){if(typeof window<"u"&&"Worker"in window)try{var N=A("webworkify")(function(){});N.terminate(),this.features.ww=!0;var V="wp_".concat(JSON.stringify(this.options));if(L[V])this.__workersPool=L[V];else this.__workersPool=new J(a,this.options.idle),L[V]=this.__workersPool}catch(y){}}var h=this.__mathlib.init().then(function(y){b(O.features,y.features)}),r;if(!S)r=Promise.resolve(!1);else r=w.cib_support(this.options.createCanvas).then(function(y){if(O.features.cib&&i.indexOf("cib")<0){O.debug("createImageBitmap() resize supported, but disabled by config");return}if(i.indexOf("cib")>=0)O.features.cib=y});T=w.can_use_canvas(this.options.createCanvas);var m;if(S&&W&&i.indexOf("ww")!==-1)m=w.worker_offscreen_canvas_support();else m=Promise.resolve(!1);m=m.then(function(y){R=y});var $=w.cib_can_use_region().then(function(y){Y=y});return this.__initPromise=Promise.all([h,r,m,$]).then(function(){return O}),this.__initPromise},I.prototype.__invokeResize=function(O,i){var N=this;return i.__mathCache=i.__mathCache||{},Promise.resolve().then(function(){if(!N.features.ww)return{data:N.__mathlib.resizeAndUnsharp(O,i.__mathCache)};return new Promise(function(V,h){var r=N.__workersPool.acquire();if(i.cancelToken)i.cancelToken.catch(function($){return h($)});r.value.onmessage=function($){if(r.release(),$.data.err)h($.data.err);else V($.data)};var m=[];if(O.src)m.push(O.src.buffer);if(O.srcBitmap)m.push(O.srcBitmap);r.value.postMessage({opts:O,features:N.__requested_features,preload:{wasm_nodule:N.__mathlib.__}},m)})})},I.prototype.__extractTileData=function(O,i,N,V,h){if(this.features.ww&&R&&(w.isCanvas(i)||Y))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(V.srcImageBitmap||i,O.x,O.y,O.width,O.height).then(function($){return h.srcBitmap=$,h});if(w.isCanvas(i)){if(!V.srcCtx)V.srcCtx=i.getContext("2d",{alpha:Boolean(N.alpha)});return this.debug("Get tile pixel data"),h.src=V.srcCtx.getImageData(O.x,O.y,O.width,O.height).data,h}this.debug("Draw tile imageBitmap/image to temporary canvas");var r=this.options.createCanvas(O.width,O.height),m=r.getContext("2d",{alpha:Boolean(N.alpha)});return m.globalCompositeOperation="copy",m.drawImage(V.srcImageBitmap||i,O.x,O.y,O.width,O.height,0,0,O.width,O.height),this.debug("Get tile pixel data"),h.src=m.getImageData(0,0,O.width,O.height).data,r.width=r.height=0,h},I.prototype.__landTileData=function(O,i,N){var V;if(this.debug("Convert raw rgba tile result to ImageData"),i.bitmap)return N.toCtx.drawImage(i.bitmap,O.toX,O.toY),null;if(W)V=new ImageData(new Uint8ClampedArray(i.data),O.toWidth,O.toHeight);else if(V=N.toCtx.createImageData(O.toWidth,O.toHeight),V.data.set)V.data.set(i.data);else for(var h=V.data.length-1;h>=0;h--)V.data[h]=i.data[h];if(this.debug("Draw tile"),H)N.toCtx.putImageData(V,O.toX,O.toY,O.toInnerX-O.toX,O.toInnerY-O.toY,O.toInnerWidth+0.00001,O.toInnerHeight+0.00001);else N.toCtx.putImageData(V,O.toX,O.toY,O.toInnerX-O.toX,O.toInnerY-O.toY,O.toInnerWidth,O.toInnerHeight);return null},I.prototype.__tileAndResize=function(O,i,N){var V=this,h={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null},r=function($){return V.__limit(function(){if(N.canceled)return N.cancelToken;var y={width:$.width,height:$.height,toWidth:$.toWidth,toHeight:$.toHeight,scaleX:$.scaleX,scaleY:$.scaleY,offsetX:$.offsetX,offsetY:$.offsetY,quality:N.quality,alpha:N.alpha,unsharpAmount:N.unsharpAmount,unsharpRadius:N.unsharpRadius,unsharpThreshold:N.unsharpThreshold};return V.debug("Invoke resize math"),Promise.resolve(y).then(function(p){return V.__extractTileData($,O,N,h,p)}).then(function(p){return V.debug("Invoke resize math"),V.__invokeResize(p,N)}).then(function(p){if(N.canceled)return N.cancelToken;return h.srcImageData=null,V.__landTileData($,p,h)})})};return Promise.resolve().then(function(){if(h.toCtx=i.getContext("2d",{alpha:Boolean(N.alpha)}),w.isCanvas(O))return null;if(w.isImageBitmap(O))return h.srcImageBitmap=O,h.isImageBitmapReused=!0,null;if(w.isImage(O)){if(!S)return null;return V.debug("Decode image via createImageBitmap"),createImageBitmap(O).then(function(m){h.srcImageBitmap=m}).catch(function(m){return null})}throw Error('Pica: ".from" should be Image, Canvas or ImageBitmap')}).then(function(){if(N.canceled)return N.cancelToken;V.debug("Calculate tiles");var m=G({width:N.width,height:N.height,srcTileSize:V.options.tile,toWidth:N.toWidth,toHeight:N.toHeight,destTileBorder:N.__destTileBorder}),$=m.map(function(p){return r(p)});function y(p){if(p.srcImageBitmap){if(!p.isImageBitmapReused)p.srcImageBitmap.close();p.srcImageBitmap=null}}return V.debug("Process tiles"),Promise.all($).then(function(){return V.debug("Finished!"),y(h),i},function(p){throw y(h),p})})},I.prototype.__processStages=function(O,i,N,V){var h=this;if(V.canceled)return V.cancelToken;var r=O.shift(),m=F(r,2),$=m[0],y=m[1],p=O.length===0;V=b({},V,{toWidth:$,toHeight:y,quality:p?V.quality:Math.min(1,V.quality)});var e;if(!p)e=this.options.createCanvas($,y);return this.__tileAndResize(i,p?N:e,V).then(function(){if(p)return N;return V.width=$,V.height=y,h.__processStages(O,e,N,V)}).then(function(_){if(e)e.width=e.height=0;return _})},I.prototype.__resizeViaCreateImageBitmap=function(O,i,N){var V=this,h=i.getContext("2d",{alpha:Boolean(N.alpha)});return this.debug("Resize via createImageBitmap()"),createImageBitmap(O,{resizeWidth:N.toWidth,resizeHeight:N.toHeight,resizeQuality:w.cib_quality_name(N.quality)}).then(function(r){if(N.canceled)return N.cancelToken;if(!N.unsharpAmount)return h.drawImage(r,0,0),r.close(),h=null,V.debug("Finished!"),i;V.debug("Unsharp result");var m=V.options.createCanvas(N.toWidth,N.toHeight),$=m.getContext("2d",{alpha:Boolean(N.alpha)});$.drawImage(r,0,0),r.close();var y=$.getImageData(0,0,N.toWidth,N.toHeight);return V.__mathlib.unsharp_mask(y.data,N.toWidth,N.toHeight,N.unsharpAmount,N.unsharpRadius,N.unsharpThreshold),h.putImageData(y,0,0),m.width=m.height=0,y=$=m=h=null,V.debug("Finished!"),i})},I.prototype.resize=function(O,i,N){var V=this;this.debug("Start resize...");var h=b({},v);if(!isNaN(N))h=b(h,{quality:N});else if(N)h=b(h,N);if(h.toWidth=i.width,h.toHeight=i.height,h.width=O.naturalWidth||O.width,h.height=O.naturalHeight||O.height,i.width===0||i.height===0)return Promise.reject(Error("Invalid output size: ".concat(i.width,"x").concat(i.height)));if(h.unsharpRadius>2)h.unsharpRadius=2;if(h.canceled=!1,h.cancelToken)h.cancelToken=h.cancelToken.then(function(m){throw h.canceled=!0,m},function(m){throw h.canceled=!0,m});var r=3;return h.__destTileBorder=Math.ceil(Math.max(r,2.5*h.unsharpRadius|0)),this.init().then(function(){if(h.canceled)return h.cancelToken;if(V.features.cib)return V.__resizeViaCreateImageBitmap(O,i,h);if(!T){var m=Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw m.code="ERR_GET_IMAGE_DATA",m}var $=Q(h.width,h.height,h.toWidth,h.toHeight,V.options.tile,h.__destTileBorder);return V.__processStages($,O,i,h)})},I.prototype.resizeBuffer=function(O){var i=this,N=b({},v,O);return this.init().then(function(){return i.__mathlib.resizeAndUnsharp(N)})},I.prototype.toBlob=function(O,i,N){return i=i||"image/png",new Promise(function(V){if(O.toBlob){O.toBlob(function(y){return V(y)},i,N);return}if(O.convertToBlob){V(O.convertToBlob({type:i,quality:N}));return}var h=atob(O.toDataURL(i,N).split(",")[1]),r=h.length,m=new Uint8Array(r);for(var $=0;$<r;$++)m[$]=h.charCodeAt($);V(new Blob([m],{type:i}))})},I.prototype.debug=function(){},C.exports=I},{"./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")})});var _Uu={};ju(_Uu,{default:()=>g43});function mUu(u,B){var E={};return B.forEach(function(A){if(Object.prototype.hasOwnProperty.call(u,A))E[A]=u[A]}),E}function N43(u){return mUu(u,["alpha","unsharpAmount","unsharpRadius","unsharpThreshold","cancelToken"])}function rUu(u){var B={exports:{}};return u(B,B.exports),B.exports}function z_(u){throw Error('Could not dynamically require "'+u+'". Please configure the dynamicRequireTargets option of @rollup/plugin-commonjs appropriately for this require call to behave properly.')}function yUu(u){return this._getUint8Array(u.blob).then(function(B){if(u.is_jpeg=k_.is_jpeg(B),!u.is_jpeg)return Promise.resolve(u);u.orig_blob=u.blob;try{var E,A;if(k_.jpeg_exif_tags_each(B,function(D){if(D.ifd===0&&D.tag===274&&Array.isArray(D.value))return u.orientation=D.value[0]||1,E=D.is_big_endian,A=D.data_offset,!1}),A){var C=E?new Uint8Array([0,1]):new Uint8Array([1,0]);u.blob=new Blob([B.slice(0,A),C,B.slice(A+2)],{type:"image/jpeg"})}}catch(D){}return u})}function cUu(u){if(!u.is_jpeg)return Promise.resolve(u);var B=u.orientation-1;if(!B)return Promise.resolve(u);var E;if(B&4)E=this.pica.options.createCanvas(u.out_canvas.height,u.out_canvas.width);else E=this.pica.options.createCanvas(u.out_canvas.width,u.out_canvas.height);var A=E.getContext("2d");if(A.save(),B&1)A.transform(-1,0,0,1,E.width,0);if(B&2)A.transform(-1,0,0,-1,E.width,E.height);if(B&4)A.transform(0,1,1,0,0,0);return A.drawImage(u.out_canvas,0,0),A.restore(),u.out_canvas.width=u.out_canvas.height=0,u.out_canvas=E,Promise.resolve(u)}function gUu(u){if(!u.is_jpeg)return Promise.resolve(u);return Promise.all([this._getUint8Array(u.blob),this._getUint8Array(u.out_blob)]).then(function(B){var E=B[0],A=B[1];if(!k_.is_jpeg(E))return Promise.resolve(u);var C=[];return k_.jpeg_segments_each(E,function(D){if(D.code===218)return!1;C.push(D)}),C=C.filter(function(D){if(D.code===226)return!1;if(D.code>=224&&D.code<240)return!0;if(D.code===254)return!0;return!1}).map(function(D){return E.slice(D.offset,D.offset+D.length)}),u.out_blob=new Blob([A.slice(0,2)].concat(C).concat([A.slice(20)]),{type:"image/jpeg"}),u})}function V43(u){u.before("_blob_to_image",yUu),u.after("_transform",cUu),u.after("_create_blob",gUu)}function r7(u){if(!(this instanceof r7))return new r7(u);u=u||{},this.pica=u.pica||$Uu({}),this.initialized=!1,this.utils=nz0}var j43=function(B){var E;for(var A=1;A<arguments.length;A++){E=Object(arguments[A]);for(var C in E)if(Object.prototype.hasOwnProperty.call(E,C))B[C]=E[C]}return B},i43,a43,nz0,$Uu,k_,h43,m43,r43,$43,y43,c43,g43;var nUu=g(()=>{/*! image-blob-reduce 3.0.1 https://github.com/nodeca/image-blob-reduce @license MIT */i43=mUu,a43=N43,nz0={assign:j43,pick:i43,pick_pica_resize_options:a43};/*!
pica
https://github.com/nodeca/pica
*/$Uu=rUu(function(u,B){(function(E){u.exports=E()})(function(){return function(){function E(A,C,D){function F(k,f){if(!C[k]){if(!A[k]){var l=typeof z_=="function"&&z_;if(!f&&l)return l(k,!0);if(U)return U(k,!0);var b=Error("Cannot find module '"+k+"'");throw b.code="MODULE_NOT_FOUND",b}var M=C[k]={exports:{}};A[k][0].call(M.exports,function(Z){var J=A[k][1][Z];return F(J||Z)},M,M.exports,E,A,C,D)}return C[k].exports}for(var U=typeof z_=="function"&&z_,z=0;z<D.length;z++)F(D[z]);return F}return E}()({1:[function(E,A,C){var D=E("inherits"),F=E("multimath"),U=E("./mm_unsharp_mask"),z=E("./mm_resize");function k(f){var l=f||[],b={js:l.indexOf("js")>=0,wasm:l.indexOf("wasm")>=0};F.call(this,b),this.features={js:b.js,wasm:b.wasm&&this.has_wasm()},this.use(U),this.use(z)}D(k,F),k.prototype.resizeAndUnsharp=function(l,b){var M=this.resize(l,b);if(l.unsharpAmount)this.unsharp_mask(M,l.toWidth,l.toHeight,l.unsharpAmount,l.unsharpRadius,l.unsharpThreshold);return M},A.exports=k},{"./mm_resize":4,"./mm_unsharp_mask":9,inherits:19,multimath:20}],2:[function(E,A,C){function D(z){return z<0?0:z>255?255:z}function F(z,k,f,l,b,M){var Z,J,w,K,Q,G,L,H,q,x,v,W=0,S=0;for(q=0;q<l;q++){Q=0;for(x=0;x<b;x++){G=M[Q++],L=M[Q++],H=W+G*4|0,Z=J=w=K=0;for(;L>0;L--)v=M[Q++],K=K+v*z[H+3]|0,w=w+v*z[H+2]|0,J=J+v*z[H+1]|0,Z=Z+v*z[H]|0,H=H+4|0;k[S+3]=D(K+8192>>14),k[S+2]=D(w+8192>>14),k[S+1]=D(J+8192>>14),k[S]=D(Z+8192>>14),S=S+l*4|0}S=(q+1)*4|0,W=(q+1)*f*4|0}}function U(z,k,f,l,b,M){var Z,J,w,K,Q,G,L,H,q,x,v,W=0,S=0;for(q=0;q<l;q++){Q=0;for(x=0;x<b;x++){G=M[Q++],L=M[Q++],H=W+G*4|0,Z=J=w=K=0;for(;L>0;L--)v=M[Q++],K=K+v*z[H+3]|0,w=w+v*z[H+2]|0,J=J+v*z[H+1]|0,Z=Z+v*z[H]|0,H=H+4|0;k[S+3]=D(K+8192>>14),k[S+2]=D(w+8192>>14),k[S+1]=D(J+8192>>14),k[S]=D(Z+8192>>14),S=S+l*4|0}S=(q+1)*4|0,W=(q+1)*f*4|0}}A.exports={convolveHorizontally:F,convolveVertically:U}},{}],3:[function(E,A,C){A.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEXA2AAAGAGf39/f39/AGAHf39/f39/fwACDwEDZW52Bm1lbW9yeQIAAAMEAwABAgYGAX8AQQALB1cFEV9fd2FzbV9jYWxsX2N0b3JzAAAIY29udm9sdmUAAQpjb252b2x2ZUhWAAIMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAK7AMDAwABC8YDAQ9/AkAgA0UNACAERQ0AA0AgDCENQQAhE0EAIQcDQCAHQQJqIQYCfyAHQQF0IAVqIgcuAQIiFEUEQEGAwAAhCEGAwAAhCUGAwAAhCkGAwAAhCyAGDAELIBIgBy4BAGohCEEAIQsgFCEHQQAhDiAGIQlBACEPQQAhEANAIAUgCUEBdGouAQAiESAAIAhBAnRqKAIAIgpBGHZsIBBqIRAgCkH/AXEgEWwgC2ohCyAKQRB2Qf8BcSARbCAPaiEPIApBCHZB/wFxIBFsIA5qIQ4gCEEBaiEIIAlBAWohCSAHQQFrIgcNAAsgC0GAQGshCCAOQYBAayEJIA9BgEBrIQogEEGAQGshCyAGIBRqCyEHIAEgDUECdGogCUEOdSIGQf8BIAZB/wFIGyIGQQAgBkEAShtBCHRBgP4DcSAKQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EQdEGAgPwHcSALQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobcjYCACADIA1qIQ0gE0EBaiITIARHDQALIAxBAWoiDCACbCESIAMgDEcNAAsLCx4AQQAgAiADIAQgBSAAEAEgAkEAIAQgBSAGIAEQAQs="},{}],4:[function(E,A,C){A.exports={name:"resize",fn:E("./resize"),wasm_fn:E("./resize_wasm"),wasm_src:E("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(E,A,C){var D=E("./resize_filter_gen"),F=E("./convolve").convolveHorizontally,U=E("./convolve").convolveVertically;function z(k,f,l){var b=3,M=f*l*4|0;while(b<M)k[b]=255,b=b+4|0}A.exports=function(f){var{src:l,width:b,height:M,toWidth:Z,toHeight:J}=f,w=f.scaleX||f.toWidth/f.width,K=f.scaleY||f.toHeight/f.height,Q=f.offsetX||0,G=f.offsetY||0,L=f.dest||new Uint8Array(Z*J*4),H=typeof f.quality>"u"?3:f.quality,q=f.alpha||!1,x=D(H,b,Z,w,Q),v=D(H,M,J,K,G),W=new Uint8Array(Z*M*4);if(F(l,W,b,M,Z,x),U(W,L,M,Z,J,v),!q)z(L,Z,J);return L}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(E,A,C){var D=E("./resize_filter_info"),F=14;function U(z){return Math.round(z*((1<<F)-1))}A.exports=function(k,f,l,b,M){var Z=D[k].filter,J=1/b,w=Math.min(1,b),K=D[k].win/w,Q,G,L,H,q,x,v,W,S,T,R,Y,a,I,O,i,N,V=Math.floor((K+1)*2),h=new Int16Array((V+2)*l),r=0,m=!h.subarray||!h.set;for(Q=0;Q<l;Q++){G=(Q+0.5)*J+M,L=Math.max(0,Math.floor(G-K)),H=Math.min(f-1,Math.ceil(G+K)),q=H-L+1,x=new Float32Array(q),v=new Int16Array(q),W=0;for(S=L,T=0;S<=H;S++,T++)R=Z((S+0.5-G)*w),W+=R,x[T]=R;Y=0;for(T=0;T<x.length;T++)a=x[T]/W,Y+=a,v[T]=U(a);v[l>>1]+=U(1-Y),I=0;while(I<v.length&&v[I]===0)I++;if(I<v.length){O=v.length-1;while(O>0&&v[O]===0)O--;if(i=L+I,N=O-I+1,h[r++]=i,h[r++]=N,!m)h.set(v.subarray(I,O+1),r),r+=N;else for(T=I;T<=O;T++)h[r++]=v[T]}else h[r++]=0,h[r++]=0}return h}},{"./resize_filter_info":7}],7:[function(E,A,C){A.exports=[{win:0.5,filter:function(F){return F>=-0.5&&F<0.5?1:0}},{win:1,filter:function(F){if(F<=-1||F>=1)return 0;if(F>-0.00000011920929&&F<0.00000011920929)return 1;var U=F*Math.PI;return Math.sin(U)/U*(0.54+0.46*Math.cos(U/1))}},{win:2,filter:function(F){if(F<=-2||F>=2)return 0;if(F>-0.00000011920929&&F<0.00000011920929)return 1;var U=F*Math.PI;return Math.sin(U)/U*Math.sin(U/2)/(U/2)}},{win:3,filter:function(F){if(F<=-3||F>=3)return 0;if(F>-0.00000011920929&&F<0.00000011920929)return 1;var U=F*Math.PI;return Math.sin(U)/U*Math.sin(U/3)/(U/3)}}]},{}],8:[function(E,A,C){var D=E("./resize_filter_gen");function F(f,l,b){var M=3,Z=l*b*4|0;while(M<Z)f[M]=255,M=M+4|0}function U(f){return new Uint8Array(f.buffer,0,f.byteLength)}var z=!0;try{z=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1}catch(f){}function k(f,l,b){if(z){l.set(U(f),b);return}for(var M=b,Z=0;Z<f.length;Z++){var J=f[Z];l[M++]=J&255,l[M++]=J>>8&255}}A.exports=function(l){var{src:b,width:M,height:Z,toWidth:J,toHeight:w}=l,K=l.scaleX||l.toWidth/l.width,Q=l.scaleY||l.toHeight/l.height,G=l.offsetX||0,L=l.offsetY||0,H=l.dest||new Uint8Array(J*w*4),q=typeof l.quality>"u"?3:l.quality,x=l.alpha||!1,v=D(q,M,J,K,G),W=D(q,Z,w,Q,L),S=0,T=this.__align(S+Math.max(b.byteLength,H.byteLength)),R=this.__align(T+Z*J*4),Y=this.__align(R+v.byteLength),a=Y+W.byteLength,I=this.__instance("resize",a),O=new Uint8Array(this.__memory.buffer),i=new Uint32Array(this.__memory.buffer),N=new Uint32Array(b.buffer);i.set(N),k(v,O,R),k(W,O,Y);var V=I.exports.convolveHV||I.exports._convolveHV;V(R,Y,T,M,Z,J,w);var h=new Uint32Array(H.buffer);if(h.set(new Uint32Array(this.__memory.buffer,0,w*J)),!x)F(H,J,w);return H}},{"./resize_filter_gen":6}],9:[function(E,A,C){A.exports={name:"unsharp_mask",fn:E("./unsharp_mask"),wasm_fn:E("./unsharp_mask_wasm"),wasm_src:E("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":10,"./unsharp_mask_wasm":11,"./unsharp_mask_wasm_base64":12}],10:[function(E,A,C){var D=E("glur/mono16");function F(U,z,k){var f=z*k,l=new Uint16Array(f),b,M,Z,J;for(var w=0;w<f;w++)b=U[4*w],M=U[4*w+1],Z=U[4*w+2],J=b>=M&&b>=Z?b:M>=Z&&M>=b?M:Z,l[w]=J<<8;return l}A.exports=function(z,k,f,l,b,M){var Z,J,w,K,Q;if(l===0||b<0.5)return;if(b>2)b=2;var G=F(z,k,f),L=new Uint16Array(G);D(L,k,f,b);var H=l/100*4096+0.5|0,q=M<<8,x=k*f;for(var v=0;v<x;v++)if(Z=G[v],K=Z-L[v],Math.abs(K)>=q)J=Z+(H*K+2048>>12),J=J>65280?65280:J,J=J<0?0:J,Z=Z!==0?Z:1,w=(J<<12)/Z|0,Q=v*4,z[Q]=z[Q]*w+2048>>12,z[Q+1]=z[Q+1]*w+2048>>12,z[Q+2]=z[Q+2]*w+2048>>12}},{"glur/mono16":18}],11:[function(E,A,C){A.exports=function(F,U,z,k,f,l){if(k===0||f<0.5)return;if(f>2)f=2;var b=U*z,M=b*4,Z=b*2,J=b*2,w=Math.max(U,z)*4,K=32,Q=0,G=M,L=G+Z,H=L+J,q=H+J,x=q+w,v=this.__instance("unsharp_mask",M+Z+J*2+w+K,{exp:Math.exp}),W=new Uint32Array(F.buffer),S=new Uint32Array(this.__memory.buffer);S.set(W);var T=v.exports.hsv_v16||v.exports._hsv_v16;T(Q,G,U,z),T=v.exports.blurMono16||v.exports._blurMono16,T(G,L,H,q,x,U,z,f),T=v.exports.unsharp||v.exports._unsharp,T(Q,Q,G,L,U,z,k,l),W.set(new Uint32Array(this.__memory.buffer,0,b))}},{}],12:[function(E,A,C){A.exports="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"},{}],13:[function(E,A,C){var D=100;function F(U,z){this.create=U,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=z||2000}F.prototype.acquire=function(){var U=this,z;if(this.available.length!==0)z=this.available.pop();else z=this.create(),z.id=this.lastId++,z.release=function(){return U.release(z)};return this.acquired[z.id]=z,z},F.prototype.release=function(U){var z=this;if(delete this.acquired[U.id],U.lastUsed=Date.now(),this.available.push(U),this.timeoutId===0)this.timeoutId=setTimeout(function(){return z.gc()},D)},F.prototype.gc=function(){var U=this,z=Date.now();if(this.available=this.available.filter(function(k){if(z-k.lastUsed>U.idle)return k.destroy(),!1;return!0}),this.available.length!==0)this.timeoutId=setTimeout(function(){return U.gc()},D);else this.timeoutId=0},A.exports=F},{}],14:[function(E,A,C){var D=2;A.exports=function(U,z,k,f,l,b){var M=k/U,Z=f/z,J=(2*b+D+1)/l;if(J>0.5)return[[k,f]];var w=Math.ceil(Math.log(Math.min(M,Z))/Math.log(J));if(w<=1)return[[k,f]];var K=[];for(var Q=0;Q<w;Q++){var G=Math.round(Math.pow(Math.pow(U,w-Q-1)*Math.pow(k,Q+1),1/w)),L=Math.round(Math.pow(Math.pow(z,w-Q-1)*Math.pow(f,Q+1),1/w));K.push([G,L])}return K}},{}],15:[function(E,A,C){var D=0.00001;function F(z){var k=Math.round(z);if(Math.abs(z-k)<D)return k;return Math.floor(z)}function U(z){var k=Math.round(z);if(Math.abs(z-k)<D)return k;return Math.ceil(z)}A.exports=function(k){var f=k.toWidth/k.width,l=k.toHeight/k.height,b=F(k.srcTileSize*f)-2*k.destTileBorder,M=F(k.srcTileSize*l)-2*k.destTileBorder;if(b<1||M<1)throw Error("Internal error in pica: target tile width/height is too small.");var Z,J,w,K,Q,G,L=[],H;for(K=0;K<k.toHeight;K+=M)for(w=0;w<k.toWidth;w+=b){if(Z=w-k.destTileBorder,Z<0)Z=0;if(Q=w+b+k.destTileBorder-Z,Z+Q>=k.toWidth)Q=k.toWidth-Z;if(J=K-k.destTileBorder,J<0)J=0;if(G=K+M+k.destTileBorder-J,J+G>=k.toHeight)G=k.toHeight-J;H={toX:Z,toY:J,toWidth:Q,toHeight:G,toInnerX:w,toInnerY:K,toInnerWidth:b,toInnerHeight:M,offsetX:Z/f-F(Z/f),offsetY:J/l-F(J/l),scaleX:f,scaleY:l,x:F(Z/f),y:F(J/l),width:U(Q/f),height:U(G/l)},L.push(H)}return L}},{}],16:[function(E,A,C){function D(F){return Object.prototype.toString.call(F)}A.exports.isCanvas=function(U){var z=D(U);return z==="[object HTMLCanvasElement]"||z==="[object OffscreenCanvas]"||z==="[object Canvas]"},A.exports.isImage=function(U){return D(U)==="[object HTMLImageElement]"},A.exports.isImageBitmap=function(U){return D(U)==="[object ImageBitmap]"},A.exports.limiter=function(U){var z=0,k=[];function f(){if(z<U&&k.length)z++,k.shift()()}return function(b){return new Promise(function(M,Z){k.push(function(){b().then(function(J){M(J),z--,f()},function(J){Z(J),z--,f()})}),f()})}},A.exports.cib_quality_name=function(U){switch(U){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},A.exports.cib_support=function(U){return Promise.resolve().then(function(){if(typeof createImageBitmap>"u")return!1;var z=U(100,100);return createImageBitmap(z,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(k){var f=k.width===10;return k.close(),z=null,f})}).catch(function(){return!1})},A.exports.worker_offscreen_canvas_support=function(){return new Promise(function(U,z){if(typeof OffscreenCanvas>"u"){U(!1);return}function k(b){if(typeof createImageBitmap>"u"){b.postMessage(!1);return}Promise.resolve().then(function(){var M=new OffscreenCanvas(10,10),Z=M.getContext("2d");return Z.rect(0,0,1,1),createImageBitmap(M,0,0,1,1)}).then(function(){return b.postMessage(!0)},function(){return b.postMessage(!1)})}var f=btoa("(".concat(k.toString(),")(self);")),l=new Worker("data:text/javascript;base64,".concat(f));l.onmessage=function(b){return U(b.data)},l.onerror=z}).then(function(U){return U},function(){return!1})},A.exports.can_use_canvas=function(U){var z=!1;try{var k=U(2,1),f=k.getContext("2d"),l=f.createImageData(2,1);if(l.data[0]=12,l.data[1]=23,l.data[2]=34,l.data[3]=255,l.data[4]=45,l.data[5]=56,l.data[6]=67,l.data[7]=255,f.putImageData(l,0,0),l=null,l=f.getImageData(0,0,2,1),l.data[0]===12&&l.data[1]===23&&l.data[2]===34&&l.data[3]===255&&l.data[4]===45&&l.data[5]===56&&l.data[6]===67&&l.data[7]===255)z=!0}catch(b){}return z},A.exports.cib_can_use_region=function(){return new Promise(function(U){if(typeof createImageBitmap>"u"){U(!1);return}var z=new Image;z.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",z.onload=function(){createImageBitmap(z,0,0,z.width,z.height).then(function(k){if(k.width===z.width&&k.height===z.height)U(!0);else U(!1)},function(){return U(!1)})},z.onerror=function(){return U(!1)}})}},{}],17:[function(E,A,C){A.exports=function(){var D=E("./mathlib"),F;onmessage=function(z){var k=z.data.opts,f=!1;if(!k.src&&k.srcBitmap){var l=new OffscreenCanvas(k.width,k.height),b=l.getContext("2d",{alpha:Boolean(k.alpha)});b.drawImage(k.srcBitmap,0,0),k.src=b.getImageData(0,0,k.width,k.height).data,l.width=l.height=0,l=null,k.srcBitmap.close(),k.srcBitmap=null,f=!0}if(!F)F=new D(z.data.features);var M=F.resizeAndUnsharp(k);if(f){var Z=new ImageData(new Uint8ClampedArray(M),k.toWidth,k.toHeight),J=new OffscreenCanvas(k.toWidth,k.toHeight),w=J.getContext("2d",{alpha:Boolean(k.alpha)});w.putImageData(Z,0,0),createImageBitmap(J).then(function(K){postMessage({bitmap:K},[K])})}else postMessage({data:M},[M.buffer])}}},{"./mathlib":1}],18:[function(E,A,C){var D,F,U,z,k,f,l,b;function M(w){if(w<0.5)w=0.5;var K=Math.exp(0.527076)/w,Q=Math.exp(-K),G=Math.exp(-2*K),L=(1-Q)*(1-Q)/(1+2*K*Q-G);return D=L,F=L*(K-1)*Q,U=L*(K+1)*Q,z=-L*G,k=2*Q,f=-G,l=(D+F)/(1-k-f),b=(U+z)/(1-k-f),new Float32Array([D,F,U,z,k,f,l,b])}function Z(w,K,Q,G,L,H){var q,x,v,W,S,T,R,Y,a,I,O,i,N,V;for(a=0;a<H;a++){T=a*L,R=a,Y=0,q=w[T],S=q*G[6],W=S,O=G[0],i=G[1],N=G[4],V=G[5];for(I=0;I<L;I++)x=w[T],v=x*O+q*i+W*N+S*V,S=W,W=v,q=x,Q[Y]=W,Y++,T++;T--,Y--,R+=H*(L-1),q=w[T],S=q*G[7],W=S,x=q,O=G[2],i=G[3];for(I=L-1;I>=0;I--)v=x*O+q*i+W*N+S*V,S=W,W=v,q=x,x=w[T],K[R]=Q[Y]+W,T--,Y--,R-=H}}function J(w,K,Q,G){if(!G)return;var L=new Uint16Array(w.length),H=new Float32Array(Math.max(K,Q)),q=M(G);Z(w,L,H,q,K,Q),Z(L,w,H,q,Q,K)}A.exports=J},{}],19:[function(E,A,C){if(typeof Object.create==="function")A.exports=function(F,U){if(U)F.super_=U,F.prototype=Object.create(U.prototype,{constructor:{value:F,enumerable:!1,writable:!0,configurable:!0}})};else A.exports=function(F,U){if(U){F.super_=U;var z=function(){};z.prototype=U.prototype,F.prototype=new z,F.prototype.constructor=F}}},{}],20:[function(E,A,C){var D=E("object-assign"),F=E("./lib/base64decode"),U=E("./lib/wa_detect"),z={js:!0,wasm:!0};function k(f){if(!(this instanceof k))return new k(f);var l=D({},z,f||{});if(this.options=l,this.__cache={},this.__init_promise=null,this.__modules=l.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')}k.prototype.has_wasm=U,k.prototype.use=function(f){if(this.__modules[f.name]=f,this.options.wasm&&this.has_wasm()&&f.wasm_fn)this[f.name]=f.wasm_fn;else this[f.name]=f.fn;return this},k.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 f=this;return this.__init_promise=Promise.all(Object.keys(f.__modules).map(function(l){var b=f.__modules[l];if(!f.options.wasm||!f.has_wasm()||!b.wasm_fn)return null;if(f.__wasm[l])return null;return WebAssembly.compile(f.__base64decode(b.wasm_src)).then(function(M){f.__wasm[l]=M})})).then(function(){return f}),this.__init_promise},k.prototype.__base64decode=F,k.prototype.__reallocate=function(l){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(l/65536)}),this.__memory;var b=this.__memory.buffer.byteLength;if(b<l)this.__memory.grow(Math.ceil((l-b)/65536));return this.__memory},k.prototype.__instance=function(l,b,M){if(b)this.__reallocate(b);if(!this.__wasm[l]){var Z=this.__modules[l];this.__wasm[l]=new WebAssembly.Module(this.__base64decode(Z.wasm_src))}if(!this.__cache[l]){var J={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[l]=new WebAssembly.Instance(this.__wasm[l],{env:D(J,M||{})})}return this.__cache[l]},k.prototype.__align=function(l,b){b=b||8;var M=l%b;return l+(M?b-M:0)},A.exports=k},{"./lib/base64decode":21,"./lib/wa_detect":22,"object-assign":23}],21:[function(E,A,C){var D="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";A.exports=function(U){var z=U.replace(/[\r\n=]/g,""),k=z.length,f=new Uint8Array(k*3>>2),l=0,b=0;for(var M=0;M<k;M++){if(M%4===0&&M)f[b++]=l>>16&255,f[b++]=l>>8&255,f[b++]=l&255;l=l<<6|D.indexOf(z.charAt(M))}var Z=k%4*6;if(Z===0)f[b++]=l>>16&255,f[b++]=l>>8&255,f[b++]=l&255;else if(Z===18)f[b++]=l>>10&255,f[b++]=l>>2&255;else if(Z===12)f[b++]=l>>4&255;return f}},{}],22:[function(E,A,C){var D;A.exports=function(){if(typeof D<"u")return D;if(D=!1,typeof WebAssembly>"u")return D;try{var U=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]),z=new WebAssembly.Module(U),k=new WebAssembly.Instance(z,{});if(k.exports.test(4)!==0)D=!0;return D}catch(f){}return D}},{}],23:[function(E,A,C){var D=Object.getOwnPropertySymbols,F=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable;function z(f){if(f===null||f===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(f)}function k(){try{if(!Object.assign)return!1;var f=new String("abc");if(f[5]="de",Object.getOwnPropertyNames(f)[0]==="5")return!1;var l={};for(var b=0;b<10;b++)l["_"+String.fromCharCode(b)]=b;var M=Object.getOwnPropertyNames(l).map(function(J){return l[J]});if(M.join("")!=="0123456789")return!1;var Z={};if("abcdefghijklmnopqrst".split("").forEach(function(J){Z[J]=J}),Object.keys(Object.assign({},Z)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(J){return!1}}A.exports=k()?Object.assign:function(f,l){var b,M=z(f),Z;for(var J=1;J<arguments.length;J++){b=Object(arguments[J]);for(var w in b)if(F.call(b,w))M[w]=b[w];if(D){Z=D(b);for(var K=0;K<Z.length;K++)if(U.call(b,Z[K]))M[Z[K]]=b[Z[K]]}}return M}},{}],24:[function(E,A,C){var D=arguments[3],F=arguments[4],U=arguments[5],z=JSON.stringify;A.exports=function(k,f){var l,b=Object.keys(U);for(var M=0,Z=b.length;M<Z;M++){var J=b[M],w=U[J].exports;if(w===k||w&&w.default===k){l=J;break}}if(!l){l=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var K={};for(var M=0,Z=b.length;M<Z;M++){var J=b[M];K[J]=J}F[l]=["function(require,module,exports){"+k+"(self); }",K]}var Q=Math.floor(Math.pow(16,8)*Math.random()).toString(16),G={};G[l]=l,F[Q]=["function(require,module,exports){var f = require("+z(l)+");(f.default ? f.default : f)(self);}",G];var L={};H(Q);function H(T){L[T]=!0;for(var R in F[T][1]){var Y=F[T][1][R];if(!L[Y])H(Y)}}var q="("+D+")({"+Object.keys(L).map(function(T){return z(T)+":["+F[T][0]+","+z(F[T][1])+"]"}).join(",")+"},{},["+z(Q)+"])",x=window.URL||window.webkitURL||window.mozURL||window.msURL,v=new Blob([q],{type:"text/javascript"});if(f&&f.bare)return v;var W=x.createObjectURL(v),S=new Worker(W);return S.objectURL=W,S}},{}],"/index.js":[function(E,A,C){function D(I,O){return f(I)||k(I,O)||U(I,O)||F()}function F(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function U(I,O){if(!I)return;if(typeof I==="string")return z(I,O);var i=Object.prototype.toString.call(I).slice(8,-1);if(i==="Object"&&I.constructor)i=I.constructor.name;if(i==="Map"||i==="Set")return Array.from(I);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return z(I,O)}function z(I,O){if(O==null||O>I.length)O=I.length;for(var i=0,N=Array(O);i<O;i++)N[i]=I[i];return N}function k(I,O){var i=I==null?null:typeof Symbol<"u"&&I[Symbol.iterator]||I["@@iterator"];if(i==null)return;var N=[],V=!0,h=!1,r,m;try{for(i=i.call(I);!(V=(r=i.next()).done);V=!0)if(N.push(r.value),O&&N.length===O)break}catch($){h=!0,m=$}finally{try{if(!V&&i.return!=null)i.return()}finally{if(h)throw m}}return N}function f(I){if(Array.isArray(I))return I}var l=E("object-assign"),b=E("webworkify"),M=E("./lib/mathlib"),Z=E("./lib/pool"),J=E("./lib/utils"),w=E("./lib/worker"),K=E("./lib/stepper"),Q=E("./lib/tiler"),G={},L=!1;try{if(typeof navigator<"u"&&navigator.userAgent)L=navigator.userAgent.indexOf("Safari")>=0}catch(I){}var H=1;if(typeof navigator<"u")H=Math.min(navigator.hardwareConcurrency||1,4);var q={tile:1024,concurrency:H,features:["js","wasm","ww"],idle:2000,createCanvas:function(O,i){var N=document.createElement("canvas");return N.width=O,N.height=i,N}},x={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},v=!1,W=!1,S=!1,T=!1,R=!1;function Y(){return{value:b(w),destroy:function(){if(this.value.terminate(),typeof window<"u"){var O=window.URL||window.webkitURL||window.mozURL||window.msURL;if(O&&O.revokeObjectURL&&this.value.objectURL)O.revokeObjectURL(this.value.objectURL)}}}}function a(I){if(!(this instanceof a))return new a(I);this.options=l({},q,I||{});var O="lk_".concat(this.options.concurrency);if(this.__limit=G[O]||J.limiter(this.options.concurrency),!G[O])G[O]=this.__limit;this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}a.prototype.init=function(){var I=this;if(this.__initPromise)return this.__initPromise;if(typeof ImageData<"u"&&typeof Uint8ClampedArray<"u")try{new ImageData(new Uint8ClampedArray(400),10,10),v=!0}catch($){}if(typeof ImageBitmap<"u")if(ImageBitmap.prototype&&ImageBitmap.prototype.close)W=!0;else this.debug("ImageBitmap does not support .close(), disabled");var O=this.options.features.slice();if(O.indexOf("all")>=0)O=["cib","wasm","js","ww"];if(this.__requested_features=O,this.__mathlib=new M(O),O.indexOf("ww")>=0){if(typeof window<"u"&&"Worker"in window)try{var i=E("webworkify")(function(){});i.terminate(),this.features.ww=!0;var N="wp_".concat(JSON.stringify(this.options));if(G[N])this.__workersPool=G[N];else this.__workersPool=new Z(Y,this.options.idle),G[N]=this.__workersPool}catch($){}}var V=this.__mathlib.init().then(function($){l(I.features,$.features)}),h;if(!W)h=Promise.resolve(!1);else h=J.cib_support(this.options.createCanvas).then(function($){if(I.features.cib&&O.indexOf("cib")<0){I.debug("createImageBitmap() resize supported, but disabled by config");return}if(O.indexOf("cib")>=0)I.features.cib=$});S=J.can_use_canvas(this.options.createCanvas);var r;if(W&&v&&O.indexOf("ww")!==-1)r=J.worker_offscreen_canvas_support();else r=Promise.resolve(!1);r=r.then(function($){T=$});var m=J.cib_can_use_region().then(function($){R=$});return this.__initPromise=Promise.all([V,h,r,m]).then(function(){return I}),this.__initPromise},a.prototype.__invokeResize=function(I,O){var i=this;return O.__mathCache=O.__mathCache||{},Promise.resolve().then(function(){if(!i.features.ww)return{data:i.__mathlib.resizeAndUnsharp(I,O.__mathCache)};return new Promise(function(N,V){var h=i.__workersPool.acquire();if(O.cancelToken)O.cancelToken.catch(function(m){return V(m)});h.value.onmessage=function(m){if(h.release(),m.data.err)V(m.data.err);else N(m.data)};var r=[];if(I.src)r.push(I.src.buffer);if(I.srcBitmap)r.push(I.srcBitmap);h.value.postMessage({opts:I,features:i.__requested_features,preload:{wasm_nodule:i.__mathlib.__}},r)})})},a.prototype.__extractTileData=function(I,O,i,N,V){if(this.features.ww&&T&&(J.isCanvas(O)||R))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(N.srcImageBitmap||O,I.x,I.y,I.width,I.height).then(function(m){return V.srcBitmap=m,V});if(J.isCanvas(O)){if(!N.srcCtx)N.srcCtx=O.getContext("2d",{alpha:Boolean(i.alpha)});return this.debug("Get tile pixel data"),V.src=N.srcCtx.getImageData(I.x,I.y,I.width,I.height).data,V}this.debug("Draw tile imageBitmap/image to temporary canvas");var h=this.options.createCanvas(I.width,I.height),r=h.getContext("2d",{alpha:Boolean(i.alpha)});return r.globalCompositeOperation="copy",r.drawImage(N.srcImageBitmap||O,I.x,I.y,I.width,I.height,0,0,I.width,I.height),this.debug("Get tile pixel data"),V.src=r.getImageData(0,0,I.width,I.height).data,h.width=h.height=0,V},a.prototype.__landTileData=function(I,O,i){var N;if(this.debug("Convert raw rgba tile result to ImageData"),O.bitmap)return i.toCtx.drawImage(O.bitmap,I.toX,I.toY),null;if(v)N=new ImageData(new Uint8ClampedArray(O.data),I.toWidth,I.toHeight);else if(N=i.toCtx.createImageData(I.toWidth,I.toHeight),N.data.set)N.data.set(O.data);else for(var V=N.data.length-1;V>=0;V--)N.data[V]=O.data[V];if(this.debug("Draw tile"),L)i.toCtx.putImageData(N,I.toX,I.toY,I.toInnerX-I.toX,I.toInnerY-I.toY,I.toInnerWidth+0.00001,I.toInnerHeight+0.00001);else i.toCtx.putImageData(N,I.toX,I.toY,I.toInnerX-I.toX,I.toInnerY-I.toY,I.toInnerWidth,I.toInnerHeight);return null},a.prototype.__tileAndResize=function(I,O,i){var N=this,V={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null},h=function(m){return N.__limit(function(){if(i.canceled)return i.cancelToken;var $={width:m.width,height:m.height,toWidth:m.toWidth,toHeight:m.toHeight,scaleX:m.scaleX,scaleY:m.scaleY,offsetX:m.offsetX,offsetY:m.offsetY,quality:i.quality,alpha:i.alpha,unsharpAmount:i.unsharpAmount,unsharpRadius:i.unsharpRadius,unsharpThreshold:i.unsharpThreshold};return N.debug("Invoke resize math"),Promise.resolve($).then(function(y){return N.__extractTileData(m,I,i,V,y)}).then(function(y){return N.debug("Invoke resize math"),N.__invokeResize(y,i)}).then(function(y){if(i.canceled)return i.cancelToken;return V.srcImageData=null,N.__landTileData(m,y,V)})})};return Promise.resolve().then(function(){if(V.toCtx=O.getContext("2d",{alpha:Boolean(i.alpha)}),J.isCanvas(I))return null;if(J.isImageBitmap(I))return V.srcImageBitmap=I,V.isImageBitmapReused=!0,null;if(J.isImage(I)){if(!W)return null;return N.debug("Decode image via createImageBitmap"),createImageBitmap(I).then(function(r){V.srcImageBitmap=r}).catch(function(r){return null})}throw Error('Pica: ".from" should be Image, Canvas or ImageBitmap')}).then(function(){if(i.canceled)return i.cancelToken;N.debug("Calculate tiles");var r=Q({width:i.width,height:i.height,srcTileSize:N.options.tile,toWidth:i.toWidth,toHeight:i.toHeight,destTileBorder:i.__destTileBorder}),m=r.map(function(y){return h(y)});function $(y){if(y.srcImageBitmap){if(!y.isImageBitmapReused)y.srcImageBitmap.close();y.srcImageBitmap=null}}return N.debug("Process tiles"),Promise.all(m).then(function(){return N.debug("Finished!"),$(V),O},function(y){throw $(V),y})})},a.prototype.__processStages=function(I,O,i,N){var V=this;if(N.canceled)return N.cancelToken;var h=I.shift(),r=D(h,2),m=r[0],$=r[1],y=I.length===0;N=l({},N,{toWidth:m,toHeight:$,quality:y?N.quality:Math.min(1,N.quality)});var p;if(!y)p=this.options.createCanvas(m,$);return this.__tileAndResize(O,y?i:p,N).then(function(){if(y)return i;return N.width=m,N.height=$,V.__processStages(I,p,i,N)}).then(function(e){if(p)p.width=p.height=0;return e})},a.prototype.__resizeViaCreateImageBitmap=function(I,O,i){var N=this,V=O.getContext("2d",{alpha:Boolean(i.alpha)});return this.debug("Resize via createImageBitmap()"),createImageBitmap(I,{resizeWidth:i.toWidth,resizeHeight:i.toHeight,resizeQuality:J.cib_quality_name(i.quality)}).then(function(h){if(i.canceled)return i.cancelToken;if(!i.unsharpAmount)return V.drawImage(h,0,0),h.close(),V=null,N.debug("Finished!"),O;N.debug("Unsharp result");var r=N.options.createCanvas(i.toWidth,i.toHeight),m=r.getContext("2d",{alpha:Boolean(i.alpha)});m.drawImage(h,0,0),h.close();var $=m.getImageData(0,0,i.toWidth,i.toHeight);return N.__mathlib.unsharp_mask($.data,i.toWidth,i.toHeight,i.unsharpAmount,i.unsharpRadius,i.unsharpThreshold),V.putImageData($,0,0),r.width=r.height=0,$=m=r=V=null,N.debug("Finished!"),O})},a.prototype.resize=function(I,O,i){var N=this;this.debug("Start resize...");var V=l({},x);if(!isNaN(i))V=l(V,{quality:i});else if(i)V=l(V,i);if(V.toWidth=O.width,V.toHeight=O.height,V.width=I.naturalWidth||I.width,V.height=I.naturalHeight||I.height,O.width===0||O.height===0)return Promise.reject(Error("Invalid output size: ".concat(O.width,"x").concat(O.height)));if(V.unsharpRadius>2)V.unsharpRadius=2;if(V.canceled=!1,V.cancelToken)V.cancelToken=V.cancelToken.then(function(r){throw V.canceled=!0,r},function(r){throw V.canceled=!0,r});var h=3;return V.__destTileBorder=Math.ceil(Math.max(h,2.5*V.unsharpRadius|0)),this.init().then(function(){if(V.canceled)return V.cancelToken;if(N.features.cib)return N.__resizeViaCreateImageBitmap(I,O,V);if(!S){var r=Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw r.code="ERR_GET_IMAGE_DATA",r}var m=K(V.width,V.height,V.toWidth,V.toHeight,N.options.tile,V.__destTileBorder);return N.__processStages(m,I,O,V)})},a.prototype.resizeBuffer=function(I){var O=this,i=l({},x,I);return this.init().then(function(){return O.__mathlib.resizeAndUnsharp(i)})},a.prototype.toBlob=function(I,O,i){return O=O||"image/png",new Promise(function(N){if(I.toBlob){I.toBlob(function($){return N($)},O,i);return}if(I.convertToBlob){N(I.convertToBlob({type:O,quality:i}));return}var V=atob(I.toDataURL(O,i).split(",")[1]),h=V.length,r=new Uint8Array(h);for(var m=0;m<h;m++)r[m]=V.charCodeAt(m);N(new Blob([r],{type:O}))})},a.prototype.debug=function(){},A.exports=a},{"./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")})}),k_=rUu(function(u){function B(U,z){var k=Error(U);return k.code=z,k}function E(U){var z=U.toString(16).toUpperCase();for(var k=2-z.length;k>0;k--)z="0"+z;return"0x"+z}function A(U){try{return unescape(encodeURIComponent(U))}catch(z){return U}}function C(U){try{return decodeURIComponent(escape(U))}catch(z){return U}}function D(U){return Object.prototype.toString.call(U)==="[object Uint8Array]"}function F(U,z,k){this.input=U.subarray(z,k),this.start=z;var f=String.fromCharCode.apply(null,this.input.subarray(0,4));if(f!=="II*\x00"&&f!=="MM\x00*")throw B("invalid TIFF signature","EBADDATA");this.big_endian=f[0]==="M"}F.prototype.each=function(U){this.aborted=!1;var z=this.read_uint32(4);this.ifds_to_read=[{id:0,offset:z}];while(this.ifds_to_read.length>0&&!this.aborted){var k=this.ifds_to_read.shift();if(!k.offset)continue;this.scan_ifd(k.id,k.offset,U)}},F.prototype.filter=function(U){var z={};z.ifd0={id:0,entries:[]},this.each(function(b){if(U(b)===!1&&!b.is_subifd_link)return;if(b.is_subifd_link&&b.count!==1&&b.format!==4)return;if(!z["ifd"+b.ifd])z["ifd"+b.ifd]={id:b.ifd,entries:[]};z["ifd"+b.ifd].entries.push(b)}),delete z.ifd1;var k=8;Object.keys(z).forEach(function(b){k+=2,z[b].entries.forEach(function(M){k+=12+(M.data_length>4?Math.ceil(M.data_length/2)*2:0)}),k+=4}),this.output=new Uint8Array(k),this.output[0]=this.output[1]=(this.big_endian?"M":"I").charCodeAt(0),this.write_uint16(2,42);var f=8,l=this;if(this.write_uint32(4,f),Object.keys(z).forEach(function(b){z[b].written_offset=f;var M=f,Z=M+2+z[b].entries.length*12+4;f=Z,l.write_uint16(M,z[b].entries.length),z[b].entries.sort(function(w,K){return w.tag-K.tag}).forEach(function(w,K){var Q=M+2+K*12;if(l.write_uint16(Q,w.tag),l.write_uint16(Q+2,w.format),l.write_uint32(Q+4,w.count),w.is_subifd_link){if(z["ifd"+w.tag])z["ifd"+w.tag].link_offset=Q+8}else if(w.data_length<=4)l.output.set(l.input.subarray(w.data_offset-l.start,w.data_offset-l.start+4),Q+8);else l.write_uint32(Q+8,f),l.output.set(l.input.subarray(w.data_offset-l.start,w.data_offset-l.start+w.data_length),f),f+=Math.ceil(w.data_length/2)*2});var J=z["ifd"+(z[b].id+1)];if(J)J.link_offset=Z-4}),Object.keys(z).forEach(function(b){if(z[b].written_offset&&z[b].link_offset)l.write_uint32(z[b].link_offset,z[b].written_offset)}),this.output.length!==f)throw B("internal error: incorrect buffer size allocated");return this.output},F.prototype.read_uint16=function(U){var z=this.input;if(U+2>z.length)throw B("unexpected EOF","EBADDATA");return this.big_endian?z[U]*256+z[U+1]:z[U]+z[U+1]*256},F.prototype.read_uint32=function(U){var z=this.input;if(U+4>z.length)throw B("unexpected EOF","EBADDATA");return this.big_endian?z[U]*16777216+z[U+1]*65536+z[U+2]*256+z[U+3]:z[U]+z[U+1]*256+z[U+2]*65536+z[U+3]*16777216},F.prototype.write_uint16=function(U,z){var k=this.output;if(this.big_endian)k[U]=z>>>8&255,k[U+1]=z&255;else k[U]=z&255,k[U+1]=z>>>8&255},F.prototype.write_uint32=function(U,z){var k=this.output;if(this.big_endian)k[U]=z>>>24&255,k[U+1]=z>>>16&255,k[U+2]=z>>>8&255,k[U+3]=z&255;else k[U]=z&255,k[U+1]=z>>>8&255,k[U+2]=z>>>16&255,k[U+3]=z>>>24&255},F.prototype.is_subifd_link=function(U,z){return U===0&&z===34665||U===0&&z===34853||U===34665&&z===40965},F.prototype.exif_format_length=function(U){switch(U){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}},F.prototype.exif_format_read=function(U,z){var k;switch(U){case 1:case 2:return k=this.input[z],k;case 6:return k=this.input[z],k|(k&128)*33554430;case 3:return k=this.read_uint16(z),k;case 8:return k=this.read_uint16(z),k|(k&32768)*131070;case 4:return k=this.read_uint32(z),k;case 9:return k=this.read_uint32(z),k|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},F.prototype.scan_ifd=function(U,z,k){var f=this.read_uint16(z);z+=2;for(var l=0;l<f;l++){var b=this.read_uint16(z),M=this.read_uint16(z+2),Z=this.read_uint32(z+4),J=this.exif_format_length(M),w=Z*J,K=w<=4?z+8:this.read_uint32(z+8),Q=!1;if(K+w>this.input.length)throw B("unexpected EOF","EBADDATA");var G=[],L=K;for(var H=0;H<Z;H++,L+=J){var q=this.exif_format_read(M,L);if(q===null){G=null;break}G.push(q)}if(Array.isArray(G)&&M===2){try{G=C(String.fromCharCode.apply(null,G))}catch(v){G=null}if(G&&G[G.length-1]==="\x00")G=G.slice(0,-1)}if(this.is_subifd_link(U,b)){if(Array.isArray(G)&&Number.isInteger(G[0])&&G[0]>0)this.ifds_to_read.push({id:b,offset:G[0]}),Q=!0}var x={is_big_endian:this.big_endian,ifd:U,tag:b,format:M,count:Z,entry_offset:z+this.start,data_length:w,data_offset:K+this.start,value:G,is_subifd_link:Q};if(k(x)===!1){this.aborted=!0;return}z+=12}if(U===0)this.ifds_to_read.push({id:1,offset:this.read_uint32(z)})},u.exports.is_jpeg=function(U){return U.length>=4&&U[0]===255&&U[1]===216&&U[2]===255},u.exports.jpeg_segments_each=function(U,z){if(!D(U))throw B("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof z!=="function")throw B("Invalid argument (on_segment), Function expected","EINVAL");if(!u.exports.is_jpeg(U))throw B("Unknown file format","ENOTJPEG");var k=0,f=U.length,l=!1;for(;;){var b,M;if(k+1>=f)throw B("Unexpected EOF","EBADDATA");var Z=U[k],J=U[k+1];if(Z===255&&J===255)b=255,M=1;else if(Z===255&&J!==0){if(b=J,M=2,208<=b&&b<=217||b===1);else{if(k+3>=f)throw B("Unexpected EOF","EBADDATA");if(M+=U[k+2]*256+U[k+3],M<2)throw B("Invalid segment length","EBADDATA");if(k+M-1>=f)throw B("Unexpected EOF","EBADDATA")}if(l)if(b>=208&&b<=215);else l=!1;if(b===218)l=!0}else if(l)for(var w=k+1;;w++){if(w>=f)throw B("Unexpected EOF","EBADDATA");if(U[w]===255){if(w+1>=f)throw B("Unexpected EOF","EBADDATA");if(U[w+1]!==0){b=0,M=w-k;break}}}else throw B("Unexpected byte at segment start: "+E(Z)+" (offset "+E(k)+")","EBADDATA");if(z({code:b,offset:k,length:M})===!1)break;if(b===217)break;k+=M}},u.exports.jpeg_segments_filter=function(U,z){if(!D(U))throw B("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof z!=="function")throw B("Invalid argument (on_segment), Function expected","EINVAL");var k=[],f=0;u.exports.jpeg_segments_each(U,function(M){var Z=z(M);if(D(Z))k.push({data:Z}),f+=Z.length;else if(Array.isArray(Z))Z.filter(D).forEach(function(w){k.push({data:w}),f+=w.length});else if(Z!==!1){var J={start:M.offset,end:M.offset+M.length};if(k.length>0&&k[k.length-1].end===J.start)k[k.length-1].end=J.end;else k.push(J);f+=M.length}});var l=new Uint8Array(f),b=0;return k.forEach(function(M){var Z=M.data||U.subarray(M.start,M.end);l.set(Z,b),b+=Z.length}),l},u.exports.jpeg_exif_tags_each=function(U,z){if(!D(U))throw B("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof z!=="function")throw B("Invalid argument (on_exif_entry), Function expected","EINVAL");u.exports.jpeg_segments_each(U,function(k){if(k.code===218)return!1;if(k.code===225&&k.length>=10&&U[k.offset+4]===69&&U[k.offset+5]===120&&U[k.offset+6]===105&&U[k.offset+7]===102&&U[k.offset+8]===0&&U[k.offset+9]===0)return new F(U,k.offset+10,k.offset+k.length).each(z),!1})},u.exports.jpeg_exif_tags_filter=function(U,z){if(!D(U))throw B("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof z!=="function")throw B("Invalid argument (on_exif_entry), Function expected","EINVAL");var k=!1;return u.exports.jpeg_segments_filter(U,function(f){if(k)return;if(f.code===218)k=!0;if(f.code===225&&f.length>=10&&U[f.offset+4]===69&&U[f.offset+5]===120&&U[f.offset+6]===105&&U[f.offset+7]===102&&U[f.offset+8]===0&&U[f.offset+9]===0){var l=new F(U,f.offset+10,f.offset+f.length).filter(z);if(!l)return!1;var b=new Uint8Array(10);return b.set(U.slice(f.offset,f.offset+10)),b[2]=l.length+8>>>8&255,b[3]=l.length+8&255,k=!0,[b,l]}})},u.exports.jpeg_add_comment=function(U,z){var k=!1,f=0;return u.exports.jpeg_segments_filter(U,function(l){if(f++,f===1&&l.code===216)return;if(f===2&&l.code===224)return;if(k)return;z=A(z);var b=new Uint8Array(5+z.length),M=0;return b[M++]=255,b[M++]=254,b[M++]=z.length+3>>>8&255,b[M++]=z.length+3&255,z.split("").forEach(function(Z){b[M++]=Z.charCodeAt(0)&255}),b[M++]=0,k=!0,[b,U.subarray(l.offset,l.offset+l.length)]})}});h43=yUu,m43=cUu,r43=gUu,$43=V43,y43={jpeg_patch_exif:h43,jpeg_rotate_canvas:m43,jpeg_attach_orig_segments:r43,assign:$43};r7.prototype.use=function(u){var B=[this].concat(Array.prototype.slice.call(arguments,1));return u.apply(u,B),this};r7.prototype.init=function(){this.use(y43.assign)};r7.prototype.toBlob=function(u,B){var E=nz0.assign({max:1/0},B),A={blob:u,opts:E};if(!this.initialized)this.init(),this.initialized=!0;return Promise.resolve(A).then(this._blob_to_image).then(this._calculate_size).then(this._transform).then(this._cleanup).then(this._create_blob).then(function(C){return C.out_canvas.width=C.out_canvas.height=0,C.out_blob})};r7.prototype.toCanvas=function(u,B){var E=nz0.assign({max:1/0},B),A={blob:u,opts:E};if(!this.initialized)this.init(),this.initialized=!0;return Promise.resolve(A).then(this._blob_to_image).then(this._calculate_size).then(this._transform).then(this._cleanup).then(function(C){return C.out_canvas})};r7.prototype.before=function(u,B){if(!this[u])throw Error('Method "'+u+'" does not exist');if(typeof B!=="function")throw Error('Invalid argument "fn", function expected');var E=this[u],A=this;return this[u]=function(C){return B.call(A,C).then(function(D){return E.call(A,D)})},this};r7.prototype.after=function(u,B){if(!this[u])throw Error('Method "'+u+'" does not exist');if(typeof B!=="function")throw Error('Invalid argument "fn", function expected');var E=this[u],A=this;return this[u]=function(C){return E.call(A,C).then(function(D){return B.call(A,D)})},this};r7.prototype._blob_to_image=function(u){var B=window.URL||window.webkitURL||window.mozURL||window.msURL;return u.image=document.createElement("img"),u.image_url=B.createObjectURL(u.blob),u.image.src=u.image_url,new Promise(function(E,A){u.image.onerror=function(){A(Error("ImageBlobReduce: failed to create Image() from blob"))},u.image.onload=function(){E(u)}})};r7.prototype._calculate_size=function(u){var B=u.opts.max/Math.max(u.image.width,u.image.height);if(B>1)B=1;return u.transform_width=Math.max(Math.round(u.image.width*B),1),u.transform_height=Math.max(Math.round(u.image.height*B),1),u.scale_factor=B,Promise.resolve(u)};r7.prototype._transform=function(u){u.out_canvas=this.pica.options.createCanvas(u.transform_width,u.transform_height),u.transform_width=null,u.transform_height=null;var B={alpha:u.blob.type==="image/png"};return this.utils.assign(B,this.utils.pick_pica_resize_options(u.opts)),this.pica.resize(u.image,u.out_canvas,B).then(function(){return u})};r7.prototype._cleanup=function(u){u.image.src="",u.image=null;var B=window.URL||window.webkitURL||window.mozURL||window.msURL;if(B.revokeObjectURL)B.revokeObjectURL(u.image_url);return u.image_url=null,Promise.resolve(u)};r7.prototype._create_blob=function(u){return this.pica.toBlob(u.out_canvas,u.blob.type).then(function(B){return u.out_blob=B,u})};r7.prototype._getUint8Array=function(u){if(u.arrayBuffer)return u.arrayBuffer().then(function(B){return new Uint8Array(B)});return new Promise(function(B,E){var A=new FileReader;A.readAsArrayBuffer(u),A.onload=function(){B(new Uint8Array(A.result))},A.onerror=function(){E(Error("ImageBlobReduce: failed to load data from input blob")),A.abort()},A.onabort=function(){E(Error("ImageBlobReduce: failed to load data from input blob (aborted)"))}})};r7.pica=$Uu;c43=r7,g43=c43});function ob(u){return u*Math.PI/180}function oq(u){return u*180/Math.PI}function z33(u){return Math.abs(Math.sin(2*u))<0.0001}function V5(u,B,E=0,A=0){return[u-E,B-A]}function O4(u,B=[0,0]){return V5(u[0]-B[0],u[1]-B[1])}function z5(u,B){return u[0]*B[1]-B[0]*u[1]}function Nk0(u,B){return u[0]*B[0]+u[1]*B[1]}function db(u,B){return[u[0]+B[0],u[1]+B[1]]}function dT(u,B){return[u[0]-B[0],u[1]-B[1]]}function b9(u,B){return V5(u[0]*B,u[1]*B)}function k33(u){return u[0]*u[0]+u[1]*u[1]}function f33(u){return Math.sqrt(k33(u))}function t(u,B){return[u,B]}function ik0(u){return u.length===2?t(u[0],u[1]):void 0}function c3(u,B=t(0,0)){return t(B[0]+u[0],B[1]+u[1])}function l33(u){return Array.isArray(u)&&u.length===2&&typeof u[0]=="number"&&!isNaN(u[0])&&typeof u[1]=="number"&&!isNaN(u[1])}function DD(u,B){let E=Math.abs;return E(u[0]-B[0])<0.0001&&E(u[1]-B[1])<0.0001}function Lu([u,B],[E,A],C){return t((u-E)*Math.cos(C)-(B-A)*Math.sin(C)+E,(u-E)*Math.sin(C)+(B-A)*Math.cos(C)+A)}function X_(u,B=[0,0]){return t(u[0]+B[0],u[1]+B[1])}function bO(u,B){return t((u[0]+B[0])/2,(u[1]+B[1])/2)}function G1(u,B){return Math.hypot(B[0]-u[0],B[1]-u[1])}function sT(u,B){let E=B[0]-u[0],A=B[1]-u[1];return E*E+A*A}function zk0(u,B){return[u,B]}function b33(u,B){let E=u[1][1]-u[0][1],A=u[0][0]-u[1][0],C=B[1][1]-B[0][1],D=B[0][0]-B[1][0],F=E*D-C*A;if(F!==0){let U=E*u[0][0]+A*u[0][1],z=C*B[0][0]+D*B[0][1];return t((U*D-z*A)/F,(E*z-C*U)/F)}return null}function V4(u,B){return[u,B]}function oT(u,B){let E=b33(zk0(u[0],u[1]),zk0(B[0],B[1]));return!E||!ZK(E,B)||!ZK(E,u)?null:E}function kk0(u,B){return[u,B]}function M33(u,B){return[V4(u[0],t(u[1][0],u[0][1])),V4(t(u[1][0],u[0][1]),u[1]),V4(u[1],t(u[0][0],u[1][1])),V4(t(u[0][0],u[1][1]),u[0])].map((E)=>oT(B,E)).filter((E)=>!!E)}function nk(u,B,E,A){return[u,B,E,A]}function dUu(u,B,E,A=0.000001){return[(u(B+A,E)-u(B-A,E))/(2*A),(u(B,E+A)-u(B,E-A))/(2*A)]}function Z33(u,B,E,A=0.001,C=10){let D=1/0,F=0;for(;D>=A;){if(F>=C)return null;let U=u(B,E),z=[dUu((J,w)=>u(J,w)[0],B,E),dUu((J,w)=>u(J,w)[1],B,E)],k=[[-U[0]],[-U[1]]],f=z[0][0]*z[1][1]-z[0][1]*z[1][0];if(f===0)return null;let l=[[z[1][1]/f,-z[0][1]/f],[-z[1][0]/f,z[0][0]/f]],b=[[l[0][0]*k[0][0]+l[0][1]*k[1][0]],[l[1][0]*k[0][0]+l[1][1]*k[1][0]]];B=B+b[0][0],E=E+b[1][0];let[M,Z]=u(B,E);D=Math.max(Math.abs(M),Math.abs(Z)),F+=1}return[B,E]}function jku(u,B){let E=w33(u);if(M33(kk0(t(E[0],E[1]),t(E[2],E[3])),B).length===0)return[];let A=(U)=>t(B[0][0]+U*(B[1][0]-B[0][0]),B[0][1]+U*(B[1][1]-B[0][1])),C=[[0.5,0],[0.2,0],[0.8,0]],D=([U,z])=>{let k=Z33((b,M)=>{let Z=nT(u,b),J=A(M);return[Z[0]-J[0],Z[1]-J[1]]},U,z);if(!k)return null;let[f,l]=k;return f<0||f>1||l<0||l>1?null:nT(u,f)},F=D(C[0]);return F?[F]:(F=D(C[1]),F?[F]:(F=D(C[2]),F?[F]:[]))}function J33(u,B,E=0.001){let A=(z,k,f,l=E)=>{let b=z,M=k,Z;for(;M-b>l;)Z=(M+b)/2,f(Z-l)<f(Z+l)?M=Z:b=Z;return Z},C=0;for(let z=1/0,k=0;k<30;k++){let f=G1(B,nT(u,k/30));f<z&&(z=f,C=k)}let D=Math.max((C-1)/30,0),F=Math.min((C+1)/30,1),U=A(D,F,(z)=>G1(B,nT(u,z)));return U?nT(u,U):null}function Nku(u,B){let E=J33(u,B);return E?G1(B,E):0}function w33(u){let[B,E,A,C]=u,D=[B[0],E[0],A[0],C[0]],F=[B[1],E[1],A[1],C[1]];return[Math.min(...D),Math.min(...F),Math.max(...D),Math.max(...F)]}function sUu(...u){return iku(u)}function x_(u){return iku(u)}function iku(u){return Q33(u)?u:[...u,u[0]]}function Q33(u){return DD(u[0],u[u.length-1])}function $7(u,B){return RE([u,B])}function Tq([u,B,E],A){let C=(f,l,b)=>(f[0]-b[0])*(l[1]-b[1])-(l[0]-b[0])*(f[1]-b[1]),D=C(A,u,B),F=C(A,B,E),U=C(A,E,u),z=D<0||F<0||U<0,k=D>0||F>0||U>0;return!(z&&k)}function l2(u,B){if(!u)throw Error(B)}function d6(u,B,E,A){return u?(u?.addEventListener?.(B,E,A),()=>{u?.removeEventListener?.(B,E,A)}):()=>{}}function dku(u,B=!0){let E=u.length;if(E<4)return"";let A=u[0],C=u[1],D=u[2],F=`M${A[0].toFixed(2)},${A[1].toFixed(2)} Q${C[0].toFixed(2)},${C[1].toFixed(2)} ${f_(C[0],D[0]).toFixed(2)},${f_(C[1],D[1]).toFixed(2)} T`;for(let U=2,z=E-1;U<z;U++)A=u[U],C=u[U+1],F+=`${f_(A[0],C[0]).toFixed(2)},${f_(A[1],C[1]).toFixed(2)} `;return B&&(F+="Z"),F}function _lu(u,B,E){return{center:u,halfWidth:B,halfHeight:E}}function $53({center:u,halfWidth:B,halfHeight:E},[A,C]){let[D,F]=u,U=A[0]-D,z=A[1]-F,k=C[0]-D,f=C[1]-F,l=Math.pow(k-U,2)/Math.pow(B,2)+Math.pow(f-z,2)/Math.pow(E,2),b=2*(U*(k-U)/Math.pow(B,2)+z*(f-z)/Math.pow(E,2)),M=Math.pow(U,2)/Math.pow(B,2)+Math.pow(z,2)/Math.pow(E,2)-1,Z=(-b+Math.sqrt(Math.pow(b,2)-4*l*M))/(2*l),J=(-b-Math.sqrt(Math.pow(b,2)-4*l*M))/(2*l),w=[t(U+Z*(k-U)+D,z+Z*(f-z)+F),t(U+J*(k-U)+D,z+J*(f-z)+F)].filter((K)=>!isNaN(K[0])&&!isNaN(K[1]));return w.length===2&&DD(w[0],w[1])?[w[0]]:w}function nlu(u,B=0){let E=IA(Math.min(u.width,u.height),u);if(E<=0){let l=kk0(t(u.x-B,u.y-B),t(u.x+u.width+B,u.y+u.height+B)),b=V4(t(l[0][0]+E,l[0][1]),t(l[1][0]-E,l[0][1])),M=V4(t(l[1][0],l[0][1]+E),t(l[1][0],l[1][1]-E)),Z=V4(t(l[0][0]+E,l[1][1]),t(l[1][0]-E,l[1][1])),J=V4(t(l[0][0],l[1][1]-E),t(l[0][0],l[0][1]+E));return[[b,M,Z,J],[]]}let A=t(u.x+u.width/2,u.y+u.height/2),C=kk0(t(u.x,u.y),t(u.x+u.width,u.y+u.height)),D=V4(t(C[0][0]+E,C[0][1]),t(C[1][0]-E,C[0][1])),F=V4(t(C[1][0],C[0][1]+E),t(C[1][0],C[1][1]-E)),U=V4(t(C[0][0]+E,C[1][1]),t(C[1][0]-E,C[1][1])),z=V4(t(C[0][0],C[1][1]-E),t(C[0][0],C[0][1]+E)),k=[b9(w7(O4(t(C[0][0]-B,C[0][1]-B),A)),B),b9(w7(O4(t(C[1][0]+B,C[0][1]-B),A)),B),b9(w7(O4(t(C[1][0]+B,C[1][1]+B),A)),B),b9(w7(O4(t(C[0][0]-B,C[1][1]+B),A)),B)],f=[nk(c3(k[0],z[1]),c3(k[0],t(z[1][0]+0.6666666666666666*(C[0][0]-z[1][0]),z[1][1]+0.6666666666666666*(C[0][1]-z[1][1]))),c3(k[0],t(D[0][0]+0.6666666666666666*(C[0][0]-D[0][0]),D[0][1]+0.6666666666666666*(C[0][1]-D[0][1]))),c3(k[0],D[0])),nk(c3(k[1],D[1]),c3(k[1],t(D[1][0]+0.6666666666666666*(C[1][0]-D[1][0]),D[1][1]+0.6666666666666666*(C[0][1]-D[1][1]))),c3(k[1],t(F[0][0]+0.6666666666666666*(C[1][0]-F[0][0]),F[0][1]+0.6666666666666666*(C[0][1]-F[0][1]))),c3(k[1],F[0])),nk(c3(k[2],F[1]),c3(k[2],t(F[1][0]+0.6666666666666666*(C[1][0]-F[1][0]),F[1][1]+0.6666666666666666*(C[1][1]-F[1][1]))),c3(k[2],t(U[1][0]+0.6666666666666666*(C[1][0]-U[1][0]),U[1][1]+0.6666666666666666*(C[1][1]-U[1][1]))),c3(k[2],U[1])),nk(c3(k[3],U[0]),c3(k[3],t(U[0][0]+0.6666666666666666*(C[0][0]-U[0][0]),U[0][1]+0.6666666666666666*(C[1][1]-U[0][1]))),c3(k[3],t(z[0][0]+0.6666666666666666*(C[0][0]-z[0][0]),z[0][1]+0.6666666666666666*(C[1][1]-z[0][1]))),c3(k[3],z[0]))];return[[V4(f[0][3],f[1][0]),V4(f[1][3],f[2][0]),V4(f[2][3],f[3][0]),V4(f[3][3],f[0][0])],f]}function plu(u,B=0){let[E,A,C,D,F,U,z,k]=Zbu(u),f=IA(Math.abs(E-z),u),l=IA(Math.abs(D-A),u);if(u.roundness?.type==null){let[G,L,H,q]=[t(u.x+E,u.y+A-B),t(u.x+C+B,u.y+D),t(u.x+F,u.y+U+B),t(u.x+z-B,u.y+k)],x=V4(t(G[0]+f,G[1]+l),t(L[0]-f,L[1]-l)),v=V4(t(L[0]-f,L[1]+l),t(H[0]+f,H[1]-l)),W=V4(t(H[0]-f,H[1]-l),t(q[0]+f,q[1]+l)),S=V4(t(q[0]+f,q[1]-l),t(G[0]-f,G[1]+l));return[[x,v,W,S],[]]}let b=t(u.x+u.width/2,u.y+u.height/2),[M,Z,J,w]=[t(u.x+E,u.y+A),t(u.x+C,u.y+D),t(u.x+F,u.y+U),t(u.x+z,u.y+k)],K=[b9(w7(O4(Z,b)),B),b9(w7(O4(J,b)),B),b9(w7(O4(w,b)),B),b9(w7(O4(M,b)),B)],Q=[nk(c3(K[0],t(Z[0]-f,Z[1]-l)),c3(K[0],Z),c3(K[0],Z),c3(K[0],t(Z[0]-f,Z[1]+l))),nk(c3(K[1],t(J[0]+f,J[1]-l)),c3(K[1],J),c3(K[1],J),c3(K[1],t(J[0]-f,J[1]-l))),nk(c3(K[2],t(w[0]+f,w[1]+l)),c3(K[2],w),c3(K[2],w),c3(K[2],t(w[0]+f,w[1]-l))),nk(c3(K[3],t(M[0]-f,M[1]+l)),c3(K[3],M),c3(K[3],M),c3(K[3],t(M[0]+f,M[1]+l)))];return[[V4(Q[0][3],Q[1][0]),V4(Q[1][3],Q[2][0]),V4(Q[2][3],Q[3][0]),V4(Q[3][3],Q[0][0])],Q]}function C73(u){let B=Vf0(u),E=new Path2D(B);return fbu.set(u,E),E}function D73(u){return fbu.get(u)}function Vf0(u){let B=u.simulatePressure?u.points:u.points.length?u.points.map(([A,C],D)=>[A,C,u.pressures[D]]):[[0,0,0.5]],E={simulatePressure:u.simulatePressure,size:u.strokeWidth*4.25,thinning:0.6,smoothing:0.5,streamline:0.5,easing:(A)=>Math.sin(A*Math.PI/2),last:!!u.lastCommittedPoint};return U73(yFu(B,E))}function Dzu(u,B){return[(u[0]+B[0])/2,(u[1]+B[1])/2]}function U73(u){if(!u.length)return"";let B=u.length-1;return u.reduce((E,A,C,D)=>(C===B?E.push(A,Dzu(A,D[0]),"L",D[0],"Z"):E.push(A,Dzu(A,D[C+1])),E),["M",u[0],"Q"]).join(" ").replace(F73,"$1")}function k73(u){let B=u.roughness,E=Math.max(u.width,u.height),A=Math.min(u.width,u.height);return A>=20&&E>=50||A>=15&&u.roundness&&Zn(u.type)||W3(u)&&E>=50?B:Math.min(B/(E<10?3:2),2.5)}function wMu(u){let B=[];for(let E of u.childNodes)if(E.nodeType===3){let A=E.textContent?.trim();A&&B.push({type:"text",value:A})}else if(E instanceof HTMLImageElement){let A=E.getAttribute("src");A&&A.startsWith("http")&&B.push({type:"imageUrl",value:A})}else B=B.concat(wMu(E));return B}function $zu(u){return[Math.min(u[0][0],u[1][0]),Math.min(u[0][1],u[1][1]),Math.max(u[0][0],u[1][0]),Math.max(u[0][1],u[1][1])]}function f83(u,B){return u[0]<=B[2]&&u[2]>=B[0]&&u[1]<=B[3]&&u[3]>=B[1]}function yzu(u,B){let E=O4(u[1],u[0]),A=O4(B,u[0]),C=z5(E,A);return Math.abs(C)<l83}function Dk0(u,B){let E=O4(u[1],u[0]),A=O4(B,u[0]);return z5(E,A)<0}function czu(u,B){return yzu(u,B[0])||yzu(u,B[1])||(Dk0(u,B[0])?!Dk0(u,B[1]):Dk0(u,B[1]))}function b83(u,B){return f83($zu(u),$zu(B))&&czu(u,B)&&czu(B,u)}function Nl0(u,B,E){let A=zzu(B,E),C=zzu(u,E);return A.some((D)=>C.some((F)=>b83(D,F)))}var Lk0,qk0,ezu,Tku,Oku,m5,hbu,_43=(u,B)=>B.reduce((E,A)=>((A in u)&&(E[A]=u[A]),E),{}),uku=5,HK=5,n43=4,Iq=4,Pq=1,uD,BD=(u,B)=>B.map((E)=>_6[u][E]),m3,Bku,Xk0,xk0,vk0,Eku,Aku,p43=(u)=>[m3.cyan[u],m3.blue[u],m3.violet[u],m3.grape[u],m3.pink[u],m3.green[u],m3.teal[u],m3.yellow[u],m3.orange[u],m3.red[u]],Cku=(u,B,E)=>`#${(16777216+(u<<16)+(B<<8)+E).toString(16).slice(1)}`,bD,Sk0,d43,pq,s43,Dku,Wk0,Fku=()=>navigator.brave?.isBrave?.name==="isBrave",a_,Uku="Excalidraw",o43=36,FM=10,CO=8,zku=5,Yk0=1,kku=30,BM,fku="red",g1,sk,LK,DO,VB,qK,jq="Xiaolai",pT="Segoe UI Emoji",n6,Nq,lku=(u)=>{switch(u){case n6.Excalifont:return[jq,pT];default:return[pT]}},_3,j6,Rk0=1,TU=20,ok,dq="left",FO="top",EM=2,H_,t43=0.00001,bku,UO="#ffffff",Mku="#1e1e1e",Zku="#a2f1a6",zO=20,Jku=5,XK,y4,e43,V_,WE,h_,wku=500,Kku=300,Qku=500,Gku=100,kO=0.1,m_=0.1,r_=30,Hku=300,$_="invert(93%) hue-rotate(180deg)",Tk0,Lku=730,qku=1000,Xku=500,xku=1229,mT=2,y_,xK=10,vku=1440,Ok0=4194304,Z1="http://www.w3.org/2000/svg",fO,f2=5,u33=0.7,B33=11,P8,rq,E33=20,pz0=0.25,A33=32,b2,Sku,c_,x9,lO="library",vK="search",VA,Ik0,O2,sq,Pk0="Untitled",MK,OE=1,f5,jk0=0.3,L_="element",C33,Wku,D33,MD=()=>({showWelcomeScreen:!1,theme:_3.LIGHT,collaborators:new Map,currentChartType:"bar",currentItemBackgroundColor:x9.backgroundColor,currentItemEndArrowhead:"arrow",currentItemFillStyle:x9.fillStyle,currentItemFontFamily:ok,currentItemFontSize:TU,currentItemOpacity:x9.opacity,currentItemRoughness:x9.roughness,currentItemStartArrowhead:null,currentItemStrokeColor:x9.strokeColor,currentItemRoundness:"round",currentItemArrowType:f5.round,currentItemStrokeStyle:x9.strokeStyle,currentItemStrokeWidth:x9.strokeWidth,currentItemTextAlign:dq,currentHoveredFontFamily:null,cursorButton:"up",activeEmbeddable:null,newElement:null,editingTextElement:null,editingGroupId:null,editingLinearElement:null,activeTool:{type:"selection",customType:null,locked:x9.locked,lastActiveTool:null},penMode:!1,penDetected:!1,errorMessage:null,exportBackground:!0,exportScale:D33,exportEmbedScene:!1,exportWithDarkMode:!1,fileHandle:null,gridSize:zO,gridStep:Jku,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:MK.generalStats|MK.elementProperties},startBoundElement:null,suggestedBindings:[],frameRendering:{enabled:!0,clip:!0,name:!0,outline:!0},frameToHighlight:null,editingFrame:null,elementsToHighlight:null,toast:null,viewBackgroundColor:m3.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:[]}),F33,Yku=(u,B)=>{let E={};for(let A of Object.keys(u))if(F33[A]?.[B]){let C=u[A];E[A]=C}return E},Rku=(u)=>Yku(u,"export"),U33=(u)=>Yku(u,"server"),ZD=({activeTool:u})=>u.type==="eraser",SK=({activeTool:u})=>u.type==="hand",$3=(u,B,E)=>Math.min(Math.max(u,B),E),JD=(u,B,E="round")=>{let A=Math.pow(10,B);return Math[E]((u+Number.EPSILON)*A)/A},Iku=(u,B,E="round")=>{let A=1/B;return Math[E](u*A)/A},f_=(u,B)=>(u+B)/2,hq=(u)=>typeof u=="number"&&Number.isFinite(u),pUu=(u,B,E=0.0001)=>Math.abs(u-B)<E,q_=(u)=>u<0?u+2*Math.PI:u>=2*Math.PI?u-2*Math.PI:u,w7=(u)=>{let B=f33(u);return B===0?V5(0,0):V5(u[0]/B,u[1]/B)},ck=(u,B,E)=>X_(B,b9(O4(u,B),E)),Pku=(u,B,E)=>B[0]<=Math.max(u[0],E[0])&&B[0]>=Math.min(u[0],E[0])&&B[1]<=Math.max(u[1],E[1])&&B[1]>=Math.min(u[1],E[1]),ZK=(u,B,E=0.0001)=>{let A=ak0(u,B);return A===0?!0:A<E},ak0=(u,B)=>{let[E,A]=u,[[C,D],[F,U]]=B,z=E-C,k=A-D,f=F-C,l=U-D,b=z*f+k*l,M=f*f+l*l,Z=-1;M!==0&&(Z=b/M);let J,w;Z<0?(J=C,w=D):Z>1?(J=F,w=U):(J=C+Z*f,w=D+Z*l);let K=E-J,Q=A-w;return Math.sqrt(K*K+Q*Q)},nT=(u,B)=>t((1-B)**3*u[0][0]+3*(1-B)**2*B*u[1][0]+3*(1-B)*B**2*u[2][0]+B**3*u[3][0],(1-B)**3*u[0][1]+3*(1-B)**2*B*u[1][1]+3*(1-B)*B**2*u[2][1]+B**3*u[3][1]),oUu=(u,B)=>{let E=u[0],A=u[1],C=!1;for(let D=0,F=B.length-1;D<B.length;F=D++){let U=B[D][0],z=B[D][1],k=B[F][0],f=B[F][1];(z>A&&f<=A||z<=A&&f>A)&&E<(k-U)*(A-z)/(f-z)+U&&(C=!C)}return C},K33=(u,B,E=0.0001)=>{let A=!1;for(let C=0,D=B.length-1;C<D;C++)if(ZK(u,V4(B[C],B[C+1]),E)){A=!0;break}return A},v_=([u,B],[E,A])=>u<=E?B>=E:u>=E?A>=u:!1,S_=([u,B],[E,A])=>{let C=Math.max(u,E),D=Math.min(B,A);return C<=D?RE([C,D]):null},l_=(u,[B,E])=>u>=B&&u<=E,tUu=null,Vk0=()=>{if(tUu)return tUu;let u=new Date,B=u.getFullYear(),E=`${u.getMonth()+1}`.padStart(2,"0"),A=`${u.getDate()}`.padStart(2,"0"),C=`${u.getHours()}`.padStart(2,"0"),D=`${u.getMinutes()}`.padStart(2,"0");return`${B}-${E}-${A}-${C}${D}`},tq=(u)=>u.charAt(0).toUpperCase()+u.slice(1),aku=(u)=>u instanceof HTMLElement&&u.className.includes("ToolIcon"),g_=(u)=>u instanceof HTMLElement&&u.dataset.type==="wysiwyg"||u instanceof HTMLBRElement||u instanceof HTMLInputElement||u instanceof HTMLTextAreaElement||u instanceof HTMLSelectElement,Vku=(u)=>g_(u)||u instanceof Element&&!!u.closest("label, button"),UM=(u)=>u instanceof HTMLElement&&u.dataset.type==="wysiwyg"||u instanceof HTMLBRElement||u instanceof HTMLTextAreaElement||u instanceof HTMLInputElement&&(u.type==="text"||u.type==="number"||u.type==="password"),WK=({fontFamily:u})=>{for(let[B,E]of Object.entries(n6))if(E===u)return`${B}${lku(E).map((A)=>`, ${A}`).join("")}`;return pT},e1=({fontSize:u,fontFamily:B})=>`${u}px ${WK({fontFamily:B})}`,YK=(u,B)=>{let E=0,A=null,C=(...D)=>{A=D,clearTimeout(E),E=window.setTimeout(()=>{A=null,u(...D)},B)};return C.flush=()=>{if(clearTimeout(E),A){let D=A;A=null,u(...D)}},C.cancel=()=>{A=null,clearTimeout(E)},C},MO=(u,B)=>{let E=null,A=null,C=null,D=(U)=>{E=window.requestAnimationFrame(()=>{E=null,u(...U),A=null,C&&(A=C,C=null,D(A))})},F=(...U)=>{if(Z3.MODE==="test"){u(...U);return}A=U,E===null?D(A):B?.trailing&&(C=U)};return F.flush=()=>{E!==null&&(cancelAnimationFrame(E),E=null),A&&(u(...C||A),A=C=null)},F.cancel=()=>{A=C=null,E!==null&&(cancelAnimationFrame(E),E=null)},F},zM=(u)=>1-Math.pow(1-u,4),eUu=(u,B,E)=>(B-u)*zM(E)+u,hku=({fromValues:u,toValues:B,onStep:E,duration:A=250,interpolateValue:C,onStart:D,onEnd:F,onCancel:U})=>{let z=!1,k=0,f;function l(b){if(z)return;f===void 0&&(f=b,D?.());let M=Math.min(b-f,A),Z=zM(M/A),J={};if(Object.keys(u).forEach((w)=>{let K=w,Q=(B[K]-u[K])*Z+u[K];J[K]=Q}),E(J),M<A){let w=M/A,K={};Object.keys(u).forEach((Q)=>{let G=Q,L=u[G],H=B[G],q;q=C?C(L,H,w,G):eUu(L,H,w),q==null&&(q=eUu(L,H,w)),K[G]=q}),E(K),k=window.requestAnimationFrame(l)}else E(B),F?.()}return k=window.requestAnimationFrame(l),()=>{U?.(),z=!0,window.cancelAnimationFrame(k)}},mku=(u,B)=>{if(!u.length||B<1)return[];let E=0,A=0,C=Array(Math.ceil(u.length/B));for(;E<u.length;)C[A++]=u.slice(E,E+=B);return C},K7=(u,B)=>Math.abs(u-B),n9=(u,B)=>B.type==="custom"?{...u.activeTool,type:"custom",customType:B.customType,locked:B.locked??u.activeTool.locked}:{...u.activeTool,lastActiveTool:B.lastActiveToolBeforeEraser===void 0?u.activeTool.lastActiveTool:B.lastActiveToolBeforeEraser,type:B.type,customType:null,locked:B.locked??u.activeTool.locked},Su=(u)=>(u=u.replace(/\bAlt\b/i,"Alt").replace(/\bShift\b/i,"Shift").replace(/\b(Enter|Return)\b/i,"Enter"),bD?u.replace(/\bCtrlOrCmd\b/gi,"Cmd").replace(/\bAlt\b/i,"Option"):u.replace(/\bCtrlOrCmd\b/gi,"Ctrl")),Q6=({clientX:u,clientY:B},{zoom:E,offsetLeft:A,offsetTop:C,scrollX:D,scrollY:F})=>{let U=(u-A)/E.value-D,z=(B-C)/E.value-F;return{x:U,y:z}},jA=({sceneX:u,sceneY:B},{zoom:E,offsetLeft:A,offsetTop:C,scrollX:D,scrollY:F})=>{let U=(u+D)*E.value+A,z=(B+F)*E.value+C;return{x:U,y:z}},ZO=(u)=>getComputedStyle(document.documentElement).getPropertyValue(`--${u}`),G33="A-Za-zÀ-ÖØ-öø-ʸ̀-֐ࠀ-῿Ⰰ-﬜﷾-﹯﻽-￿",H33="֑-߿יִ-﷽ﹰ-ﻼ",L33,rku=(u)=>L33.test(u),OA=(u)=>{let[B,E]=u;return{x:B,y:E}},hk0=(u)=>{if(u?.name==="AbortError"){console.warn(u);return}throw u},mk0=(u,B,E=0)=>{E<0&&(E=u.length+E),E=Math.min(u.length,Math.max(E,0));let A=E-1;for(;++A<u.length;)if(B(u[A],A,u))return A;return-1},kM=(u,B,E=u.length-1)=>{E<0&&(E=u.length+E),E=Math.min(u.length-1,Math.max(E,0));let A=E+1;for(;--A>-1;)if(B(u[A],A,u))return A;return-1},TA=(u)=>{let B=u.length===5&&u.substr(4,1)==="0",E=u.length===9&&u.substr(7,2)==="00";return B||E||u===m3.transparent},dz0=(u)=>u.fillStyle!=="solid"||TA(u.backgroundColor),$ku=()=>{let u,B,E=new Promise((A,C)=>{u=A,B=C});return E.resolve=u,E.reject=B,E},yku=(u)=>{let B=u.parentElement;for(;B;){if(B===document.body)return document;let{overflowY:E}=window.getComputedStyle(B);if(B.scrollHeight>B.clientHeight&&(E==="auto"||E==="scroll"||E==="overlay"))return B;B=B.parentElement}return document},cku=(u)=>{let B=u.parentElement;for(;B;){if(B.tabIndex>-1){B.focus();return}B=B.parentElement}},q33=(u)=>Array.from(u).map((B)=>`0${B.toString(16)}`.slice(-2)).join(""),eq=()=>OU()?1:Date.now(),e4=(u)=>u instanceof Map?u:u.reduce((B,E)=>(B.set(typeof E=="string"?E:E.id,E),B),new Map),gku=(u)=>u.reduce((B,E,A)=>(B.set(E.id,[E,A]),B),new Map),$k=(u,B)=>u.reduce((E,A)=>(E[B?B(A):String(A)]=A,E),{}),_ku=(u)=>u.reduce((B,E,A)=>{let C={...E,prev:null,next:null};if(A!==0){let D=B[A-1];if(C.prev=D,D.next=C,A===u.length-1){let F=B[0];C.next=F,F.prev=C}}return B.push(C),B},[]),OU=()=>Z3.MODE==="test",rk0=()=>Z3.MODE==="development",X33=()=>typeof process<"u"&&!0,$k0=(u,B)=>new CustomEvent(u,{detail:{nativeEvent:B},cancelable:!0}),JO=(u,B)=>{let E=!1;for(let A in B){let C=B[A];if(typeof C<"u"){if(u[A]===C&&(typeof C!="object"||C===null))continue;E=!0}}return E?{...u,...B}:u},nku=()=>{try{return window.self===window.top?"top":"iframe"}catch{return"iframe"}},uX=(u)=>!!u&&typeof u=="object"&&("then"in u)&&("catch"in u)&&("finally"in u),__=(u)=>{let B=u?.querySelectorAll("button, a, input, select, textarea, div[tabindex], label[tabindex]");return B?Array.from(B).filter((E)=>E.tabIndex>-1&&!E.disabled):[]},uzu=(u,B)=>Array.isArray(u)&&Array.isArray(B)&&u.length===0&&B.length===0?!0:u===B,h5=(u,B,E,A=!1)=>{let C=Object.keys(u),D=Object.keys(B);if(C.length!==D.length)return A&&console.warn("%cisShallowEqual: objects don't have same properties ->","color: #8B4000",u,B),!1;if(E&&Array.isArray(E)){for(let F of E)if(!(u[F]===B[F]||uzu(u[F],B[F])))return A&&console.warn(`%cisShallowEqual: ${F} not equal ->`,"color: #8B4000",u[F],B[F]),!1;return!0}return C.every((F)=>{let U=E?.[F],z=U?U(u[F],B[F]):u[F]===B[F]||uzu(u[F],B[F]);return!z&&A&&console.warn(`%cisShallowEqual: ${F} not equal ->`,"color: #8B4000",u[F],B[F]),z})},wO=(u,B,{checkForDefaultPrevented:E=!0}={})=>function(A){if(u?.(A),!E||!A?.defaultPrevented)return B?.(A)},fM=(u,B,E)=>{if(!B)return u;if(E)return console.error(B),u;throw Error(B)},pku=(u)=>{let B,E,A=function(C){let D=Object.entries(C);if(B){let U=!0;for(let[z,k]of D)if(B.get(z)!==k){U=!1;break}if(U)return E}let F=u(C);return B=new Map(D),E=F,F};return A.clear=()=>{B=void 0,E=void 0},A},yk0=(u,B)=>u instanceof Set||u instanceof Map?u.has(B):("includes"in u)?u.includes(B):u.hasOwnProperty(B),IU=(u)=>JSON.parse(JSON.stringify(u)),BX=(u,B)=>h5(u,B)?u:B,ck0=(u)=>u.replace(/\r?\n|\r/g,`
`),RE=(u)=>u,JK=async(u,...B)=>new Promise((E)=>{E(u(...B))}),x33=(...u)=>Math.max(...u.map((B)=>B?1:0))>0,Bzu=class{constructor(u,B){j0(this,"pool"),j0(this,"entries",{}),this.pool=new Oku.default(u,B)}all(){let u=(B)=>{if(B.data.result){let[E,A]=B.data.result;this.entries[E]=A}};return this.pool.addEventListener("fulfilled",u),this.pool.start().then(()=>(setTimeout(()=>{this.pool.removeEventListener("fulfilled",u)}),Object.values(this.entries)))}},w_=(u)=>u.replace(/"/g,"&quot;"),gk0=(u)=>Array.isArray(u)?u:[u],IE=(u)=>!!u&&u.type==="image"&&!!u.fileId,H1=(u)=>!!u&&u.type==="image",rB=(u)=>!!u&&u.type==="embeddable",tk=(u)=>!!u&&u.type==="iframe",YE=(u)=>!!u&&(u.type==="iframe"||u.type==="embeddable"),l4=(u)=>u!=null&&u.type==="text",_k0=(u)=>u!=null&&u.type==="frame",KO=(u)=>u!=null&&u.type==="magicframe",u3=(u)=>u!=null&&(u.type==="frame"||u.type==="magicframe"),NA=(u)=>u!=null&&v33(u.type),v33=(u)=>u==="freedraw",W3=(u)=>u!=null&&n_(u.type),j3=(u)=>u!=null&&u.type==="arrow",K4=(u)=>j3(u)&&u.elbowed,n_=(u)=>u==="arrow"||u==="line",FD=(u,B=!0)=>u!=null&&(!u.locked||B===!0)&&nk0(u.type),nk0=(u)=>u==="arrow",iA=(u,B=!0)=>u!=null&&(!u.locked||B===!0)&&(u.type==="rectangle"||u.type==="diamond"||u.type==="ellipse"||u.type==="image"||u.type==="iframe"||u.type==="embeddable"||u.type==="frame"||u.type==="magicframe"||u.type==="text"&&!u.containerId),S33=(u)=>u!=null&&(u.type==="rectangle"||u.type==="diamond"||u.type==="image"||u.type==="iframe"||u.type==="embeddable"||u.type==="frame"||u.type==="magicframe"||u.type==="text"&&!u.containerId),lM=(u,B=!0)=>u!=null&&(!u.locked||B===!0)&&(u.type==="rectangle"||u.type==="diamond"||u.type==="ellipse"||j3(u)),pk0=(u)=>{let B=u?.type;if(!B)return!1;switch(B){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 fM(B,null),!1}},QO=(u)=>u.type==="rectangle"||u.type==="ellipse"||u.type==="diamond",i8=(u)=>lM(u)&&!!u.boundElements?.some(({type:B})=>B==="text"),X6=(u)=>u!==null&&("containerId"in u)&&u.containerId!==null&&l4(u),RK=(u)=>u==="rectangle"||u==="embeddable"||u==="iframe"||u==="image",sku=(u)=>u==="line"||u==="arrow"||u==="diamond",oku=(u,B)=>!!((u===b2.ADAPTIVE_RADIUS||u===b2.LEGACY)&&RK(B.type)||u===b2.PROPORTIONAL_RADIUS&&sku(B.type)),tku=(u)=>sku(u.type)?{type:b2.PROPORTIONAL_RADIUS}:RK(u.type)?{type:b2.ADAPTIVE_RADIUS}:null,W_=(u)=>Object.hasOwn(u,"fixedPoint")&&u.fixedPoint!=null,Q7=(u,B,E)=>{let A=u.split(`
`).map((F)=>F||" ").join(`
`),C=parseFloat(B),D=R33(A,C,E);return{width:d_(A,B),height:D}},eku,dk0=(u,B)=>{let E=T33(u);return E===0?Q7(eku.split("").join(`
`),u,B).width+f2*2:E+f2*2},p_=(u,B)=>Q7("",u,B).width+f2*2,ufu=()=>d_(eku,e1({fontSize:TU,fontFamily:ok}))>0,TK=(u)=>ck0(u).replace(/\t/g," "),sk0=(u)=>TK(u).split(`
`),W33=(u)=>{let B=sk0(u.text).length;return u.height/B/u.fontSize},EX=(u,B)=>u*B,ok0=(u,B)=>EX(u,B)+f2*2,sz0,Y33=class{constructor(){j0(this,"canvas"),this.canvas=document.createElement("canvas")}getLineWidth(u,B){let E=this.canvas.getContext("2d");E.font=B;let A=E.measureText(u).width;return OU()?A*10:A}},wK=(u,B)=>(sz0||(sz0=new Y33),sz0.getLineWidth(u,B)),d_=(u,B)=>{let E=sk0(u),A=0;return E.forEach((C)=>{A=Math.max(A,wK(C,B))}),A},R33=(u,B,E)=>{let A=sk0(u).length;return EX(B,E)*A},GO,T33=(u)=>{let B=GO.getCache(u);if(!B)return 0;let E=B.filter((A)=>A!==void 0);return Math.max(...E)},oz0,b_,tz0,O33=(u)=>(oz0||(oz0=c1.class(...Object.values(gk))),oz0.test(u)),I33=()=>{if(!b_)try{b_=j33()}catch{b_=P33()}return b_},tk0=()=>(tz0||(tz0=N33()),tz0),RA,gk,kK,P33=()=>c1.or(tk0(),_9.On(RA.HYPHEN,RA.WHITESPACE,gk.CHAR)),j33=()=>c1.or(tk0(),_9.Before(RA.WHITESPACE).Build(),_9.After(RA.WHITESPACE,RA.HYPHEN).Build(),_9.Before(gk.CHAR,gk.CURRENCY).NotPrecededBy(RA.OPENING,gk.OPENING).Build(),_9.After(gk.CHAR).NotFollowedBy(RA.HYPHEN,RA.CLOSING,gk.CLOSING).Build(),_9.BeforeMany(gk.OPENING).NotPrecededBy(RA.OPENING).Build(),_9.AfterMany(gk.CLOSING).NotFollowedBy(RA.CLOSING).Build(),_9.AfterMany(RA.CLOSING).FollowedBy(RA.OPENING).Build()),N33=()=>c1.group(c1.or(kK.FLAG,c1.and(kK.MOST,kK.JOINER,c1.build(`(?:${kK.ZWJ.source}(?:${kK.FLAG.source}|${kK.ANY.source}${kK.JOINER.source}))*`)))),c1,_9,i33=(u)=>{let B=I33();return u.normalize("NFC").split(B).filter(Boolean)},bM=(u,B,E)=>{if(!Number.isFinite(E)||E<0)return u;let A=[],C=u.split(`
`);for(let D of C){if(wK(D,B)<=E){A.push(D);continue}let F=a33(D,B,E);A.push(...F)}return A.join(`
`)},a33=(u,B,E)=>{let A=[],C=i33(u)[Symbol.iterator](),D="",F=0,U=C.next();for(;!U.done;){let z=U.value,k=D+z,f=m33(z)?F+GO.calculate(z,B):wK(k,B);if(/\s/.test(z)||f<=E){D=k,F=f,U=C.next();continue}if(D)A.push(D.trimEnd()),D="",F=0;else{let l=V33(z,B,E),b=l[l.length-1]??"",M=l.slice(0,-1);A.push(...M),D=b,F=wK(b,B),U=C.next()}}if(D){let z=h33(D,B,E);A.push(z)}return A},V33=(u,B,E)=>{if(tk0().test(u))return[u];r33(u);let A=[],C=Array.from(u),D="",F=0;for(let U of C){let z=GO.calculate(U,B),k=F+z;if(k<=E){D=D+U,F=k;continue}D&&A.push(D),D=U,F=z}return D&&A.push(D),A},h33=(u,B,E)=>{if(!(wK(u,B)>E))return u;let[,A,C]=u.match(/^(.+?)(\s+)$/)??[u,u.trimEnd(),""],D=wK(A,B);for(let F of Array.from(C)){let U=GO.calculate(F,B),z=D+U;if(z>E)break;A=A+F,D=z}return A},m33=(u)=>u.codePointAt(0)!==void 0&&u.codePointAt(1)===void 0,r33=(u)=>{if((Z3.MODE===VB.TEST||Z3.DEV)&&/\s/.test(u))throw Error("Word should not contain any whitespaces!")},NB=class{},p6,CD=(u)=>"var(--icon-fill-color)",Bfu=(u)=>u===_3.LIGHT?_6.white:"#1e1e1e",ku=(u,B=512)=>{let{width:E=512,height:A=E,mirror:C,style:D,...F}=typeof B=="number"?{width:B}:B;return P("svg",{"aria-hidden":"true",focusable:"false",role:"img",viewBox:`0 0 ${E} ${A}`,className:Yu({"rtl-mirror":C}),style:D,...F,children:typeof u=="string"?P("path",{fill:"currentColor",d:u}):u})},k4,I3,Oq1,s_,Efu,Afu,Cfu,HO,o_,Dfu,Ffu,Ufu,Iq1,$33,y33,c33,g33,_33,n33,zfu,$q,ek0,p33,d33,uf0,Bf0,kfu,MM,ffu,t_,e_,un,Ef0,LO,Bn,lfu,Af0,Cf0,bfu,Mfu,Zfu,En,Jfu,wfu,An,Pq1,Kfu,Cn,Df0,Qfu,jq1,Nq1,Gfu,iq1,Ff0,Uf0,Hfu,Lfu,aq1,Vq1,hq1,mq1,rq1,qfu,Xfu,zf0,kf0,ff0,lf0,bf0,Mf0,Zf0,Jf0,xfu,vfu,wf0,Kf0,Qf0,$q1,yq1,OK,cq1,gq1,_q1,Gf0,Hf0,Sfu,Wfu,Yfu,Rfu,Lf0,Tfu,Ofu,nq1,Ifu,Pfu,jfu,Nfu,ifu,afu,Vfu,hfu,mfu,rfu,$fu,yfu,cfu,gfu,_fu,nfu,pfu,dfu,sfu,ofu,tfu,efu,ulu,qO,s33,tT,Y_,Blu,Elu,Alu,Clu,Dlu,Flu,qf0,Ulu,pq1,Xf0,xf0,Dn,zlu,klu,dq1,sq1,flu,llu,blu,Mlu,vf0,Sf0,XO,Wf0,Yf0,oq1,tq1,Zlu,Fn,Jlu,wlu,Klu,ZM,Qlu,Glu,Hlu,Rf0,Llu,qlu,Xlu,xlu,Tf0,Un,vlu,Slu,Wlu,Ylu,Rlu,eq1,Tlu,Olu,Ilu,Plu,jlu,Nlu,Of0,ilu,alu,If0,Pf0,R_,fK,jf0="local:",o33,xO,sb,t33,Vlu,hlu,Ezu,e33=class{constructor(u){j0(this,"instance"),j0(this,"debounceTerminate"),this.instance=new Worker(u,{type:"module"})}},u13=class u{constructor(B,E){j0(this,"idleWorkers",new Set),j0(this,"workerUrl"),j0(this,"workerTTL"),this.workerUrl=B,this.workerTTL=E.ttl||1000}static create(B,E={}){if(!B)throw new Vlu;if(!import.meta.url||B.toString()===import.meta.url)throw new hlu;return new u(B,E)}async postMessage(B,E){let A,C=Array.from(this.idleWorkers).shift();return C?(this.idleWorkers.delete(C),A=C):A=await this.createWorker(),new Promise((D,F)=>{A.instance.onmessage=this.onMessageHandler(A,D),A.instance.onerror=this.onErrorHandler(A,F),A.instance.postMessage(B,E),A.debounceTerminate(()=>F(Error(`Active worker did not respond for ${this.workerTTL}ms!`)))})}async clear(){for(let B of this.idleWorkers)B.debounceTerminate.cancel(),B.instance.terminate();this.idleWorkers.clear()}async createWorker(){let B=new e33(this.workerUrl);return B.debounceTerminate=YK((E)=>{B.instance.terminate(),this.idleWorkers.has(B)?(this.idleWorkers.delete(B),console.debug("Job finished! Idle worker has been released from the pool.")):E?E():console.error("Worker has been terminated!")},this.workerTTL),B}onMessageHandler(B,E){return(A)=>{B.debounceTerminate(),this.idleWorkers.add(B),E(A.data)}}onErrorHandler(B,E){return(A)=>{B.debounceTerminate(()=>E(A)),B.debounceTerminate.flush(),this.clear()}}},Azu,B13=async(u,B)=>{let{Commands:E,subsetToBase64:A,toBase64:C}=await A13();return Azu?JK(async()=>{try{let D=await C13(),F=u.slice(0),U=await D.postMessage({command:E.Subset,arrayBuffer:F,codePoints:B},{transfer:[F]});return C(U)}catch(D){return Azu=!1,X33()&&(D instanceof Vlu||D instanceof hlu)||console.error("Failed to use workers for subsetting, falling back to the main thread.",D),A(u,B)}}):A(u,B)},ez0=null,uk0=null,E13=async()=>(ez0||(ez0=Promise.resolve().then(() => (PUu(),IUu))),ez0),A13=async()=>(uk0||(uk0=Promise.resolve().then(() => (NUu(),jUu))),uk0),Bk0=null,C13=()=>(Bk0||(Bk0=JK(async()=>{let{WorkerUrl:u}=await E13();return u13.create(u)})),Bk0),mlu=class u{constructor(B,E,A){j0(this,"urls"),j0(this,"fontFace"),this.urls=u.createUrls(E);let C=this.urls.map((D)=>`url(${D}) ${u.getFormat(D)}`).join(", ");this.fontFace=new FontFace(B,C,{display:"swap",style:"normal",weight:"400",...A})}toCSS(B){if(!this.getUnicodeRangeRegex().test(B))return;let E=Array.from(B).map((A)=>A.codePointAt(0));return this.getContent(E).then((A)=>`@font-face { font-family: ${this.fontFace.family}; src: url(${A}); }`)}async getContent(B){let E=0,A=[];for(;E<this.urls.length;){let C=this.urls[E];try{let D=await this.fetchFont(C);return await B13(D,B)}catch(D){A.push(`"${C.toString()}" returned error "${D}"`)}E++}return console.error(`Failed to fetch font family "${this.fontFace.family}"`,JSON.stringify(A,void 0,2)),this.urls.length?this.urls[this.urls.length-1].toString():""}fetchFont(B){return JK(async()=>{let E=await fetch(B,{cache:"force-cache",headers:{Accept:"font/woff2"}});if(!E.ok){let A=B instanceof URL?B.toString():"dataurl";throw Error(`Failed to fetch "${A}": ${E.statusText}`)}return await E.arrayBuffer()})}getUnicodeRangeRegex(){let B=this.fontFace.unicodeRange.split(/,\s*/).map((E)=>{let[A,C]=E.replace("U+","").split("-");return C?`\\u{${A}}-\\u{${C}}`:`\\u{${A}}`}).join("");return new RegExp(`[${B}]`,"u")}static createUrls(B){if(B.startsWith("data"))return[B];if(B.startsWith(jf0))return[];if(B.startsWith("http"))return[new URL(B)];let E=B.replace(/^\/+/,""),A=[];if(typeof window.EXCALIDRAW_ASSET_PATH=="string"){let C=this.normalizeBaseUrl(window.EXCALIDRAW_ASSET_PATH);A.push(new URL(E,C))}else Array.isArray(window.EXCALIDRAW_ASSET_PATH)&&window.EXCALIDRAW_ASSET_PATH.forEach((C)=>{let D=this.normalizeBaseUrl(C);A.push(new URL(E,D))});return A.push(new URL(E,u.ASSETS_FALLBACK_URL)),A}static getFormat(B){if(!(B instanceof URL))return"";try{let E=new URL(B).pathname.split(".");return E.length===1?"":`format('${E.pop()}')`}catch{return""}}static normalizeBaseUrl(B){let E=B;return/^\.?\//.test(E)&&(E=new URL(E.replace(/^\.?\/+/,""),window?.location?.origin).toString()),E=`${E.replace(/\/+$/,"")}/`,E}},D13,F13="./fonts/Cascadia/CascadiaCode-Regular.woff2",U13,z13="./fonts/ComicShanns/ComicShanns-Regular-279a7b317d12eb88de06167bd672b4b4.woff2",k13="./fonts/ComicShanns/ComicShanns-Regular-fcb0fc02dcbee4c9846b3e2508668039.woff2",f13="./fonts/ComicShanns/ComicShanns-Regular-dc6a8806fa96795d7b3be5026f989a17.woff2",l13="./fonts/ComicShanns/ComicShanns-Regular-6e066e8de2ac57ea9283adb9c24d7f0c.woff2",b13,M13,Z13="./fonts/Excalifont/Excalifont-Regular-a88b72a24fb54c9f94e3b5fdaa7481c9.woff2",J13="./fonts/Excalifont/Excalifont-Regular-be310b9bcd4f1a43f571c46df7809174.woff2",w13="./fonts/Excalifont/Excalifont-Regular-b9dcf9d2e50a1eaf42fc664b50a3fd0d.woff2",K13="./fonts/Excalifont/Excalifont-Regular-41b173a47b57366892116a575a43e2b6.woff2",Q13="./fonts/Excalifont/Excalifont-Regular-3f2c5db56cc93c5a6873b1361d730c16.woff2",G13="./fonts/Excalifont/Excalifont-Regular-349fac6ca4700ffec595a7150a0d1e1d.woff2",H13="./fonts/Excalifont/Excalifont-Regular-623ccf21b21ef6b3a0d87738f77eb071.woff2",L13,q13,X13="./fonts/Liberation/LiberationSans-Regular.woff2",x13,v13="./fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYEF8RXi4EwQ.woff2",S13="./fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYE98RXi4EwSsbg.woff2",W13,Y13="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTQ3j6zbXWjgeg.woff2",R13="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTo3j6zbXWjgevT5.woff2",T13="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTA3j6zbXWjgevT5.woff2",O13="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTk3j6zbXWjgevT5.woff2",I13="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTs3j6zbXWjgevT5.woff2",P13,j13="./fonts/Virgil/Virgil-Regular.woff2",N13,i13="./fonts/Xiaolai/Xiaolai-Regular-09850c4077f3fffe707905872e0e2460.woff2",a13="./fonts/Xiaolai/Xiaolai-Regular-7eb9fffd1aa890d07d0f88cc82e6cfe4.woff2",V13="./fonts/Xiaolai/Xiaolai-Regular-60a3089806700d379f11827ee9843b6b.woff2",h13="./fonts/Xiaolai/Xiaolai-Regular-6fe5c5973cc06f74b2387a631ea36b88.woff2",m13="./fonts/Xiaolai/Xiaolai-Regular-b96d9226ce77ec94ceca043d712182e6.woff2",r13="./fonts/Xiaolai/Xiaolai-Regular-6ae5b42180ad70b971c91e7eefb8eba2.woff2",$13="./fonts/Xiaolai/Xiaolai-Regular-a4c34be6d42152e64b0df90bc4607f64.woff2",y13="./fonts/Xiaolai/Xiaolai-Regular-c69f61a4ab18d0488c8d1fc12e7028e8.woff2",c13="./fonts/Xiaolai/Xiaolai-Regular-e3fcf5180fd466c8915c4e8069491054.woff2",g13="./fonts/Xiaolai/Xiaolai-Regular-c1f94158256bb1f3bf665b053d895af9.woff2",_13="./fonts/Xiaolai/Xiaolai-Regular-544fc28abe2c5c30e62383fd4dac255f.woff2",n13="./fonts/Xiaolai/Xiaolai-Regular-7197d6fda6cba7c3874c53d6381ca239.woff2",p13="./fonts/Xiaolai/Xiaolai-Regular-70c2eb8d64e71a42a834eb857ea9df51.woff2",d13="./fonts/Xiaolai/Xiaolai-Regular-069e77aac84590e2e991d0a0176d34f2.woff2",s13="./fonts/Xiaolai/Xiaolai-Regular-41521fade99856108931b4768b1b2648.woff2",o13="./fonts/Xiaolai/Xiaolai-Regular-a004ddfcb26e67bd6e678c8ed19e25ce.woff2",t13="./fonts/Xiaolai/Xiaolai-Regular-04b718e5623574919c8b0dea5f301444.woff2",e13="./fonts/Xiaolai/Xiaolai-Regular-7e4bde7e9c7f84cd34d8a845e384c746.woff2",u63="./fonts/Xiaolai/Xiaolai-Regular-23686f7f29da6e8008c36dd3a80c83d6.woff2",B63="./fonts/Xiaolai/Xiaolai-Regular-69c09cc5fa3e55c74fc4821f76909cc3.woff2",E63="./fonts/Xiaolai/Xiaolai-Regular-25b7f38e18f035f96cb5e547bd2bd08c.woff2",A63="./fonts/Xiaolai/Xiaolai-Regular-ba3de316d63c7e339987b16f41a0b879.woff2",C63="./fonts/Xiaolai/Xiaolai-Regular-12b52b58eb3df36804b9a654ec9ee194.woff2",D63="./fonts/Xiaolai/Xiaolai-Regular-b1220a3c61f85cc0408deedb4c5f57a2.woff2",F63="./fonts/Xiaolai/Xiaolai-Regular-4535823663ad81405188a528d8f2b1a2.woff2",U63="./fonts/Xiaolai/Xiaolai-Regular-3eaa538115d76932653c21d8dc28f207.woff2",z63="./fonts/Xiaolai/Xiaolai-Regular-7e929f262f30c8ee78bf398150b1a7cd.woff2",k63="./fonts/Xiaolai/Xiaolai-Regular-73e309718fd16cea44b4d54a33581811.woff2",f63="./fonts/Xiaolai/Xiaolai-Regular-9eb5a99df4e76ac3363453ac9ca288b1.woff2",l63="./fonts/Xiaolai/Xiaolai-Regular-3e63ed8162808a9e425ed80a8bc79114.woff2",b63="./fonts/Xiaolai/Xiaolai-Regular-cb17fc3db95f6d139afc9d31a8e93293.woff2",M63="./fonts/Xiaolai/Xiaolai-Regular-c8b71798409ccc126ee264a00aadcf21.woff2",Z63="./fonts/Xiaolai/Xiaolai-Regular-11c345711937f0ba4b8f7b6b919c8440.woff2",J63="./fonts/Xiaolai/Xiaolai-Regular-e480d9c614742d05f0e78f274f1e69e6.woff2",w63="./fonts/Xiaolai/Xiaolai-Regular-95429962233afd82db1c27df1500a28c.woff2",K63="./fonts/Xiaolai/Xiaolai-Regular-2cf96d082d35ea3d8106851223ad0d16.woff2",Q63="./fonts/Xiaolai/Xiaolai-Regular-2d43040e86ff03ba677f6f9c04cd0805.woff2",G63="./fonts/Xiaolai/Xiaolai-Regular-2a26d20a23b00898ce82f09d2ee47c3f.woff2",H63="./fonts/Xiaolai/Xiaolai-Regular-a365e82ed54697a52f27adcea1315fe8.woff2",L63="./fonts/Xiaolai/Xiaolai-Regular-f5d079153c99a25b9be5b8583c4cc8a7.woff2",q63="./fonts/Xiaolai/Xiaolai-Regular-10a7ae9a371830a80c3d844acf1c02d7.woff2",X63="./fonts/Xiaolai/Xiaolai-Regular-e4bca6cfa53e499cae0a6be4894a90e9.woff2",x63="./fonts/Xiaolai/Xiaolai-Regular-60a41c7e1c68f22424e6d22df544bc82.woff2",v63="./fonts/Xiaolai/Xiaolai-Regular-7ab2bed91166a9dca83a5ebfbe2a7f38.woff2",S63="./fonts/Xiaolai/Xiaolai-Regular-670ba603758d94268e8606f240a42e12.woff2",W63="./fonts/Xiaolai/Xiaolai-Regular-e656f091b9dc4709722c9f4b84d3c797.woff2",Y63="./fonts/Xiaolai/Xiaolai-Regular-15dc6d811c9cd078f9086a740d5a1038.woff2",R63="./fonts/Xiaolai/Xiaolai-Regular-f0f13b5c60e0af5553bd359f5513be1b.woff2",T63="./fonts/Xiaolai/Xiaolai-Regular-8c2f33cee3993174f7e87c28e4bf42ee.woff2",O63="./fonts/Xiaolai/Xiaolai-Regular-761d05e3cd968cf574166867998ef06a.woff2",I63="./fonts/Xiaolai/Xiaolai-Regular-642b26e2e5f5fb780b51b593dbc8c851.woff2",P63="./fonts/Xiaolai/Xiaolai-Regular-5572b3513ba8df57a3d5d7303ee6b11b.woff2",j63="./fonts/Xiaolai/Xiaolai-Regular-3c9de2ae0ea4bc91a510942dfa4be8d2.woff2",N63="./fonts/Xiaolai/Xiaolai-Regular-671a2c20b1eb9e4ef8a192833940e319.woff2",i63="./fonts/Xiaolai/Xiaolai-Regular-4dc6d5f188d5c96d44815cd1e81aa885.woff2",a63="./fonts/Xiaolai/Xiaolai-Regular-ce4884f96f11589608b76b726a755803.woff2",V63="./fonts/Xiaolai/Xiaolai-Regular-8f476c4c99813d57cbe6eca4727388ad.woff2",h63="./fonts/Xiaolai/Xiaolai-Regular-5935a5775af3d5c6307ac667bd9ae74e.woff2",m63="./fonts/Xiaolai/Xiaolai-Regular-79f007c1c6d07557120982951ea67998.woff2",r63="./fonts/Xiaolai/Xiaolai-Regular-bafff7a14c27403dcc6cf1432e8ea836.woff2",$63="./fonts/Xiaolai/Xiaolai-Regular-543fa46ace099a7099dad69123399400.woff2",y63="./fonts/Xiaolai/Xiaolai-Regular-4ddc14ed3eb0c3e46364317dfc0144a3.woff2",c63="./fonts/Xiaolai/Xiaolai-Regular-0fa55a080fcd0f9dc2e0b0058b793df8.woff2",g63="./fonts/Xiaolai/Xiaolai-Regular-66493ba5a8367f2928812f446f47b56a.woff2",_63="./fonts/Xiaolai/Xiaolai-Regular-57862b464a55b18c7bf234ce22907d73.woff2",n63="./fonts/Xiaolai/Xiaolai-Regular-8d3bcabb847b56243b16afe62adaaf21.woff2",p63="./fonts/Xiaolai/Xiaolai-Regular-2b77e8ebfb2367ab2662396a60e7d320.woff2",d63="./fonts/Xiaolai/Xiaolai-Regular-0b5d723fdc4e249c140f0909e87d03b4.woff2",s63="./fonts/Xiaolai/Xiaolai-Regular-cdbce89e82cc1ab53a2decbf5819278f.woff2",o63="./fonts/Xiaolai/Xiaolai-Regular-739bc1a567439c7cffcd1614644593d2.woff2",t63="./fonts/Xiaolai/Xiaolai-Regular-72252d73220fa3cd856677888cee1635.woff2",e63="./fonts/Xiaolai/Xiaolai-Regular-08e0dc436ad0ad61ba5558db0674d762.woff2",u93="./fonts/Xiaolai/Xiaolai-Regular-cf6ff4e0f491ca0cf3038187a997b9b4.woff2",B93="./fonts/Xiaolai/Xiaolai-Regular-9cfb2a77a4e45025105ad29a1748b90d.woff2",E93="./fonts/Xiaolai/Xiaolai-Regular-450da755d5bcb70906e1295e559b9602.woff2",A93="./fonts/Xiaolai/Xiaolai-Regular-0986d134c05864f5025962eef9f994a0.woff2",C93="./fonts/Xiaolai/Xiaolai-Regular-1ee544f0f1dac422545c505baa788992.woff2",D93="./fonts/Xiaolai/Xiaolai-Regular-4806e761d750087c2d734fc64596eaff.woff2",F93="./fonts/Xiaolai/Xiaolai-Regular-33432927cd87d40cfe393c7482bf221f.woff2",U93="./fonts/Xiaolai/Xiaolai-Regular-be549ab72f0719d606a5c01e2c0219b6.woff2",z93="./fonts/Xiaolai/Xiaolai-Regular-019d66dcad46dc156b162d267f981c20.woff2",k93="./fonts/Xiaolai/Xiaolai-Regular-b5c1596551c256e0e9cf02028595b092.woff2",f93="./fonts/Xiaolai/Xiaolai-Regular-e5f453bb04da18eed01675eeebd88bf8.woff2",l93="./fonts/Xiaolai/Xiaolai-Regular-cf2cc71752631e579e35b0e423bf2638.woff2",b93="./fonts/Xiaolai/Xiaolai-Regular-6f3256af8454371776bc46670d33cc65.woff2",M93="./fonts/Xiaolai/Xiaolai-Regular-23f228f3999c01983860012330e4be08.woff2",Z93="./fonts/Xiaolai/Xiaolai-Regular-21430ee05a1248901da8d0de08744d47.woff2",J93="./fonts/Xiaolai/Xiaolai-Regular-5330a2119a716e4e7224ed108b085dac.woff2",w93="./fonts/Xiaolai/Xiaolai-Regular-cd145ce4a0ea18469358df53c207bc1b.woff2",K93="./fonts/Xiaolai/Xiaolai-Regular-36925dfe329a45086cbb7fc5c20d45ac.woff2",Q93="./fonts/Xiaolai/Xiaolai-Regular-4bfaa8ffa64c5ee560aa2daba7c9cbd3.woff2",G93="./fonts/Xiaolai/Xiaolai-Regular-112c051027b2d766c19a519f6ee1f4f7.woff2",H93="./fonts/Xiaolai/Xiaolai-Regular-5b0ed6971aaab9c8ad563230bd5471a7.woff2",L93="./fonts/Xiaolai/Xiaolai-Regular-98f2ad84457de7f3740d9920b8fa8667.woff2",q93="./fonts/Xiaolai/Xiaolai-Regular-733171b4ffcd17ea1fe1c0ba627173bf.woff2",X93="./fonts/Xiaolai/Xiaolai-Regular-684d65f1793cac449dde5d59cb3c47fb.woff2",x93="./fonts/Xiaolai/Xiaolai-Regular-cbaaefaaf326668277aa24dfa93c4d28.woff2",v93="./fonts/Xiaolai/Xiaolai-Regular-58fd02350d0bc52cf1ca3bb32ce9766e.woff2",S93="./fonts/Xiaolai/Xiaolai-Regular-7ccce86603f80a099ddb0cb21d4ae3e3.woff2",W93="./fonts/Xiaolai/Xiaolai-Regular-3717077e38f98d89eae729b6c14e56dc.woff2",Y93="./fonts/Xiaolai/Xiaolai-Regular-dbea1af6dcd9860be40c3d18254338f5.woff2",R93="./fonts/Xiaolai/Xiaolai-Regular-4a0fdb40036e87b40aa08dd30584cb85.woff2",T93="./fonts/Xiaolai/Xiaolai-Regular-0f626226ba1272e832aea87bafd9720e.woff2",O93="./fonts/Xiaolai/Xiaolai-Regular-938d90c10ff8c20386af7f242c05d6b0.woff2",I93="./fonts/Xiaolai/Xiaolai-Regular-b6d128682ee29e471486354d486a1b90.woff2",P93="./fonts/Xiaolai/Xiaolai-Regular-e51ef413167c6e14e0c0fdcc585f2fc9.woff2",j93="./fonts/Xiaolai/Xiaolai-Regular-9d81066dd2b337c938df6e90380a00dc.woff2",N93="./fonts/Xiaolai/Xiaolai-Regular-20e7bf72fa05de9adf7dbcc7bf51dde6.woff2",i93="./fonts/Xiaolai/Xiaolai-Regular-4095eb84ef3874e2600247bee0b04026.woff2",a93="./fonts/Xiaolai/Xiaolai-Regular-4ee10ae43505e2e0bc62656ced49c0fa.woff2",V93="./fonts/Xiaolai/Xiaolai-Regular-7494dc504ae00ee9cd0505f990f88c5d.woff2",h93="./fonts/Xiaolai/Xiaolai-Regular-8de5b863cb50dfefdd07cb11c774d579.woff2",m93="./fonts/Xiaolai/Xiaolai-Regular-3e1f8f654357353bf0e04ba5c34b5f7f.woff2",r93="./fonts/Xiaolai/Xiaolai-Regular-2e33e8dc771ef5e1d9127d60a6b73679.woff2",$93="./fonts/Xiaolai/Xiaolai-Regular-173945821411c09f70c95f98d590e697.woff2",y93="./fonts/Xiaolai/Xiaolai-Regular-b358f7a51ece39a3247942b1feabdb29.woff2",c93="./fonts/Xiaolai/Xiaolai-Regular-23ad2d71b280f00b1363b95b7bea94eb.woff2",g93="./fonts/Xiaolai/Xiaolai-Regular-5882ffa04f32584d26109137e2da4352.woff2",_93="./fonts/Xiaolai/Xiaolai-Regular-a203b91dad570bf05a58c3c3ddb529bf.woff2",n93="./fonts/Xiaolai/Xiaolai-Regular-bd77e3c7f9e0b072d96af37f73d1aa32.woff2",p93="./fonts/Xiaolai/Xiaolai-Regular-5a45d991244d4c7140217e1e5f5ca4f4.woff2",d93="./fonts/Xiaolai/Xiaolai-Regular-f56414bf9bced67990def8660e306759.woff2",s93="./fonts/Xiaolai/Xiaolai-Regular-583d166e56ba0de4b77eabb47ef67839.woff2",o93="./fonts/Xiaolai/Xiaolai-Regular-7f855356ab893b0d2b9c1c83b8116f0e.woff2",t93="./fonts/Xiaolai/Xiaolai-Regular-b57aaedfd8ebdf3931f25119dc6a5eb2.woff2",e93="./fonts/Xiaolai/Xiaolai-Regular-b6fd38ca30869792244804b04bc058da.woff2",u23="./fonts/Xiaolai/Xiaolai-Regular-452225341522a7942f0f6aab1a5c91a3.woff2",B23="./fonts/Xiaolai/Xiaolai-Regular-866fa7613df6b3fd272bcfd4530c0bb9.woff2",E23="./fonts/Xiaolai/Xiaolai-Regular-52a84a22fd1369bffeaf21da2d6158dc.woff2",A23="./fonts/Xiaolai/Xiaolai-Regular-829615148e6357d826b9242eb7fbbd1e.woff2",C23="./fonts/Xiaolai/Xiaolai-Regular-c99eda15fc26a2941579560f76c3a5cf.woff2",D23="./fonts/Xiaolai/Xiaolai-Regular-395c35dd584b56b0789f58a0559beaf1.woff2",F23="./fonts/Xiaolai/Xiaolai-Regular-203b0e569e3b14aac86a003dc3fa523e.woff2",U23="./fonts/Xiaolai/Xiaolai-Regular-51a0e808bbc8361236ac521a119758a3.woff2",z23="./fonts/Xiaolai/Xiaolai-Regular-6e092f71c1e634059ada0e52abadce67.woff2",k23="./fonts/Xiaolai/Xiaolai-Regular-0f7fb1e0d5015bb1371343153ecf7ce3.woff2",f23="./fonts/Xiaolai/Xiaolai-Regular-d0cf73942fea1c74edbdf0b3011f4656.woff2",l23="./fonts/Xiaolai/Xiaolai-Regular-968cffdc8ee679da094e77ebf50f58ef.woff2",b23="./fonts/Xiaolai/Xiaolai-Regular-7a07ddc0f0c0f5f4a9bad6ee3dda66b5.woff2",M23="./fonts/Xiaolai/Xiaolai-Regular-ec181b795ac1fb5a50d700b6e996d745.woff2",Z23="./fonts/Xiaolai/Xiaolai-Regular-cfb211578629b7e8153b37240de6a9d5.woff2",J23="./fonts/Xiaolai/Xiaolai-Regular-59e9ff77b0efaf684bc09274fb6908c9.woff2",w23="./fonts/Xiaolai/Xiaolai-Regular-2adbc89c11e65905393d3dfc468b9d5b.woff2",K23="./fonts/Xiaolai/Xiaolai-Regular-70e811fd7994e61f408c923de6ddd078.woff2",Q23="./fonts/Xiaolai/Xiaolai-Regular-c4a687ac4f0c2766eefc9f77ed99cddf.woff2",G23="./fonts/Xiaolai/Xiaolai-Regular-51502f1206be09c565f1547c406e9558.woff2",H23="./fonts/Xiaolai/Xiaolai-Regular-1fdc0c67ed57263a80fd108c1f6ccf24.woff2",L23="./fonts/Xiaolai/Xiaolai-Regular-e11567fd2accf9957cd0d3c2be937d87.woff2",q23="./fonts/Xiaolai/Xiaolai-Regular-20cc1bbf50e7efb442756cb605672c1f.woff2",X23="./fonts/Xiaolai/Xiaolai-Regular-5d2898fbc097a7e24c6f38d80587621e.woff2",x23="./fonts/Xiaolai/Xiaolai-Regular-ac9ceb44437becc3e9c4dbfebab7fc2d.woff2",v23="./fonts/Xiaolai/Xiaolai-Regular-c16ed9740b85badf16e86ea782a3062f.woff2",S23="./fonts/Xiaolai/Xiaolai-Regular-aa0d470430e6391eca720c7cfa44446f.woff2",W23="./fonts/Xiaolai/Xiaolai-Regular-f2b54d4e7be0eaefe1c2c56836fa5368.woff2",Y23="./fonts/Xiaolai/Xiaolai-Regular-99a16ef6a64934d5781933dbd9c46b2e.woff2",R23="./fonts/Xiaolai/Xiaolai-Regular-c40533fdf4cc57177b12803598af7e59.woff2",T23="./fonts/Xiaolai/Xiaolai-Regular-91ddb2969bf2d31ba02ad82998d1314c.woff2",O23="./fonts/Xiaolai/Xiaolai-Regular-774d4f764a1299da5d28ec2f2ffe0d69.woff2",I23="./fonts/Xiaolai/Xiaolai-Regular-7718fe60986d8b42b1be9c5ace5ccf25.woff2",P23="./fonts/Xiaolai/Xiaolai-Regular-aa5c9ca6cf4fba00433b7aa3fa10671a.woff2",j23="./fonts/Xiaolai/Xiaolai-Regular-4f50e5136e136527280bc902c5817561.woff2",N23="./fonts/Xiaolai/Xiaolai-Regular-093b9ef39a46ceae95a1df18a0a3a326.woff2",i23="./fonts/Xiaolai/Xiaolai-Regular-a0ca5df4258213d7fc9fce80f65ce760.woff2",a23="./fonts/Xiaolai/Xiaolai-Regular-d2666cbed13462c5dc36fa2f15c202ca.woff2",V23="./fonts/Xiaolai/Xiaolai-Regular-1e6fd68f1f3902ce48ce8c69df385622.woff2",h23="./fonts/Xiaolai/Xiaolai-Regular-87599f94b6cc129d505b375798d0d751.woff2",m23="./fonts/Xiaolai/Xiaolai-Regular-06c77b8c66e51ed6c63ccb502dd8b8af.woff2",r23="./fonts/Xiaolai/Xiaolai-Regular-13ae07ed2e272d26d59bc0691cd7117a.woff2",$23="./fonts/Xiaolai/Xiaolai-Regular-353f33792a8f60dc69323ddf635a269e.woff2",y23="./fonts/Xiaolai/Xiaolai-Regular-0facdf1ea213ba40261022f5d5ed4493.woff2",c23="./fonts/Xiaolai/Xiaolai-Regular-f8ee5d36068a42b51d0e4a1116cfcec1.woff2",g23="./fonts/Xiaolai/Xiaolai-Regular-79d494361ae093b69e74ee9dbe65bfd4.woff2",_23="./fonts/Xiaolai/Xiaolai-Regular-74e2263a91439c25b91d5132ce9f4d62.woff2",n23="./fonts/Xiaolai/Xiaolai-Regular-ee8bae97908d5147b423f77ad0d3c1bb.woff2",p23="./fonts/Xiaolai/Xiaolai-Regular-56467a5c8840c4d23a60b2f935114848.woff2",d23="./fonts/Xiaolai/Xiaolai-Regular-145aa02cdd91946e67dc934e1acffe75.woff2",s23="./fonts/Xiaolai/Xiaolai-Regular-54acdfc2166ad7fcbd074f75fd4a56ba.woff2",o23="./fonts/Xiaolai/Xiaolai-Regular-29cec36cd205b211da97acabaa62f055.woff2",t23="./fonts/Xiaolai/Xiaolai-Regular-3756e81d3e149cf6099163ee79944fec.woff2",e23="./fonts/Xiaolai/Xiaolai-Regular-8e9f97f01034820170065b2921b4fb5e.woff2",u53="./fonts/Xiaolai/Xiaolai-Regular-13d2887ec8ee73c43acdabc52a05af7b.woff2",B53="./fonts/Xiaolai/Xiaolai-Regular-72536a3d71b694a0d53dd90ddceae41e.woff2",E53="./fonts/Xiaolai/Xiaolai-Regular-603aefd23e350ba7eb124273e3c9bcf1.woff2",A53="./fonts/Xiaolai/Xiaolai-Regular-095c169f3314805276f603a362766abd.woff2",C53="./fonts/Xiaolai/Xiaolai-Regular-9544732d2e62d1a429674f8ee41b5d3a.woff2",D53="./fonts/Xiaolai/Xiaolai-Regular-d3716376641d615e2995605b29bca7b6.woff2",F53="./fonts/Xiaolai/Xiaolai-Regular-5a1ce3117cfe90c48e8fb4a9a00f694d.woff2",U53="./fonts/Xiaolai/Xiaolai-Regular-b7d203b051eff504ff59ddca7576b6a9.woff2",z53="./fonts/Xiaolai/Xiaolai-Regular-4a38cc3e9cf104e69ba246d37f8cf135.woff2",k53="./fonts/Xiaolai/Xiaolai-Regular-982b630266d87db93d2539affb1275c6.woff2",f53="./fonts/Xiaolai/Xiaolai-Regular-9592bfc861f07bcb8d75c196b370e548.woff2",l53="./fonts/Xiaolai/Xiaolai-Regular-a7accba310e821da5505f71c03b76bdb.woff2",b53="./fonts/Xiaolai/Xiaolai-Regular-dac48066b5883d8b4551fc584f0c2a3e.woff2",M53="./fonts/Xiaolai/Xiaolai-Regular-a1f916d6039285c4ffb900cd654e418f.woff2",Z53="./fonts/Xiaolai/Xiaolai-Regular-95bfd249da4902577b4b7d76ebdd0b44.woff2",J53="./fonts/Xiaolai/Xiaolai-Regular-93fc8f28a33234bcadf1527cafabd502.woff2",w53="./fonts/Xiaolai/Xiaolai-Regular-903bb6865f3452e2fda42e3a25547bc5.woff2",K53="./fonts/Xiaolai/Xiaolai-Regular-4aca6a43e59aceee2166b0c7e4e85ef1.woff2",Q53="./fonts/Xiaolai/Xiaolai-Regular-24476a126f129212beb33f66853ea151.woff2",G53="./fonts/Xiaolai/Xiaolai-Regular-1b611157cd46bb184d4fa4dae2d6a2b8.woff2",H53="./fonts/Xiaolai/Xiaolai-Regular-56a32a7689abd0326e57c10c6c069bb4.woff2",L53="./fonts/Xiaolai/Xiaolai-Regular-3cc70dbb64df5b21f1326cc24dee2195.woff2",q53="./fonts/Xiaolai/Xiaolai-Regular-f6032fc06eb20480f096199713f70885.woff2",X53="./fonts/Xiaolai/Xiaolai-Regular-e2ead7ea7da0437f085f42ffc05f8d13.woff2",x53="./fonts/Xiaolai/Xiaolai-Regular-97f7f48ce90c9429bf32ae51469db74d.woff2",v53="./fonts/Xiaolai/Xiaolai-Regular-24a21c1e4449222e8d1898d69ff3a404.woff2",S53="./fonts/Xiaolai/Xiaolai-Regular-726303e0774b4e678bff8c2deb6ca603.woff2",W53="./fonts/Xiaolai/Xiaolai-Regular-5a7fac4b8b23a6e4e5ba0c9bf1756c91.woff2",Y53="./fonts/Xiaolai/Xiaolai-Regular-2b7441d46298788ac94e610ffcc709b6.woff2",R53,_b=class u{constructor(B){j0(this,"scene"),j0(this,"getSceneFamilies",()=>u.getUniqueFamilies(this.scene.getNonDeletedElements())),j0(this,"onLoaded",(E)=>{let A=!0;for(let F of E){let U=`${F.family}-${F.style}-${F.weight}-${F.unicodeRange}`;u.loadedFontsCache.has(U)||(u.loadedFontsCache.add(U),A=!1)}if(A)return;let C=!1,D=this.scene.getNonDeletedElementsMap();for(let F of this.scene.getNonDeletedElements())if(l4(F)){C=!0,p6.delete(F),GO.clearCache(e1(F));let U=l5(F,D);U&&p6.delete(U)}C&&this.scene.triggerUpdate()}),j0(this,"loadSceneFonts",async()=>{let E=this.getSceneFamilies(),A=u.getCharsPerFamily(this.scene.getNonDeletedElements());return u.loadFontFaces(E,A)}),this.scene=B}static get registered(){return u._registered?u._initialized||(u._registered=new Map([...u.init().entries(),...u._registered.entries()])):u._registered=u.init(),u._registered}get registered(){return u.registered}static async generateFontFaceDeclarations(B){let E=u.getUniqueFamilies(B),A=u.getCharsPerFamily(B),C=E.find((z)=>lku(z).includes(jq));if(C){let z=u.getCharacters(A,C);if(O33(z)){let k=Nq[jq];A[k]=new Set(z),E.unshift(Nq[jq])}}let D=u.fontFacesStylesGenerator(E,A),F=3,U=await new Bzu(D,F).all();return Array.from(new Set(U))}static async loadFontFaces(B,E){for(let{fontFaces:D,metadata:F}of u.registered.values())if(!F.local)for(let{fontFace:U}of D)window.document.fonts.has(U)||window.document.fonts.add(U);let A=u.fontFacesLoader(B,E);return(await new Bzu(A,10).all()).flat().filter(Boolean)}static*fontFacesLoader(B,E){for(let[A,C]of B.entries()){let D=e1({fontFamily:C,fontSize:16}),F=u.getCharacters(E,C);window.document.fonts.check(D,F)||(yield JK(async()=>{try{let U=await window.document.fonts.load(D,F);return[A,U]}catch(U){console.error(`Failed to load font "${D}" from urls "${u.registered.get(C)?.fontFaces.map((z)=>z.urls)}"`,U)}}))}}static*fontFacesStylesGenerator(B,E){for(let[A,C]of B.entries()){let{fontFaces:D,metadata:F}=u.registered.get(C)??{};if(!Array.isArray(D)){console.error(`Couldn't find registered fonts for font-family "${C}"`,u.registered);continue}if(!F?.local)for(let[U,z]of D.entries())yield JK(async()=>{try{let k=u.getCharacters(E,C),f=await z.toCSS(k);return f?[A*1e4+U,f]:void 0}catch(k){console.error(`Couldn't transform font-face to css for family "${z.fontFace.family}"`,k)}})}}static register(B,E,...A){let C=n6[B]??Nq[B];return this.registered.get(C)||this.registered.set(C,{metadata:E,fontFaces:A.map(({uri:D,descriptors:F})=>new D13(B,D,F))}),this.registered}static init(){let B={registered:new Map},E=(A,...C)=>{let D=n6[A]??Nq[A],F=R_[D]??R_[n6.Excalifont];u.register.call(B,A,F,...C)};return E("Cascadia",...U13),E("Comic Shanns",...b13),E("Excalifont",...L13),E("Helvetica",...q13),E("Liberation Sans",...x13),E("Lilita One",...W13),E("Nunito",...P13),E("Virgil",...N13),E(jq,...R53),E(pT,...M13),u._initialized=!0,B.registered}static getUniqueFamilies(B){return Array.from(B.reduce((E,A)=>(l4(A)&&E.add(A.fontFamily),E),new Set))}static getCharsPerFamily(B){let E={};for(let A of B)if(l4(A))for(let C of A.originalText)E[A.fontFamily]||(E[A.fontFamily]=new Set),E[A.fontFamily].add(C);return E}static getCharacters(B,E){return B[E]?Array.from(B[E]).join(""):""}static getAllFamilies(){return Array.from(u.registered.keys())}},PU,rlu=(u,B,E)=>{let{unitsPerEm:A,ascender:C,descender:D}=PU.registered.get(u)?.metadata.metrics||R_[n6.Virgil].metrics,F=B/A,U=(E-F*C+F*D)/2;return F*C+U},JM=(u)=>{let{lineHeight:B}=PU.registered.get(u)?.metadata.metrics||R_[n6.Excalifont].metrics;return B},$lu=(u)=>{let{angle:B,width:E,height:A,x:C,y:D}=u,F=C+E/2,U=D+A/2,z=t(F,U),k;return u.type==="diamond"?k=sUu(Lu(t(F,D),z,B),Lu(t(C+E,U),z,B),Lu(t(F,D+A),z,B),Lu(t(C,U),z,B)):k=sUu(Lu(t(C,D),z,B),Lu(t(C+E,D),z,B),Lu(t(C+E,D+A),z,B),Lu(t(C,D+A),z,B)),{type:"polygon",data:k}},ylu=(u,B,E=10)=>{let[A,C,D,F,U,z]=S3(u,B,!0);A-=E,D+=E,C-=E,F+=E;let k=t(U,z),f=Lu(t(A,C),k,u.angle),l=Lu(t(D,C),k,u.angle),b=Lu(t(A,F),k,u.angle),M=Lu(t(D,F),k,u.angle);return{type:"polygon",data:[f,l,M,b]}},T53=(u)=>{let{width:B,height:E,angle:A,x:C,y:D}=u;return{type:"ellipse",data:{center:t(C+B/2,D+E/2),angle:A,halfWidth:B/2,halfHeight:E/2}}},wM=(u)=>{if(!u)return[];for(let B of u.sets)if(B.type==="path")return B.ops;return u.sets[0].ops},O53=(u,B=t(0,0),E,A)=>{let C=(z)=>Lu(t(z[0]+B[0],z[1]+B[1]),A,E),D=wM(u),F=[],U=t(0,0);for(let z of D){if(z.op==="move"){let k=ik0(z.data);l2(k!=null,"Ops data is not a point"),U=C(k)}if(z.op==="bcurveTo"){let k=C(t(z.data[0],z.data[1])),f=C(t(z.data[2],z.data[3])),l=C(t(z.data[4],z.data[5]));F.push(nk(U,k,f,l)),U=l}}return{type:"polycurve",data:F}},I53=(u)=>{let B=u[0],E=[];for(let A=1;A<u.length;A++){let C=u[A];E.push(V4(B,C)),B=C}return E},P53=(u,B,E=!1)=>{let A=(D)=>Lu(c3(db(O4(D),V5(u.x,u.y))),B,u.angle),C=I53(u.points.map((D)=>A(D)));return E?{type:"polygon",data:x_(C.flat())}:{type:"polyline",data:C}},j53=(u,B,E=t(0,0),A,C)=>{let D=(f)=>Lu(t(f[0]+E[0],f[1]+E[1]),C,A);if(u.roundness===null)return{type:"polygon",data:x_(u.points.map((f)=>D(f)))};let F=wM(B),U=[],z=!1;for(let f of F)f.op==="move"?(z=!z,z&&U.push(t(f.data[0],f.data[1]))):f.op==="bcurveTo"?z&&(U.push(t(f.data[0],f.data[1])),U.push(t(f.data[2],f.data[3])),U.push(t(f.data[4],f.data[5]))):f.op==="lineTo"&&z&&U.push(t(f.data[0],f.data[1]));let k=FUu(U,10,5).map((f)=>D(f));return{type:"polygon",data:x_(k)}},N53=(u,B)=>{let{angle:E,halfWidth:A,halfHeight:C,center:D}=B,F=A,U=C,z=db(O4(u),b9(O4(D),-1)),[k,f]=Lu(c3(z),t(0,0),-E),l=Math.abs(k),b=Math.abs(f),M=0.707,Z=0.707;for(let K=0;K<3;K++){let Q=F*M,G=U*Z,L=(F*F-U*U)*M**3/F,H=(U*U-F*F)*Z**3/U,q=Q-L,x=G-H,v=l-L,W=b-H,S=Math.hypot(x,q),T=Math.hypot(W,v);M=Math.min(1,Math.max(0,(v*S/T+L)/F)),Z=Math.min(1,Math.max(0,(W*S/T+H)/U));let R=Math.hypot(Z,M);M/=R,Z/=R}let[J,w]=[F*M*Math.sign(k),U*Z*Math.sign(f)];return G1(t(k,f),t(J,w))},i53=(u,B,E=0.0001)=>N53(u,B)<=E,a53=(u,B)=>{let{center:E,angle:A,halfWidth:C,halfHeight:D}=B,F=db(O4(u),b9(O4(E),-1)),[U,z]=Lu(c3(F),t(0,0),-A);return U/C*(U/C)+z/D*(z/D)<=1},fk0=(u,B,E=0)=>{switch(B.type){case"polygon":return K33(u,B.data,E);case"ellipse":return i53(u,B.data,E);case"line":return ZK(u,B.data,E);case"polyline":return glu(u,B.data,E);case"curve":return clu(u,B.data,E);case"polycurve":return V53(u,B.data,E);default:throw Error(`shape ${B} is not implemented`)}},eT=(u,B)=>{switch(B.type){case"polygon":return oUu(u,B.data);case"line":return!1;case"curve":return!1;case"ellipse":return a53(u,B.data);case"polyline":{let E=x_(B.data.flat());return oUu(u,E)}case"polycurve":return!1;default:throw Error(`shape ${B} is not implemented`)}},V53=(u,B,E)=>B.some((A)=>clu(u,A,E)),h53=(u)=>{let[B,E,A,C]=u;return(D,F)=>Math.pow(1-D,3)*C[F]+3*D*Math.pow(1-D,2)*A[F]+3*Math.pow(D,2)*(1-D)*E[F]+B[F]*Math.pow(D,3)},m53=(u,B=10)=>{let E=h53(u),A=[E(0,0),E(0,1)],C=[],D=0,F=1/B;for(let U=0;U<B;U++)if(D+=F,D<=1){let z=t(E(D,0),E(D,1));C.push(V4(A,z)),A=z}return C},clu=(u,B,E)=>glu(u,m53(B),E),glu=(u,B,E=0.0001)=>B.some((A)=>ZK(u,A,E)),r53=(u,B)=>{let{halfWidth:E,halfHeight:A,center:C}=B,D=E,F=A,U=db(O4(u),b9(O4(C),-1)),z=Math.abs(U[0]),k=Math.abs(U[1]),f=0.707,l=0.707;for(let Z=0;Z<3;Z++){let J=D*f,w=F*l,K=(D*D-F*F)*f**3/D,Q=(F*F-D*D)*l**3/F,G=J-K,L=w-Q,H=z-K,q=k-Q,x=Math.hypot(L,G),v=Math.hypot(q,H);f=Math.min(1,Math.max(0,(H*x/v+K)/D)),l=Math.min(1,Math.max(0,(q*x/v+Q)/F));let W=Math.hypot(l,f);f/=W,l/=W}let[b,M]=[D*f*Math.sign(U[0]),F*l*Math.sign(U[1])];return G1(c3(U),t(b,M))},lk0=(u)=>{if(u.type==="arrow")return!1;let B=!TA(u.backgroundColor)||i8(u)||YE(u)||l4(u);return u.type==="line"?B&&SU(u.points):u.type==="freedraw"?B&&SU(u.points):B||H1(u)},IK=({x:u,y:B,element:E,shape:A,threshold:C=10,frameNameBound:D=null})=>{let F=lk0(E)?eT(t(u,B),A)||fk0(t(u,B),A,C):fk0(t(u,B),A,C);return!F&&D&&(F=eT(t(u,B),{type:"polygon",data:$lu(D).data})),F},zn=(u,B,E,A,C=0)=>{let[D,F,U,z]=UD(E,A);return D-=C,F-=C,U+=C,z+=C,Pku(t(D,F),t(u,B),t(U,z))},dlu=(u,B)=>!IK(u)&&!Nf0(u.x,u.y,if0(u.element,B))&&zn(u.x,u.y,u.element,B),Nf0=(u,B,E)=>!!E&&eT(t(u,B),E),slu=(u,B,E=0)=>{switch(u.type){case"rectangle":case"image":case"text":case"iframe":case"embeddable":case"frame":case"magicframe":return y53(u,B,E);case"diamond":return c53(u,B,E);case"ellipse":return g53(u,B,E);default:throw Error(`Unimplemented element type '${u.type}'`)}},y53=(u,B,E=0)=>{let A=t(u.x+u.width/2,u.y+u.height/2),C=Lu(B[0],A,-u.angle),D=Lu(B[1],A,-u.angle),[F,U]=nlu(u,E);return[...F.map((z)=>oT(V4(C,D),z)).filter((z)=>z!=null).map((z)=>Lu(z,A,u.angle)),...U.flatMap((z)=>jku(z,V4(C,D))).filter((z)=>z!=null).map((z)=>Lu(z,A,u.angle))].filter((z,k,f)=>f.findIndex((l)=>DD(z,l))===k)},c53=(u,B,E=0)=>{let A=t(u.x+u.width/2,u.y+u.height/2),C=Lu(B[0],A,-u.angle),D=Lu(B[1],A,-u.angle),[F,U]=plu(u,E);return[...F.map((z)=>oT(V4(C,D),z)).filter((z)=>z!=null).map((z)=>Lu(z,A,u.angle)),...U.flatMap((z)=>jku(z,V4(C,D))).filter((z)=>z!=null).map((z)=>Lu(z,A,u.angle))].filter((z,k,f)=>f.findIndex((l)=>DD(z,l))===k)},g53=(u,B,E=0)=>{let A=t(u.x+u.width/2,u.y+u.height/2),C=Lu(B[0],A,-u.angle),D=Lu(B[1],A,-u.angle);return $53(_lu(A,u.width/2+E,u.height/2+E),zk0(C,D)).map((F)=>Lu(F,A,u.angle))},U1,y0,_53,n53=(u)=>/^[a-z]$/.test(u.toLowerCase()),kn=(u,B)=>{if(B===u.key.toLowerCase())return!0;let E=_53.get(B);return!!(E&&!n53(u.key)&&u.code===E)},AX=(u)=>u===y0.ARROW_LEFT||u===y0.ARROW_RIGHT||u===y0.ARROW_DOWN||u===y0.ARROW_UP,fn=(u)=>u.altKey,CX=(u)=>u.shiftKey,yq=(u)=>u.shiftKey,ln,olu=(u)=>ln.find((B,E)=>B.numericKey!=null&&u===B.numericKey.toString()||B.key&&(typeof B.key=="string"?B.key===u:B.key.includes(u)))?.value||null,vU=(u,B)=>{switch(u.type){case"rectangle":case"diamond":case"frame":case"magicframe":case"embeddable":case"image":case"iframe":case"text":case"selection":return $lu(u);case"arrow":case"line":{let E=p6.get(u)?.[0]??p6.generateElementShape(u,null)[0],[,,,,A,C]=S3(u,B);return lk0(u)?j53(u,E,t(u.x,u.y),u.angle,t(A,C)):O53(E,t(u.x,u.y),u.angle,t(A,C))}case"ellipse":return T53(u);case"freedraw":{let[,,,,E,A]=S3(u,B);return P53(u,t(E,A),lk0(u))}}},if0=(u,B)=>{let E=Y3(u,B);return E?u.type==="arrow"?vU({...E,...M4.getBoundTextElementPosition(u,E,B)},B):vU(E,B):null},tlu=(u,B)=>{let E=p6.generateElementShape(u,null);if(!E)return null;let A=wM(E[0]),C=t(0,0),D=0,F=1/0,U=null;for(;D<A.length;){let{op:z,data:k}=A[D];if(z==="move"&&(l2(l33(k),"The returned ops is not compatible with a point"),C=k),z==="bcurveTo"){let f=C,l=t(k[0],k[1]),b=t(k[2],k[3]),M=t(k[4],k[5]),Z=G1(M,B);Z<F&&(F=Z,U=[f,l,b,M]),C=M}D++}return U},elu=(u,B,E,A,C)=>{let D=(z,k)=>Math.pow(1-z,3)*A[k]+3*z*Math.pow(1-z,2)*E[k]+3*Math.pow(z,2)*(1-z)*B[k]+u[k]*Math.pow(z,3),F=D(C,0),U=D(C,1);return t(F,U)},p53=(u,B)=>{let E=tlu(u,B);if(!E)return[];let A=[],C=1;for(;C>0;){let D=elu(E[0],E[1],E[2],E[3],C);A.push(t(D[0],D[1])),C-=0.05}return A.length&&DD(A.at(-1),B)&&A.push(t(B[0],B[1])),A},ubu=(u,B)=>{let E=[];E[0]=0;let A=p53(u,B),C=0,D=0;for(;C<A.length-1;){let F=G1(A[C],A[C+1]);D+=F,E.push(D),C++}return E},d53=(u,B)=>ubu(u,B).at(-1),s53=(u,B,E)=>{let A=ubu(u,B),C=A.length-1,D=A.at(-1),F=E*D,U=0,z=C,k=0;for(;U<z;)k=Math.floor(U+(z-U)/2),A[k]<F?U=k+1:z=k;return A[k]>F&&k--,A[k]===F?k/C:1-(k+(F-A[k])/(A[k+1]-A[k]))/C},ED=(u,B)=>{let E={minX:u.x,minY:u.y,maxX:u.x+u.width,maxY:u.y+u.height,midX:u.x+u.width/2,midY:u.y+u.height/2},A=t(E.midX,E.midY),[C,D]=Lu(t(E.minX,E.minY),A,u.angle),[F,U]=Lu(t(E.maxX,E.minY),A,u.angle),[z,k]=Lu(t(E.maxX,E.maxY),A,u.angle),[f,l]=Lu(t(E.minX,E.maxY),A,u.angle),b=[Math.min(C,F,z,f),Math.min(D,U,k,l),Math.max(C,F,z,f),Math.max(D,U,k,l)];if(B){let[M,Z,J,w]=B;return[b[0]-w,b[1]-M,b[2]+Z,b[3]+J]}return b},cq=(u,B)=>u[0]>B[0]&&u[0]<B[2]&&u[1]>B[1]&&u[1]<B[3],IA=(u,B)=>{if(B.roundness?.type===b2.PROPORTIONAL_RADIUS||B.roundness?.type===b2.LEGACY)return u*pz0;if(B.roundness?.type===b2.ADAPTIVE_RADIUS){let E=B.roundness?.value??A33,A=E/pz0;return u<=A?u*pz0:E}return 0},SU=(u,B=1)=>{if(u.length>=3){let[E,A]=[u[0],u[u.length-1]];return G1(E,A)<=CO/B}return!1},U5=10,Bbu=(u,B,E,A,C,D,F)=>{let{width:U,height:z}=WU(u),k=E/U,f=A/z,l=(u.crop?.x??0)/k,b=(u.crop?.y??0)/f,M=Lu(t(C,D),t(u.x+u.width/2,u.y+u.height/2),-u.angle);C=M[0],D=M[1];let{width:Z,height:J}=u,w=u.crop??{x:0,y:0,width:E,height:A,naturalWidth:E,naturalHeight:A},K=w.height,Q=w.width,G=u.scale[0]===-1,L=u.scale[1]===-1,H=D-u.y,q=C-u.x;B.includes("n")&&(J=$3(u.height-H,U5,L?z-b:u.height+b)),B.includes("s")&&(H=D-u.y-u.height,J=$3(u.height+H,U5,L?u.height+b:z-b)),B.includes("e")&&(q=C-u.x-u.width,Z=$3(u.width+q,U5,G?u.width+l:U-l)),B.includes("w")&&(Z=$3(u.width-q,U5,G?U-l:u.width+l));let x=(S)=>{S.height=J*f,S.width=Z*k};x(w);let v=(S,T)=>{x(T),S.includes("n")&&(L||(T.y+=K-T.height)),S.includes("s")&&L&&(T.y+=K-T.height),S.includes("e")&&G&&(T.x+=Q-T.width),S.includes("w")&&(G||(T.x+=Q-T.width))};switch(B){case"n":{if(F){let S=l+u.width/2,T=U-l-u.width/2,R=Math.min(S,T)*2;Z=$3(J*F,U5,R),J=Z/F}v(B,w),F&&(w.x+=(Q-w.width)/2);break}case"s":{if(F){let S=l+u.width/2,T=U-l-u.width/2,R=Math.min(S,T)*2;Z=$3(J*F,U5,R),J=Z/F}v(B,w),F&&(w.x+=(Q-w.width)/2);break}case"w":{if(F){let S=b+u.height/2,T=z-b-u.height/2,R=Math.min(S,T)*2;J=$3(Z/F,U5,R),Z=J*F}v(B,w),F&&(w.y+=(K-w.height)/2);break}case"e":{if(F){let S=b+u.height/2,T=z-b-u.height/2,R=Math.min(S,T)*2;J=$3(Z/F,U5,R),Z=J*F}v(B,w),F&&(w.y+=(K-w.height)/2);break}case"ne":{if(F)if(q>-H){let S=L?z-b:b+u.height;J=$3(Z/F,U5,S),Z=J*F}else{let S=G?l+u.width:U-l;Z=$3(J*F,U5,S),J=Z/F}v(B,w);break}case"nw":{if(F)if(q<H){let S=L?z-b:b+u.height;J=$3(Z/F,U5,S),Z=J*F}else{let S=G?U-l:l+u.width;Z=$3(J*F,U5,S),J=Z/F}v(B,w);break}case"se":{if(F)if(q>H){let S=L?b+u.height:z-b;J=$3(Z/F,U5,S),Z=J*F}else{let S=G?l+u.width:U-l;Z=$3(J*F,U5,S),J=Z/F}v(B,w);break}case"sw":{if(F)if(-q>H){let S=L?b+u.height:z-b;J=$3(Z/F,U5,S),Z=J*F}else{let S=G?U-l:l+u.width;Z=$3(J*F,U5,S),J=Z/F}v(B,w);break}default:break}let W=o53(u,B,Z,J,!!F);return pUu(w.width,w.naturalWidth)&&pUu(w.height,w.naturalHeight)&&(w=null),{x:W[0],y:W[1],width:Z,height:J,crop:w}},o53=(u,B,E,A,C)=>{let[D,F,U,z]=tb(u,u.width,u.height,!0),k=t(D,F),f=t(U,z),l=bO(k,f),[b,M,Z,J]=tb(u,E,A,!0),w=Z-b,K=J-M,Q=[...k];if(["n","w","nw"].includes(B)&&(Q=[f[0]-Math.abs(w),f[1]-Math.abs(K)]),B==="ne"){let v=[k[0],f[1]];Q=[v[0],v[1]-Math.abs(K)]}if(B==="sw"){let v=[f[0],k[1]];Q=[v[0]-Math.abs(w),v[1]]}C&&(["s","n"].includes(B)&&(Q[0]=l[0]-w/2),["e","w"].includes(B)&&(Q[1]=l[1]-K/2));let G=u.angle,L=Lu(Q,l,G),H=[Q[0]+Math.abs(w)/2,Q[1]+Math.abs(K)/2],q=Lu(H,l,G);Q=Lu(L,q,-G);let x=[...Q];return x[0]+=u.x-b,x[1]+=u.y-M,x},t53=(u,B)=>{if(u.crop){let{width:E,height:A}=WU(u),[C,D,F,U,z,k]=S3(u,B),f=O4(Lu(t(C,D),t(z,k),u.angle)),l=O4(Lu(t(F,D),t(z,k),u.angle)),b=w7(dT(l,f)),M=O4(Lu(t(C,U),t(z,k),u.angle)),Z=dT(M,f),J=w7(Z),{cropX:w,cropY:K}=e53(u.crop,u.scale),Q=db(db(f,b9(b,-w*E/u.crop.naturalWidth)),b9(J,-K*A/u.crop.naturalHeight)),G=c3(db(db(Q,b9(b,E/2)),b9(J,A/2))),L=Lu(c3(Q),G,-u.angle);return{...u,x:L[0],y:L[1],width:E,height:A,crop:null}}return u},WU=(u)=>{if(u.crop){let B=u.width/(u.crop.width/u.crop.naturalWidth),E=u.height/(u.crop.height/u.crop.naturalHeight);return{width:B,height:E}}return{width:u.width,height:u.height}},e53=(u,B)=>{let{x:E,y:A}=u,C=B[0]===-1,D=B[1]===-1;return C&&(E=u.naturalWidth-Math.abs(E)-u.width),D&&(A=u.naturalHeight-Math.abs(A)-u.height),{cropX:E,cropY:A}},Ebu=(u,B=!1)=>{let E=u.crop;if(!E)return null;let A=u.scale[0]===-1,C=u.scale[1]===-1,D=E.x,F=E.y;if(A&&(D=E.naturalWidth-E.width-E.x),C&&(F=E.naturalHeight-E.height-E.y),B)return{x:D,y:F};let{width:U,height:z}=WU(u);return{x:D/(E.naturalWidth/U),y:F/(E.naturalHeight/z)}},Abu="invert(100%) hue-rotate(180deg) saturate(1.25)",u73,Cbu=(u,B)=>IE(u)&&!B.imageCache.has(u.fileId),Dbu=(u,B,E)=>E.theme===_3.DARK&&IE(u)&&!Cbu(u,B)&&B.imageCache.get(u.fileId)?.mimeType!==y4.svg,bn=(u)=>{switch(u.type){case"freedraw":return u.strokeWidth*12;case"text":return u.fontSize/2;default:return 20}},af0=(u,B,E,A,C=1)=>{let D=(B?.opacity??100)*u.opacity/1e4*C;return(E.has(u.id)||A&&A.some((F)=>F.id===u.id)||B&&E.has(B.id))&&(D*=E33/100),D},B73=(u,B,E)=>{let A=bn(u),[C,D,F,U]=S3(u,B),z=W3(u)||NA(u)?K7(C,F):u.width,k=W3(u)||NA(u)?K7(D,U):u.height,f=z*window.devicePixelRatio+A*2,l=k*window.devicePixelRatio+A*2,b=E.value;return(f*b>32767||l*b>32767)&&(b=Math.min(32767/f,32767/l)),f*l*b*b>16777216&&(b=Math.sqrt(16777216/(f*l))),f=Math.floor(f*b),l=Math.floor(l*b),{width:f,height:l,scale:b}},Fbu=(u,B,E,A,C)=>{let D=document.createElement("canvas"),F=D.getContext("2d"),U=bn(u),{width:z,height:k,scale:f}=B73(u,B,E);if(!z||!k)return null;D.width=z,D.height=k;let l=-100,b=0;if(W3(u)||NA(u)){let[K,Q]=S3(u,B);l=u.x>K?K7(u.x,K)*window.devicePixelRatio*f:0,b=u.y>Q?K7(u.y,Q)*window.devicePixelRatio*f:0,F.translate(l,b)}F.save(),F.translate(U*f,U*f),F.scale(window.devicePixelRatio*f,window.devicePixelRatio*f);let M=WA.canvas(D);Dbu(u,A,C)&&(F.filter=Abu),K_(u,M,F,A,C),F.restore();let Z=Y3(u,B),J=document.createElement("canvas"),w=J.getContext("2d");if(j3(u)&&Z){let[K,Q,G,L]=S3(u,B),H=Math.max(K7(K,G),K7(Q,L));J.width=H*window.devicePixelRatio*f+U*f*10,J.height=H*window.devicePixelRatio*f+U*f*10,w.translate(J.width/2,J.height/2),w.rotate(u.angle),w.drawImage(D,-D.width/2,-D.height/2,D.width,D.height);let[,,,,q,x]=S3(Z,B);w.rotate(-u.angle);let v=(J.width-D.width)/2,W=(J.height-D.height)/2,S=J.width/2-(q-K)*window.devicePixelRatio*f-v-U*f,T=J.height/2-(x-Q)*window.devicePixelRatio*f-W-U*f;w.translate(-S,-T),w.clearRect(-(Z.width/2+f2)*window.devicePixelRatio*f,-(Z.height/2+f2)*window.devicePixelRatio*f,(Z.width+f2*2)*window.devicePixelRatio*f,(Z.height+f2*2)*window.devicePixelRatio*f)}return{element:u,canvas:D,theme:C.theme,scale:f,zoomValue:E.value,canvasOffsetX:l,canvasOffsetY:b,boundTextElementVersion:Y3(u,B)?.version||null,containingFrameOpacity:mB(u,B)?.opacity||100,boundTextCanvas:J,angle:u.angle,imageCrop:H1(u)?u.crop:null}},E73=14,Ubu,zbu,A73=(u,B)=>{B.fillStyle="#E7E7E7",B.fillRect(0,0,u.width,u.height);let E=Math.min(u.width,u.height),A=Math.min(E,Math.min(E*0.4,100));B.drawImage(u.status==="error"?zbu:Ubu,u.width/2-A/2,u.height/2-A/2,A,A)},K_=(u,B,E,A,C)=>{switch(u.type){case"rectangle":case"iframe":case"embeddable":case"diamond":case"ellipse":{E.lineJoin="round",E.lineCap="round",B.draw(p6.get(u));break}case"arrow":case"line":{E.lineJoin="round",E.lineCap="round",p6.get(u).forEach((D)=>{B.draw(D)});break}case"freedraw":{E.save(),E.fillStyle=u.strokeColor;let D=D73(u),F=p6.get(u);F&&B.draw(F),E.fillStyle=u.strokeColor,E.fill(D),E.restore();break}case"image":{let D=IE(u)?A.imageCache.get(u.fileId)?.image:void 0;if(D!=null&&!(D instanceof Promise)){u.roundness&&E.roundRect&&(E.beginPath(),E.roundRect(0,0,u.width,u.height,IA(Math.min(u.width,u.height),u)),E.clip());let{x:F,y:U,width:z,height:k}=u.crop?u.crop:{x:0,y:0,width:D.naturalWidth,height:D.naturalHeight};E.drawImage(D,F,U,z,k,0,0,u.width,u.height)}else A73(u,E);break}default:if(l4(u)){let D=rku(u.text),F=D&&!E.canvas.isConnected;F&&document.body.appendChild(E.canvas),E.canvas.setAttribute("dir",D?"rtl":"ltr"),E.save(),E.font=e1(u),E.fillStyle=u.strokeColor,E.textAlign=u.textAlign;let U=u.text.replace(/\r\n?/g,`
`).split(`
`),z=u.textAlign==="center"?u.width/2:u.textAlign==="right"?u.width:0,k=EX(u.fontSize,u.lineHeight),f=rlu(u.fontFamily,u.fontSize,k);for(let l=0;l<U.length;l++)E.fillText(U[l],z,l*k+f);E.restore(),F&&E.canvas.remove()}else throw Error(`Unimplemented type ${u.type}`)}},bk0,Czu=(u,B,E,A)=>{let C=E?A.zoom:u73.zoom,D=bk0.get(u),F=D&&D.zoomValue!==C.value&&!A?.shouldCacheIgnoreZoom,U=Y3(u,B),z=U?.version||null,k=H1(u)?u.crop:null,f=mB(u,B)?.opacity||100;if(!D||F||D.theme!==A.theme||D.boundTextElementVersion!==z||D.imageCrop!==k||D.containingFrameOpacity!==f||j3(u)&&U&&u.angle!==D.angle){let l=Fbu(u,B,C,E,A);return l?(bk0.set(u,l),l):null}return D},Ek0=(u,B,E,A,C)=>{let D=u.element,F=bn(D),U=u.scale,[z,k,f,l]=S3(D,C),b=((z+f)/2+A.scrollX)*window.devicePixelRatio,M=((k+l)/2+A.scrollY)*window.devicePixelRatio;B.save(),B.scale(1/window.devicePixelRatio,1/window.devicePixelRatio);let Z=Y3(D,C);if(j3(D)&&Z){let J=(u.boundTextCanvas.width-u.canvas.width)/2,w=(u.boundTextCanvas.height-u.canvas.height)/2;B.translate(b,M),B.drawImage(u.boundTextCanvas,-(f-z)/2*window.devicePixelRatio-J/U-F,-(l-k)/2*window.devicePixelRatio-w/U-F,u.boundTextCanvas.width/U,u.boundTextCanvas.height/U)}else if(B.translate(b,M),B.rotate(D.angle),"scale"in u.element&&!Cbu(D,E)&&B.scale(u.element.scale[0],u.element.scale[1]),B.translate(-b,-M),B.drawImage(u.canvas,(z+A.scrollX)*window.devicePixelRatio-F*u.scale/u.scale,(k+A.scrollY)*window.devicePixelRatio-F*u.scale/u.scale,u.canvas.width/u.scale,u.canvas.height/u.scale),Z3.VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX==="true"&&i8(D)){let J=Y3(D,C),w=Pbu(D);B.strokeStyle="#c92a2a",B.lineWidth=3,B.strokeRect((w.x+A.scrollX)*window.devicePixelRatio,(w.y+A.scrollY)*window.devicePixelRatio,kD(D,J)*window.devicePixelRatio,fX(D,J)*window.devicePixelRatio)}B.restore()},kbu=(u,B,E,A)=>{B.save(),B.translate(u.x+E.scrollX,u.y+E.scrollY),B.fillStyle="rgba(0, 0, 200, 0.04)";let C=0.5/E.zoom.value;B.fillRect(C,C,u.width,u.height),B.lineWidth=1/E.zoom.value,B.strokeStyle=A,B.strokeRect(C,C,u.width,u.height),B.restore()},pb=(u,B,E,A,C,D,F)=>{let U=F.openDialog?.name==="elementLinkSelector"&&!F.selectedElementIds[u.id]&&!F.hoveredElementIds[u.id];switch(C.globalAlpha=af0(u,mB(u,B),D.elementsPendingErasure,D.pendingFlowchartNodes,U?jk0:1),u.type){case"magicframe":case"frame":{F.frameRendering.enabled&&F.frameRendering.outline&&(C.save(),C.translate(u.x+F.scrollX,u.y+F.scrollY),C.fillStyle="rgba(0, 0, 200, 0.04)",C.lineWidth=j6.strokeWidth/F.zoom.value,C.strokeStyle=j6.strokeColor,KO(u)&&(C.strokeStyle=F.theme===_3.LIGHT?"#7affd7":"#1d8264"),j6.radius&&C.roundRect?(C.beginPath(),C.roundRect(0,0,u.width,u.height,j6.radius/F.zoom.value),C.stroke(),C.closePath()):C.strokeRect(0,0,u.width,u.height),C.restore());break}case"freedraw":{if(p6.generateElementShape(u,null),D.isExporting){let[z,k,f,l]=S3(u,B),b=(z+f)/2+F.scrollX,M=(k+l)/2+F.scrollY,Z=(f-z)/2-(u.x-z),J=(l-k)/2-(u.y-k);C.save(),C.translate(b,M),C.rotate(u.angle),C.translate(-Z,-J),K_(u,A,C,D,F),C.restore()}else{let z=Czu(u,E,D,F);if(!z)return;Ek0(z,C,D,F,E)}break}case"rectangle":case"diamond":case"ellipse":case"line":case"arrow":case"image":case"text":case"iframe":case"embeddable":{if(p6.generateElementShape(u,D),D.isExporting){let[z,k,f,l]=S3(u,B),b=(z+f)/2+F.scrollX,M=(k+l)/2+F.scrollY,Z=(f-z)/2-(u.x-z),J=(l-k)/2-(u.y-k);if(l4(u)){let K=l5(u,B);if(j3(K)){let Q=M4.getBoundTextElementPosition(K,u,B);Z=(f-z)/2-(Q.x-z),J=(l-k)/2-(Q.y-k)}}C.save(),C.translate(b,M),Dbu(u,D,F)&&(C.filter="none");let w=Y3(u,B);if(j3(u)&&w){let K=document.createElement("canvas"),Q=K.getContext("2d"),G=Math.max(K7(z,f),K7(k,l)),L=bn(u);K.width=G*F.exportScale+L*10*F.exportScale,K.height=G*F.exportScale+L*10*F.exportScale,Q.translate(K.width/2,K.height/2),Q.scale(F.exportScale,F.exportScale),Z=u.width/2-(u.x-z),J=u.height/2-(u.y-k),Q.rotate(u.angle);let H=WA.canvas(K);Q.translate(-Z,-J),K_(u,H,Q,D,F),Q.translate(Z,J),Q.rotate(-u.angle);let[,,,,q,x]=S3(w,B),v=(z+f)/2-q,W=(k+l)/2-x;Q.translate(-v,-W),Q.clearRect(-w.width/2,-w.height/2,w.width,w.height),C.scale(1/F.exportScale,1/F.exportScale),C.drawImage(K,-K.width/2,-K.height/2,K.width,K.height)}else C.rotate(u.angle),u.type==="image"&&C.scale(u.scale[0],u.scale[1]),C.translate(-Z,-J),K_(u,A,C,D,F);C.restore()}else{let z=Czu(u,E,D,F);if(!z)return;let k=C.imageSmoothingEnabled;if(!F?.shouldCacheIgnoreZoom&&(!u.angle||z33(u.angle))&&(C.imageSmoothingEnabled=!1),u.id===F.croppingElementId&&H1(z.element)&&z.element.crop!==null){C.save(),C.globalAlpha=0.1;let f=Fbu(t53(z.element,B),E,F.zoom,D,F);f&&Ek0(f,C,D,F,E),C.restore()}Ek0(z,C,D,F,E),C.imageSmoothingEnabled=k}break}default:throw Error(`Unimplemented type ${u.type}`)}C.globalAlpha=1},fbu,F73,PK=(u)=>u==="rectangle"||u==="iframe"||u==="embeddable"||u==="ellipse"||u==="diamond"||u==="line"||u==="freedraw",Mn=(u)=>u!=="image"&&u!=="frame"&&u!=="magicframe",hf0=(u)=>u==="rectangle"||u==="iframe"||u==="embeddable"||u==="ellipse"||u==="diamond"||u==="freedraw"||u==="arrow"||u==="line",mf0=(u)=>u==="rectangle"||u==="iframe"||u==="embeddable"||u==="ellipse"||u==="diamond"||u==="arrow"||u==="line",Zn=(u)=>u==="rectangle"||u==="iframe"||u==="embeddable"||u==="line"||u==="diamond"||u==="image",rf0=(u)=>u==="arrow",vO=(u)=>u==="arrow",l9,k5,iB,aB,M_=(u,B)=>{let E=oq(Math.atan2(B[1]-u[1],B[0]-u[0]));return E>=315||E<45?aB:E>=45&&E<135?l9:E>=135&&E<225?k5:iB},KK=(u)=>{let[B,E]=u,A=Math.abs(B),C=Math.abs(E);return B>C?l9:B<=-C?iB:E>A?k5:aB},uO=(u,B)=>KK(O4(u,B)),_k=(u,B)=>pk(uO(u,B)),M9=(u,B)=>u[0]===B[0]&&u[1]===B[1],pk=(u)=>M9(u,l9)||M9(u,iB),$f0=(u,B,E)=>{let A=gf0(B);if(u.type==="diamond"){if(E[0]<u.x)return iB;if(E[1]<u.y)return aB;if(E[0]>u.x+u.width)return l9;if(E[1]>u.y+u.height)return k5;let z=Lu(ck(t(u.x+u.width/2,u.y),A,2),A,u.angle),k=Lu(ck(t(u.x+u.width,u.y+u.height/2),A,2),A,u.angle),f=Lu(ck(t(u.x+u.width/2,u.y+u.height),A,2),A,u.angle),l=Lu(ck(t(u.x,u.y+u.height/2),A,2),A,u.angle);return Tq([z,k,A],E)?M_(z,k):Tq([k,f,A],E)?M_(k,f):Tq([f,l,A],E)?M_(f,l):M_(l,z)}let C=ck(t(B[0],B[1]),A,2),D=ck(t(B[2],B[1]),A,2),F=ck(t(B[0],B[3]),A,2),U=ck(t(B[2],B[3]),A,2);return Tq([C,D,A],E)?aB:Tq([D,U,A],E)?l9:Tq([U,F,A],E)?k5:iB},lbu=(u)=>[u[0]===0?0:u[0]>0?-1:1,u[1]===0?0:u[1]>0?-1:1],z73=(u)=>[8,8+u],bbu=(u)=>[1.5,6+u],SE=(u,B=!1)=>{let E={seed:u.seed,strokeLineDash:u.strokeStyle==="dashed"?z73(u.strokeWidth):u.strokeStyle==="dotted"?bbu(u.strokeWidth):void 0,disableMultiStroke:u.strokeStyle!=="solid",strokeWidth:u.strokeStyle!=="solid"?u.strokeWidth+0.5:u.strokeWidth,fillWeight:u.strokeWidth/2,hachureGap:u.strokeWidth*4,roughness:k73(u),stroke:u.strokeColor,preserveVertices:B||u.roughness<Sku.cartoonist};switch(u.type){case"rectangle":case"iframe":case"embeddable":case"diamond":case"ellipse":return E.fillStyle=u.fillStyle,E.fill=TA(u.backgroundColor)?void 0:u.backgroundColor,u.type==="ellipse"&&(E.curveFitting=1),E;case"line":case"freedraw":return SU(u.points)&&(E.fillStyle=u.fillStyle,E.fill=u.backgroundColor==="transparent"?void 0:u.backgroundColor),E;case"arrow":return E;default:throw Error(`Unimplemented type ${u.type}`)}},Fzu=(u,B,E)=>YE(u)&&(B||rB(u)&&E?.get(u.id)!==!0)&&TA(u.backgroundColor)&&TA(u.strokeColor)?{...u,roughness:0,backgroundColor:"#d3d3d3",fillStyle:"solid"}:tk(u)?{...u,strokeColor:TA(u.strokeColor)?"#000000":u.strokeColor,backgroundColor:TA(u.backgroundColor)?"#f4f4f6":u.backgroundColor}:u,Uzu=(u,B,E,A,C,D,F)=>{let U=lzu(u,B,E,A);if(U===null)return[];let z=(k,f)=>{if(k===null)return[];let[,,l,b,M,Z]=k;return[C.line(l,b,M,Z,f)]};switch(A){case"dot":case"circle":case"circle_outline":{let[k,f,l]=U;return delete D.strokeLineDash,[C.circle(k,f,l,{...D,fill:A==="circle_outline"?F:u.strokeColor,fillStyle:"solid",stroke:u.strokeColor,roughness:Math.min(0.5,D.roughness||0)})]}case"triangle":case"triangle_outline":{let[k,f,l,b,M,Z]=U;return delete D.strokeLineDash,[C.polygon([[k,f],[l,b],[M,Z],[k,f]],{...D,fill:A==="triangle_outline"?F:u.strokeColor,fillStyle:"solid",roughness:Math.min(1,D.roughness||0)})]}case"diamond":case"diamond_outline":{let[k,f,l,b,M,Z,J,w]=U;return delete D.strokeLineDash,[C.polygon([[k,f],[l,b],[M,Z],[J,w],[k,f]],{...D,fill:A==="diamond_outline"?F:u.strokeColor,fillStyle:"solid",roughness:Math.min(1,D.roughness||0)})]}case"crowfoot_one":return z(U,D);case"bar":case"arrow":case"crowfoot_many":case"crowfoot_one_or_many":default:{let[k,f,l,b,M,Z]=U;if(u.strokeStyle==="dotted"){let J=bbu(u.strokeWidth-1);D.strokeLineDash=[J[0],J[1]-1]}else delete D.strokeLineDash;return D.roughness=Math.min(1,D.roughness||0),[C.line(l,b,k,f,D),C.line(M,Z,k,f,D),...A==="crowfoot_one_or_many"?z(lzu(u,B,E,"crowfoot_one"),D):[]]}}},f73=(u,B,{isExporting:E,canvasBackgroundColor:A,embedsValidationStatus:C})=>{switch(u.type){case"rectangle":case"iframe":case"embeddable":{let D;if(u.roundness){let{width:F,height:U}=u,z=IA(Math.min(F,U),u);D=B.path(`M ${z} 0 L ${F-z} 0 Q ${F} 0, ${F} ${z} L ${F} ${U-z} Q ${F} ${U}, ${F-z} ${U} L ${z} ${U} Q 0 ${U}, 0 ${U-z} L 0 ${z} Q 0 0, ${z} 0`,SE(Fzu(u,E,C),!0))}else D=B.rectangle(0,0,u.width,u.height,SE(Fzu(u,E,C),!1));return D}case"diamond":{let D,[F,U,z,k,f,l,b,M]=Zbu(u);if(u.roundness){let Z=IA(Math.abs(F-b),u),J=IA(Math.abs(k-U),u);D=B.path(`M ${F+Z} ${U+J} L ${z-Z} ${k-J}
C ${z} ${k}, ${z} ${k}, ${z-Z} ${k+J}
L ${f+Z} ${l-J}
C ${f} ${l}, ${f} ${l}, ${f-Z} ${l-J}
L ${b+Z} ${M+J}
C ${b} ${M}, ${b} ${M}, ${b+Z} ${M-J}
L ${F-Z} ${U+J}
C ${F} ${U}, ${F} ${U}, ${F+Z} ${U+J}`,SE(u,!0))}else D=B.polygon([[F,U],[z,k],[f,l],[b,M]],SE(u));return D}case"ellipse":return B.ellipse(u.width/2,u.height/2,u.width,u.height,SE(u));case"line":case"arrow":{let D,F=SE(u),U=u.points.length?u.points:[t(0,0)];if(K4(u)?U.every((z)=>Math.abs(z[0])<=1e6&&Math.abs(z[1])<=1e6)?D=[B.path(l73(U,16),SE(u,!0))]:(console.error("Elbow arrow with extreme point positions detected. Arrow not rendered.",u.id,JSON.stringify(U)),D=[]):u.roundness?D=[B.curve(U,F)]:F.fill?D=[B.polygon(U,F)]:D=[B.linearPath(U,F)],u.type==="arrow"){let{startArrowhead:z=null,endArrowhead:k="arrow"}=u;if(z!==null){let f=Uzu(u,D,"start",z,B,F,A);D.push(...f)}if(k!==null){let f=Uzu(u,D,"end",k,B,F,A);D.push(...f)}}return D}case"freedraw":{let D;if(C73(u),SU(u.points)){let F=DUu(u.points,0.75);D=B.curve(F,{...SE(u),stroke:"none"})}else D=null;return D}case"frame":case"magicframe":case"text":case"image":return null;default:return fM(u,`generateElementShape(): Unimplemented type ${u?.type}`),null}},l73=(u,B)=>{let E=[];for(let C=1;C<u.length-1;C+=1){let D=u[C-1],F=u[C+1],U=u[C],z=_k(U,D),k=_k(F,U),f=Math.min(B,G1(u[C],F)/2,G1(u[C],D)/2);z?D[0]<U[0]?E.push([u[C][0]-f,u[C][1]]):E.push([u[C][0]+f,u[C][1]]):D[1]<U[1]?E.push([u[C][0],u[C][1]-f]):E.push([u[C][0],u[C][1]+f]),E.push(u[C]),k?F[0]<U[0]?E.push([u[C][0]-f,u[C][1]]):E.push([u[C][0]+f,u[C][1]]):F[1]<U[1]?E.push([u[C][0],u[C][1]-f]):E.push([u[C][0],u[C][1]+f])}let A=[`M ${u[0][0]} ${u[0][1]}`];for(let C=0;C<E.length;C+=3)A.push(`L ${E[C][0]} ${E[C][1]}`),A.push(`Q ${E[C+1][0]} ${E[C+1][1]}, ${E[C+2][0]} ${E[C+2][1]}`);return A.push(`L ${u[u.length-1][0]} ${u[u.length-1][1]}`),A.join(" ")},QK=(u)=>{let B=u.map((A)=>A[0]),E=u.map((A)=>A[1]);return{width:Math.max(...B)-Math.min(...B),height:Math.max(...E)-Math.min(...E)}},T_=(u,B,E,A)=>{let C=E.map((b)=>b[u]),D=Math.max(...C),F=Math.min(...C),U=D-F,z=U===0?1:B/U,k=1/0,f=E.map((b)=>{let M=b[u]*z,Z=[...b];return Z[u]=M,M<k&&(k=M),Z});if(!A||f.length===2)return f;let l=F-k;return f.map((b)=>b.map((M,Z)=>Z===u?M+l:M))},Mbu=class u{static getBounds(B,E){let A=u.boundsCache.get(B);if(A?.version&&A.version===B.version&&!X6(B))return A.bounds;let C=u.calculateBounds(B,E);return u.boundsCache.set(B,{version:B.version,bounds:C}),C}static calculateBounds(B,E){let A,[C,D,F,U,z,k]=S3(B,E);if(NA(B)){let[f,l,b,M]=yf0(B.points.map(([Z,J])=>Lu(t(Z,J),t(z-B.x,k-B.y),B.angle)));return[f+B.x,l+B.y,b+B.x,M+B.y]}else if(W3(B))A=Q73(B,z,k,E);else if(B.type==="diamond"){let[f,l]=Lu(t(z,D),t(z,k),B.angle),[b,M]=Lu(t(z,U),t(z,k),B.angle),[Z,J]=Lu(t(C,k),t(z,k),B.angle),[w,K]=Lu(t(F,k),t(z,k),B.angle),Q=Math.min(f,b,Z,w),G=Math.min(l,M,J,K),L=Math.max(f,b,Z,w),H=Math.max(l,M,J,K);A=[Q,G,L,H]}else if(B.type==="ellipse"){let f=(F-C)/2,l=(U-D)/2,b=Math.cos(B.angle),M=Math.sin(B.angle),Z=Math.hypot(f*b,l*M),J=Math.hypot(l*b,f*M);A=[z-Z,k-J,z+Z,k+J]}else{let[f,l]=Lu(t(C,D),t(z,k),B.angle),[b,M]=Lu(t(C,U),t(z,k),B.angle),[Z,J]=Lu(t(F,U),t(z,k),B.angle),[w,K]=Lu(t(F,D),t(z,k),B.angle),Q=Math.min(f,b,Z,w),G=Math.min(l,M,J,K),L=Math.max(f,b,Z,w),H=Math.max(l,M,J,K);A=[Q,G,L,H]}return A}},b73,S3=(u,B,E=!1)=>{if(NA(u))return Z73(u);if(W3(u))return M4.getElementAbsoluteCoords(u,B,E);if(l4(u)){let A=B?l5(u,B):null;if(j3(A)){let{x:C,y:D}=M4.getBoundTextElementPosition(A,u,B);return[C,D,C+u.width,D+u.height,C+u.width/2,D+u.height/2]}}return[u.x,u.y,u.x+u.width,u.y+u.height,u.x+u.width/2,u.y+u.height/2]},zzu=(u,B)=>{let[E,A,C,D,F,U]=S3(u,B),z=t(F,U);if(W3(u)||NA(u)){let K=[],Q=0;for(;Q<u.points.length-1;)K.push(V4(Lu(t(u.points[Q][0]+u.x,u.points[Q][1]+u.y),z,u.angle),Lu(t(u.points[Q+1][0]+u.x,u.points[Q+1][1]+u.y),z,u.angle))),Q++;return K}let[k,f,l,b,M,Z,J,w]=[[E,A],[C,A],[E,D],[C,D],[F,A],[F,D],[E,U],[C,U]].map((K)=>Lu(K,z,u.angle));return u.type==="diamond"?[V4(M,J),V4(M,w),V4(Z,J),V4(Z,w)]:u.type==="ellipse"?[V4(M,J),V4(M,w),V4(Z,J),V4(Z,w),V4(M,J),V4(M,w),V4(Z,J),V4(Z,w)]:[V4(k,f),V4(l,b),V4(k,l),V4(f,b),V4(k,w),V4(l,w),V4(f,J),V4(b,J)]},Zbu=(u)=>{let B=Math.floor(u.width/2)+1,E=0,A=u.width,C=Math.floor(u.height/2)+1,D=B,F=u.height;return[B,E,A,C,D,F,0,C]},kzu=(u,B,E,A,C)=>{let D=1-u;return Math.pow(D,3)*B+3*Math.pow(D,2)*u*E+3*D*Math.pow(u,2)*A+Math.pow(u,3)*C},fzu=(u,B,E,A)=>{let C=B-u,D=E-B,F=A-E,U=3*C-6*D+3*F,z=6*D-6*C,k=3*C,f=z*z-4*U*k;if(!(f>=0))return!1;let l=null,b=null,M=1/0,Z=1/0;return U===0?M=Z=-k/z:(M=(-z+Math.sqrt(f))/(2*U),Z=(-z-Math.sqrt(f))/(2*U)),M>=0&&M<=1&&(l=kzu(M,u,B,E,A)),Z>=0&&Z<=1&&(b=kzu(Z,u,B,E,A)),[l,b]},M73=(u,B,E,A)=>{let C=fzu(u[0],B[0],E[0],A[0]),D=fzu(u[1],B[1],E[1],A[1]),F=Math.min(u[0],A[0]),U=Math.max(u[0],A[0]);if(C){let f=C.filter((l)=>l!==null);F=Math.min(F,...f),U=Math.max(U,...f)}let z=Math.min(u[1],A[1]),k=Math.max(u[1],A[1]);if(D){let f=D.filter((l)=>l!==null);z=Math.min(z,...f),k=Math.max(k,...f)}return[F,z,U,k]},Jn=(u,B)=>{let E=t(0,0),{minX:A,minY:C,maxX:D,maxY:F}=u.reduce((U,{op:z,data:k})=>{if(z==="move"){let f=ik0(k);l2(f!=null,"Op data is not a point"),E=f}else if(z==="bcurveTo"){let f=t(k[0],k[1]),l=t(k[2],k[3]),b=t(k[4],k[5]),M=B?B(f):f,Z=B?B(l):l,J=B?B(b):b,w=B?B(E):E;E=b;let[K,Q,G,L]=M73(w,M,Z,J);U.minX=Math.min(U.minX,K),U.minY=Math.min(U.minY,Q),U.maxX=Math.max(U.maxX,G),U.maxY=Math.max(U.maxY,L)}return U},{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});return[A,C,D,F]},yf0=(u)=>{let B=1/0,E=1/0,A=-1/0,C=-1/0;for(let[D,F]of u)B=Math.min(B,D),E=Math.min(E,F),A=Math.max(A,D),C=Math.max(C,F);return[B,E,A,C]},Z73=(u)=>{let[B,E,A,C]=yf0(u.points),D=B+u.x,F=E+u.y,U=A+u.x,z=C+u.y;return[D,F,U,z,(D+U)/2,(F+z)/2]},J73=(u)=>{switch(u){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}},w73=(u)=>{switch(u){case"bar":return 90;case"arrow":return 20;default:return 25}},lzu=(u,B,E,A)=>{if(B.length<1)return null;let C=wM(B[0]);if(C.length<1)return null;let D=E==="start"?1:C.length-1,F=C[D].data;l2(F.length===6,"Op data length is not 6");let U=t(F[4],F[5]),z=t(F[2],F[3]),k=t(F[0],F[1]),f=C[D-1],l=t(0,0);if(f.op==="move"){let a=ik0(f.data);l2(a!=null,"Op data is not a point"),l=a}else f.op==="bcurveTo"&&(l=t(f.data[4],f.data[5]));let b=(a,I)=>Math.pow(1-a,3)*U[I]+3*a*Math.pow(1-a,2)*z[I]+3*Math.pow(a,2)*(1-a)*k[I]+l[I]*Math.pow(a,3),[M,Z]=E==="start"?l:U,[J,w]=[b(0.3,0),b(0.3,1)],K=Math.hypot(M-J,Z-w),Q=(M-J)/K,G=(Z-w)/K,L=J73(A),H=0;{let[a,I]=E==="end"?u.points[u.points.length-1]:u.points[0],[O,i]=u.points.length>1?E==="end"?u.points[u.points.length-2]:u.points[1]:[0,0];H=Math.hypot(a-O,I-i)}let q=Math.min(L,H*(A==="diamond"||A==="diamond_outline"?0.25:0.5)),x=M-Q*q,v=Z-G*q;if(A==="dot"||A==="circle"||A==="circle_outline"){let a=Math.hypot(v-Z,x-M)+u.strokeWidth-2;return[M,Z,a]}let W=w73(A);if(A==="crowfoot_many"||A==="crowfoot_one_or_many"){let[a,I]=Lu(t(M,Z),t(x,v),ob(-W)),[O,i]=Lu(t(M,Z),t(x,v),ob(W));return[x,v,a,I,O,i]}let[S,T]=Lu(t(x,v),t(M,Z),-W*Math.PI/180),[R,Y]=Lu(t(x,v),t(M,Z),ob(W));if(A==="diamond"||A==="diamond_outline"){let a,I;if(E==="start"){let[O,i]=u.points.length>1?u.points[1]:[0,0];[a,I]=Lu(t(M+q*2,Z),t(M,Z),Math.atan2(i-Z,O-M))}else{let[O,i]=u.points.length>1?u.points[u.points.length-2]:[0,0];[a,I]=Lu(t(M-q*2,Z),t(M,Z),Math.atan2(Z-i,M-O))}return[M,Z,S,T,a,I,R,Y]}return[M,Z,S,T,R,Y]},K73=(u)=>{let B=WA.generator(),E=SE(u),A=u.roundness?"curve":E.fill?"polygon":"linearPath";return B[A](u.points,E)},Q73=(u,B,E,A)=>{let C=Y3(u,A);if(u.points.length<2){let[k,f]=u.points[0],[l,b]=Lu(t(u.x+k,u.y+f),t(B,E),u.angle),M=[l,b,l,b];if(C){let Z=M4.getMinMaxXYWithBoundText(u,A,[l,b,l,b],C);M=[Z[0],Z[1],Z[2],Z[3]]}return M}let D=p6.get(u)?.[0]??K73(u),F=wM(D),U=Jn(F,([k,f])=>Lu(t(u.x+k,u.y+f),t(B,E),u.angle)),z=[U[0],U[1],U[2],U[3]];if(C){let k=M4.getMinMaxXYWithBoundText(u,A,z,C);z=[k[0],k[1],k[2],k[3]]}return z},UD=(u,B)=>b73.getBounds(u,B),T1=(u,B)=>{if(!u.length)return[0,0,0,0];let E=1/0,A=-1/0,C=1/0,D=-1/0,F=B||e4(u);return u.forEach((U)=>{let[z,k,f,l]=UD(U,F);E=Math.min(E,z),C=Math.min(C,k),A=Math.max(A,f),D=Math.max(D,l)}),[E,C,A,D]},cf0=(u,B)=>{let[E,A,C,D]=T1(u);return[E+B.x,A+B.y,C+B.x,D+B.y]},tb=(u,B,E,A)=>{if(!(W3(u)||NA(u)))return[u.x,u.y,u.x+B,u.y+E];let C=T_(0,B,T_(1,E,u.points,A),A),D;if(NA(u))D=yf0(C);else{let f=WA.generator(),l=u.roundness?f.curve(C,SE(u)):f.linearPath(C,SE(u)),b=wM(l);D=Jn(b)}let[F,U,z,k]=D;return[F+u.x,U+u.y,z+u.x,k+u.y]},bzu=(u,B)=>{let E=WA.generator(),A=u.roundness==null?E.linearPath(B,SE(u)):E.curve(B,SE(u)),C=wM(A),[D,F,U,z]=Jn(C);return[D+u.x,F+u.y,U+u.x,z+u.y]},G73=(u,B)=>{if(!u.length)return[0,0,0,0];let E=1/0,A=u[0],C=e4(u);return u.forEach((D)=>{let[F,U,z,k]=UD(D,C),f=G1(t((F+z)/2,(U+k)/2),t(B.x,B.y));f<E&&(E=f,A=D)}),UD(A,C)},hA=(u)=>{let[B,E,A,C]=T1(u);return{minX:B,minY:E,maxX:A,maxY:C,width:A-B,height:C-E,midX:(B+A)/2,midY:(E+C)/2}},Jbu=({scrollX:u,scrollY:B,width:E,height:A,zoom:C})=>[-u,-B,-u+E/C.value,-B+A/C.value],gf0=(u)=>t(u[0]+(u[2]-u[0])/2,u[1]+(u[3]-u[1])/2),H73=(u,B)=>{if(u==null||B==null)return!1;let[E,A,C,D]=u,[F,U,z,k]=B;return E<z&&C>F&&A<k&&D>U},wn=(u,B)=>{switch(u.type){case"rectangle":case"image":case"text":case"iframe":case"embeddable":case"frame":case"magicframe":return L73(u,B);case"diamond":return q73(u,B);case"ellipse":return X73(u,B)}},L73=(u,B)=>{let E=t(u.x+u.width/2,u.y+u.height/2),A=Lu(B,E,-u.angle),[C,D]=nlu(u);return Math.min(...C.map((F)=>ak0(A,F)),...D.map((F)=>Nku(F,A)).filter((F)=>F!==null))},q73=(u,B)=>{let E=t(u.x+u.width/2,u.y+u.height/2),A=Lu(B,E,-u.angle),[C,D]=plu(u);return Math.min(...C.map((F)=>ak0(A,F)),...D.map((F)=>Nku(F,A)).filter((F)=>F!==null))},X73=(u,B)=>{let E=t(u.x+u.width/2,u.y+u.height/2);return r53(Lu(B,E,-u.angle),_lu(E,u.width/2,u.height/2))},wbu=(u)=>!u[y0.CTRL_OR_CMD],AM=(u)=>u.isBindingEnabled,K6=5,Kn=10,Qn=4,x73=(u,B)=>{let E=[];return B.forEach((A)=>{let C=u.getNonDeletedElement(A);C!=null&&E.push(C)}),E},SO=(u,B,E,A,C)=>{let D=new Set,F=new Set;Mzu(u,B,E,"start",D,F,A),Mzu(u,E,B,"end",D,F,A);let U=Array.from(F).filter((z)=>!D.has(z));x73(C,U).forEach((z)=>{Wu(z,{boundElements:z.boundElements?.filter((k)=>k.type!=="arrow"||k.id!==u.id)})})},Mzu=(u,B,E,A,C,D,F)=>{if(B!=="keep"){if(B===null){let U=R73(u,A);U!=null&&D.add(U);return}Gbu(u)?(E==null||(E==="keep"?!Qbu(u,B,A):A==="start"||E.id!==B.id))&&(zD(u,B,A,F),C.add(B.id)):(zD(u,B,A,F),C.add(B.id))}},v73=(u,B,E,A)=>{let C=Hbu(u,B,E),D=B==="start"?u.startBinding?.elementId:u.endBinding?.elementId;if(D){let F=E.get(D);if(iA(F)&&Q_(F,C,E,A))return F}return null},Kbu=(u,B,E)=>["start","end"].map((A)=>v73(u,A,B,E)),S73=(u,B,E,A,C,D)=>{let F=u.points.length-1,U=E.findIndex((l)=>l===0)>-1,z=E.findIndex((l)=>l===F)>-1,k=U?B?iq(u,"start",A,C,D):null:K4(u)?"keep":iq(u,"start",A,C,D),f=z?B?iq(u,"end",A,C,D):null:K4(u)?"keep":iq(u,"end",A,C,D);return[k,f]},W73=(u,B,E,A,C)=>{if(K4(u))return["keep","keep"];let[D,F]=Kbu(u,B,C),U=D&&A?iq(u,"start",B,E,C):null,z=F&&A?iq(u,"end",B,E,C):null;return[U,z]},WO=(u,B,E,A,C,D,F)=>{u.forEach((U)=>{let[z,k]=D?.length?S73(U,C,D??[],B,E,F):W73(U,B,E,C,F);SO(U,z,k,B,A)})},Gn=(u,B,E)=>u.length>50?[]:u.filter(W3).flatMap((A)=>Kbu(A,B,E)).filter((A)=>A!==null).filter((A)=>u.filter((C)=>C.id===A?.id).length===0),Hn=(u,B,E,A,C)=>{B.startBoundElement!=null&&zD(u,B.startBoundElement,"start",A);let D=aA(E,C,A,B.zoom,K4(u),K4(u));D!==null&&(Qbu(u,D,"end")||zD(u,D,"end",A))},Y73=(u,B)=>{let E=u.gap,A=DX(B,B.width,B.height);return E>A&&(E=Kn+Qn),{...u,gap:E}},zD=(u,B,E,A)=>{if(!j3(u))return;let C={elementId:B.id,...K4(u)?{...YO(u,B,E,A),focus:0,gap:0}:{...Y73(I73(u,B,E,A),B)}};Wu(u,{[E==="start"?"startBinding":"endBinding"]:C}),e4(B.boundElements||[]).has(u.id)||Wu(B,{boundElements:(B.boundElements||[]).concat({id:u.id,type:"arrow"})})},Qbu=(u,B,E)=>{let A=u[E==="start"?"endBinding":"startBinding"];return _f0(u,A?.elementId,B)},_f0=(u,B,E)=>B===E.id&&Gbu(u),Gbu=(u)=>u.points.length<3,R73=(u,B)=>{let E=B==="start"?"startBinding":"endBinding",A=u[E];return A==null?null:(Wu(u,{[E]:null}),A.elementId)},aA=(u,B,E,A,C,D)=>{if(D){let F=!1,U=O73(B,(k)=>iA(k,!1)&&Q_(k,u,E,A,(C||!dz0(k))&&!u3(k))).filter((k)=>F?!1:(dz0(k)||(F=!0),!0));if(!U||U.length===0)return null;if(U.length===1)return U[0];let z=U.filter((k)=>Q_(k,u,E,A,!1));return z.length===1?z[0]:U.sort((k,f)=>f.width**2+f.height**2-(k.width**2+k.height**2)).pop()}return T73(B,(F)=>iA(F,!1)&&Q_(F,u,E,A,(C||!dz0(F))&&!u3(F)))},T73=(u,B)=>{let E=null;for(let A=u.length-1;A>=0;--A){let C=u[A];if(!C.isDeleted&&B(C)){E=C;break}}return E},O73=(u,B)=>{let E=[];for(let A=u.length-1;A>=0;--A){let C=u[A];C.isDeleted||B(C)&&E.push(C)}return E},I73=(u,B,E,A)=>{let C=E==="start"?-1:1,D=C===-1?0:u.points.length-1,F=D-C,U=M4.getPointAtIndexGlobalCoordinates(u,D,A),z=M4.getPointAtIndexGlobalCoordinates(u,F,A);return{focus:r73(B,z,U),gap:Math.max(1,wn(B,U))}},hB=(u,B,E)=>{let{newSize:A,simultaneouslyUpdated:C}=E??{},D=j73(C);iA(u)&&Ln(B,u,(F)=>{if(!W3(F)||F.isDeleted||!P73(F,u))return;let U=F.startBinding?B.get(F.startBinding.elementId):null,z=F.endBinding?B.get(F.endBinding.elementId):null,k=null,f=null;U&&z&&(k=UD(U,B),f=UD(z,B));let l={startBinding:Zzu(u,F.startBinding,A),endBinding:Zzu(u,F.endBinding,A)};if(D.has(F.id)){Wu(F,l,!0);return}let b=qn(B,F,(Z,J)=>{if(Z&&iA(Z)&&(J==="startBinding"||J==="endBinding")&&(u.id===F[J]?.elementId||u.id===F[J==="startBinding"?"endBinding":"startBinding"]?.elementId&&!H73(k,f))){let w=m73(F,J,l[J],Z,B);if(w)return{index:J==="startBinding"?0:F.points.length-1,point:w}}return null}).filter((Z)=>Z!==null);M4.movePoints(F,b,{...u.id===F.startBinding?.elementId?{startBinding:l.startBinding}:{},...u.id===F.endBinding?.elementId?{endBinding:l.endBinding}:{}});let M=Y3(F,B);M&&!M.isDeleted&&kX(F,B,!1)})},P73=(u,B)=>u.startBinding?.elementId===B.id||u.endBinding?.elementId===B.id,j73=(u)=>new Set((u||[]).map((B)=>B.id)),N73=(u,B,E,A,C,D,F)=>{let U=KK(O4(B,u));return!E||!A?U:i73(D,E,C,F)?$f0(E,A,u):KK(O4(u,t(E.x+E.width/2,E.y+E.height/2)))},i73=(u,B,E,A)=>{let C=wn(B,u),D=DX(B,B.width,B.height,A);return C>D?null:C},gq=(u,B,E)=>{let A=B&&ED(B),C=u.points[E==="start"?0:u.points.length-1],D=t(u.x+C[0],u.y+C[1]),F=S33(B)?V73(B,D):D;if(B&&A){let U=gf0(A),z=slu(B,V4(U,c3(b9(w7(O4(F,U)),Math.max(B.width,B.height)),U)))[0],k=G1(F,U),f=Math.max(G1(z??F,U),0.0001),l=JD(k/f,6);switch(!0){case l>0.9:return k-f>K6||sT(F,z)<0.0001?F:c3(b9(w7(O4(F,z??U)),l>1?K6:-K6),z??U);default:return a73(F,B,A)}}return F},a73=(u,B,E)=>{let A=gf0(E),C=KK(O4(u,A));switch(!0){case M9(C,aB):return Lu(t((E[0]+E[2])/2+0.1,E[1]),A,B.angle);case M9(C,l9):return Lu(t(E[2],(E[1]+E[3])/2+0.1),A,B.angle);case M9(C,k5):return Lu(t((E[0]+E[2])/2-0.1,E[3]),A,B.angle);default:return Lu(t(E[0],(E[1]+E[3])/2-0.1),A,B.angle)}},V73=(u,B)=>{let E=t(u.x+u.width/2,u.y+u.height/2),A=Lu(B,E,-u.angle);return A[0]<u.x&&A[1]<u.y?A[1]-u.y>-K6?Lu(t(u.x-K6,u.y),E,u.angle):Lu(t(u.x,u.y-K6),E,u.angle):A[0]<u.x&&A[1]>u.y+u.height?A[0]-u.x>-K6?Lu(t(u.x,u.y+u.height+K6),E,u.angle):Lu(t(u.x-K6,u.y+u.height),E,u.angle):A[0]>u.x+u.width&&A[1]>u.y+u.height?A[0]-u.x<u.width+K6?Lu(t(u.x+u.width,u.y+u.height+K6),E,u.angle):Lu(t(u.x+u.width+K6,u.y+u.height),E,u.angle):A[0]>u.x+u.width&&A[1]<u.y?A[0]-u.x<u.width+K6?Lu(t(u.x+u.width,u.y-K6),E,u.angle):Lu(t(u.x+u.width+K6,u.y),E,u.angle):B},h73=(u,B,E=0.05)=>{let{x:A,y:C,width:D,height:F,angle:U}=u,z=t(A+D/2-0.1,C+F/2-0.1),k=Lu(B,z,-U),f=$3(E*F,5,80),l=$3(E*D,5,80);return k[0]<=A+D/2&&k[1]>z[1]-f&&k[1]<z[1]+f?Lu(t(A-K6,z[1]),z,U):k[1]<=C+F/2&&k[0]>z[0]-l&&k[0]<z[0]+l?Lu(t(z[0],C-K6),z,U):k[0]>=A+D/2&&k[1]>z[1]-f&&k[1]<z[1]+f?Lu(t(A+D+K6,z[1]),z,U):k[1]>=C+F/2&&k[0]>z[0]-l&&k[0]<z[0]+l?Lu(t(z[0],C+F+K6),z,U):B},m73=(u,B,E,A,C)=>{if(E==null||E.elementId!==A.id&&u.points.length>2)return null;let D=B==="startBinding"?-1:1,F=D===-1?0:u.points.length-1;if(K4(u)&&W_(E)){let l=Xn(E.fixedPoint)??YO(u,A,B==="startBinding"?"start":"end",C).fixedPoint,b=t(A.x+A.width/2,A.y+A.height/2),M=t(A.x+l[0]*A.width,A.y+l[1]*A.height),Z=Lu(M,b,A.angle);return M4.pointFromAbsoluteCoords(u,Z,C)}let U=F-D,z=M4.getPointAtIndexGlobalCoordinates(u,U,C),k=$73(A,E.focus,z),f;if(E.gap===0)f=k;else{let l=M4.getPointAtIndexGlobalCoordinates(u,F,C),b=t(A.x+A.width/2,A.y+A.height/2),M=G1(z,l)+G1(z,b)+Math.max(A.width,A.height)*2,Z=slu(A,V4(z,c3(b9(w7(O4(k,z)),M),z)),E.gap).sort((J,w)=>sT(J,z)-sT(w,z));Z.length>1?f=Z[0]:Z.length===1?f=k:f=l}return M4.pointFromAbsoluteCoords(u,f,C)},YO=(u,B,E,A)=>{let C=[B.x,B.y,B.x+B.width,B.y+B.height],D=gq(u,B,E),F=t(C[0]+(C[2]-C[0])/2,C[1]+(C[3]-C[1])/2),U=Lu(D,F,-B.angle);return{fixedPoint:Xn([(U[0]-B.x)/B.width,(U[1]-B.y)/B.height])}},Zzu=(u,B,E)=>{if(B==null||E==null)return B;let{width:A,height:C}=E,{width:D,height:F}=u,U=Math.max(1,Math.min(DX(u,A,C),B.gap*(A<C?A/D:C/F)));return{...B,gap:U}},iq=(u,B,E,A,C)=>aA(Hbu(u,B,E),A,E,C,K4(u),K4(u)),Hbu=(u,B,E)=>{let A=B==="start"?0:-1;return OA(M4.getPointAtIndexGlobalCoordinates(u,A,E))},nf0=(u,B,E,A)=>{let C=new Set,D=new Set,F=A==="duplicatesServeAsOld",U=new Map([...E].map(([z,k])=>[k,z]));B.forEach((z)=>{let{boundElements:k}=z;if(k!=null&&k.length>0&&(k.forEach((f)=>{F&&!E.has(f.id)&&C.add(f.id)}),D.add(E.get(z.id))),FD(z)){if(z.startBinding!=null){let{elementId:f}=z.startBinding;F&&!E.has(f)&&D.add(f)}if(z.endBinding!=null){let{elementId:f}=z.endBinding;F&&!E.has(f)&&D.add(f)}(z.startBinding!=null||z.endBinding!=null)&&C.add(E.get(z.id))}}),u.filter(({id:z})=>C.has(z)).forEach((z)=>{let{startBinding:k,endBinding:f}=z;Wu(z,{startBinding:Jzu(k,E),endBinding:Jzu(f,E)})}),u.filter(({id:z})=>D.has(z)).forEach((z)=>{let k=U.get(z.id),f=u.find(({id:l})=>l===k)?.boundElements;f&&f.length>0&&Wu(z,{boundElements:f.map((l)=>E.has(l.id)?{id:E.get(l.id),type:l.type}:l)})})},Jzu=(u,B)=>u==null?null:{...u,elementId:B.get(u.elementId)??u.elementId},pf0=(u,B)=>{let E=e4(u);for(let A of B)aq.unbindAffected(E,A,Wu),Vq.unbindAffected(E,A,Wu)},BO=(u,B,E=[])=>{if(!u)return null;let A=u.filter((C)=>!B.has(C.id));return A.push(...E.map((C)=>({id:C.id,type:C.type}))),A},Q_=(u,{x:B,y:E},A,C,D)=>{let F=DX(u,u.width,u.height,C),U=vU(u,A);return fk0(t(B,E),U,F)||D===!0&&cq(t(B,E),ED(u))},DX=(u,B,E,A)=>{let C=A?.value&&A.value<1?A.value:1,D=(u.type==="diamond"?1/Math.sqrt(2):1)*Math.min(B,E);return Math.max(16,Math.min(0.25*D,32),Kn/C+Qn)},r73=(u,B,E)=>{let A=t(u.x+u.width/2,u.y+u.height/2);if(DD(B,E))return 0;let C=Lu(B,A,-u.angle),D=Lu(E,A,-u.angle),F=Math.sign(z5(O4(D,B),O4(D,A)))*-1,U=V4(D,c3(b9(w7(O4(D,C)),Math.max(u.width*2,u.height*2)),D)),z=u.type==="diamond"?[V4(t(u.x+u.width/2,u.y),t(u.x+u.width/2,u.y+u.height)),V4(t(u.x,u.y+u.height/2),t(u.x+u.width,u.y+u.height/2))]:[V4(t(u.x,u.y),t(u.x+u.width,u.y+u.height)),V4(t(u.x+u.width,u.y),t(u.x,u.y+u.height))],k=u.type==="diamond"?[V4(t(u.x+u.width/2,u.y-u.height),t(u.x+u.width/2,u.y+u.height*2)),V4(t(u.x-u.width,u.y+u.height/2),t(u.x+u.width*2,u.y+u.height/2))]:[V4(t(u.x-u.width,u.y-u.height),t(u.x+u.width*2,u.y+u.height*2)),V4(t(u.x+u.width*2,u.y-u.height),t(u.x-u.width,u.y+u.height*2))];return[oT(U,k[0]),oT(U,k[1])].filter((f)=>f!==null).sort((f,l)=>sT(f,E)-sT(l,E)).map((f,l)=>F*G1(A,f)/(u.type==="diamond"?G1(z[l][0],z[l][1])/2:Math.sqrt(u.width**2+u.height**2)/2)).sort((f,l)=>Math.abs(f)-Math.abs(l))[0]??0},$73=(u,B,E)=>{let A=t(u.x+u.width/2,u.y+u.height/2);if(B===0)return A;let C=(u.type==="diamond"?[t(u.x,u.y+u.height/2),t(u.x+u.width/2,u.y),t(u.x+u.width,u.y+u.height/2),t(u.x+u.width/2,u.y+u.height)]:[t(u.x,u.y),t(u.x+u.width,u.y),t(u.x+u.width,u.y+u.height),t(u.x,u.y+u.height)]).map((F)=>c3(b9(O4(F,A),Math.abs(B)),A)).map((F)=>Lu(F,A,u.angle)),D=[z5(O4(E,C[0]),O4(C[1],C[0]))>0&&(B>0?z5(O4(E,C[1]),O4(C[2],C[1]))<0:z5(O4(E,C[3]),O4(C[0],C[3]))<0),z5(O4(E,C[1]),O4(C[2],C[1]))>0&&(B>0?z5(O4(E,C[2]),O4(C[3],C[2]))<0:z5(O4(E,C[0]),O4(C[1],C[0]))<0),z5(O4(E,C[2]),O4(C[3],C[2]))>0&&(B>0?z5(O4(E,C[3]),O4(C[0],C[3]))<0:z5(O4(E,C[1]),O4(C[2],C[1]))<0),z5(O4(E,C[3]),O4(C[0],C[3]))>0&&(B>0?z5(O4(E,C[0]),O4(C[1],C[0]))<0:z5(O4(E,C[2]),O4(C[3],C[2]))<0)];return D[0]?B>0?C[1]:C[0]:D[1]?B>0?C[2]:C[1]:D[2]?B>0?C[3]:C[2]:B>0?C[0]:C[3]},y73,Ln=(u,B,E)=>{iA(B)&&(B.boundElements?.slice()??[]).forEach(({id:A})=>{E(u.get(A),"boundElements",A)})},qn=(u,B,E)=>{let A=[];if(B.frameId){let C=B.frameId;A.push(E(u.get(C),"frameId",C))}if(X6(B)){let C=B.containerId;A.push(E(u.get(C),"containerId",C))}if(j3(B)){if(B.startBinding){let C=B.startBinding.elementId;A.push(E(u.get(C),"startBinding",C))}if(B.endBinding){let C=B.endBinding.elementId;A.push(E(u.get(C),"endBinding",C))}}return A},aq=class{static unbindAffected(u,B,E){B&&qn(u,B,(A)=>{!A||A.isDeleted||Ln(u,A,(C,D,F)=>{F===B.id&&E(A,{boundElements:BO(A.boundElements,new Set([F]))})})})}},Vq=class{static unbindAffected(u,B,E){B&&Ln(u,B,(A)=>{!A||A.isDeleted||qn(u,A,(C,D,F)=>{F===B.id&&E(A,{[D]:null})})})}},Mk0=(u,B)=>{let[E,A]=Xn(u);return Lu(t(B.x+B.width*E,B.y+B.height*A),t(B.x+B.width/2,B.y+B.height/2),B.angle)},c73=(u,B)=>{let E=u.startBinding&&B.get(u.startBinding.elementId),A=u.endBinding&&B.get(u.endBinding.elementId),C=E&&u.startBinding?Mk0(u.startBinding.fixedPoint,E):t(u.x+u.points[0][0],u.y+u.points[0][1]),D=A&&u.endBinding?Mk0(u.endBinding.fixedPoint,A):t(u.x+u.points[u.points.length-1][0],u.y+u.points[u.points.length-1][1]);return[C,D]},g73=(u,B)=>{let[E,A]=c73(u,B);return[M4.pointFromAbsoluteCoords(u,E,B),M4.pointFromAbsoluteCoords(u,A,B)]},Xn=(u)=>u&&(Math.abs(u[0]-0.5)<0.0001||Math.abs(u[1]-0.5)<0.0001)?u.map((B)=>Math.abs(B-0.5)<0.0001?0.5001:B):u,_73=(u,B)=>{let[E,A,C,D]=B,{x:F,y:U}=jA({sceneX:E,sceneY:A},u),{x:z,y:k}=jA({sceneX:C,sceneY:D},u);return z-F>u.width||k-U>u.height},df0=({scenePoint:u,viewportDimensions:B,zoom:E,offsets:A})=>{let C=(B.width-(A?.right??0))/2/E.value-u.x;C+=(A?.left??0)/2/E.value;let D=(B.height-(A?.bottom??0))/2/E.value-u.y;return D+=(A?.top??0)/2/E.value,{scrollX:C,scrollY:D}},FX=(u,B)=>{if(u=Y83(u),!u.length)return{scrollX:0,scrollY:0};let[E,A,C,D]=T1(u);_73(B,[E,A,C,D])&&([E,A,C,D]=G73(u,Q6({clientX:B.scrollX,clientY:B.scrollY},B)));let F=(E+C)/2,U=(A+D)/2;return df0({scenePoint:{x:F,y:U},viewportDimensions:{width:B.width,height:B.height},zoom:B.zoom})},jU=(u)=>$3(JD(u,6),m_,r_),n73=(u)=>$3(Math.round(u),1,100),sf0=(u)=>$3(Math.round(u),1,100),of0=(u,B,E)=>{let A=E.reduce((C,D)=>(D.groupIds.includes(u)&&(C[D.id]=!0),C),{});return Object.keys(A).length<2?B.selectedGroupIds[u]||B.editingGroupId===u?{selectedElementIds:B.selectedElementIds,selectedGroupIds:{...B.selectedGroupIds,[u]:!1},editingGroupId:null}:B:{editingGroupId:B.editingGroupId,selectedGroupIds:{...B.selectedGroupIds,[u]:!0},selectedElementIds:{...B.selectedElementIds,...A}}},y7,tf0=(u,B)=>ef0(u,B)!=null,ef0=(u,B)=>B.groupIds.filter((E)=>E!==u.editingGroupId).find((E)=>u.selectedGroupIds[E]),KM=(u)=>Object.entries(u.selectedGroupIds).filter(([B,E])=>E).map(([B,E])=>B),ul0=(u,B)=>{let E={...B,selectedGroupIds:{}};for(let A of u){let C=A.groupIds;if(B.editingGroupId){let D=C.indexOf(B.editingGroupId);D>-1&&(C=C.slice(0,D))}if(C.length>0){let D=C[C.length-1];E={...E,...of0(D,E,u)}}}return E.selectedGroupIds},Lbu=(u,B)=>({...u,editingGroupId:B.groupIds.length?B.groupIds[0]:null,selectedGroupIds:{},selectedElementIds:{[B.id]:!0}}),UX=(u,B)=>u.groupIds.includes(B),x6=(u,B)=>{let E=[];for(let A of u.values())UX(A,B)&&E.push(A);return E},qbu=(u,B)=>u.groupIds.find((E)=>B[E]),p73=(u,B,E)=>{let A=[...u],C=B?u.indexOf(B):-1,D=C>-1?C:u.length;for(let F=0;F<D;F++)A[F]=E(A[F]);return A},Xbu=(u,B,E)=>{let A=[...u],C=E?A.indexOf(E):-1,D=C>-1?C:A.length;return A.splice(D,0,B),A},xbu=(u,B)=>u.filter((E)=>!B[E]),RO=(u,B)=>{let E=new Map;return u.forEach((A)=>{let C=A.groupIds.length===0?A.id:A.groupIds[A.groupIds.length-1],D=E.get(C)||[],F=Y3(A,B);F&&D.push(F),E.set(C,[...D,A])}),Array.from(E.values())},d73=(u)=>{let B=new Set;for(let[,E]of u)if(!E.isDeleted)for(let A of E.groupIds??[])B.add(A);return B},Bl0=(u)=>{let B=u.flatMap((C)=>C.groupIds),E=new Map,A=0;for(let C of B)E.set(C,(E.get(C)??0)+1),E.get(C)>A&&(A=E.get(C));return A===u.length},jK=(u)=>u.groupIds.length>0,s73=8,wzu=99999,xn=(u)=>s73/u,I8=class{},NU,zX=(u)=>u.props.gridModeEnabled??u.state.gridModeEnabled,ek=({event:u,app:B,selectedElements:E})=>u?B.state.objectsSnapModeEnabled&&!u[y0.CTRL_OR_CMD]||!B.state.objectsSnapModeEnabled&&u[y0.CTRL_OR_CMD]&&!zX(B):E.length===1&&E[0].type==="arrow"?!1:B.state.objectsSnapModeEnabled,o73=(u,B,E=0.01)=>Math.abs(u-B)<=E,EO=(u,B,{omitCenter:E,boundingBoxCorners:A,dragOffset:C}={omitCenter:!1,boundingBoxCorners:!1})=>{let D=[];if(u.length===1){let F=u[0],[U,z,k,f,l,b]=S3(F,B);C&&(U+=C.x,k+=C.x,l+=C.x,z+=C.y,f+=C.y,b+=C.y);let M=(k-U)/2,Z=(f-z)/2;if((F.type==="diamond"||F.type==="ellipse")&&!A){let J=Lu(t(U,z+Z),t(l,b),F.angle),w=Lu(t(U+M,z),t(l,b),F.angle),K=Lu(t(k,z+Z),t(l,b),F.angle),Q=Lu(t(U+M,f),t(l,b),F.angle),G=t(l,b);D=E?[J,w,K,Q]:[J,w,K,Q,G]}else{let J=Lu(t(U,z),t(l,b),F.angle),w=Lu(t(k,z),t(l,b),F.angle),K=Lu(t(U,f),t(l,b),F.angle),Q=Lu(t(k,f),t(l,b),F.angle),G=t(l,b);D=E?[J,w,K,Q]:[J,w,K,Q,G]}}else if(u.length>1){let[F,U,z,k]=cf0(u,C??{x:0,y:0}),f=z-F,l=k-U,b=t(F,U),M=t(z,U),Z=t(F,k),J=t(z,k),w=t(F+f/2,U+l/2);D=E?[b,M,Z,J]:[b,M,Z,J,w]}return D.map((F)=>t(f9(F[0]),f9(F[1])))},vbu=(u,B,E,A)=>{let C=B.filter((D)=>u3(D)).map((D)=>D.id);return SMu(u,B,E,A).filter((D)=>!(D.frameId&&C.includes(D.frameId)))},Sbu=(u,B,E,A)=>{let C=vbu(u,B,E,A),D=RO(C,A).filter((l)=>!(l.length===1&&X6(l[0]))).map((l)=>T1(l).map((b)=>f9(b))),F=D.sort((l,b)=>l[0]-b[0]),U=[],z=0;u:for(let l=0;l<F.length;l++){let b=F[l];for(let M=l+1;M<F.length;M++){if(++z>wzu)break u;let Z=F[M],[,J,w,K]=b,[Q,G,,L]=Z;w<Q&&v_($7(J,K),$7(G,L))&&U.push({startBounds:b,endBounds:Z,startSide:[t(w,J),t(w,K)],endSide:[t(Q,G),t(Q,L)],length:Q-w,overlap:S_($7(J,K),$7(G,L))})}}let k=D.sort((l,b)=>l[1]-b[1]),f=[];z=0;u:for(let l=0;l<k.length;l++){let b=k[l];for(let M=l+1;M<k.length;M++){if(++z>wzu)break u;let Z=k[M],[J,,w,K]=b,[Q,G,L]=Z;K<G&&v_($7(J,w),$7(Q,L))&&f.push({startBounds:b,endBounds:Z,startSide:[t(J,K),t(w,K)],endSide:[t(Q,G),t(L,G)],length:G-K,overlap:S_($7(J,w),$7(Q,L))})}}return{horizontalGaps:U,verticalGaps:f}},Kzu=(u,B,E,A,C,D,F)=>{if(!ek({app:E,event:A,selectedElements:u}))return[];if(u.length===0)return[];let U=NU.getVisibleGaps();if(U){let{horizontalGaps:z,verticalGaps:k}=U,[f,l,b,M]=cf0(u,B).map((w)=>f9(w)),Z=(f+b)/2,J=(l+M)/2;for(let w of z){if(!v_($7(l,M),w.overlap))continue;let K=w.startSide[0][0]+w.length/2,Q=f9(K-Z);if(w.length>b-f&&Math.abs(Q)<=F.x){Math.abs(Q)<F.x&&(C.length=0),F.x=Math.abs(Q);let W={type:"gap",direction:"center_horizontal",gap:w,offset:Q};C.push(W);continue}let[,,G]=w.endBounds,L=f-G,H=f9(w.length-L);if(Math.abs(H)<=F.x){Math.abs(H)<F.x&&(C.length=0),F.x=Math.abs(H);let W={type:"gap",direction:"side_right",gap:w,offset:H};C.push(W);continue}let[q,,,]=w.startBounds,x=q-b,v=f9(x-w.length);if(Math.abs(v)<=F.x){Math.abs(v)<F.x&&(C.length=0),F.x=Math.abs(v);let W={type:"gap",direction:"side_left",gap:w,offset:v};C.push(W);continue}}for(let w of k){if(!v_($7(f,b),w.overlap))continue;let K=w.startSide[0][1]+w.length/2,Q=f9(K-J);if(w.length>M-l&&Math.abs(Q)<=F.y){Math.abs(Q)<F.y&&(D.length=0),F.y=Math.abs(Q);let W={type:"gap",direction:"center_vertical",gap:w,offset:Q};D.push(W);continue}let[,G,,]=w.startBounds,L=G-M,H=f9(L-w.length);if(Math.abs(H)<=F.y){Math.abs(H)<F.y&&(D.length=0),F.y=Math.abs(H);let W={type:"gap",direction:"side_top",gap:w,offset:H};D.push(W);continue}let[,,,q]=w.endBounds,x=f9(l-q),v=w.length-x;if(Math.abs(v)<=F.y){Math.abs(v)<F.y&&(D.length=0),F.y=Math.abs(v);let W={type:"gap",direction:"side_bottom",gap:w,offset:v};D.push(W);continue}}}},Wbu=(u,B,E,A)=>{let C=vbu(u,B,E,A);return RO(C,A).filter((D)=>!(D.length===1&&X6(D[0]))).flatMap((D)=>EO(D,A))},_q=(u,B,E,A,C,D,F)=>{if(!ek({app:E,event:A,selectedElements:u})||u.length===0&&B.length===0)return[];let U=NU.getReferenceSnapPoints();if(U)for(let z of B)for(let k of U){let f=k[0]-z[0],l=k[1]-z[1];Math.abs(f)<=F.x&&(Math.abs(f)<F.x&&(C.length=0),C.push({type:"point",points:[z,k],offset:f}),F.x=Math.abs(f)),Math.abs(l)<=F.y&&(Math.abs(l)<F.y&&(D.length=0),D.push({type:"point",points:[z,k],offset:l}),F.y=Math.abs(l))}},Ybu=(u,B,E,A,C)=>{let D=E.state,F=N3(u,D);if(!ek({app:E,event:A,selectedElements:F})||F.length===0)return{snapOffset:{x:0,y:0},snapLines:[]};B.x=f9(B.x),B.y=f9(B.y);let U=[],z=[],k=xn(D.zoom.value),f={x:k,y:k},l=EO(F,C,{dragOffset:B});_q(F,l,E,A,U,z,f),Kzu(F,B,E,A,U,z,f);let b={x:U[0]?.offset??0,y:z[0]?.offset??0};f.x=0,f.y=0,U.length=0,z.length=0;let M={x:f9(B.x+b.x),y:f9(B.y+b.y)};_q(F,EO(F,C,{dragOffset:M}),E,A,U,z,f),Kzu(F,M,E,A,U,z,f);let Z=El0(U,z),J=e73(F,M,[...U,...z].filter((w)=>w.type==="gap"));return{snapOffset:b,snapLines:[...Z,...J]}},f9=(u)=>Math.round(u*1e6)/1e6,Qzu=(u)=>{let B=new Map;for(let E of u){let A=E.join(",");B.has(A)||B.set(A,E)}return Array.from(B.values())},El0=(u,B)=>{let E={},A={};if(u.length>0){for(let C of u)if(C.type==="point"){let D=f9(C.points[0][0]);E[D]||(E[D]=[]),E[D].push(...C.points.map((F)=>t(f9(F[0]),f9(F[1]))))}}if(B.length>0){for(let C of B)if(C.type==="point"){let D=f9(C.points[0][1]);A[D]||(A[D]=[]),A[D].push(...C.points.map((F)=>t(f9(F[0]),f9(F[1]))))}}return Object.entries(E).map(([C,D])=>({type:"points",points:Qzu(D.map((F)=>t(Number(C),F[1])).sort((F,U)=>F[1]-U[1]))})).concat(Object.entries(A).map(([C,D])=>({type:"points",points:Qzu(D.map((F)=>t(F[0],Number(C))).sort((F,U)=>F[0]-U[0]))})))},t73=(u)=>{let B=new Map;for(let E of u){let A=E.points.flat().map((C)=>[f9(C)]).join(",");B.has(A)||B.set(A,E)}return Array.from(B.values())},e73=(u,B,E)=>{let[A,C,D,F]=cf0(u,B),U=[];for(let z of E){let[k,f,l,b]=z.gap.startBounds,[M,Z,J,w]=z.gap.endBounds,K=S_($7(C,F),z.gap.overlap),Q=S_($7(A,D),z.gap.overlap);switch(z.direction){case"center_horizontal":{if(K){let G=(K[0]+K[1])/2;U.push({type:"gap",direction:"horizontal",points:[t(z.gap.startSide[0][0],G),t(A,G)]},{type:"gap",direction:"horizontal",points:[t(D,G),t(z.gap.endSide[0][0],G)]})}break}case"center_vertical":{if(Q){let G=(Q[0]+Q[1])/2;U.push({type:"gap",direction:"vertical",points:[t(G,z.gap.startSide[0][1]),t(G,C)]},{type:"gap",direction:"vertical",points:[t(G,F),t(G,z.gap.endSide[0][1])]})}break}case"side_right":{if(K){let G=(K[0]+K[1])/2;U.push({type:"gap",direction:"horizontal",points:[t(l,G),t(M,G)]},{type:"gap",direction:"horizontal",points:[t(J,G),t(A,G)]})}break}case"side_left":{if(K){let G=(K[0]+K[1])/2;U.push({type:"gap",direction:"horizontal",points:[t(D,G),t(k,G)]},{type:"gap",direction:"horizontal",points:[t(l,G),t(M,G)]})}break}case"side_top":{if(Q){let G=(Q[0]+Q[1])/2;U.push({type:"gap",direction:"vertical",points:[t(G,F),t(G,f)]},{type:"gap",direction:"vertical",points:[t(G,b),t(G,Z)]})}break}case"side_bottom":{if(Q){let G=(Q[0]+Q[1])/2;U.push({type:"gap",direction:"vertical",points:[t(G,b),t(G,Z)]},{type:"gap",direction:"vertical",points:[t(G,w),t(G,C)]})}break}}}return t73(U.map((z)=>({...z,points:z.points.map((k)=>t(f9(k[0]),f9(k[1])))})))},Al0=(u,B,E,A,C,D)=>{if(!ek({event:A,selectedElements:u,app:E})||u.length===0||u.length===1&&!o73(u[0].angle,0))return{snapOffset:{x:0,y:0},snapLines:[]};let[F,U,z,k]=T1(B);D&&(D.includes("e")?z+=C.x:D.includes("w")&&(F+=C.x),D.includes("n")?U+=C.y:D.includes("s")&&(k+=C.y));let f=[];if(D)switch(D){case"e":{f.push(t(z,U),t(z,k));break}case"w":{f.push(t(F,U),t(F,k));break}case"n":{f.push(t(F,U),t(z,U));break}case"s":{f.push(t(F,k),t(z,k));break}case"ne":{f.push(t(z,U));break}case"nw":{f.push(t(F,U));break}case"se":{f.push(t(z,k));break}case"sw":{f.push(t(F,k));break}}let l=xn(E.state.zoom.value),b={x:l,y:l},M=[],Z=[];_q(B,f,E,A,M,Z,b);let J={x:M[0]?.offset??0,y:Z[0]?.offset??0};b.x=0,b.y=0,M.length=0,Z.length=0;let[w,K,Q,G]=T1(u).map((q)=>f9(q)),L=[t(w,K),t(w,G),t(Q,K),t(Q,G)];_q(u,L,E,A,M,Z,b);let H=El0(M,Z);return{snapOffset:J,snapLines:H}},Rbu=(u,B,E,A,C,D)=>{if(!ek({event:E,selectedElements:[u],app:B}))return{snapOffset:{x:0,y:0},snapLines:[]};let F=[t(A.x+C.x,A.y+C.y)],U=xn(B.state.zoom.value),z={x:U,y:U},k=[],f=[];_q([u],F,B,E,k,f,z);let l={x:k[0]?.offset??0,y:f[0]?.offset??0};z.x=0,z.y=0,k.length=0,f.length=0;let b=EO([u],D,{boundingBoxCorners:!0,omitCenter:!0});_q([u],b,B,E,k,f,z);let M=El0(k,f);return{snapOffset:l,snapLines:M}},Tbu=(u,B,E,A,C)=>{if(!ek({event:A,selectedElements:[],app:B}))return{originOffset:{x:0,y:0},snapLines:[]};let D=SMu(u,[],B.state,C),F=xn(B.state.zoom.value),U={x:F,y:F},z=[],k=[];for(let f of D){let l=EO([f],C);for(let b of l){let M=b[0]-E.x;Math.abs(M)<=Math.abs(U.x)&&(Math.abs(M)<Math.abs(U.x)&&(k.length=0),k.push({type:"pointer",points:[b,t(b[0],E.y)],direction:"vertical"}),U.x=M);let Z=b[1]-E.y;Math.abs(Z)<=Math.abs(U.y)&&(Math.abs(Z)<Math.abs(U.y)&&(z.length=0),z.push({type:"pointer",points:[b,t(E.x,b[1])],direction:"horizontal"}),U.y=Z)}}return{originOffset:{x:k.length>0?k[0].points[0][0]-E.x:0,y:z.length>0?z[0].points[0][1]-E.y:0},snapLines:[...k,...z]}},Obu=(u)=>u===O2.rectangle||u===O2.ellipse||u===O2.diamond||u===O2.frame||u===O2.magicframe||u===O2.image||u===O2.text,M2=(u,B,E)=>E?[Math.round(u/E)*E,Math.round(B/E)*E]:[u,B],yb,g9=class u{constructor(B){j0(this,"elementId"),j0(this,"selectedPointsIndices"),j0(this,"pointerDownState"),j0(this,"isDragging"),j0(this,"lastUncommittedPoint"),j0(this,"pointerOffset"),j0(this,"startBindingElement"),j0(this,"endBindingElement"),j0(this,"hoverPointIndex"),j0(this,"segmentMidPointHoveredCoords"),j0(this,"elbowed"),this.elementId=B.id,DD(B.points[0],t(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=K4(B)&&B.elbowed}static getElement(B,E){return E.get(B)||null}static handleBoxSelection(B,E,A,C){if(!E.editingLinearElement||!E.selectionElement)return!1;let{editingLinearElement:D}=E,{selectedPointsIndices:F,elementId:U}=D,z=u.getElement(U,C);if(!z)return!1;let[k,f,l,b]=S3(E.selectionElement,C),M=u.getPointsGlobalCoordinates(z,C).reduce((Z,J,w)=>((J[0]>=k&&J[0]<=l&&J[1]>=f&&J[1]<=b||B.shiftKey&&F?.includes(w))&&Z.push(w),Z),[]).filter((Z)=>!(K4(z)&&Z!==0&&Z!==z.points.length-1));A({editingLinearElement:{...D,selectedPointsIndices:M.length?M:null}})}static handlePointDragging(B,E,A,C,D,F,U){if(!F)return!1;let{elementId:z}=F,k=U.getNonDeletedElementsMap(),f=u.getElement(z,k);if(!f||K4(f)&&!F.pointerDownState.lastClickedIsEndPoint&&F.pointerDownState.lastClickedPoint!==0)return!1;let l=K4(f)?F.selectedPointsIndices?.reduce((Z,J)=>J===0?[0,Z[1]]:[Z[0],f.points.length-1],[!1,!1]).filter((Z)=>typeof Z=="number"):F.selectedPointsIndices,b=K4(f)?F.pointerDownState.lastClickedPoint>0?f.points.length-1:0:F.pointerDownState.lastClickedPoint,M=f.points[b];if(l&&M){if(yq(B)&&l.length===1&&f.points.length>1){let Z=l[0],J=f.points[Z===0?1:Z-1],[w,K]=u._getShiftLockedDelta(f,k,J,t(A,C),B[y0.CTRL_OR_CMD]?null:E.getEffectiveGridSize());u.movePoints(f,[{index:Z,point:t(w+J[0],K+J[1]),isDragging:Z===b}])}else{let Z=u.createPointAt(f,k,A-F.pointerOffset.x,C-F.pointerOffset.y,B[y0.CTRL_OR_CMD]?null:E.getEffectiveGridSize()),J=Z[0]-M[0],w=Z[1]-M[1];u.movePoints(f,l.map((K)=>{let Q=K===b?u.createPointAt(f,k,A-F.pointerOffset.x,C-F.pointerOffset.y,B[y0.CTRL_OR_CMD]?null:E.getEffectiveGridSize()):t(f.points[K][0]+J,f.points[K][1]+w);return{index:K,point:Q,isDragging:K===b}}))}if(Y3(f,k)&&kX(f,k,!1),FD(f,!1)){let Z=[];l[0]===0&&Z.push(OA(u.getPointGlobalCoordinates(f,f.points[0],k)));let J=l[l.length-1];J===f.points.length-1&&Z.push(OA(u.getPointGlobalCoordinates(f,f.points[J],k))),Z.length&&D(f,Z)}return!0}return!1}static handlePointerUp(B,E,A,C){let D=C.getNonDeletedElementsMap(),F=C.getNonDeletedElements(),{elementId:U,selectedPointsIndices:z,isDragging:k,pointerDownState:f}=E,l=u.getElement(U,D);if(!l)return E;let b={};if(k&&z){for(let M of z)if(M===0||M===l.points.length-1){SU(l.points,A.zoom.value)&&u.movePoints(l,[{index:M,point:M===0?l.points[l.points.length-1]:l.points[0]}]);let Z=AM(A)?aA(OA(u.getPointAtIndexGlobalCoordinates(l,M,D)),F,D,A.zoom,K4(l),K4(l)):null;b[M===0?"startBindingElement":"endBindingElement"]=Z}}return{...E,...b,selectedPointsIndices:k||B.shiftKey?!k&&B.shiftKey&&f.prevSelectedPointsIndices?.includes(f.lastClickedPoint)?z&&z.filter((M)=>M!==f.lastClickedPoint):z:z?.includes(f.lastClickedPoint)?[f.lastClickedPoint]:z,isDragging:!1,pointerOffset:{x:0,y:0}}}static isSegmentTooShort(B,E,A,C,D){if(K4(B))return C>=0&&C<B.points.length?G1(E,A)*D.value<u.POINT_HANDLE_SIZE/2:!1;let F=G1(E,A);return B.points.length>2&&B.roundness&&(F=d53(B,A)),F*D.value<u.POINT_HANDLE_SIZE*4}static getSegmentMidPoint(B,E,A,C,D){let F=bO(E,A);if(B.points.length>2&&B.roundness){let U=tlu(B,B.points[C]);if(U){let z=s53(B,B.points[C],0.5);F=u.getPointGlobalCoordinates(B,elu(U[0],U[1],U[2],U[3],z),D)}}return F}static getSegmentMidPointIndex(B,E,A,C){let D=u.getElement(B.elementId,C);if(!D)return-1;let F=u.getEditorMidPoints(D,C,E),U=0;for(;U<F.length;){if(u.arePointsEqual(A,F[U]))return U+1;U++}return-1}static handlePointerDown(B,E,A,C,D,F){let U=E.state,z=F.getNonDeletedElementsMap(),k=F.getNonDeletedElements(),f={didAddPoint:!1,hitElement:null,linearElementEditor:null};if(!D)return f;let{elementId:l}=D,b=u.getElement(l,z);if(!b)return f;let M=u.getSegmentMidpointHitCoords(D,C,U,z),Z=null;if(M)Z=u.getSegmentMidPointIndex(D,U,M,z);else if(B.altKey&&U.editingLinearElement)return D.lastUncommittedPoint==null&&(Wu(b,{points:[...b.points,u.createPointAt(b,z,C.x,C.y,B[y0.CTRL_OR_CMD]?null:E.getEffectiveGridSize())]}),f.didAddPoint=!0),A.shouldCaptureIncrement(),f.linearElementEditor={...D,pointerDownState:{prevSelectedPointsIndices:D.selectedPointsIndices,lastClickedPoint:-1,lastClickedIsEndPoint:!1,origin:{x:C.x,y:C.y},segmentMidpoint:{value:M,index:Z,added:!1}},selectedPointsIndices:[b.points.length-1],lastUncommittedPoint:null,endBindingElement:aA(C,k,z,E.state.zoom,D.elbowed)},f.didAddPoint=!0,f;let J=u.getPointIndexUnderCursor(b,z,U.zoom,C.x,C.y);if(J>=0||M)f.hitElement=b;else{let{startBindingElement:v,endBindingElement:W}=D;AM(U)&&FD(b)&&SO(b,v,W,z,F)}let[w,K,Q,G]=S3(b,z),L=(w+Q)/2,H=(K+G)/2,q=J>-1&&Lu(t(b.x+b.points[J][0],b.y+b.points[J][1]),t(L,H),b.angle),x=J>-1||B.shiftKey?B.shiftKey||D.selectedPointsIndices?.includes(J)?uB3([...D.selectedPointsIndices||[],J]):[J]:null;return f.linearElementEditor={...D,pointerDownState:{prevSelectedPointsIndices:D.selectedPointsIndices,lastClickedPoint:J,lastClickedIsEndPoint:J===b.points.length-1,origin:{x:C.x,y:C.y},segmentMidpoint:{value:M,index:Z,added:!1}},selectedPointsIndices:x,pointerOffset:q?{x:C.x-q[0],y:C.y-q[1]}:{x:0,y:0}},f}static arePointsEqual(B,E){return!B&&!E?!0:!B||!E?!1:DD(B,E)}static handlePointerMove(B,E,A,C,D){let F=C.state;if(!F.editingLinearElement)return null;let{elementId:U,lastUncommittedPoint:z}=F.editingLinearElement,k=u.getElement(U,D);if(!k)return F.editingLinearElement;let{points:f}=k,l=f[f.length-1];if(!B.altKey)return l===z&&u.deletePoints(k,[f.length-1]),{...F.editingLinearElement,lastUncommittedPoint:null};let b;if(yq(B)&&f.length>=2){let M=f[f.length-2],[Z,J]=u._getShiftLockedDelta(k,D,M,t(E,A),B[y0.CTRL_OR_CMD]?null:C.getEffectiveGridSize());b=t(Z+M[0],J+M[1])}else b=u.createPointAt(k,D,E-F.editingLinearElement.pointerOffset.x,A-F.editingLinearElement.pointerOffset.y,B[y0.CTRL_OR_CMD]||K4(k)?null:C.getEffectiveGridSize());return l===z?u.movePoints(k,[{index:k.points.length-1,point:b}]):u.addPoints(k,[{point:b}]),{...F.editingLinearElement,lastUncommittedPoint:k.points[k.points.length-1]}}static getPointGlobalCoordinates(B,E,A){let[C,D,F,U]=S3(B,A),z=(C+F)/2,k=(D+U)/2,{x:f,y:l}=B;return Lu(t(f+E[0],l+E[1]),t(z,k),B.angle)}static getPointsGlobalCoordinates(B,E){let[A,C,D,F]=S3(B,E),U=(A+D)/2,z=(C+F)/2;return B.points.map((k)=>{let{x:f,y:l}=B;return Lu(t(f+k[0],l+k[1]),t(U,z),B.angle)})}static getPointAtIndexGlobalCoordinates(B,E,A){let C=E<0?B.points.length+E:E,[D,F,U,z]=S3(B,A),k=(D+U)/2,f=(F+z)/2,l=B.points[C],{x:b,y:M}=B;return l?Lu(t(b+l[0],M+l[1]),t(k,f),B.angle):Lu(t(b,M),t(k,f),B.angle)}static pointFromAbsoluteCoords(B,E,A){if(K4(B))return t(E[0]-B.x,E[1]-B.y);let[C,D,F,U]=S3(B,A),z=(C+F)/2,k=(D+U)/2,[f,l]=Lu(t(E[0],E[1]),t(z,k),-B.angle);return t(f-B.x,l-B.y)}static getPointIndexUnderCursor(B,E,A,C,D){let F=u.getPointsGlobalCoordinates(B,E),U=F.length;for(;--U>-1;){let z=F[U];if(G1(t(C,D),t(z[0],z[1]))*A.value<u.POINT_HANDLE_SIZE+1)return U}return-1}static createPointAt(B,E,A,C,D){let F=M2(A,C,D),[U,z,k,f]=S3(B,E),l=(U+k)/2,b=(z+f)/2,[M,Z]=Lu(t(F[0],F[1]),t(l,b),-B.angle);return t(M-B.x,Z-B.y)}static getNormalizedPoints(B){let{points:E}=B,A=E[0][0],C=E[0][1];return{points:E.map((D)=>t(D[0]-A,D[1]-C)),x:B.x+A,y:B.y+C}}static normalizePoints(B){Wu(B,u.getNormalizedPoints(B))}static duplicateSelectedPoints(B,E){l2(B.editingLinearElement,"Not currently editing a linear element");let{selectedPointsIndices:A,elementId:C}=B.editingLinearElement,D=u.getElement(C,E);l2(D,"The linear element does not exist in the provided Scene"),l2(A!=null,"There are no selected points to duplicate");let{points:F}=D,U=[],z=!1,k=-1,f=F.reduce((l,b,M)=>{if(++k,l.push(b),A.includes(M)){let Z=F[M+1];Z||(z=!0),l.push(Z?t((b[0]+Z[0])/2,(b[1]+Z[1])/2):t(b[0],b[1])),U.push(k+1),++k}return l},[]);if(Wu(D,{points:f}),z){let l=D.points[D.points.length-1];u.movePoints(D,[{index:D.points.length-1,point:t(l[0]+30,l[1]+30)}])}return{...B,editingLinearElement:{...B.editingLinearElement,selectedPointsIndices:U}}}static deletePoints(B,E){let A=0,C=0;if(E.includes(0)){let F=B.points.find((U,z)=>!E.includes(z));F&&(A=F[0],C=F[1])}let D=B.points.reduce((F,U,z)=>(E.includes(z)||F.push(F.length?t(U[0]-A,U[1]-C):t(0,0)),F),[]);u._updatePoints(B,D,A,C)}static addPoints(B,E){let A=[...B.points,...E.map((C)=>C.point)];u._updatePoints(B,A,0,0)}static movePoints(B,E,A){let{points:C}=B,[D,F]=E.find(({index:f})=>f===0)?.point??t(0,0),[U,z]=t(D-C[0][0],F-C[0][1]),k=K4(B)?[E.find((f)=>f.index===0)?.point??C[0],E.find((f)=>f.index===C.length-1)?.point??C[C.length-1]]:C.map((f,l)=>{let b=E.find((M)=>M.index===l)?.point??f;return t(b[0]-U,b[1]-z)});u._updatePoints(B,k,U,z,A,{isDragging:E.reduce((f,l)=>f||l.isDragging===!0,!1)})}static shouldAddMidpoint(B,E,A,C){let D=u.getElement(B.elementId,C);if(D&&K4(D)||!D)return!1;let{segmentMidpoint:F}=B.pointerDownState;if(F.added||F.value===null||F.index===null||B.pointerDownState.origin===null)return!1;let U=B.pointerDownState.origin,z=G1(t(U.x,U.y),t(E.x,E.y));return!(!A.editingLinearElement&&z<FM/A.zoom.value)}static addMidpoint(B,E,A,C,D){let F=u.getElement(B.elementId,D);if(!F)return;let{segmentMidpoint:U}=B.pointerDownState,z={pointerDownState:B.pointerDownState,selectedPointsIndices:B.selectedPointsIndices},k=u.createPointAt(F,D,E.x,E.y,C&&!K4(F)?A.getEffectiveGridSize():null),f=[...F.points.slice(0,U.index),k,...F.points.slice(U.index)];return Wu(F,{points:f}),z.pointerDownState={...B.pointerDownState,segmentMidpoint:{...B.pointerDownState.segmentMidpoint,added:!0},lastClickedPoint:U.index},z.selectedPointsIndices=[U.index],z}static _updatePoints(B,E,A,C,D,F){if(K4(B)){let U={};D?.startBinding!==void 0&&(U.startBinding=D.startBinding!==null&&W_(D.startBinding)?D.startBinding:null),D?.endBinding!==void 0&&(U.endBinding=D.endBinding!==null&&W_(D.endBinding)?D.endBinding:null),U.points=Array.from(E),Wu(B,U,!0,{isDragging:F?.isDragging})}else{let U=bzu(B,E),z=bzu(B,B.points),k=(U[0]+U[2])/2,f=(U[1]+U[3])/2,l=(z[0]+z[2])/2,b=(z[1]+z[3])/2,M=l-k,Z=b-f,J=Lu(t(A,C),t(M,Z),B.angle);Wu(B,{...D,points:E,x:B.x+J[0],y:B.y+J[1]})}}static _getShiftLockedDelta(B,E,A,C,D){let F=u.getPointGlobalCoordinates(B,A,E);if(K4(B))return[C[0]-F[0],C[1]-F[1]];let[U,z]=M2(C[0],C[1],D),{width:k,height:f}=sn(F[0],F[1],U,z);return Lu(t(k,f),t(0,0),-B.angle)}static moveFixedSegment(B,E,A,C,D){let F=u.getElement(B.elementId,D);if(!F||!K4(F))return B;if(E&&E>0&&E<F.points.length){let U=pk(KK(O4(F.points[E],F.points[E-1]))),z=(F.fixedSegments??[]).reduce((b,M)=>(b[M.index]=M,b),{});z[E]={index:E,start:t(U?F.points[E-1][0]:A-F.x,U?C-F.y:F.points[E-1][1]),end:t(U?F.points[E][0]:A-F.x,U?C-F.y:F.points[E][1])};let k=Object.values(z).sort((b,M)=>b.index-M.index),f=k.map((b)=>b.index).reduce((b,M)=>M<E?b+1:b,0);Wu(F,{fixedSegments:k});let l=t(F.x+(F.fixedSegments[f].start[0]+F.fixedSegments[f].end[0])/2,F.y+(F.fixedSegments[f].start[1]+F.fixedSegments[f].end[1])/2);return{...B,segmentMidPointHoveredCoords:l,pointerDownState:{...B.pointerDownState,segmentMidpoint:{added:!1,index:F.fixedSegments[f].index,value:l}}}}return B}static deleteFixedSegment(B,E){Wu(B,{fixedSegments:B.fixedSegments?.filter((A)=>A.index!==E)}),Wu(B,{},!0)}},M4,uB3=(u)=>{let B=[...new Set(u.filter((E)=>E!==null&&E!==-1))];return B=B.sort((E,A)=>E-A),B.length?B:null},GK,TO=(u,B)=>{let E=GK[u]||(GK[u]={height:B});return E.height=B,E},Cl0=(u)=>{GK[u]&&delete GK[u]},Ibu=(u)=>GK[u]?.height??null,c7=(u,B,E,A=!0)=>{let C,D={x:u.x,y:u.y,text:u.text,width:u.width,height:u.height,angle:B?.angle??u.angle};D.text=u.text,(B||!u.autoResize)&&(C=B?kD(B,u):u.width,D.text=bM(u.originalText,e1(u),C));let F=Q7(D.text,e1(u),u.lineHeight);if(u.autoResize&&(D.width=F.width),D.height=F.height,B){let U=fX(B,u),z=kD(B,u);if(!j3(B)&&F.height>U){let b=CM(F.height,B.type);Wu(B,{height:b},A),TO(B.id,b)}if(F.width>z){let b=CM(F.width,B.type);Wu(B,{width:b},A)}let k={...u,...D},{x:f,y:l}=OO(B,k,E);D.x=f,D.y=l}Wu(u,D,A)},Dl0=(u,B,E)=>{let A=e4(u);B.forEach((C)=>{let D=E.get(C.id),F=YU(C);if(F){let U=E.get(F);if(U){let z=A.get(D);z&&Wu(z,{boundElements:(C.boundElements||[]).filter((f)=>f.id!==U&&f.id!==F).concat({type:"text",id:U})});let k=A.get(U);k&&l4(k)&&Wu(k,{containerId:z?D:null})}}})},kX=(u,B,E,A=!1)=>{if(!YU(u))return;Cl0(u.id);let C=Y3(u,B);if(C&&C.text){if(!u)return;let{text:D,height:F,width:U}=C,z=kD(u,C),k=fX(u,C),f=u.height;if(A||E!=="n"&&E!=="s"){D&&(D=bM(C.originalText,e1(C),z));let l=Q7(D,e1(C),C.lineHeight);F=l.height,U=l.width}if(F>k){f=CM(F,u.type);let l=f-u.height,b=!j3(u)&&(E==="ne"||E==="nw"||E==="n")?u.y-l:u.y;Wu(u,{height:f,y:b})}Wu(C,{text:D,width:U,height:F}),j3(u)||Wu(C,OO(u,C,B))}},OO=(u,B,E)=>{if(j3(u))return M4.getBoundTextElementPosition(u,B,E);let A=Pbu(u),C=fX(u,B),D=kD(u,B),F,U;return B.verticalAlign===P8.TOP?U=A.y:B.verticalAlign===P8.BOTTOM?U=A.y+(C-B.height):U=A.y+(C/2-B.height/2),B.textAlign===rq.LEFT?F=A.x:B.textAlign===rq.RIGHT?F=A.x+(D-B.width):F=A.x+(D/2-B.width/2),{x:F,y:U}},YU=(u)=>u?.boundElements?.length&&u?.boundElements?.find((B)=>B.type==="text")?.id||null,Y3=(u,B)=>{if(!u)return null;let E=YU(u);return E&&B.get(E)||null},l5=(u,B)=>u&&u.containerId&&B.get(u.containerId)||null,vn=(u,B,E)=>{if(!j3(u))return{x:u.x+u.width/2,y:u.y+u.height/2};let A=M4.getPointsGlobalCoordinates(u,E);if(A.length%2===1){let F=Math.floor(u.points.length/2),U=M4.getPointGlobalCoordinates(u,u.points[F],E);return{x:U[0],y:U[1]}}let C=u.points.length/2-1,D=M4.getEditorMidPoints(u,E,B)[C];return D||(D=M4.getSegmentMidPoint(u,A[C],A[C+1],C+1,E)),{x:D[0],y:D[1]}},Pbu=(u)=>{let B=f2,E=f2;return u.type==="ellipse"&&(B+=u.width/2*(1-Math.sqrt(2)/2),E+=u.height/2*(1-Math.sqrt(2)/2)),u.type==="diamond"&&(B+=u.width/4,E+=u.height/4),{x:u.x+B,y:u.y+E}},jbu=(u,B)=>!B||j3(B)?u.angle:B.angle,Nbu=(u,B)=>u.some((E)=>{if(X6(E)){let A=l5(E,B);return!j3(A)}return!1}),ibu=(u,B)=>u.some((E)=>{if(X6(E)){let A=l5(E,B);return!j3(A)}return l4(E)}),BB3,abu=(u)=>BB3.has(u.type),CM=(u,B)=>{u=Math.ceil(u);let E=f2*2;return B==="ellipse"?Math.round((u+E)/Math.sqrt(2)*2):B==="arrow"?u+E*8:B==="diamond"?2*(u+E):u+E},kD=(u,B)=>{let{width:E}=u;if(j3(u)){let A=(B?.fontSize??TU)*B33;return Math.max(u33*E,A)}return u.type==="ellipse"?Math.round(E/2*Math.sqrt(2))-f2*2:u.type==="diamond"?Math.round(E/2)-f2*2:E-f2*2},fX=(u,B)=>{let{height:E}=u;return j3(u)?E-f2*8*2<=0?B.height:E:u.type==="ellipse"?Math.round(E/2*Math.sqrt(2))-f2*2:u.type==="diamond"?Math.round(E/2)-f2*2:E-f2*2},Vbu=(u,B=`
`)=>u.reduce((E,A)=>(l4(A)&&E.push(A.text),E),[]).join(B),j8=(u)=>(u=u.trim(),u&&hbu.sanitizeUrl(w_(u))),Fl0=(u)=>!!(u?.includes(location.origin)||u?.startsWith("/")),Ul0=(u)=>{if(u=j8(u),u.startsWith("/"))return`${location.origin}${u}`;try{new URL(u)}catch{return"about:blank"}return u},O_,C4=(u)=>(O_=O_.concat(u),u),mbu='<svg viewBox="0 0 24 24" stroke-width="1" width="28" height="28" xmlns="http://www.w3.org/2000/svg">',EB3='<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"/>',rbu='<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"/>',AB3,CB3,mA=(u)=>{u&&(u.style.cursor="")},u6=(u,B)=>{u&&(u.style.cursor=B)},XU,Gzu,zl0=(u,B)=>{let E=()=>{let A=B===_3.DARK;XU=document.createElement("canvas"),XU.theme=B,XU.height=20,XU.width=20;let C=XU.getContext("2d");C.lineWidth=1,C.beginPath(),C.arc(XU.width/2,XU.height/2,5,0,2*Math.PI),C.fillStyle=A?_6.black:_6.white,C.fill(),C.strokeStyle=A?_6.white:_6.black,C.stroke(),Gzu=XU.toDataURL(y4.svg)};(!XU||XU.theme!==B)&&E(),u6(u,`url(${Gzu}) 10 10, auto`)},wD=(u,B)=>{if(u)if(B.activeTool.type==="selection")mA(u);else if(SK(B))u.style.cursor=g1.GRAB;else if(ZD(B))zl0(u,B.theme);else if(B.activeTool.type==="laser"){let E=B.theme===_3.LIGHT?AB3:CB3;u.style.cursor=`url(${E}), auto`}else["image","custom"].includes(B.activeTool.type)?B.activeTool.type!=="image"&&(u.style.cursor=g1.AUTO):u.style.cursor=g1.CROSSHAIR},DB3,FB3=0,KD=()=>Math.floor(DB3.next()*2147483648),TE=()=>OU()?`id${FB3++}`:z9(),fD=(u,{x:B,y:E,strokeColor:A=x9.strokeColor,backgroundColor:C=x9.backgroundColor,fillStyle:D=x9.fillStyle,strokeWidth:F=x9.strokeWidth,strokeStyle:U=x9.strokeStyle,roughness:z=x9.roughness,opacity:k=x9.opacity,width:f=0,height:l=0,angle:b=0,groupIds:M=[],frameId:Z=null,index:J=null,roundness:w=null,boundElements:K=null,link:Q=null,locked:G=x9.locked,...L})=>((B<-1e6||B>1e6||E<-1e6||E>1e6||f<-1e6||f>1e6||l<-1e6||l>1e6)&&console.error("New element size or position is too large",{x:B,y:E,width:f,height:l,points:L.points}),{id:L.id||TE(),type:u,x:B,y:E,width:f,height:l,angle:b,strokeColor:A,backgroundColor:C,fillStyle:D,strokeWidth:F,strokeStyle:U,roughness:z,opacity:k,groupIds:M,frameId:Z,index:J,roundness:w,seed:L.seed??KD(),version:L.version||1,versionNonce:L.versionNonce??0,isDeleted:!1,boundElements:K,updated:eq(),link:Q,locked:G,customData:L.customData}),QD=(u)=>fD(u.type,u),kl0=(u)=>fD("embeddable",u),$bu=(u)=>({...fD("iframe",u)}),Sn=(u)=>O3({...fD("frame",u),type:"frame",name:u?.name||null},{}),Wn=(u)=>O3({...fD("magicframe",u),type:"magicframe",name:u?.name||null},{}),ybu=(u,B)=>({x:u.textAlign==="center"?B.width/2:u.textAlign==="right"?B.width:0,y:u.verticalAlign==="middle"?B.height/2:0}),N8=(u)=>{let B=u.fontFamily||ok,E=u.fontSize||TU,A=u.lineHeight||JM(B),C=TK(u.text),D=Q7(C,e1({fontFamily:B,fontSize:E}),A),F=u.textAlign||dq,U=u.verticalAlign||FO,z=ybu({textAlign:F,verticalAlign:U},D),k={...fD("text",u),text:C,fontSize:E,fontFamily:B,textAlign:F,verticalAlign:U,x:u.x-z.x,y:u.y-z.y,width:D.width,height:D.height,containerId:u.containerId||null,originalText:u.originalText??C,autoResize:u.autoResize??!0,lineHeight:A};return O3(k,{})},UB3=(u,B,E)=>{let{width:A,height:C}=Q7(E,e1(u),u.lineHeight);u.autoResize||(A=u.width);let{textAlign:D,verticalAlign:F}=u,U,z;if(D==="center"&&F===P8.MIDDLE&&!u.containerId&&u.autoResize){let k=Q7(u.text,e1(u),u.lineHeight),f=ybu(u,{width:A-k.width,height:C-k.height});U=u.x-f.x,z=u.y-f.y}else{let[k,f,l,b]=S3(u,B),[M,Z,J,w]=tb(u,A,C,!1),K=(k-M)/2,Q=(f-Z)/2,G=(l-J)/2,L=(b-w)/2;[U,z]=zB3({s:!0,e:D==="center"||D==="left",w:D==="center"||D==="right"},u.x,u.y,u.angle,K,Q,G,L)}return{width:A,height:C,x:Number.isFinite(U)?U:u.x,y:Number.isFinite(z)?z:u.y}},zB3=(u,B,E,A,C,D,F,U)=>{let z=Math.cos(A),k=Math.sin(A);return u.e&&u.w?B+=C+F:u.e?(B+=C*(1+z),E+=C*k,B+=F*(1-z),E+=F*-k):u.w&&(B+=C*(1-z),E+=C*-k,B+=F*(1+z),E+=F*k),u.n&&u.s?E+=D+U:u.n?(B+=D*k,E+=D*(1-z),B+=U*-k,E+=U*(1+z)):u.s&&(B+=D*-k,E+=D*(1+z),B+=U*k,E+=U*(1-z)),[B,E]},fl0=(u,B,E,A=u.text)=>{if(u.isDeleted)return;(B||!u.autoResize)&&(A=bM(A,e1(u),B?kD(B,u):u.width));let C=UB3(u,E,A);return{text:A,...C}},cbu=(u)=>({...fD(u.type,u),points:u.points||[],pressures:u.pressures||[],simulatePressure:u.simulatePressure,lastCommittedPoint:null}),eb=(u)=>({...fD(u.type,u),points:u.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:null,endArrowhead:null}),Yn=(u)=>u.elbowed?{...fD(u.type,u),points:u.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:u.startArrowhead||null,endArrowhead:u.endArrowhead||null,elbowed:!0,fixedSegments:u.fixedSegments||[],startIsSpecial:!1,endIsSpecial:!1}:{...fD(u.type,u),points:u.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:u.startArrowhead||null,endArrowhead:u.endArrowhead||null,elbowed:!1},ll0=(u)=>({...fD("image",u),strokeColor:"transparent",status:u.status??"pending",fileId:u.fileId??null,scale:u.scale??[1,1],crop:u.crop??null}),I_=(u,B=0)=>{if(u==null||typeof u!="object")return u;let E=Object.prototype.toString.call(u);if(E==="[object Object]"){let A=typeof u.constructor=="function"?Object.create(Object.getPrototypeOf(u)):{};for(let C in u)if(u.hasOwnProperty(C)){if(B===0&&(C==="shape"||C==="canvas"))continue;A[C]=I_(u[C],B+1)}return A}if(Array.isArray(u)){let A=u.length,C=Array(A);for(;A--;)C[A]=I_(u[A],B+1);return C}return Z3.DEV&&E!=="[object Object]"&&E!=="[object Array]"&&E.startsWith("[object ")&&console.warn(`_deepCloneElement: unexpected object type ${E}. This value will not be cloned!`),u},QM=(u)=>I_(u),gbu=(u,B)=>{Object.defineProperty(u,C33,{value:B,writable:!1,enumerable:!1})},P_=()=>TE(),bl0=(u,B,E,A)=>{let C=QM(E);return OU()&&gbu(C,E.id),C.id=P_(),C.boundElements=null,C.updated=eq(),C.seed=KD(),C.groupIds=p73(C.groupIds,u,(D)=>(B.has(D)||B.set(D,P_()),B.get(D))),A&&(C=Object.assign(C,A)),C},Ml0=(u,B)=>{let E=[],A=e4(u),C=new Map,D=(U)=>{if(C.has(U))return C.get(U);if(A.has(U)){let z=P_();return C.set(U,z),z}return null},F=new Map;for(let U of u){let z=I_(U);if(z.id=D(U.id),OU()&&gbu(z,U.id),B?.randomizeSeed&&(z.seed=KD(),rO(z)),z.groupIds&&(z.groupIds=z.groupIds.map((k)=>(F.has(k)||F.set(k,P_()),F.get(k)))),"containerId"in z&&z.containerId){let k=D(z.containerId);z.containerId=k}if("boundElements"in z&&z.boundElements&&(z.boundElements=z.boundElements.reduce((k,f)=>{let l=D(f.id);return l&&k.push({...f,id:l}),k},[])),"endBinding"in z&&z.endBinding){let k=D(z.endBinding.elementId);z.endBinding=k?{...z.endBinding,elementId:k}:null}if("startBinding"in z&&z.startBinding){let k=D(z.startBinding.elementId);z.startBinding=k?{...z.startBinding,elementId:k}:null}z.frameId&&(z.frameId=D(z.frameId)),E.push(z)}return E},Rn=(u,{shouldThrow:B=!1,includeBoundTextValidation:E=!1,ignoreLogs:A,reconciliationContext:C})=>{let D=[],F=(z)=>`${z?.index}:${z?.id}:${z?.type}:${z?.isDeleted}:${z?.version}:${z?.versionNonce}`,U=u.map((z)=>z.index);for(let[z,k]of U.entries()){let f=U[z-1],l=U[z+1];if(Zk0(k,f,l)||D.push(`Fractional indices invariant has been compromised: "${F(u[z-1])}", "${F(u[z])}", "${F(u[z+1])}"`),E&&i8(u[z])){let b=u[z],M=Y3(b,e4(u));M&&M.index<=b.index&&D.push(`Fractional indices invariant for bound elements has been compromised: "${F(M)}", "${F(b)}"`)}}if(D.length){let z=new t33,k=[];if(C&&(k.push("Additional reconciliation context:"),k.push(C.localElements.map((f)=>F(f))),k.push(C.remoteElements.map((f)=>F(f)))),A||console.error(D.join(`
`),z.stack,u.map((f)=>F(f)),...k),B)throw z}},_bu=(u)=>u.sort((B,E)=>Hzu(B)&&Hzu(E)?B.index<E.index?-1:B.index>E.index?1:B.id<E.id?-1:1:1),lD=(u,B)=>{try{let E=kB3(u,B),A=nbu(u,E),C=u.map((D)=>A.has(D)?{...D,...A.get(D)}:D);Rn(C,{includeBoundTextValidation:!1,shouldThrow:!0,ignoreLogs:!0});for(let[D,F]of A)Wu(D,F,!1)}catch{iU(u)}return u},iU=(u)=>{let B=fB3(u),E=nbu(u,B);for(let[A,C]of E)Wu(A,C,!1);return u},kB3=(u,B)=>{let E=[],A=0;for(;A<u.length;)if(B.has(u[A].id)){let C=[A-1,A];for(;++A<u.length&&B.has(u[A].id);)C.push(A);C.push(A),E.push(C)}else A++;return E},fB3=(u)=>{let B=[],E,A,C=-1,D=0,F=(k)=>{let f=u[C]?u[C].index:void 0,l=u[k-1]?.index;return!f&&l||f&&l&&l>f?[l,k-1]:[f,C]},U=(k)=>{let f=u[D]?u[D].index:void 0;if(f&&k<D)return[f,D];let l=D;for(;++l<u.length;){let b=u[l]?.index;if(!f&&b||f&&b&&b>f)return[b,l]}return[void 0,l]},z=0;for(;z<u.length;){let k=u[z].index;if([E,C]=F(z),[A,D]=U(z),Zk0(k,E,A))z++;else{let f=[C,z];for(;++z<u.length;){let l=u[z].index,[b,M]=F(z),[Z,J]=U(z);if(Zk0(l,b,Z))break;[E,C]=[b,M],[A,D]=[Z,J],f.push(z)}f.push(D),B.push(f)}}return B},Zk0=(u,B,E)=>u?B&&E?B<u&&u<E:!B&&E?u<E:B&&!E?B<u:!!u:!1,nbu=(u,B)=>{let E=new Map;for(let A of B){let C=A.shift(),D=A.pop(),F=C_(u[C]?.index,u[D]?.index,A.length);for(let U=0;U<A.length;U++){let z=u[A[U]];E.set(z,{index:F[U]})}}return E},Hzu=(u)=>!!u.index,k2=class u{constructor(B,E){this.deleted=B,this.inserted=E}static create(B,E,A,C){let D=A&&C!=="inserted"?A(B):B,F=A&&C!=="deleted"?A(E):E;return new u(D,F)}static calculate(B,E,A,C){if(B===E)return u.empty();let D={},F={};for(let k of this.distinctKeysIterator("full",B,E))D[k]=B[k],F[k]=E[k];let[U,z]=C?C(D,F):[D,F];return u.create(U,z,A)}static empty(){return new u({},{})}static isEmpty(B){return!Object.keys(B.deleted).length&&!Object.keys(B.inserted).length}static mergeObjects(B,E,A){let C={...B};for(let D of Object.keys(A))delete C[D];return{...C,...E}}static mergeArrays(B,E,A,C){return Object.values(u.mergeObjects($k(B??[],C),$k(E??[],C),$k(A??[],C)))}static diffObjects(B,E,A,C){if(!(!B[A]&&!E[A])&&(typeof B[A]=="object"||typeof E[A]=="object")){let D=B[A]??{},F=E[A]??{},U=u.getLeftDifferences(D,F).reduce((k,f)=>(k[f]=C(D[f]),k),{}),z=u.getRightDifferences(D,F).reduce((k,f)=>(k[f]=C(F[f]),k),{});Object.keys(U).length||Object.keys(z).length?(Reflect.set(B,A,U),Reflect.set(E,A,z)):(Reflect.deleteProperty(B,A),Reflect.deleteProperty(E,A))}}static diffArrays(B,E,A,C){if(!(!B[A]&&!E[A])&&(Array.isArray(B[A])||Array.isArray(E[A]))){let D=Array.isArray(B[A])?B[A]:[],F=Array.isArray(E[A])?E[A]:[],U=$k(u.getLeftDifferences($k(D,C),$k(F,C))),z=$k(u.getRightDifferences($k(D,C),$k(F,C)));if(Object.keys(U).length||Object.keys(z).length){let k=D.filter((l)=>U[C?C(l):String(l)]),f=F.filter((l)=>z[C?C(l):String(l)]);Reflect.set(B,A,k),Reflect.set(E,A,f)}else Reflect.deleteProperty(B,A),Reflect.deleteProperty(E,A)}}static isLeftDifferent(B,E,A=!1){return!!this.distinctKeysIterator("left",B,E,A).next().value}static isRightDifferent(B,E,A=!1){return!!this.distinctKeysIterator("right",B,E,A).next().value}static getLeftDifferences(B,E,A=!1){return Array.from(this.distinctKeysIterator("left",B,E,A))}static getRightDifferences(B,E,A=!1){return Array.from(this.distinctKeysIterator("right",B,E,A))}static*distinctKeysIterator(B,E,A,C=!1){if(E===A)return;let D=[];B==="left"?D=Object.keys(E):B==="right"?D=Object.keys(A):B==="full"?D=Array.from(new Set([...Object.keys(E),...Object.keys(A)])):fM(B,`Unknown distinctKeysIterator's join param "${B}"`,!0);for(let F of D){let U=E[F],z=A[F];if(U!==z){if(!C&&typeof U=="object"&&typeof z=="object"&&U!==null&&z!==null&&h5(U,z))continue;yield F}}}},Lzu=class u{constructor(B){this.delta=B}static calculate(B,E){let A=k2.calculate(B,E,void 0,u.postProcess);return new u(A)}static empty(){return new u(k2.create({},{}))}inverse(){let B=k2.create(this.delta.inserted,this.delta.deleted);return new u(B)}applyTo(B,E){try{let{selectedElementIds:A={},selectedGroupIds:C={}}=this.delta.deleted,{selectedElementIds:D={},selectedGroupIds:F={},selectedLinearElementId:U,editingLinearElementId:z,...k}=this.delta.inserted,f=k2.mergeObjects(B.selectedElementIds,D,A),l=k2.mergeObjects(B.selectedGroupIds,F,C),b=U&&E.has(U)?new M4(E.get(U)):null,M=z&&E.has(z)?new M4(E.get(z)):null,Z={...B,...k,selectedElementIds:f,selectedGroupIds:l,selectedLinearElement:typeof U<"u"?b:B.selectedLinearElement,editingLinearElement:typeof z<"u"?M:B.editingLinearElement},J=this.filterInvisibleChanges(B,Z,E);return[Z,J]}catch(A){if(console.error("Couldn't apply appstate change",A),Z3.DEV||Z3.MODE===VB.TEST)throw A;return[B,!1]}}isEmpty(){return k2.isEmpty(this.delta)}static postProcess(B,E){try{k2.diffObjects(B,E,"selectedElementIds",(A)=>!0),k2.diffObjects(B,E,"selectedGroupIds",(A)=>A??!1)}catch(A){if(console.error("Couldn't postprocess appstate change deltas."),Z3.DEV||Z3.MODE===VB.TEST)throw A}finally{return[B,E]}}filterInvisibleChanges(B,E,A){let C=j_(B),D=j_(E),F=k2.isRightDifferent(u.stripElementsProps(C),u.stripElementsProps(D)),U=k2.isRightDifferent(u.stripStandaloneProps(C),u.stripStandaloneProps(D));if(!F&&!U)return!1;let z={value:F};if(U){let k=k2.getRightDifferences(u.stripStandaloneProps(C),u.stripStandaloneProps(D)),f=new Set;(k.includes("editingGroupId")||k.includes("selectedGroupIds"))&&(f=d73(A));for(let l of k)switch(l){case"selectedElementIds":E[l]=u.filterSelectedElements(E[l],A,z);break;case"selectedGroupIds":E[l]=u.filterSelectedGroups(E[l],f,z);break;case"croppingElementId":{let J=E[l],w=J&&A.get(J);w&&!w.isDeleted?z.value=!0:E[l]=null;break}case"editingGroupId":let b=E[l];b?f.has(b)?z.value=!0:E[l]=null:z.value=!0;break;case"selectedLinearElementId":case"editingLinearElementId":let M=u.convertToAppStateKey(l),Z=E[M];if(!Z)z.value=!0;else{let J=A.get(Z.elementId);J&&!J.isDeleted?z.value=!0:E[M]=null}break;default:fM(l,`Unknown ObservedElementsAppState's key "${l}"`,!0)}}return z.value}static convertToAppStateKey(B){switch(B){case"selectedLinearElementId":return"selectedLinearElement";case"editingLinearElementId":return"editingLinearElement"}}static filterSelectedElements(B,E,A){let C=Object.keys(B);if(!C.length)return A.value=!0,B;let D={...B};for(let F of C){let U=E.get(F);U&&!U.isDeleted?A.value=!0:delete D[F]}return D}static filterSelectedGroups(B,E,A){if(!Object.keys(B).length)return A.value=!0,B;let C={...B};for(let D of Object.keys(C))E.has(D)?A.value=!0:delete C[D];return C}static stripElementsProps(B){let{editingGroupId:E,selectedGroupIds:A,selectedElementIds:C,editingLinearElementId:D,selectedLinearElementId:F,croppingElementId:U,...z}=B;return z}static stripStandaloneProps(B){let{name:E,viewBackgroundColor:A,...C}=B;return C}},nb=class u{constructor(B,E,A){this.added=B,this.removed=E,this.updated=A}static create(B,E,A,C={shouldRedistribute:!1}){let D;if(C.shouldRedistribute){let F=new Map,U=new Map,z=new Map,k=[...B,...E,...A];for(let[f,l]of k)this.satisfiesAddition(l)?F.set(f,l):this.satisfiesRemoval(l)?U.set(f,l):z.set(f,l);D=new u(F,U,z)}else D=new u(B,E,A);return(Z3.DEV||Z3.MODE===VB.TEST)&&(u.validate(D,"added",this.satisfiesAddition),u.validate(D,"removed",this.satisfiesRemoval),u.validate(D,"updated",this.satisfiesUpdate)),D}static validate(B,E,A){for(let[C,D]of B[E].entries())if(!A(D))throw console.error(`Broken invariant for "${E}" delta, element "${C}", delta:`,D),Error(`ElementsChange invariant broken for element "${C}".`)}static calculate(B,E){if(B===E)return u.empty();let A=new Map,C=new Map,D=new Map;for(let F of B.values())if(!E.get(F.id)){let U={...F,isDeleted:!1},z={isDeleted:!0},k=k2.create(U,z,u.stripIrrelevantProps);C.set(F.id,k)}for(let F of E.values()){let U=B.get(F.id);if(!U){let z={isDeleted:!0},k={...F,isDeleted:!1},f=k2.create(z,k,u.stripIrrelevantProps);A.set(F.id,f);continue}if(U.versionNonce!==F.versionNonce){let z=k2.calculate(U,F,u.stripIrrelevantProps,u.postProcess);if(typeof U.isDeleted=="boolean"&&typeof F.isDeleted=="boolean"&&U.isDeleted!==F.isDeleted){U.isDeleted&&!F.isDeleted?A.set(F.id,z):C.set(F.id,z);continue}k2.isEmpty(z)||D.set(F.id,z)}}return u.create(A,C,D)}static empty(){return u.create(new Map,new Map,new Map)}inverse(){let B=(D)=>{let F=new Map;for(let[U,z]of D.entries())F.set(U,k2.create(z.inserted,z.deleted));return F},E=B(this.added),A=B(this.removed),C=B(this.updated);return u.create(A,E,C)}isEmpty(){return this.added.size===0&&this.removed.size===0&&this.updated.size===0}applyLatestChanges(B){let E=(U)=>(z)=>{let k={};for(let f of Object.keys(z))switch(f){case"boundElements":k[f]=z[f];break;default:k[f]=U[f]}return k},A=(U)=>{let z=new Map;for(let[k,f]of U.entries()){let l=B.get(k);if(l){let b=k2.create(f.deleted,f.inserted,E(l),"inserted");z.set(k,b)}else z.set(k,f)}return z},C=A(this.added),D=A(this.removed),F=A(this.updated);return u.create(C,D,F,{shouldRedistribute:!0})}applyTo(B,E){let A=RE(new Map(B)),C,D={containsVisibleDifference:!1,containsZindexDifference:!1};try{let F=u.createApplier(A,E,D),U=F(this.added),z=F(this.removed),k=F(this.updated),f=this.resolveConflicts(B,A);C=new Map([...U,...z,...k,...f])}catch(F){if(console.error("Couldn't apply elements change",F),Z3.DEV||Z3.MODE===VB.TEST)throw F;return[B,!0]}try{u.redrawTextBoundingBoxes(A,C),A=u.reorderElements(A,C,D),u.redrawBoundArrows(A,C)}catch(F){if(console.error("Couldn't mutate elements after applying elements change",F),Z3.DEV||Z3.MODE===VB.TEST)throw F}finally{return[A,D.containsVisibleDifference]}}static applyDelta(B,E,A={containsVisibleDifference:!0,containsZindexDifference:!0}){let{boundElements:C,...D}=E.inserted;if(E.deleted.boundElements?.length||E.inserted.boundElements?.length){let F=k2.mergeArrays(B.boundElements,E.inserted.boundElements,E.deleted.boundElements,(U)=>U.id);Object.assign(D,{boundElements:F})}if(H1(B)){let F=E;(F.deleted.crop||F.inserted.crop)&&Object.assign(D,{crop:F.inserted.crop??null})}if(!A.containsVisibleDifference){let{index:F,...U}=D,z=u.checkForVisibleDifference(B,U);A.containsVisibleDifference=z}return A.containsZindexDifference||(A.containsZindexDifference=E.deleted.index!==E.inserted.index),O3(B,D)}static checkForVisibleDifference(B,E){return B.isDeleted&&E.isDeleted!==!1?!1:B.isDeleted&&E.isDeleted===!1||B.isDeleted===!1&&E.isDeleted?!0:k2.isRightDifferent(B,E)}resolveConflicts(B,E){let A=new Map,C=(k,f)=>{let l=E.get(k.id);if(!l)return;let b;B.get(k.id)===l?b=O3(l,f):b=Wu(l,f),A.set(b.id,b),E.set(b.id,b)};for(let[k]of this.removed)u.unbindAffected(B,E,k,C);for(let[k]of this.added)u.rebindAffected(B,E,k,C);for(let[k]of Array.from(this.updated).filter(([f,l])=>Object.keys({...l.deleted,...l.inserted}).find((b)=>y73.has(b)))){let f=E.get(k);!f||f.isDeleted||u.rebindAffected(B,E,k,C)}let D=new Map(Array.from(B).filter(([k])=>A.has(k))),{added:F,removed:U,updated:z}=u.calculate(D,A);for(let[k,f]of F)this.added.set(k,f);for(let[k,f]of U)this.removed.set(k,f);for(let[k,f]of z)this.updated.set(k,f);return A}static unbindAffected(B,E,A,C){let D=()=>B.get(A),F=()=>E.get(A);aq.unbindAffected(E,D(),C),aq.unbindAffected(E,F(),C),Vq.unbindAffected(E,D(),C),Vq.unbindAffected(E,F(),C)}static rebindAffected(B,E,A,C){let D=()=>B.get(A),F=()=>E.get(A);aq.unbindAffected(E,D(),C),aq.rebindAffected(E,F(),C),Vq.unbindAffected(E,D(),(U,z)=>{l4(U)&&C(U,z)}),Vq.rebindAffected(E,F(),C)}static redrawTextBoundingBoxes(B,E){let A=new Map;for(let C of E.values()){if(X6(C)){let{containerId:D}=C,F=D?B.get(D):void 0;F&&A.set(F.id,{container:F,boundText:C})}if(i8(C)){let D=YU(C),F=D?B.get(D):void 0;F&&A.set(C.id,{container:C,boundText:F})}}for(let{container:C,boundText:D}of A.values())C.isDeleted||D.isDeleted||c7(D,C,B,!1)}static redrawBoundArrows(B,E){for(let A of E.values())!A.isDeleted&&iA(A)&&hB(A,B,{changedElements:E})}static reorderElements(B,E,A){if(!A.containsZindexDifference)return B;let C=Array.from(B.values()),D=_bu([...C]),F=k2.getRightDifferences(C,D,!0).reduce((U,z)=>{let k=C[Number(z)];return k&&E.has(k.id)&&U.set(k.id,k),U},new Map);return!A.containsVisibleDifference&&F.size&&(A.containsVisibleDifference=!0),e4(lD(D,F))}static postProcess(B,E){try{k2.diffArrays(B,E,"boundElements",(A)=>A.id)}catch(A){if(console.error("Couldn't postprocess elements change deltas."),Z3.DEV||Z3.MODE===VB.TEST)throw A}finally{return[B,E]}}static stripIrrelevantProps(B){let{id:E,updated:A,version:C,versionNonce:D,seed:F,...U}=B;return U}},qzu,GD=class{constructor(){j0(this,"subscribers",[])}on(...u){let B=u.flat().filter((E)=>typeof E=="function");return this.subscribers.push(...B),()=>this.off(B)}once(...u){let B=u.flat().filter((A)=>typeof A=="function");B.push(()=>E());let E=this.on(...B);return E}off(...u){let B=u.flat();this.subscribers=this.subscribers.filter((E)=>!B.includes(E))}trigger(...u){for(let B of this.subscribers)B(...u);return this}clear(){this.subscribers=[]}},pbu="__observedAppState",j_=(u)=>{let B={name:u.name,editingGroupId:u.editingGroupId,viewBackgroundColor:u.viewBackgroundColor,selectedElementIds:u.selectedElementIds,selectedGroupIds:u.selectedGroupIds,editingLinearElementId:u.editingLinearElement?.elementId||null,selectedLinearElementId:u.selectedLinearElement?.elementId||null,croppingElementId:u.croppingElementId};return Reflect.defineProperty(B,pbu,{value:!0,enumerable:!1}),B},lB3=(u)=>!!Reflect.get(u,pbu),Xu,bB3=class{constructor(u,B){this.elementsChange=u,this.appStateChange=B}},dbu=class{constructor(){j0(this,"onStoreIncrementEmitter",new GD),j0(this,"scheduledActions",new Set),j0(this,"_snapshot",Xzu.empty()),j0(this,"shouldCaptureIncrement",()=>{this.scheduleAction(Xu.IMMEDIATELY)}),j0(this,"shouldUpdateSnapshot",()=>{this.scheduleAction(Xu.NEVER)}),j0(this,"scheduleAction",(u)=>{this.scheduledActions.add(u),this.satisfiesScheduledActionsInvariant()}),j0(this,"commit",(u,B)=>{try{this.scheduledActions.has(Xu.IMMEDIATELY)?this.captureIncrement(u,B):this.scheduledActions.has(Xu.NEVER)&&this.updateSnapshot(u,B)}finally{this.satisfiesScheduledActionsInvariant(),this.scheduledActions=new Set}}),j0(this,"captureIncrement",(u,B)=>{let E=this.snapshot,A=this.snapshot.maybeClone(u,B);if(E!==A){let C=A.meta.didElementsChange?qzu.calculate(E.elements,A.elements):qzu.empty(),D=A.meta.didAppStateChange?Lzu.calculate(E.appState,A.appState):Lzu.empty();(!C.isEmpty()||!D.isEmpty())&&this.onStoreIncrementEmitter.trigger(new bB3(C,D)),this.snapshot=A}}),j0(this,"updateSnapshot",(u,B)=>{let E=this.snapshot.maybeClone(u,B);this.snapshot!==E&&(this.snapshot=E)}),j0(this,"filterUncomittedElements",(u,B)=>{for(let[E,A]of u.entries()){if(!B.get(E))continue;let C=this.snapshot.elements.get(E);C?C.version<A.version&&B.set(E,C):B.delete(E)}return B}),j0(this,"clear",()=>{this.snapshot=Xzu.empty(),this.scheduledActions=new Set}),j0(this,"satisfiesScheduledActionsInvariant",()=>{if(!(this.scheduledActions.size>=0&&this.scheduledActions.size<=3)){let u=`There can be at most three store actions scheduled at the same time, but there are "${this.scheduledActions.size}".`;if(console.error(u,this.scheduledActions.values()),Z3.DEV||Z3.MODE===VB.TEST)throw Error(u)}})}get snapshot(){return this._snapshot}set snapshot(u){this._snapshot=u}},Xzu=class u{constructor(B,E,A={didElementsChange:!1,didAppStateChange:!1,isEmpty:!1}){this.elements=B,this.appState=E,this.meta=A}static empty(){return new u(new Map,j_(MD()),{didElementsChange:!1,didAppStateChange:!1,isEmpty:!0})}isEmpty(){return this.meta.isEmpty}maybeClone(B,E){let A=this.maybeCreateElementsSnapshot(B),C=this.maybeCreateAppStateSnapshot(E),D=!1,F=!1;return this.elements!==A&&(D=!0),this.appState!==C&&(F=!0),!D&&!F?this:new u(A,C,{didElementsChange:D,didAppStateChange:F})}maybeCreateAppStateSnapshot(B){if(!B)return this.appState;let E=lB3(B)?B:j_(B);return this.detectChangedAppState(E)?E:this.appState}detectChangedAppState(B){return!h5(this.appState,B,{selectedElementIds:h5,selectedGroupIds:h5})}maybeCreateElementsSnapshot(B){return B?this.detectChangedElements(B)?this.createElementsSnapshot(B):this.elements:this.elements}detectChangedElements(B){if(this.elements===B)return!1;if(this.elements.size!==B.size)return!0;let E=Array.from(B.keys());for(let A=E.length-1;A>=0;A--){let C=this.elements.get(E[A]),D=B.get(E[A]);if(!C||!D||C.id!==D.id||C.versionNonce!==D.versionNonce)return!0}return!1}createElementsSnapshot(B){let E=new Map;for(let[A,C]of this.elements.entries())B.get(A)?E.set(A,C):E.set(A,O3(C,{isDeleted:!0}));for(let[A,C]of B.entries()){let D=E.get(A);(!D||D&&D.versionNonce!==C.versionNonce)&&E.set(A,QM(C))}return E}},xU,MB3,ZB3,JB3,xzu,wB3,vzu,KB3,QB3,GB3,Szu,Wzu,HB3,Jk0,Yzu,mq=(u)=>`<html><body>${u}</body></html>`,NK=(u)=>{if(!u)return null;if(xU.has(u))return xU.get(u);let B=u,E=Yzu.has(wk0(u,Yzu)||""),A="generic",C={w:560,h:840},D=u.match(MB3);if(D?.[2]){let z=D[3]?`&start=${D[3]}`:"",k=u.includes("shorts");switch(A="video",D[1]){case"embed/":case"watch?v=":case"shorts/":u=`https://www.youtube.com/embed/${D[2]}?enablejsapi=1${z}`;break;case"playlist?list=":case"embed/videoseries?list=":u=`https://www.youtube.com/embed/videoseries?list=${D[2]}&enablejsapi=1${z}`;break;default:u=`https://www.youtube.com/embed/${D[2]}?enablejsapi=1${z}`;break}return C=k?{w:315,h:560}:{w:560,h:315},xU.set(B,{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}),{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}}let F=u.match(ZB3);if(F?.[1]){let z=F?.[1],k=/^\d+$/.test(z)?void 0:URIError("Invalid embed link format");return A="video",u=`https://player.vimeo.com/video/${z}?api=1`,C={w:560,h:315},xU.set(B,{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}),{link:u,intrinsicSize:C,type:A,error:k,sandbox:{allowSameOrigin:E}}}if(u.match(JB3))return A="generic",u=`https://www.figma.com/embed?embed_host=share&url=${encodeURIComponent(u)}`,C={w:550,h:550},xU.set(B,{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}),{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}};let U=u.match(QB3);if(U)return u=U[1]==="embed"?U[0]:U[0].replace("/v","/embed"),xU.set(B,{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}),{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}};if(vzu.test(u)){let z=u.match(vzu)[1],k=w_(`https://twitter.com/x/status/${z}`),f={type:"document",srcdoc:(l)=>mq(`<blockquote class="twitter-tweet" data-dnt="true" data-theme="${l}"><a href="${k}"></a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"><\/script>`),intrinsicSize:{w:480,h:480},sandbox:{allowSameOrigin:E}};return xU.set(B,f),f}if(Wzu.test(u)){let[,z,k,f]=u.match(Wzu),l=w_(`https://reddit.com/r/${z}/comments/${k}/${f}`),b={type:"document",srcdoc:(M)=>mq(`<blockquote class="reddit-embed-bq" data-embed-theme="${M}"><a href="${l}"></a><br></blockquote><script async="" src="https://embed.reddit.com/widgets.js" charset="UTF-8"><\/script>`),intrinsicSize:{w:480,h:480},sandbox:{allowSameOrigin:E}};return xU.set(B,b),b}if(xzu.test(u)){let[,z,k]=u.match(xzu),f=w_(`https://gist.github.com/${z}/${k}`),l={type:"document",srcdoc:()=>mq(`
<script src="${f}.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:E}};return xU.set(u,l),l}return xU.set(u,{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}),{link:u,intrinsicSize:C,type:A,sandbox:{allowSameOrigin:E}}},sbu=(u)=>{let B;tk(u)?B="IFrame element":B=!u.link||u?.link===""?"Empty Web-Embed":u.link;let E=Math.max(Math.min(u.width/2,u.width/B.length),u.width/30),A=n6.Helvetica,C=e1({fontSize:E,fontFamily:A});return N8({x:u.x+u.width/2,y:u.y+u.height/2,strokeColor:u.strokeColor!=="transparent"?u.strokeColor:"black",backgroundColor:"transparent",fontFamily:A,fontSize:E,text:bM(B,C,u.width-20),textAlign:"center",verticalAlign:P8.MIDDLE,angle:u.angle??0})},UX1,wk0=(u,B)=>{try{let{hostname:E}=new URL(u),A=E.replace(/^www\./,"");if(B instanceof Set){if(Jk0.has(A))return A;let D=A.replace(/^([^.]+)/,"*");return Jk0.has(D)?D:null}let C=B.replace(/^www\./,"");if(A===C)return C}catch{}return null},obu=(u)=>{let B=u.match(KB3);if(B&&B.length===2)return B[1];let E=u.match(HB3);if(E&&E.length===2)return E[1];let A=u.match(wB3);if(A&&A.length===2)return A[1];if(Szu.test(u))return`https://giphy.com/embed/${Szu.exec(u)[1]}`;let C=u.match(GB3);return C&&C.length===2?C[1]:u},IO=(u,B)=>{if(!u)return!1;if(B!=null)if(typeof B=="function"){let E=B(u);if(typeof E=="boolean")return E}else{if(typeof B=="boolean")return B;if(B instanceof RegExp)return B.test(u);if(Array.isArray(B)){for(let E of B)if(E instanceof RegExp){if(u.match(E))return!0}else if(wk0(u,E))return!0;return!1}}return!!wk0(u,Jk0)},rT=(u,B,E)=>{if(typeof E>"u")return u.draw(B);let A={sets:B.sets,shape:B.shape,options:{...B.options,fixedDecimalPlaceDigits:E}};return u.draw(A)},$T=(u,B,E,A,C)=>{if(!A.enabled||!A.clip)return null;let D=mB(u,C);if(D){let F=B.ownerDocument.createElementNS(Z1,"g");return F.setAttributeNS(Z1,"clip-path",`url(#${D.id})`),E.forEach((U)=>F.appendChild(U)),F}return null},G_=(u,B,E,A,C,D,F,U)=>{let z={x:D,y:F},[k,f,l,b]=S3(u,B),M=(l-k)/2-(u.x-k),Z=(b-f)/2-(u.y-f);if(l4(u)){let G=l5(u,B);if(j3(G)){let[L,H,q,x]=S3(G,B),v=M4.getBoundTextElementPosition(G,u,B);M=(q-L)/2-(v.x-L),Z=(x-H)/2-(v.y-H),D=D+v.x-u.x,F=F+v.y-u.y}}let J=180*u.angle/Math.PI,w=A;if(u.link){let G=A.ownerDocument.createElementNS(Z1,"a");G.setAttribute("href",j8(u.link)),w.appendChild(G),w=G}let K=(G,L)=>{OU()&&G.setAttribute("data-id",L.id),w.appendChild(G)},Q=(mB(u,B)?.opacity??100)*u.opacity/1e4;switch(u.type){case"selection":throw Error("Selection rendering is not supported for SVG");case"rectangle":case"diamond":case"ellipse":{let G=p6.generateElementShape(u,null),L=rT(E,G,mT);Q!==1&&(L.setAttribute("stroke-opacity",`${Q}`),L.setAttribute("fill-opacity",`${Q}`)),L.setAttribute("stroke-linecap","round"),L.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`);let H=$T(u,w,[L],U.frameRendering,B);K(H||L,u);break}case"iframe":case"embeddable":{let G=p6.generateElementShape(u,U),L=rT(E,G,mT),H=u.opacity/100;H!==1&&(L.setAttribute("stroke-opacity",`${H}`),L.setAttribute("fill-opacity",`${H}`)),L.setAttribute("stroke-linecap","round"),L.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`),K(L,u);let q=sbu(u);G_(q,B,E,w,C,q.x+z.x-u.x,q.y+z.y-u.y,U);let x=rT(E,G,mT);for(x.setAttribute("stroke-linecap","round"),x.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`);x.firstChild;)x.removeChild(x.firstChild);let v=IA(Math.min(u.width,u.height),u),W=NK(Ul0(u.link||""));if(U.renderEmbeddables===!1||W?.type==="document"){let S=A.ownerDocument.createElementNS(Z1,"a");S.setAttribute("href",j8(u.link||"")),S.setAttribute("target","_blank"),S.setAttribute("rel","noopener noreferrer"),S.style.borderRadius=`${v}px`,x.appendChild(S)}else{let S=A.ownerDocument.createElementNS(Z1,"foreignObject");S.style.width=`${u.width}px`,S.style.height=`${u.height}px`,S.style.border="none";let T=S.ownerDocument.createElementNS(Z1,"div");T.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),T.style.width="100%",T.style.height="100%";let R=T.ownerDocument.createElement("iframe");R.src=W?.link??"",R.style.width="100%",R.style.height="100%",R.style.border="none",R.style.borderRadius=`${v}px`,R.style.top="0",R.style.left="0",R.allowFullscreen=!0,T.appendChild(R),S.appendChild(T),x.appendChild(S)}K(x,u);break}case"line":case"arrow":{let G=Y3(u,B),L=A.ownerDocument.createElementNS(Z1,"mask");if(G){L.setAttribute("id",`mask-${u.id}`);let x=A.ownerDocument.createElementNS(Z1,"rect");D=D||0,F=F||0,x.setAttribute("x","0"),x.setAttribute("y","0"),x.setAttribute("fill","#fff"),x.setAttribute("width",`${u.width+100+D}`),x.setAttribute("height",`${u.height+100+F}`),L.appendChild(x);let v=A.ownerDocument.createElementNS(Z1,"rect"),W=M4.getBoundTextElementPosition(u,G,B),S=D+W.x-u.x,T=F+W.y-u.y;v.setAttribute("x",S.toString()),v.setAttribute("y",T.toString()),v.setAttribute("fill","#000"),v.setAttribute("width",`${G.width}`),v.setAttribute("height",`${G.height}`),v.setAttribute("opacity","1"),L.appendChild(v)}let H=A.ownerDocument.createElementNS(Z1,"g");G&&H.setAttribute("mask",`url(#mask-${u.id})`),H.setAttribute("stroke-linecap","round"),p6.generateElementShape(u,U).forEach((x)=>{let v=rT(E,x,mT);Q!==1&&(v.setAttribute("stroke-opacity",`${Q}`),v.setAttribute("fill-opacity",`${Q}`)),v.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`),u.type==="line"&&SU(u.points)&&u.backgroundColor!=="transparent"&&v.setAttribute("fill-rule","evenodd"),H.appendChild(v)});let q=$T(u,w,[H,L],U.frameRendering,B);q?(K(q,u),w.appendChild(q)):(K(H,u),w.append(L));break}case"freedraw":{let G=p6.generateElementShape(u,U),L=G?rT(E,G,mT):A.ownerDocument.createElementNS(Z1,"g");Q!==1&&(L.setAttribute("stroke-opacity",`${Q}`),L.setAttribute("fill-opacity",`${Q}`)),L.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`),L.setAttribute("stroke","none");let H=A.ownerDocument.createElementNS(Z1,"path");H.setAttribute("fill",u.strokeColor),H.setAttribute("d",Vf0(u)),L.appendChild(H);let q=$T(u,w,[L],U.frameRendering,B);K(q||L,u);break}case"image":{let G=Math.round(u.width),L=Math.round(u.height),H=IE(u)&&C[u.fileId];if(H){let{reuseImages:q=!0}=U,x=`image-${H.id}`,v=u.width,W=u.height;u.crop&&({width:v,height:W}=WU(u),x=`image-crop-${H.id}-${NMu(`${v}x${W}`)}`),q||(x=`image-${u.id}`);let S=A.querySelector(`#${x}`);if(!S){S=A.ownerDocument.createElementNS(Z1,"symbol"),S.id=x;let N=A.ownerDocument.createElementNS(Z1,"image");N.setAttribute("href",H.dataURL),N.setAttribute("preserveAspectRatio","none"),u.crop||!q?(N.setAttribute("width",`${v}`),N.setAttribute("height",`${W}`)):(N.setAttribute("width","100%"),N.setAttribute("height","100%")),S.appendChild(N),(w.querySelector("defs")||w).prepend(S)}let T=A.ownerDocument.createElementNS(Z1,"use");T.setAttribute("href",`#${x}`),U.exportWithDarkMode&&H.mimeType!==y4.svg&&T.setAttribute("filter",Abu);let R=0,Y=0;if(u.crop){let{width:N,height:V}=WU(u);R=u.crop.x/(u.crop.naturalWidth/N),Y=u.crop.y/(u.crop.naturalHeight/V)}let a=M+R,I=Z+Y;T.setAttribute("width",`${G+R}`),T.setAttribute("height",`${L+Y}`),T.setAttribute("opacity",`${Q}`),(u.scale[0]!==1||u.scale[1]!==1)&&T.setAttribute("transform",`translate(${a} ${I}) scale(${u.scale[0]} ${u.scale[1]}) translate(${-a} ${-I})`);let O=A.ownerDocument.createElementNS(Z1,"g");if(u.crop){let N=A.ownerDocument.createElementNS(Z1,"mask");N.setAttribute("id",`mask-image-crop-${u.id}`),N.setAttribute("fill","#fff");let V=A.ownerDocument.createElementNS(Z1,"rect");V.setAttribute("x",`${R}`),V.setAttribute("y",`${Y}`),V.setAttribute("width",`${G}`),V.setAttribute("height",`${L}`),N.appendChild(V),w.appendChild(N),O.setAttribute("mask",`url(#${N.id})`)}if(O.appendChild(T),O.setAttribute("transform",`translate(${D-R} ${F-Y}) rotate(${J} ${a} ${I})`),u.roundness){let N=A.ownerDocument.createElementNS(Z1,"clipPath");N.id=`image-clipPath-${u.id}`;let V=A.ownerDocument.createElementNS(Z1,"rect"),h=IA(Math.min(u.width,u.height),u);V.setAttribute("width",`${u.width}`),V.setAttribute("height",`${u.height}`),V.setAttribute("rx",`${h}`),V.setAttribute("ry",`${h}`),N.appendChild(V),K(N,u),O.setAttributeNS(Z1,"clip-path",`url(#${N.id})`)}let i=$T(u,w,[O],U.frameRendering,B);K(i||O,u)}break}case"frame":case"magicframe":{if(U.frameRendering.enabled&&U.frameRendering.outline){let G=document.createElementNS(Z1,"rect");G.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`),G.setAttribute("width",`${u.width}px`),G.setAttribute("height",`${u.height}px`),G.setAttribute("rx",j6.radius.toString()),G.setAttribute("ry",j6.radius.toString()),G.setAttribute("fill","none"),G.setAttribute("stroke",j6.strokeColor),G.setAttribute("stroke-width",j6.strokeWidth.toString()),K(G,u)}break}default:if(l4(u)){let G=A.ownerDocument.createElementNS(Z1,"g");Q!==1&&(G.setAttribute("stroke-opacity",`${Q}`),G.setAttribute("fill-opacity",`${Q}`)),G.setAttribute("transform",`translate(${D||0} ${F||0}) rotate(${J} ${M} ${Z})`);let L=u.text.replace(/\r\n?/g,`
`).split(`
`),H=EX(u.fontSize,u.lineHeight),q=u.textAlign==="center"?u.width/2:u.textAlign==="right"?u.width:0,x=rlu(u.fontFamily,u.fontSize,H),v=rku(u.text)?"rtl":"ltr",W=u.textAlign==="center"?"middle":u.textAlign==="right"||v==="rtl"?"end":"start";for(let T=0;T<L.length;T++){let R=A.ownerDocument.createElementNS(Z1,"text");R.textContent=L[T],R.setAttribute("x",`${q}`),R.setAttribute("y",`${T*H+x}`),R.setAttribute("font-family",WK(u)),R.setAttribute("font-size",`${u.fontSize}px`),R.setAttribute("fill",u.strokeColor),R.setAttribute("text-anchor",W),R.setAttribute("style","white-space: pre;"),R.setAttribute("direction",v),R.setAttribute("dominant-baseline","alphabetic"),G.appendChild(R)}let S=$T(u,w,[G],U.frameRendering,B);K(S||G,u)}else throw Error(`Unimplemented type ${u.type}`)}},LB3=(u,B,E,A,C,D)=>{A&&(u.filter((F)=>!YE(F)).forEach((F)=>{if(!F.isDeleted){if(l4(F)&&F.containerId&&B.has(F.containerId))return;try{G_(F,B,E,A,C,F.x+D.offsetX,F.y+D.offsetY,D);let U=Y3(F,B);U&&G_(U,B,E,A,C,U.x+D.offsetX,U.y+D.offsetY,D)}catch(U){console.error(U)}}}),u.filter((F)=>YE(F)).forEach((F)=>{if(!F.isDeleted)try{G_(F,B,E,A,C,F.x+D.offsetX,F.y+D.offsetY,D)}catch(U){console.error(U)}}))},Rzu=500,Tn=(u)=>{let B=u.extensions?.reduce((A,C)=>(A.push(y4[C]),A),[]),E=u.extensions?.reduce((A,C)=>C==="jpg"?A.concat(".jpg",".jpeg"):A.concat(`.${C}`),[]);return WUu({description:u.description,extensions:E,mimeTypes:B,multiple:u.multiple??!1,legacySetup:(A,C,D)=>{let F=YK(C,Rzu),U=()=>{z(),document.addEventListener("keyup",F),document.addEventListener("pointerup",F),F()},z=()=>{if(D.files?.length){let f=u.multiple?[...D.files]:D.files[0];A(f)}};requestAnimationFrame(()=>{window.addEventListener("focus",U)});let k=window.setInterval(()=>{z()},Rzu);return(f)=>{clearInterval(k),F.cancel(),window.removeEventListener("focus",U),document.removeEventListener("keyup",F),document.removeEventListener("pointerup",F),f&&(console.warn("Opening the file was canceled (legacy-fs)."),f(new xO))}}})},PO=(u,B)=>YUu(u,{fileName:`${B.name}.${B.extension}`,description:B.description,extensions:[`.${B.extension}`],mimeTypes:B.mimeTypes},B.fileHandle),qB3=(u,B)=>{let E={};for(let A of u)!A.isDeleted&&"fileId"in A&&A.fileId&&B[A.fileId]&&(E[A.fileId]=B[A.fileId]);return E},On=(u,B,E,A)=>{let C={type:WE.excalidraw,version:fO.excalidraw,source:h_,elements:A==="local"?aMu(u):R83(u),appState:A==="local"?Rku(B):U33(B),files:A==="local"?qB3(u,E):void 0};return JSON.stringify(C,null,2)},Zl0=async(u,B,E,A=B.name||Pk0)=>{let C=On(u,B,E,"local"),D=new Blob([C],{type:y4.excalidraw});return{fileHandle:await PO(D,{name:A,extension:"excalidraw",description:"Excalidraw file",fileHandle:Bp(B.fileHandle)?null:B.fileHandle})}},tbu=async(u,B)=>{let E=await Tn({description:"Excalidraw files"});return Bb0(await Ap(E),u,B,E.handle)},XB3=(u)=>u?.type===WE.excalidraw&&(!u.elements||Array.isArray(u.elements)&&(!u.appState||typeof u.appState=="object")),ebu=(u)=>typeof u=="object"&&u&&u.type===WE.excalidrawLibrary&&(u.version===1||u.version===2),Jl0=(u)=>{let B={type:WE.excalidrawLibrary,version:fO.excalidrawLibrary,source:h_,libraryItems:u};return JSON.stringify(B,null,2)},uMu=async(u)=>{let B=Jl0(u);await PO(new Blob([B],{type:y4.excalidrawlib}),{name:"library",extension:"excalidrawlib",description:"Excalidraw library file"})},wl0=(u)=>new Promise((B,E)=>{let A=new Image;A.onload=()=>{B(A)},A.onerror=(C)=>{E(C)},A.src=u}),Kl0=async({fileIds:u,files:B,imageCache:E})=>{let A=new Map,C=new Map;return await Promise.all(u.reduce((D,F)=>{let U=B[F];return U&&!A.has(F)?(A.set(F,!0),D.concat((async()=>{try{if(U.mimeType===y4.binary)throw Error("Only images can be added to ImageCache");let z=wl0(U.dataURL),k={image:z,mimeType:U.mimeType};E.set(F,k);let f=await z;E.set(F,{...k,image:f})}catch{C.set(F,!0)}})())):D},[])),{imageCache:E,updatedFiles:A,erroredFiles:C}},Ql0=(u)=>u.filter((B)=>IE(B)),xB3=(u)=>u?.nodeName.toLowerCase()==="svg",Gl0=(u)=>{let B=new DOMParser().parseFromString(u,y4.svg),E=B.querySelector("svg");if(B.querySelector("parsererror")||!xB3(E))throw Error("Invalid SVG");{E.hasAttribute("xmlns")||E.setAttribute("xmlns",Z1);let A=E.getAttribute("width"),C=E.getAttribute("height");(A?.includes("%")||A==="auto")&&(A=null),(C?.includes("%")||C==="auto")&&(C=null);let D=E.getAttribute("viewBox");if(!A||!C){if(A=A||"50",C=C||"50",D){let F=D.match(/\d+ +\d+ +(\d+(?:\.\d+)?) +(\d+(?:\.\d+)?)/);F&&([,A,C]=F)}E.setAttribute("width",A),E.setAttribute("height",C)}return D||E.setAttribute("viewBox",`0 0 ${A} ${C}`),E.outerHTML}},BMu,EMu,In=([u,B,E,A],C,D)=>{let F=E73,U=F/D.zoom.value,z=F/D.zoom.value,k=F/D.zoom.value,f=(u+E)/2,l=(B+A)/2,b=(F-8)/(2*D.zoom.value),M=4/D.zoom.value,Z=E+M-b,J=B-M-k+b,[w,K]=Lu(t(Z+U/2,J+z/2),t(f,l),C);return[w-U/2,K-z/2,U,z]},Hl0=(u,B,E,[A,C])=>{let D=4/E.zoom.value,[F,U,z,k]=S3(u,B),[f,l,b,M]=In([F,U,z,k],u.angle,E);return A>f-D&&A<f+D+b&&C>l-D&&C<l+M+D},Pn=(u,B,E,[A,C],D)=>!u.link||E.selectedElementIds[u.id]?!1:!D&&E.viewModeEnabled&&zn(A,C,u,B)?!0:Hl0(u,B,E,t(A,C)),jO=(u,B,E,A,C=!0)=>{u.beginPath(),u.arc(B,E,A,0,Math.PI*2),u.fill(),C&&u.stroke()},jn=(u,B)=>[u.width/B,u.height/B],Nn=({canvas:u,scale:B,normalizedWidth:E,normalizedHeight:A,theme:C,isExporting:D,viewBackgroundColor:F})=>{let U=u.getContext("2d");return U.setTransform(1,0,0,1,0,0),U.scale(B,B),D&&C===_3.DARK&&(U.filter=$_),typeof F=="string"?((F==="transparent"||F.length===5||F.length===9||/(hsla|rgba)\(/.test(F))&&U.clearRect(0,0,E,A),U.save(),U.fillStyle=F,U.fillRect(0,0,E,A),U.restore()):U.clearRect(0,0,E,A),U},Ll0=(u,B)=>{let E=window.location.href;try{let A=new URL(E);return A.searchParams.set(L_,u),j8(A.toString())}catch(A){console.error(A)}return j8(E)},ql0=(u,B)=>{if(u.length>0&&NO(u)){if(u.length===1)return{id:u[0].id,type:"element"};if(u.length>1){let E=Object.keys(B.selectedGroupIds)[0];return E?{id:E,type:"group"}:{id:u[0].groupIds[0],type:"group"}}}return null},NO=(u)=>!!(u.length===1||u.length>1&&Bl0(u)),lX=(u)=>{try{let B=new URL(u);return B.searchParams.has(L_)&&B.host===window.location.host}catch{return!1}},AMu=(u)=>{try{let{searchParams:B}=new URL(u);if(B.has(L_))return B.get(L_)}catch{}return null},Z_,vB3=(u,B,E,A,C,D,F,U)=>{let z=A%B-B,k=C%B-B,f=B*D.value,l=1/D.value;u.save(),D.value===1&&u.translate(z%1?0:0.5,k%1?0:0.5);for(let b=z;b<z+F+B*2;b+=B){let M=E>1&&Math.round(b-A)%(E*B)===0;if(!M&&f<10)continue;let Z=Math.min(1/D.value,M?4:1);u.lineWidth=Z;let J=[Z*3,l+(Z+l)];u.beginPath(),u.setLineDash(M?[]:J),u.strokeStyle=M?Z_.Bold:Z_.Regular,u.moveTo(b,k-B),u.lineTo(b,Math.ceil(k+U+B*2)),u.stroke()}for(let b=k;b<k+U+B*2;b+=B){let M=E>1&&Math.round(b-C)%(E*B)===0;if(!M&&f<10)continue;let Z=Math.min(1/D.value,M?4:1);u.lineWidth=Z;let J=[Z*3,l+(Z+l)];u.beginPath(),u.setLineDash(M?[]:J),u.strokeStyle=M?Z_.Bold:Z_.Regular,u.moveTo(z-B,b),u.lineTo(Math.ceil(z+F+B*2),b),u.stroke()}u.restore()},Tzu=(u,B,E,A)=>{B.translate(u.x+A.scrollX,u.y+A.scrollY),B.beginPath(),B.roundRect?B.roundRect(0,0,u.width,u.height,j6.radius/A.zoom.value):B.rect(0,0,u.width,u.height),B.clip(),B.translate(-(u.x+A.scrollX),-(u.y+A.scrollY))},Ozu,Izu=(u,B,E,A)=>{if(u.link&&!E.selectedElementIds[u.id]){let[C,D,F,U]=S3(u,A),[z,k,f,l]=In([C,D,F,U],u.angle,E),b=z+f/2,M=k+l/2;B.save(),B.translate(E.scrollX+b,E.scrollY+M),B.rotate(u.angle);let Z=lX(u.link)?"elementLink":"regularLink",J=Ozu[Z];if(!J||J.zoom!==E.zoom.value){J=Object.assign(document.createElement("canvas"),{zoom:E.zoom.value}),J.width=f*window.devicePixelRatio*E.zoom.value,J.height=l*window.devicePixelRatio*E.zoom.value,Ozu[Z]=J;let w=J.getContext("2d");w.scale(window.devicePixelRatio*E.zoom.value,window.devicePixelRatio*E.zoom.value),w.fillStyle="#fff",w.fillRect(0,0,f,l),Z==="elementLink"?w.drawImage(EMu,0,0,f,l):w.drawImage(BMu,0,0,f,l),w.restore()}B.drawImage(J,z-b,k-M,f,l),B.restore()}},CMu=({canvas:u,rc:B,elementsMap:E,allElementsMap:A,visibleElements:C,scale:D,appState:F,renderConfig:U})=>{if(u===null)return;let{renderGrid:z=!0,isExporting:k}=U,[f,l]=jn(u,D),b=Nn({canvas:u,scale:D,normalizedWidth:f,normalizedHeight:l,theme:F.theme,isExporting:k,viewBackgroundColor:F.viewBackgroundColor});b.scale(F.zoom.value,F.zoom.value),z&&vB3(b,F.gridSize,F.gridStep,F.scrollX,F.scrollY,F.zoom,f/F.zoom.value,l/F.zoom.value);let M=new Set;C.forEach((J)=>{J.groupIds.length>0&&F.frameToHighlight&&F.selectedElementIds[J.id]&&(dk(J,F.frameToHighlight,E)||J.groupIds.find((w)=>M.has(w)))&&J.groupIds.forEach((w)=>M.add(w))});let Z=new Map;C.filter((J)=>!YE(J)).forEach((J)=>{try{let w=J.frameId||F.frameToHighlight?.id;if(l4(J)&&J.containerId&&E.has(J.containerId))return;if(b.save(),w&&F.frameRendering.enabled&&F.frameRendering.clip){let Q=Qk0(J,E,F);Q&&gzu(J,Q,F,E,Z)&&Tzu(Q,b,U,F),pb(J,E,A,B,b,U,F)}else pb(J,E,A,B,b,U,F);let K=Y3(J,E);K&&pb(K,E,A,B,b,U,F),b.restore(),k||Izu(J,b,F,E)}catch(w){console.error(w,J.id,J.x,J.y,J.width,J.height)}}),C.filter((J)=>YE(J)).forEach((J)=>{try{let w=()=>{if(pb(J,E,A,B,b,U,F),YE(J)&&(k||rB(J)&&U.embedsValidationStatus.get(J.id)!==!0)&&J.width&&J.height){let K=sbu(J);pb(K,E,A,B,b,U,F)}k||Izu(J,b,F,E)};if((J.frameId||F.frameToHighlight?.id)&&F.frameRendering.enabled&&F.frameRendering.clip){b.save();let K=Qk0(J,E,F);K&&gzu(J,K,F,E,Z)&&Tzu(K,b,U,F),w(),b.restore()}else w()}catch(w){console.error(w)}}),U.pendingFlowchartNodes?.forEach((J)=>{try{pb(J,E,A,B,b,U,F)}catch(w){console.error(w)}})},Xl0,xl0=(u,B)=>{if(B){Xl0(u);return}CMu(u)},SB3=(u,B)=>{if(u.width<=B)return u;let E=document.createElement("canvas").getContext("2d");E.font=e1({fontFamily:u.fontFamily,fontSize:u.fontSize});let A=u.text;if(E.measureText(A).width>B)for(let C=A.length;C>0;C--){let D=`${A.slice(0,C)}...`;if(E.measureText(D).width<=B){A=D;break}}return O3(u,{text:A,width:B})},WB3=(u,B)=>{let E=[];for(let A of u){if(u3(A)){let C=N8({x:A.x,y:A.y-j6.nameOffsetY,fontFamily:n6.Helvetica,fontSize:j6.nameFontSize,lineHeight:j6.nameLineHeight,strokeColor:B.exportWithDarkMode?j6.nameColorDarkTheme:j6.nameColorLightTheme,text:ml0(A)});C.y-=C.height,C=SB3(C,A.width),E.push(C)}E.push(A)}return E},DMu=(u,B)=>(B=B||MD().frameRendering,{enabled:u?!0:B.enabled,outline:u?!1:B.outline,name:u?!1:B.name,clip:u?!0:B.clip}),FMu=({elements:u,exportingFrame:B,frameRendering:E,exportWithDarkMode:A})=>{let C;return B?C=nn(u,B):E.enabled&&E.name?C=WB3(u,{exportWithDarkMode:A}):C=u,C},vl0=async(u,B,E,{exportBackground:A,exportPadding:C=xK,viewBackgroundColor:D,exportingFrame:F},U=(k,f)=>{let l=document.createElement("canvas");return l.width=k*B.exportScale,l.height=f*B.exportScale,{canvas:l,scale:B.exportScale}},z=async()=>{await PU.loadElementsFonts(u)})=>{await z();let k=DMu(F??null,B.frameRendering??null);F&&(k.clip=!1);let f=FMu({elements:u,exportingFrame:F,exportWithDarkMode:B.exportWithDarkMode,frameRendering:k});F&&(C=0);let[l,b,M,Z]=Sl0(F?[F]:gn(f),C),{canvas:J,scale:w=1}=U(M,Z),K=MD(),{imageCache:Q}=await Kl0({imageCache:new Map,fileIds:Ql0(f).map((G)=>G.fileId),files:E});return xl0({canvas:J,rc:WA.canvas(J),elementsMap:RE(e4(f)),allElementsMap:RE(e4(iU(u))),visibleElements:f,scale:w,appState:{...B,frameRendering:k,viewBackgroundColor:A?D:null,scrollX:-l+C,scrollY:-b+C,zoom:K.zoom,shouldCacheIgnoreZoom:!1,theme:B.exportWithDarkMode?_3.DARK:_3.LIGHT},renderConfig:{canvasBackgroundColor:D,imageCache:Q,renderGrid:!1,isExporting:!0,embedsValidationStatus:new Map,elementsPendingErasure:new Set,pendingFlowchartNodes:null}}),J},yT=(u)=>document.createComment(` ${u} `),an=async(u,B,E,A)=>{let C=DMu(A?.exportingFrame??null,B.frameRendering??null),{exportPadding:D=xK,exportWithDarkMode:F=!1,viewBackgroundColor:U,exportScale:z=1,exportEmbedScene:k}=B,{exportingFrame:f=null}=A||{},l=FMu({elements:u,exportingFrame:f,exportWithDarkMode:F,frameRendering:C});f&&(D=0);let[b,M,Z,J]=Sl0(f?[f]:gn(l),D),w=-b+D,K=-M+D,Q=document.createElementNS(Z1,"svg");Q.setAttribute("version","1.1"),Q.setAttribute("xmlns",Z1),Q.setAttribute("viewBox",`0 0 ${Z} ${J}`),Q.setAttribute("width",`${Z*z}`),Q.setAttribute("height",`${J*z}`),F&&Q.setAttribute("filter",$_);let G=Q.ownerDocument.createElementNS(Z1,"defs"),L=Q.ownerDocument.createElementNS(Z1,"metadata");if(Q.appendChild(yT("svg-source:excalidraw")),Q.appendChild(L),Q.appendChild(G),k)try{YB3({metadataElement:L,payload:On(u,B,E||{},"local")})}catch(T){console.error(T)}let H=cn(u);if(H.length){let T=e4(u);for(let R of H){let Y=Q.ownerDocument.createElementNS(Z1,"clipPath");Y.setAttribute("id",R.id);let[a,I,O,i]=S3(R,T),N=(O-a)/2-(R.x-a),V=(i-I)/2-(R.y-I),h=Q.ownerDocument.createElementNS(Z1,"rect");h.setAttribute("transform",`translate(${R.x+w} ${R.y+K}) rotate(${R.angle} ${N} ${V})`),h.setAttribute("width",`${R.width}`),h.setAttribute("height",`${R.height}`),f||(h.setAttribute("rx",`${j6.radius}`),h.setAttribute("ry",`${j6.radius}`)),Y.appendChild(h),G.appendChild(Y)}}let q=A?.skipInliningFonts?[]:await PU.generateFontFaceDeclarations(u),x=`
`,v=Q.ownerDocument.createElementNS(Z1,"style");if(v.classList.add("style-fonts"),v.appendChild(document.createTextNode(`${x}${q.join(x)}`)),G.appendChild(v),B.exportBackground&&U){let T=Q.ownerDocument.createElementNS(Z1,"rect");T.setAttribute("x","0"),T.setAttribute("y","0"),T.setAttribute("width",`${Z}`),T.setAttribute("height",`${J}`),T.setAttribute("fill",U),Q.appendChild(T)}let W=WA.svg(Q),S=A?.renderEmbeddables??!1;return LB3(l,RE(e4(l)),W,Q,E||{},{offsetX:w,offsetY:K,isExporting:!0,exportWithDarkMode:F,renderEmbeddables:S,frameRendering:C,canvasBackgroundColor:U,embedsValidationStatus:S?new Map(l.filter((T)=>u3(T)).map((T)=>[T.id,!0])):new Map,reuseImages:A?.reuseImages??!0}),Q},YB3=({payload:u,metadataElement:B})=>{let E=sMu(JSON.stringify(tMu({text:u})),!0);B.appendChild(yT(`payload-type:${y4.excalidraw}`)),B.appendChild(yT("payload-version:2")),B.appendChild(yT("payload-start")),B.appendChild(document.createTextNode(E)),B.appendChild(yT("payload-end"))},RB3=({svg:u})=>{if(u.includes(`payload-type:${y4.excalidraw}`)){let B=u.match(/<!-- payload-start -->\s*(.+?)\s*<!-- payload-end -->/);if(!B)throw Error("INVALID");let E=(u.match(/<!-- payload-version:(\d+) -->/)?.[1]||"1")!=="1";try{let A=oMu(B[1],E),C=JSON.parse(A);if(!("encoded"in C)){if("type"in C&&C.type===WE.excalidraw)return A;throw Error("FAILED")}return eMu(C)}catch(A){throw console.error(A),Error("FAILED")}}throw Error("INVALID")},Sl0=(u,B)=>{let[E,A,C,D]=T1(u),F=K7(E,C)+B*2,U=K7(A,D)+B*2;return[E,A,F,U]},UMu=(u,B,E)=>{let[,,A,C]=Sl0(u,B).map((D)=>Math.trunc(D*E));return[A,C]},TB3=class{constructor(u){this.scoreFunction=u,j0(this,"content",[])}sinkDown(u){let B=this.content[u];for(;u>0;){let E=(u+1>>1)-1,A=this.content[E];if(this.scoreFunction(B)<this.scoreFunction(A))this.content[E]=B,this.content[u]=A,u=E;else break}}bubbleUp(u){let B=this.content.length,E=this.content[u],A=this.scoreFunction(E);for(;;){let C=u+1<<1,D=C-1,F=null,U=0;if(D<B){let z=this.content[D];U=this.scoreFunction(z),U<A&&(F=D)}if(C<B){let z=this.content[C];this.scoreFunction(z)<(F===null?A:U)&&(F=C)}if(F!==null)this.content[u]=this.content[F],this.content[F]=E,u=F;else break}}push(u){this.content.push(u),this.sinkDown(this.content.length-1)}pop(){if(this.content.length===0)return null;let u=this.content[0],B=this.content.pop();return this.content.length>0&&(this.content[0]=B,this.bubbleUp(0)),u}remove(u){if(this.content.length===0)return;let B=this.content.indexOf(u),E=this.content.pop();B<this.content.length&&(this.content[B]=E,this.scoreFunction(E)<this.scoreFunction(u)?this.sinkDown(B):this.bubbleUp(B))}size(){return this.content.length}rescoreElement(u){this.sinkDown(this.content.indexOf(u))}},Wl0=1,t1=40,OB3=(u,B)=>{let E=u.fixedSegments?u.fixedSegments.slice():null;if(E){let A=[];u.points.map((F)=>t(u.x+F[0],u.y+F[1])).forEach((F,U,z)=>{if(U<2)return A.push(F);let k=uO(F,z[U-1]),f=uO(z[U-1],z[U-2]);if(M9(k,f)){let l=E?.findIndex((M)=>M.index===U-1)??-1,b=E?.findIndex((M)=>M.index===U)??-1;b!==-1&&(E[b].start=t(z[U-2][0]-u.x,z[U-2][1]-u.y)),l!==-1&&E.splice(l,1),A.splice(-1,1),E.forEach((M)=>{M.index>U-1&&(M.index-=1)})}return A.push(F)});let C=[];A.forEach((F,U,z)=>{if(U<3)return C.push(F);if(G1(z[U-2],z[U-1])<Wl0){let k=E?.findIndex((b)=>b.index===U-2)??-1,f=E?.findIndex((b)=>b.index===U-1)??-1;f!==-1&&E.splice(f,1),k!==-1&&E.splice(k,1),C.splice(-2,2),E.forEach((b)=>{b.index>U-2&&(b.index-=2)});let l=_k(F,z[U-1]);return C.push(t(l?F[0]:z[U-2][0],l?z[U-2][1]:F[1]))}C.push(F)});let D=E.filter((F)=>F.index!==1&&F.index!==C.length-1);return D.length===0?DM(Tl0(Ol0(Rl0(u,Yl0(u,B,C.map((F)=>t(F[0]-u.x,F[1]-u.y)),u.startBinding&&nq(u.startBinding.elementId,B),u.endBinding&&nq(u.endBinding.elementId,B)))??[])),D,null,null):(Z3.DEV&&l2(Il0(C),"Invalid elbow points with fixed segments"),DM(C,D,u.startIsSpecial,u.endIsSpecial))}return{x:u.x,y:u.y,points:u.points,fixedSegments:u.fixedSegments,startIsSpecial:u.startIsSpecial,endIsSpecial:u.endIsSpecial}},IB3=(u,B,E)=>{let A=B.map((v)=>v.index),C=(u.fixedSegments?.map((v)=>v.index)??[]).findIndex((v)=>!A.includes(v));if(C===-1||!u.fixedSegments?.[C])return{points:u.points};let D=u.fixedSegments[C].index,F=u.fixedSegments[C-1],U=u.fixedSegments[C+1],z=u.x+(F?F.end[0]:0),k=u.y+(F?F.end[1]:0),f=F?null:u.startBinding,l=U?null:u.endBinding,{startHeading:b,endHeading:M,startGlobalPoint:Z,endGlobalPoint:J,hoveredStartElement:w,hoveredEndElement:K,...Q}=Yl0({x:z,y:k,startBinding:f,endBinding:l,startArrowhead:null,endArrowhead:null,points:u.points},E,[t(0,0),t(u.x+(U?.start[0]??u.points[u.points.length-1][0])-z,u.y+(U?.start[1]??u.points[u.points.length-1][1])-k)],f&&nq(f.elementId,E),l&&nq(l.elementId,E),{isDragging:!1}),{points:G}=DM(Tl0(Ol0(Rl0(u,{startHeading:b,endHeading:M,startGlobalPoint:Z,endGlobalPoint:J,hoveredStartElement:w,hoveredEndElement:K,...Q})??[])),B,null,null),L=[];if(F)for(let v=0;v<F.index;v++)L.push(t(u.x+u.points[v][0],u.y+u.points[v][1]));if(G.forEach((v)=>{L.push(t(u.x+(F?F.end[0]:0)+v[0],u.y+(F?F.end[1]:0)+v[1]))}),U)for(let v=U.index;v<u.points.length;v++)L.push(t(u.x+u.points[v][0],u.y+u.points[v][1]));let H=(U?.index??u.points.length)-(F?.index??0)-1,q=B.map((v)=>v.index>D?{...v,index:v.index-H+(G.length-1)}:v),x=L.flatMap((v,W)=>{let S=L[W-1],T=L[W+1];if(S&&T){let R=uO(v,S),Y=uO(T,v);if(M9(R,Y))return q.forEach((a)=>{a.index>W&&(a.index-=1)}),[];if(M9(R,lbu(Y)))return q.forEach((a)=>{a.index>W&&(a.index+=1)}),[v,v]}return[v]});return DM(x,q,!1,!1)},PB3=(u,B,E,A,C,D)=>{let F=B.map((H,q)=>u.fixedSegments==null||u.fixedSegments[q]===void 0||u.fixedSegments[q].index!==H.index||(H.start[0]!==u.fixedSegments[q].start[0]&&H.end[0]!==u.fixedSegments[q].end[0])!=(H.start[1]!==u.fixedSegments[q].start[1]&&H.end[1]!==u.fixedSegments[q].end[1])?q:null).filter((H)=>H!==null).shift();if(F==null)return{points:u.points};let U=u.fixedSegments?.findIndex((H)=>H.index===1)??-1,z=u.fixedSegments?.findIndex((H)=>H.index===u.points.length-1)??-1,k=G1(B[F].start,B[F].end),f=k<t1+5;if(U===-1&&B[F].index===1&&C){let H=pk(E),q=(H?M9(E,l9):M9(E,k5))?f?k/2:t1:f?-k/2:-t1;B[F].start=t(B[F].start[0]+(H?q:0),B[F].start[1]+(H?0:q))}if(z===-1&&B[F].index===u.points.length-1&&D){let H=pk(A),q=(H?M9(A,l9):M9(A,k5))?f?k/2:t1:f?-k/2:-t1;B[F].end=t(B[F].end[0]+(H?q:0),B[F].end[1]+(H?0:q))}let l=B.map((H)=>({...H,start:t(u.x+H.start[0],u.y+H.start[1]),end:t(u.x+H.end[0],u.y+H.end[1])})),b=u.points.map((H,q)=>t(u.x+H[0],u.y+H[1])),M=l[F].index-1,Z=l[F].index,J=l[F].start,w=l[F].end,K=b[M-1]&&!DD(b[M],b[M-1])?_k(b[M-1],b[M]):void 0,Q=b[Z+1]&&!DD(b[Z],b[Z+1])?_k(b[Z+1],b[Z]):void 0;if(K!==void 0){let H=K?1:0;b[M-1][H]=J[H]}if(b[M]=J,b[Z]=w,Q!==void 0){let H=Q?1:0;b[Z+1][H]=w[H]}let G=l.findIndex((H)=>H.index===M);if(G!==-1){let H=_k(l[G].end,l[G].start)?1:0;l[G].start[H]=J[H],l[G].end=J}let L=l.findIndex((H)=>H.index===Z+1);if(L!==-1){let H=_k(l[L].end,l[L].start)?1:0;l[L].end[H]=w[H],l[L].start=w}if(U===-1&&M===0){let H=C?pk(E):_k(b[1],b[0]);b.unshift(t(H?J[0]:u.x+u.points[0][0],H?u.y+u.points[0][1]:J[1])),C&&b.unshift(t(u.x+u.points[0][0],u.y+u.points[0][1]));for(let q of l)q.index+=C?2:1}if(z===-1&&Z===u.points.length-1){let H=pk(A);b.push(t(H?w[0]:u.x+u.points[u.points.length-1][0],H?u.y+u.points[u.points.length-1][1]:w[1])),D&&b.push(t(u.x+u.points[u.points.length-1][0],u.y+u.points[u.points.length-1][1]))}return DM(b,l.map((H)=>({...H,start:t(H.start[0]-u.x,H.start[1]-u.y),end:t(H.end[0]-u.x,H.end[1]-u.y)})),!1,!1)},jB3=(u,B,E,A,C,D,F,U,z)=>{let k=u.startIsSpecial??null,f=u.endIsSpecial??null,l=B.map((w,K)=>K===0?t(u.x+w[0],u.y+w[1]):K===B.length-1?t(u.x+w[0],u.y+w[1]):t(u.x+u.points[K][0],u.y+u.points[K][1])),b=E.map((w)=>({...w,start:t(u.x+(w.start[0]-B[0][0]),u.y+(w.start[1]-B[0][1])),end:t(u.x+(w.end[0]-B[0][0]),u.y+(w.end[1]-B[0][1]))})),M=[],Z=2+(k?1:0),J=2+(f?1:0);for(;M.length+Z<l.length-J;)M.push(l[M.length+Z]);{let w=l[k?2:1],K=l[k?3:2],Q=pk(A),G=pk(KK(O4(w,K)));if(U&&Q===G){let L=Q?M9(A,l9):M9(A,k5);if(M.unshift(t(G?D[0]+(L?t1:-t1):K[0],G?K[1]:D[1]+(L?t1:-t1))),M.unshift(t(Q?D[0]+(L?t1:-t1):D[0],Q?D[1]:D[1]+(L?t1:-t1))),!k){k=!0;for(let H of b)H.index>1&&(H.index+=1)}}else if(M.unshift(t(G?D[0]:w[0],G?w[1]:D[1])),k){k=!1;for(let L of b)L.index>1&&(L.index-=1)}M.unshift(D)}{let w=l[l.length-(f?3:2)],K=l[l.length-(f?4:3)],Q=pk(C),G=_k(K,w);if(z&&Q===G){let L=Q?M9(C,l9):M9(C,k5);M.push(t(G?F[0]+(L?t1:-t1):K[0],G?K[1]:F[1]+(L?t1:-t1))),M.push(t(Q?F[0]+(L?t1:-t1):F[0],Q?F[1]:F[1]+(L?t1:-t1))),f||(f=!0)}else M.push(t(G?F[0]:w[0],G?w[1]:F[1])),f&&(f=!1)}return M.push(F),DM(M,b.map(({index:w})=>({index:w,start:M[w-1],end:M[w]})).map((w)=>({...w,start:t(w.start[0]-D[0],w.start[1]-D[1]),end:t(w.end[0]-D[0],w.end[1]-D[1])})),k,f)},J6=1e6,Vn=(u,B,E,A)=>{if(u.points.length<2)return{points:E.points??u.points};(u.x<-J6||u.x>J6||u.y<-J6||u.y>J6||u.x+(E?.points?.[E?.points?.length-1]?.[0]??0)<-J6||u.x+(E?.points?.[E?.points?.length-1]?.[0]??0)>J6||u.y+(E?.points?.[E?.points?.length-1]?.[1]??0)<-J6||u.y+(E?.points?.[E?.points?.length-1]?.[1]??0)>J6||u.x+(u?.points?.[u?.points?.length-1]?.[0]??0)<-J6||u.x+(u?.points?.[u?.points?.length-1]?.[0]??0)>J6||u.y+(u?.points?.[u?.points?.length-1]?.[1]??0)<-J6||u.y+(u?.points?.[u?.points?.length-1]?.[1]??0)>J6)&&console.error("Elbow arrow (or update) is outside reasonable bounds (> 1e6)",{arrow:u,updates:E}),u.x=$3(u.x,-J6,J6),u.y=$3(u.y,-J6,J6),E.points&&(E.points=E.points.map(([K,Q])=>t($3(K,-J6,J6),$3(Q,-J6,J6)))),Z3.PROD||(l2(!E.points||E.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)"),l2(!u.fixedSegments||u.fixedSegments.map((K)=>K.start[0]===K.end[0]||K.start[1]===K.end[1]).every(Boolean),"Fixed segments must be either horizontal or vertical"),l2(!E.fixedSegments||E.fixedSegments.map((K)=>K.start[0]===K.end[0]||K.start[1]===K.end[1]).every(Boolean),"Updates to fixed segments must be either horizontal or vertical"),l2(u.points.slice(1).map((K,Q)=>K[0]===u.points[Q][0]||K[1]===u.points[Q][1]),"Elbow arrow segments must be either horizontal or vertical"));let C=E.points?E.points&&E.points.length===2?u.points.map((K,Q)=>Q===0?E.points[0]:Q===u.points.length-1?E.points[1]:K):E.points.slice():u.points.slice(),D=typeof E.startBinding<"u"?E.startBinding:u.startBinding,F=typeof E.endBinding<"u"?E.endBinding:u.endBinding,U=D&&nq(D.elementId,B),z=F&&nq(F.elementId,B);if(B.size===0&&Il0(C)||U?.id!==D?.elementId||z?.id!==F?.elementId)return DM(C.map((K)=>t(u.x+K[0],u.y+K[1])),u.fixedSegments,u.startIsSpecial,u.endIsSpecial);let{startHeading:k,endHeading:f,startGlobalPoint:l,endGlobalPoint:b,hoveredStartElement:M,hoveredEndElement:Z,...J}=Yl0({x:u.x,y:u.y,startBinding:D,endBinding:F,startArrowhead:u.startArrowhead,endArrowhead:u.endArrowhead,points:u.points},B,C,U,z,A),w=E.fixedSegments??u.fixedSegments??[];return!E.points&&!E.fixedSegments&&!E.startBinding&&!E.endBinding?OB3(u,B):E.startBinding===u.startBinding&&E.endBinding===u.endBinding&&(E.points??[]).every((K,Q)=>DD(K,u.points[Q]??t(1/0,1/0)))?{}:w.length===0?DM(Tl0(Ol0(Rl0(u,{startHeading:k,endHeading:f,startGlobalPoint:l,endGlobalPoint:b,hoveredStartElement:M,hoveredEndElement:Z,...J})??[])),w,null,null):(u.fixedSegments?.length??0)>w.length?IB3(u,w,B):E.points?E.points&&E.fixedSegments?E:jB3(u,C,w,k,f,l,b,M,Z):PB3(u,w,k,f,M,Z)},Yl0=(u,B,E,A,C,D)=>{let F=X_(E[0],V5(u.x,u.y)),U=X_(E[E.length-1],V5(u.x,u.y)),z=A,k=C;if(D?.isDragging){let x=Array.from(B.values());z=izu(F,B,x,D?.zoom)||A,k=izu(U,B,x,D?.zoom)||C}let f=jzu({...u,elbowed:!0,points:E},"start",u.startBinding?.fixedPoint,F,A,z,D?.isDragging),l=jzu({...u,elbowed:!0,points:E},"end",u.endBinding?.fixedPoint,U,C,k,D?.isDragging),b=Nzu(f,l,B,z,F),M=Nzu(l,f,B,k,U),Z=[f[0]-2,f[1]-2,f[0]+2,f[1]+2],J=[l[0]-2,l[1]-2,l[0]+2,l[1]+2],w=z?ED(z,cb(b,u.startArrowhead?K6*6:K6*2,1)):Z,K=k?ED(k,cb(M,u.endArrowhead?K6*6:K6*2,1)):J,Q=cq(f,k?ED(k,cb(M,t1,t1)):J)||cq(l,z?ED(z,cb(b,t1,t1)):Z),G=zMu(Q?[Z,J]:[w,K]),L=aB3(Q?Z:w,Q?J:K,G,Q?cb(b,!z&&!k?0:t1,0):cb(b,!z&&!k?0:t1-(u.startArrowhead?K6*6:K6*2),t1),Q?cb(M,!z&&!k?0:t1,0):cb(M,!z&&!k?0:t1-(u.endArrowhead?K6*6:K6*2),t1),Q,z&&ED(z),k&&ED(k)),H=Pzu(L[0],b,f),q=Pzu(L[1],M,l);return{dynamicAABBs:L,startDonglePosition:H,startGlobalPoint:f,startHeading:b,endDonglePosition:q,endGlobalPoint:l,endHeading:M,commonBounds:G,hoveredStartElement:z,hoveredEndElement:k,boundsOverlap:Q,startElementBounds:w,endElementBounds:K}},Rl0=(u,B)=>{let{dynamicAABBs:E,startDonglePosition:A,startGlobalPoint:C,startHeading:D,endDonglePosition:F,endGlobalPoint:U,endHeading:z,commonBounds:k,hoveredEndElement:f}=B,l=VB3(E,A||C,D,F||U,z,k),b=A&&J_(A,l),M=F&&J_(F,l),Z=J_(U,l);Z&&f&&(Z.closed=!0);let J=J_(C,l);J&&u.startBinding&&(J.closed=!0);let w=b&&M&&(cq(b.pos,E[1])||cq(M.pos,E[0])),K=NB3(b||J,M||Z,l,D||l9,z||l9,w?[]:E);if(K){let Q=K.map((G)=>[G.pos[0],G.pos[1]]);return b&&Q.unshift(C),M&&Q.push(U),Q}return null},cb=(u,B,E)=>{switch(u){case aB:return[B,E,E,E];case l9:return[E,B,E,E];case k5:return[E,E,B,E]}return[E,E,E,B]},NB3=(u,B,E,A,C,D)=>{let F=Ak0(u.pos,B.pos),U=new TB3((z)=>z.f);for(U.push(u);U.size()>0;){let z=U.pop();if(!z||z.closed)continue;if(z===B)return iB3(u,z);z.closed=!0;let k=mB3(z.addr,E);for(let f=0;f<4;f++){let l=k[f];if(!l||l.closed)continue;let b=ck(l.pos,z.pos,0.5);if(x33(...D.map((G)=>cq(b,G))))continue;let M=rB3(f),Z=z.parent?KK(O4(z.pos,z.parent.pos)):A,J=lbu(Z);if(M9(J,M)||azu(u.addr,l.addr)&&M9(M,A)||azu(B.addr,l.addr)&&M9(M,C))continue;let w=Z!==M,K=z.g+Ak0(l.pos,z.pos)+(w?Math.pow(F,3):0),Q=l.visited;if(!Q||K<l.g){let G=hB3(l,B,M,C);l.visited=!0,l.parent=z,l.h=Ak0(B.pos,l.pos)+G*Math.pow(F,2),l.g=K,l.f=l.g+l.h,Q?U.rescoreElement(l):U.push(l)}}}return null},iB3=(u,B)=>{let E=B,A=[];for(;E.parent;)A.unshift(E),E=E.parent;return A.unshift(u),A},Ak0=(u,B)=>Math.abs(u[0]-B[0])+Math.abs(u[1]-B[1]),aB3=(u,B,E,A,C,D,F,U)=>{let z=F??u,k=U??B,[f,l,b,M]=A??[0,0,0,0],[Z,J,w,K]=C??[0,0,0,0],Q=[u[0]>B[2]?u[1]>B[3]||u[3]<B[1]?Math.min((z[0]+k[2])/2,u[0]-M):(z[0]+k[2])/2:u[0]>B[0]?u[0]-M:E[0]-M,u[1]>B[3]?u[0]>B[2]||u[2]<B[0]?Math.min((z[1]+k[3])/2,u[1]-f):(z[1]+k[3])/2:u[1]>B[1]?u[1]-f:E[1]-f,u[2]<B[0]?u[1]>B[3]||u[3]<B[1]?Math.max((z[2]+k[0])/2,u[2]+l):(z[2]+k[0])/2:u[2]<B[2]?u[2]+l:E[2]+l,u[3]<B[1]?u[0]>B[2]||u[2]<B[0]?Math.max((z[3]+k[1])/2,u[3]+b):(z[3]+k[1])/2:u[3]<B[3]?u[3]+b:E[3]+b],G=[B[0]>u[2]?B[1]>u[3]||B[3]<u[1]?Math.min((k[0]+z[2])/2,B[0]-K):(k[0]+z[2])/2:B[0]>u[0]?B[0]-K:E[0]-K,B[1]>u[3]?B[0]>u[2]||B[2]<u[0]?Math.min((k[1]+z[3])/2,B[1]-Z):(k[1]+z[3])/2:B[1]>u[1]?B[1]-Z:E[1]-Z,B[2]<u[0]?B[1]>u[3]||B[3]<u[1]?Math.max((k[2]+z[0])/2,B[2]+J):(k[2]+z[0])/2:B[2]<u[2]?B[2]+J:E[2]+J,B[3]<u[1]?B[0]>u[2]||B[2]<u[0]?Math.max((k[3]+z[1])/2,B[3]+w):(k[3]+z[1])/2:B[3]<u[3]?B[3]+w:E[3]+w],L=zMu([Q,G]);if(!D&&Q[2]-Q[0]+G[2]-G[0]>L[2]-L[0]+0.00000000001&&Q[3]-Q[1]+G[3]-G[1]>L[3]-L[1]+0.00000000001){let[H,q]=[(G[0]+G[2])/2,(G[1]+G[3])/2];if(B[0]>u[2]&&u[1]>B[3]){let x=Q[2]+(G[0]-Q[2])/2,v=G[3]+(Q[1]-G[3])/2;return z5(V5(u[2]-H,u[1]-q),V5(u[0]-H,u[3]-q))>0?[[Q[0],Q[1],x,Q[3]],[x,G[1],G[2],G[3]]]:[[Q[0],v,Q[2],Q[3]],[G[0],G[1],G[2],v]]}else if(u[2]<B[0]&&u[3]<B[1]){let x=Q[2]+(G[0]-Q[2])/2,v=Q[3]+(G[1]-Q[3])/2;return z5(V5(u[0]-H,u[1]-q),V5(u[2]-H,u[3]-q))>0?[[Q[0],Q[1],Q[2],v],[G[0],v,G[2],G[3]]]:[[Q[0],Q[1],x,Q[3]],[x,G[1],G[2],G[3]]]}else if(u[0]>B[2]&&u[3]<B[1]){let x=G[2]+(Q[0]-G[2])/2,v=Q[3]+(G[1]-Q[3])/2;return z5(V5(u[2]-H,u[1]-q),V5(u[0]-H,u[3]-q))>0?[[x,Q[1],Q[2],Q[3]],[G[0],G[1],x,G[3]]]:[[Q[0],Q[1],Q[2],v],[G[0],v,G[2],G[3]]]}else if(u[0]>B[2]&&u[1]>B[3]){let x=G[2]+(Q[0]-G[2])/2,v=G[3]+(Q[1]-G[3])/2;return z5(V5(u[0]-H,u[1]-q),V5(u[2]-H,u[3]-q))>0?[[x,Q[1],Q[2],Q[3]],[G[0],G[1],x,G[3]]]:[[Q[0],v,Q[2],Q[3]],[G[0],G[1],G[2],v]]}}return[Q,G]},VB3=(u,B,E,A,C,D)=>{let F=new Set,U=new Set;E===iB||E===l9?U.add(B[1]):F.add(B[0]),C===iB||C===l9?U.add(A[1]):F.add(A[0]),u.forEach((f)=>{F.add(f[0]),F.add(f[2]),U.add(f[1]),U.add(f[3])}),F.add(D[0]),F.add(D[2]),U.add(D[1]),U.add(D[3]);let z=Array.from(U).sort((f,l)=>f-l),k=Array.from(F).sort((f,l)=>f-l);return{row:z.length,col:k.length,data:z.flatMap((f,l)=>k.map((b,M)=>({f:0,g:0,h:0,closed:!1,visited:!1,parent:null,addr:[M,l],pos:[b,f]})))}},Pzu=(u,B,E)=>{switch(B){case aB:return t(E[0],u[1]);case l9:return t(u[2],E[1]);case k5:return t(E[0],u[3])}return t(u[0],E[1])},hB3=(u,B,E,A)=>{if(A===l9)switch(E){case l9:return u.pos[0]>=B.pos[0]?4:u.pos[1]===B.pos[1]?0:2;case aB:return u.pos[1]>B.pos[1]&&u.pos[0]<B.pos[0]?1:3;case k5:return u.pos[1]<B.pos[1]&&u.pos[0]<B.pos[0]?1:3;case iB:return u.pos[1]===B.pos[1]?4:2}else if(A===iB)switch(E){case l9:return u.pos[1]===B.pos[1]?4:2;case aB:return u.pos[1]>B.pos[1]&&u.pos[0]>B.pos[0]?1:3;case k5:return u.pos[1]<B.pos[1]&&u.pos[0]>B.pos[0]?1:3;case iB:return u.pos[0]<=B.pos[0]?4:u.pos[1]===B.pos[1]?0:2}else if(A===aB)switch(E){case l9:return u.pos[1]>B.pos[1]&&u.pos[0]<B.pos[0]?1:3;case aB:return u.pos[1]>=B.pos[1]?4:u.pos[0]===B.pos[0]?0:2;case k5:return u.pos[0]===B.pos[0]?4:2;case iB:return u.pos[1]>B.pos[1]&&u.pos[0]>B.pos[0]?1:3}else if(A===k5)switch(E){case l9:return u.pos[1]<B.pos[1]&&u.pos[0]<B.pos[0]?1:3;case aB:return u.pos[0]===B.pos[0]?4:2;case k5:return u.pos[1]<=B.pos[1]?4:u.pos[0]===B.pos[0]?0:2;case iB:return u.pos[1]<B.pos[1]&&u.pos[0]>B.pos[0]?1:3}return 0},mB3=([u,B],E)=>[cT([u,B-1],E),cT([u+1,B],E),cT([u,B+1],E),cT([u-1,B],E)],cT=([u,B],E)=>u<0||u>=E.col||B<0||B>=E.row?null:E.data[B*E.col+u]??null,J_=(u,B)=>{for(let E=0;E<B.col;E++)for(let A=0;A<B.row;A++){let C=cT([E,A],B);if(C&&u[0]===C.pos[0]&&u[1]===C.pos[1])return C}return null},zMu=(u)=>[Math.min(...u.map((B)=>B[0])),Math.min(...u.map((B)=>B[1])),Math.max(...u.map((B)=>B[2])),Math.max(...u.map((B)=>B[3]))],nq=(u,B)=>{let E=B.get(u);return E&&iA(E)?E:null},DM=(u,B,E,A)=>{let C=u[0][0],D=u[0][1],F=u.map((U)=>X_(U,b9(O4(u[0]),-1)));return(C<-J6||C>J6||D<-J6||D>J6||C+F[F.length-1][0]<-J6||D+F[F.length-1][0]>J6||C+F[F.length-1][1]<-J6||D+F[F.length-1][1]>J6)&&console.error("Elbow arrow normalization is outside reasonable bounds (> 1e6)",{x:C,y:D,points:F,...QK(F)}),F=F.map(([U,z])=>t($3(U,-1e6,1e6),$3(z,-1e6,1e6))),{points:F,x:$3(C,-1e6,1e6),y:$3(D,-1e6,1e6),fixedSegments:(B?.length??0)>0?B:null,...QK(F),startIsSpecial:E,endIsSpecial:A}},Tl0=(u)=>{if(u.length>1){let B=Math.abs(u[0][1]-u[1][1])<Math.abs(u[0][0]-u[1][0]);return u.filter((E,A)=>{if(A===0||A===u.length-1)return!0;let C=u[A+1],D=Math.abs(E[1]-C[1])<Math.abs(E[0]-C[0]);return B===D?(B=D,!1):(B=D,!0)})}return u},Ol0=(u)=>u.length>=4?u.filter((B,E)=>{if(E===0||E===u.length-1)return!0;let A=u[E-1];return G1(A,B)>Wl0}):u,rB3=(u)=>{switch(u){case 0:return aB;case 1:return l9;case 2:return k5}return iB},jzu=(u,B,E,A,C,D,F)=>{if(F){if(D){let U=gq(u,D,B);return h73(D,U)}return A}if(C){let U=Mk0(E||[0,0],C);return Math.abs(wn(C,U)-K6)>0.01?gq(u,C,B):U}return A},Nzu=(u,B,E,A,C)=>N73(u,B,A,A&&ED(A,Array(4).fill(wn(A,u))),E,C),izu=(u,B,E,A)=>aA(OA(u),E,B,A,!0,!0),azu=(u,B)=>u[0]===B[0]&&u[1]===B[1],Il0=(u,B=Wl0)=>u.slice(1).map((E,A)=>Math.abs(E[0]-u[A][0])<B||Math.abs(E[1]-u[A][1])<B).every(Boolean),$B3,yB3=(u)=>Object.keys(n6).includes(u)?n6[u]:ok,Oq=(u,B)=>{if(!B)return null;let E=B.focus||0;return K4(u)?W_(B)?{...B,focus:E,fixedPoint:Xn(B.fixedPoint??[0,0])}:null:{...B,focus:E}},gb=(u,B)=>{let E={type:B.type||u.type,version:u.version||1,versionNonce:u.versionNonce??0,index:u.index??null,isDeleted:u.isDeleted??!1,id:u.id||TE(),fillStyle:u.fillStyle||x9.fillStyle,strokeWidth:u.strokeWidth||x9.strokeWidth,strokeStyle:u.strokeStyle??x9.strokeStyle,roughness:u.roughness??x9.roughness,opacity:u.opacity==null?x9.opacity:u.opacity,angle:u.angle||0,x:B.x??u.x??0,y:B.y??u.y??0,strokeColor:u.strokeColor||x9.strokeColor,backgroundColor:u.backgroundColor||x9.backgroundColor,width:u.width||0,height:u.height||0,seed:u.seed??1,groupIds:u.groupIds??[],frameId:u.frameId??null,roundness:u.roundness?u.roundness:u.strokeSharpness==="round"?{type:RK(u.type)?b2.LEGACY:b2.PROPORTIONAL_RADIUS}:null,boundElements:u.boundElementIds?u.boundElementIds.map((A)=>({type:"arrow",id:A})):u.boundElements??[],updated:u.updated??eq(),link:u.link?j8(u.link):null,locked:u.locked??!1};return(("customData"in u)||("customData"in B))&&(E.customData=("customData"in B)?B.customData:u.customData),{...u,...E,...yl0(E),...B}},cB3=(u)=>{switch(u={...u},u.type){case"text":delete u.rawText;let{fontSize:B,fontFamily:E}=u;if("font"in u){let[f,l]=u.font.split(" ");B=parseFloat(f),E=yB3(l)}let A=typeof u.text=="string"&&u.text||"",C=u.lineHeight||(u.height?W33(u):JM(u.fontFamily));return u=gb(u,{fontSize:B,fontFamily:E,text:A,textAlign:u.textAlign||dq,verticalAlign:u.verticalAlign||FO,containerId:u.containerId??null,originalText:u.originalText||A,autoResize:u.autoResize??!0,lineHeight:C}),!A&&!u.isDeleted&&(u={...u,originalText:A,isDeleted:!0},u=rO(u)),u;case"freedraw":return gb(u,{points:u.points,lastCommittedPoint:null,simulatePressure:u.simulatePressure,pressures:u.pressures});case"image":return gb(u,{status:u.status||"pending",fileId:u.fileId,scale:u.scale||[1,1],crop:u.crop??null});case"line":case"draw":let{startArrowhead:D=null,endArrowhead:F=null}=u,U=u.x,z=u.y,k=!Array.isArray(u.points)||u.points.length<2?[t(0,0),t(u.width,u.height)]:u.points;return(k[0][0]!==0||k[0][1]!==0)&&({points:k,x:U,y:z}=M4.getNormalizedPoints(u)),gb(u,{type:u.type==="draw"?"line":u.type,startBinding:Oq(u,u.startBinding),endBinding:Oq(u,u.endBinding),lastCommittedPoint:null,startArrowhead:D,endArrowhead:F,points:k,x:U,y:z,...QK(k)});case"arrow":{let{startArrowhead:f=null,endArrowhead:l="arrow"}=u,b=u.x,M=u.y,Z=!Array.isArray(u.points)||u.points.length<2?[t(0,0),t(u.width,u.height)]:u.points;(Z[0][0]!==0||Z[0][1]!==0)&&({points:Z,x:b,y:M}=M4.getNormalizedPoints(u));let J={type:u.type,startBinding:Oq(u,u.startBinding),endBinding:Oq(u,u.endBinding),lastCommittedPoint:null,startArrowhead:f,endArrowhead:l,points:Z,x:b,y:M,elbowed:u.elbowed,...QK(Z)};return K4(u)?gb(u,{...J,elbowed:!0,startBinding:Oq(u,u.startBinding),endBinding:Oq(u,u.endBinding),fixedSegments:u.fixedSegments,startIsSpecial:u.startIsSpecial,endIsSpecial:u.endIsSpecial}):gb(u,J)}case"ellipse":case"rectangle":case"diamond":case"iframe":case"embeddable":return gb(u,{});case"magicframe":case"frame":return gb(u,{name:u.name??null})}return null},gB3=(u,B)=>{if(u.boundElements){let E=u.boundElements.slice(),A=new Set;u.boundElements=E.reduce((C,D)=>{let F=B.get(D.id);if(F&&!A.has(D.id)){if(A.add(D.id),F.isDeleted)return C;C.push(D),l4(F)&&!F.containerId&&(F.containerId=u.id)}return C},[])}},_B3=(u,B)=>{let E=u.containerId?B.get(u.containerId):null;if(!E){u.containerId=null;return}if(!u.isDeleted&&E.boundElements&&!E.boundElements.find((A)=>A.id===u.id)){let A=(E.boundElements||(E.boundElements=[])).slice();A.push({type:"text",id:u.id}),E.boundElements=A}},nB3=(u,B)=>{u.frameId&&(B.get(u.frameId)||(u.frameId=null))},hn=(u,B,E)=>{let A=new Set,C=B?e4(B):null,D=iU((u||[]).reduce((U,z)=>{if(z.type!=="selection"&&!aK(z)){let k=cB3(z);if(k){let f=C?.get(z.id);f&&f.version>k.version&&(k=rO(k,f.version)),A.has(k.id)&&(k={...k,id:TE()}),A.add(k.id),U.push(k)}}return U},[]));if(!E?.repairBindings)return D;let F=e4(D);for(let U of D)U.frameId&&nB3(U,F),l4(U)&&U.containerId?_B3(U,F):U.boundElements&&gB3(U,F),E.refreshDimensions&&l4(U)&&Object.assign(U,fl0(U,l5(U,F),F)),W3(U)&&(U.startBinding&&(!F.has(U.startBinding.elementId)||!j3(U))&&(U.startBinding=null),U.endBinding&&(!F.has(U.endBinding.elementId)||!j3(U))&&(U.endBinding=null));return D.map((U)=>{if(K4(U)&&U.startBinding==null&&U.endBinding==null&&!Il0(U.points))return{...U,...Vn(U,F,{points:[t(0,0),U.points[U.points.length-1]]}),index:U.index};if(K4(U)&&U.startBinding&&U.endBinding&&U.startBinding.elementId===U.endBinding.elementId&&U.points.length>1&&U.points.some(([z,k])=>Math.abs(z)>1e6||Math.abs(k)>1e6)){console.error("Fixing self-bound elbow arrow",U.id);let z=F.get(U.startBinding.elementId);return z?{...U,x:z.x+z.width/2,y:z.y-5,width:z.width,height:z.height,points:[t(0,0),t(0,-10),t(z.width/2+5,-10),t(z.width/2+5,z.height/2+5)]}:(console.error("Bound element not found",U.startBinding.elementId),U)}return U})},pB3=(u,B,E)=>{let A=B[u];return A!==void 0?A:E[u]},Vzu,kMu=(u,B)=>{u=u||{};let E=MD(),A={};for(let C of Object.keys(Vzu))if(C in u){let[D,F]=Vzu[C](u,E);A[D]=F}for(let[C,D]of Object.entries(E)){let F=u[C],U=B?B[C]:void 0;A[C]=F!==void 0?F:U!==void 0?U:D}return{...A,cursorButton:B?.cursorButton||"up",penDetected:B?.penDetected??(u.penMode?u.penDetected??!1:!1),activeTool:{...n9(E,A.activeTool.type&&$B3[A.activeTool.type]?A.activeTool:{type:"selection"}),lastActiveTool:null,locked:A.activeTool.locked??!1},zoom:{value:jU(hq(u.zoom)?u.zoom:u.zoom?.value??E.zoom.value)},openSidebar:typeof u.openSidebar=="string"?{name:VA.name}:A.openSidebar,gridSize:n73(hq(u.gridSize)?u.gridSize:zO),gridStep:sf0(hq(u.gridStep)?u.gridStep:Jku),editingFrame:null}},iO=(u,B,E,A)=>({elements:hn(u?.elements,E,A),appState:kMu(u?.appState,B||null),files:u?.files||{}}),hzu=(u)=>{let B=hn(z6(u.elements),null);return B.length?{...u,elements:B}:null},mn=(u=[],B)=>{let E=[];for(let A of u)if(Array.isArray(A)){let C=hzu({status:B,elements:A,id:TE(),created:Date.now()});C&&E.push(C)}else{let C=A,D=hzu({...C,id:C.id||TE(),status:C.status||B,created:C.created||Date.now()});D&&E.push(D)}return E},AD=32,w6=12,uM=256,fMu=50,lK="NOT_SPREADSHEET",AO="VALID_SPREADSHEET",gT=(u)=>{let B=/^([-+]?)[$€£¥₩]?([-+]?)([\d.,]+)[%]?$/.exec(u);return B?parseFloat(`${(B[1]||B[2])+B[3]}`.replace(/,/g,"")):null},Ck0=(u,B)=>u.slice(1).every((E)=>gT(E[B])!==null),mzu=(u)=>{let B=u[0].length;if(B>2)return{type:lK,reason:"More than 2 columns"};if(B===1){if(!Ck0(u,0))return{type:lK,reason:"Value is not numeric"};let z=gT(u[0][0])===null,k=(z?u.slice(1):u).map((f)=>gT(f[0]));return k.length<2?{type:lK,reason:"Less than two rows"}:{type:AO,spreadsheet:{title:z?u[0][0]:null,labels:null,values:k}}}let E=Ck0(u,0),A=Ck0(u,1);if(!E&&!A)return{type:lK,reason:"Value is not numeric"};let[C,D]=A?[0,1]:[1,0],F=gT(u[0][D])===null,U=F?u.slice(1):u;return U.length<2?{type:lK,reason:"Less than 2 rows"}:{type:AO,spreadsheet:{title:F?u[0][D]:null,labels:U.map((z)=>z[C]),values:U.map((z)=>gT(z[D]))}}},dB3=(u)=>{let B=[];for(let E=0;E<u[0].length;E++){let A=[];for(let C=0;C<u.length;C++)A.push(u[C][E]);B.push(A)}return B},sB3=(u)=>{let B=u.trim().split(`
`).map((C)=>C.trim().split("\t"));if(B.length&&B[0].length!==2&&(B=u.trim().split(`
`).map((C)=>C.trim().split(","))),B.length===0)return{type:lK,reason:"No values"};let E=B[0].length;if(!B.every((C)=>C.length===E))return{type:lK,reason:"All rows don't have same number of columns"};let A=mzu(B);if(A.type!==AO){let C=mzu(dB3(B));if(C.type===AO)return C}return A},N_,PA,lMu=(u)=>{let B=(AD+w6)*u.values.length+w6,E=uM+w6*2;return{chartWidth:B,chartHeight:E}},oB3=(u,B,E,A,C)=>u.labels?.map((D,F)=>N8({groupIds:[A],backgroundColor:C,...PA,text:D.length>8?`${D.slice(0,5)}...`:D,x:B+F*(AD+w6)+w6*2,y:E+w6/2,width:AD,angle:5.87,fontSize:16,textAlign:"center",verticalAlign:"top"}))||[],tB3=(u,B,E,A,C)=>{let D=N8({groupIds:[A],backgroundColor:C,...PA,x:B-w6,y:E-w6,text:"0",textAlign:"right"}),F=N8({groupIds:[A],backgroundColor:C,...PA,x:B-w6,y:E-uM-D.height/2,text:Math.max(...u.values).toLocaleString(),textAlign:"right"});return[D,F]},eB3=(u,B,E,A,C)=>{let{chartWidth:D,chartHeight:F}=lMu(u),U=eb({backgroundColor:C,groupIds:[A],...PA,type:"line",x:B,y:E,width:D,points:[t(0,0),t(D,0)]}),z=eb({backgroundColor:C,groupIds:[A],...PA,type:"line",x:B,y:E,height:F,points:[t(0,0),t(0,-F)]}),k=eb({backgroundColor:C,groupIds:[A],...PA,type:"line",x:B,y:E-uM-w6,strokeStyle:"dotted",width:D,opacity:fMu,points:[t(0,0),t(D,0)]});return[U,z,k]},bMu=(u,B,E,A,C,D)=>{let{chartWidth:F,chartHeight:U}=lMu(u),z=u.title?N8({backgroundColor:C,groupIds:[A],...PA,text:u.title,x:B+F/2,y:E-uM-w6*2-TU,roundness:null,textAlign:"center"}):null,k=D?QD({backgroundColor:C,groupIds:[A],...PA,type:"rectangle",x:B,y:E-U,width:F,height:U,strokeColor:m3.black,fillStyle:"solid",opacity:6}):null;return[...k?[k]:[],...z?[z]:[],...oB3(u,B,E,A,C),...tB3(u,B,E,A,C),...eB3(u,B,E,A,C)]},u83=(u,B,E)=>{let A=Math.max(...u.values),C=TE(),D=N_[Math.floor(Math.random()*N_.length)];return[...u.values.map((F,U)=>{let z=F/A*uM;return QD({backgroundColor:D,groupIds:[C],...PA,type:"rectangle",x:B+U*(AD+w6)+w6,y:E-z-w6,width:AD,height:z})}),...bMu(u,B,E,C,D,Z3.DEV)]},B83=(u,B,E)=>{let A=Math.max(...u.values),C=TE(),D=N_[Math.floor(Math.random()*N_.length)],F=0,U=[];for(let J of u.values){let w=F*(AD+w6),K=-(J/A)*uM;U.push([w,K]),F++}let z=Math.max(...U.map((J)=>J[0])),k=Math.max(...U.map((J)=>J[1])),f=Math.min(...U.map((J)=>J[0])),l=Math.min(...U.map((J)=>J[1])),b=eb({backgroundColor:D,groupIds:[C],...PA,type:"line",x:B+w6+AD/2,y:E-w6,height:k-l,width:z-f,strokeWidth:2,points:U}),M=u.values.map((J,w)=>{let K=w*(AD+w6)+w6/2,Q=-(J/A)*uM+w6/2;return QD({backgroundColor:D,groupIds:[C],...PA,fillStyle:"solid",strokeWidth:2,type:"ellipse",x:B+K+AD/2,y:E+Q-w6*2,width:w6,height:w6})}),Z=u.values.map((J,w)=>{let K=w*(AD+w6)+w6/2,Q=J/A*uM+w6/2+w6;return eb({backgroundColor:D,groupIds:[C],...PA,type:"line",x:B+K+AD/2+w6/2,y:E-Q,height:Q,strokeStyle:"dotted",opacity:fMu,points:[t(0,0),t(0,Q)]})});return[...bMu(u,B,E,C,D,Z3.DEV),b,...Z,...M]},MMu=(u,B,E,A)=>u==="line"?B83(B,E,A):u83(B,E,A),kX1,rn,$n,E83=(u)=>!!([WE.excalidraw,WE.excalidrawClipboard,WE.excalidrawClipboardWithAPI].includes(u?.type)&&Array.isArray(u.elements)),ZMu=({types:u,files:B})=>{!u&&!B&&console.warn("createPasteEvent: no types or files provided");let E=new ClipboardEvent("paste",{clipboardData:new DataTransfer});if(u)for(let[A,C]of Object.entries(u)){if(typeof C!="string"){B=B||[],B.push(C);continue}try{if(E.clipboardData?.setData(A,C),E.clipboardData?.getData(A)!==C)throw Error(`Failed to set "${A}" as clipboardData item`)}catch(D){throw Error(D.message)}}if(B){let A=-1;for(let C of B){A++;try{if(E.clipboardData?.items.add(C),E.clipboardData?.files[A]!==C)throw Error(`Failed to set file "${C.name}" as clipboardData item`)}catch(D){throw Error(D.message)}}}return E},A83=({elements:u,files:B})=>{let E=e4(u),A=new Set(u.filter((U)=>u3(U))),C=!1,D=u.reduce((U,z)=>(IE(z)&&(C=!0,B&&B[z.fileId]&&(U[z.fileId]=B[z.fileId])),U),{});C&&!B&&console.warn("copyToClipboard: attempting to file element(s) without providing associated `files` object.");let F={type:WE.excalidrawClipboard,elements:u.map((U)=>{if(mB(U,E)&&!A.has(mB(U,E))){let z=QM(U);return Wu(z,{frameId:null}),z}return U}),files:B?D:void 0};return JSON.stringify(F)},JMu=async(u,B,E)=>{await bX(A83({elements:u,files:B}),E)},C83=(u)=>{let B=sB3(u);return B.type===AO?{spreadsheet:B.spreadsheet}:null},D83=(u)=>{let B=u.clipboardData?.getData(y4.html);if(!B)return null;try{let E=new DOMParser().parseFromString(B,y4.html),A=wMu(E.body);if(A.length)return{type:"mixedContent",value:A}}catch(E){console.error(`error in parseHTMLFromPaste: ${E.message}`)}return null},KMu=async()=>{let u={},B;try{B=await navigator.clipboard?.read()}catch(E){try{if(navigator.clipboard?.readText){console.warn(`navigator.clipboard.readText() failed (${E.message}). Failling back to navigator.clipboard.read()`);let A=await navigator.clipboard?.readText();if(A)return{[y4.text]:A}}}catch(A){if(navigator.clipboard?.read)console.warn(`navigator.clipboard.readText() failed (${A.message}). Failling back to navigator.clipboard.read()`);else{if(A.name==="DataError")return console.warn(`navigator.clipboard.read() error, clipboard is probably empty: ${A.message}`),u;throw A}}throw E}for(let E of B)for(let A of E.types)if(yk0(e43,A))try{if(A===y4.text||A===y4.html)u[A]=await(await E.getType(A)).text();else if(mMu(A)){let C=await E.getType(A),D=_T(C,A,void 0);u[A]=D}else throw new Ezu(`Unsupported clipboard type: ${A}`)}catch(C){console.warn(C instanceof Ezu?C.message:`Cannot retrieve ${A} from clipboardItem: ${C.message}`)}return Object.keys(u).length===0&&console.warn("No clipboard data found from clipboard.read()."),u},F83=async(u,B=!1)=>{try{let E=!B&&u&&D83(u);return E?E.value.every((A)=>A.type==="text")?{type:"text",value:u.clipboardData?.getData(y4.text)||E.value.map((A)=>A.value).join(`
`).trim()}:E:{type:"text",value:(u.clipboardData?.getData(y4.text)||"").trim()}}catch{return{type:"text",value:""}}},Pl0=async(u,B=!1)=>{let E=await F83(u,B);if(E.type==="mixedContent")return{mixedContent:E.value};try{let A=!B&&C83(E.value);if(A)return A}catch(A){console.error(A)}try{let A=JSON.parse(E.value),C=A.type===WE.excalidrawClipboardWithAPI;if(E83(A))return{elements:A.elements,files:A.files,text:B?JSON.stringify(A.elements,null,2):void 0,programmaticAPI:C}}catch{}return{text:E.value}},QMu=async(u)=>{try{await navigator.clipboard.write([new window.ClipboardItem({[y4.png]:u})])}catch(B){if(uX(u))await navigator.clipboard.write([new window.ClipboardItem({[y4.png]:await u})]);else throw B}},bX=async(u,B)=>{if(rn)try{await navigator.clipboard.writeText(u||"");return}catch(E){console.error(E)}try{if(B){if(B.clipboardData?.setData(y4.text,u||""),B.clipboardData?.getData(y4.text)!==u)throw Error("Failed to setData on clipboardEvent");return}}catch(E){console.error(E)}if(!U83(u))throw Error("Error copying to clipboard.")},U83=(u)=>{u||(u=" ");let B=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[B?"right":"left"]="-9999px";let A=window.pageYOffset||document.documentElement.scrollTop;E.style.top=`${A}px`,E.style.fontSize="12pt",E.setAttribute("readonly",""),E.value=u,document.body.appendChild(E);let C=!1;try{E.select(),E.setSelectionRange(0,E.value.length),C=document.execCommand("copy")}catch(D){console.error(D)}return E.remove(),C},yn=({elements:u,appState:B,files:E,maxWidthOrHeight:A,getDimensions:C,exportPadding:D,exportingFrame:F})=>{let{elements:U,appState:z}=iO({elements:u,appState:B},null,null),{exportBackground:k,viewBackgroundColor:f}=z;return vl0(U,{...z,offsetTop:0,offsetLeft:0,width:0,height:0},E||{},{exportBackground:k,exportPadding:D,viewBackgroundColor:f,exportingFrame:F},(l,b)=>{let M=document.createElement("canvas");if(A){typeof C=="function"&&console.warn("`getDimensions()` is ignored when `maxWidthOrHeight` is supplied.");let J=Math.max(l,b),w=A<J?A/J:B?.exportScale??1;return M.width=l*w,M.height=b*w,{canvas:M,scale:w}}let Z=C?.(l,b)||{width:l,height:b};return M.width=Z.width,M.height=Z.height,{canvas:M,scale:Z.scale??1}})},aO=async({elements:u,appState:B=MD(),files:E={},exportPadding:A,renderEmbeddables:C,exportingFrame:D,skipInliningFonts:F,reuseImages:U})=>{let{elements:z,appState:k}=iO({elements:u,appState:B},null,null),f={...k,exportPadding:A};return an(z,f,E,{exportingFrame:D,renderEmbeddables:C,skipInliningFonts:F,reuseImages:U})},z83=(u)=>u.type==="diamond"?[t(u.width/2,0),t(u.width,u.height/2),t(u.width/2,u.height),t(0,u.height/2)]:[t(0,0),t(0+u.width,0),t(0+u.width,u.height),t(0,u.height)],k83=(u)=>W3(u)||NA(u)?u.points:z83(u),rzu=(u)=>{let B=u.reduce((E,[A,C])=>(E.minY=Math.min(E.minY,C),E.minX=Math.min(E.minX,A),E.maxX=Math.max(E.maxX,A),E.maxY=Math.max(E.maxY,C),E),{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0,cx:0,cy:0});return B.cx=(B.maxX+B.minX)/2,B.cy=(B.maxY+B.minY)/2,B},GMu=(u)=>{let B=k83(u),{cx:E,cy:A}=rzu(B),C=t(E,A),D=B.map((f)=>Lu(f,C,u.angle)),{minX:F,minY:U,maxX:z,maxY:k}=rzu(D);return[F+u.x,U+u.y,z+u.x,k+u.y]},Kk0=(u,B,E=!1)=>{let A=GMu(u),C=B[0]<=A[0]&&B[2]>=A[2]&&B[1]<=A[1]&&B[3]>=A[3];return E?C?!0:A[0]<=B[0]&&A[2]>=B[2]&&A[1]<=B[1]&&A[3]>=B[3]:C},HMu=(u,B)=>{let E=GMu(u);return(l_(E[0],$7(B[0],B[2]))||l_(B[0],$7(E[0],E[2])))&&(l_(E[1],$7(B[1],B[3]))||l_(B[1],$7(E[1],E[3])))},LMu=({elements:u,bounds:B,type:E,errorMargin:A=0})=>{pk0(B)&&(B=UD(B,e4(u)));let C=[B[0]-A,B[1]-A,B[2]+A,B[3]+A],D=new Set;for(let F of u){if(D.has(F.id))continue;if(E==="overlap"?HMu(F,C):E==="inside"?Kk0(F,C):Kk0(F,C,!0)){if(D.add(F.id),F.boundElements)for(let U of F.boundElements)D.add(U.id);l4(F)&&F.containerId&&D.add(F.containerId),j3(F)&&(F.startBinding&&D.add(F.startBinding.elementId),F.endBinding&&D.add(F.endBinding?.elementId))}}return u.filter((F)=>D.has(F.id))},l83=0.000001,jl0=(u,B,E)=>{let A=e4(u);for(let C of B)if(C.frameId){let D=E.get(C.id),F=E.get(C.frameId);if(D){let U=A.get(D);U&&Wu(U,{frameId:F??C.frameId},!1)}}},qMu=(u,B,E)=>_n(dn(u,B,E,!1)).filter((A)=>!u3(A)&&!A.frameId||A.frameId===B.id),il0=(u,B,E)=>dn([B],u,E).some((A)=>A.id===B.id),MX=(u,B,E)=>{let[A,C,D,F]=S3(B,E),[U,z,k,f]=T1(u);return A<=U&&C<=z&&D>=k&&F>=f},dk=(u,B,E)=>MX([u],B,E)||Nl0(u,B,E)||il0(u,B,E),al0=(u,B,E)=>{let[A,C,D,F]=S3(B,E);return Pku(t(A,C),t(u.x,u.y),t(D,F))},XMu=(u)=>{let B=new Map;for(let E of u){let A=u3(E)?E.id:E.frameId;A&&!B.has(A)&&B.set(A,HD(u,A))}return B},HD=(u,B)=>{let E=[];for(let A of u.values())A.frameId===B&&E.push(A);return E},cn=(u)=>u.filter((B)=>u3(B)),gn=(u)=>{let B=e4(cn(u));return u.filter((E)=>B.has(E.id)||!E.frameId||!B.has(E.frameId))},VO=(u,B,E,A)=>{let C=HD(u,B.id),D=new Set(C),F=new Set([...qMu(u,B,A),...C.filter((b)=>il0(b,B,A))]),U=C.filter((b)=>!F.has(b)),z=new Set(Array.from(F).flatMap((b)=>b.groupIds));for(let b of U)if(!Nl0(b,B,A))b.groupIds.length===0&&D.delete(b);else if(b.groupIds.length>0)for(let M of b.groupIds)z.add(M);for(let b of U)if(b.groupIds.length>0){let M=!0;for(let Z of b.groupIds)z.has(Z)&&(M=!1);M&&D.delete(b)}let k=Array.from(F).filter((b)=>b.groupIds.length===0);for(let b of k)D.add(b);let f=Array.from(F).filter((b)=>b.groupIds.length>0),l=ul0(f,E);for(let[b,M]of Object.entries(l))if(M){let Z=x6(u,b);if(MX(Z,B,A))for(let J of Z)D.add(J)}return[...D].filter((b)=>!(l4(b)&&b.containerId))},xMu=(u,B,E)=>M83(_n(u,qMu(u,B,E)),B,E),M83=(u,B,E)=>{let A=[],C=new Map;for(let D of u){let F=!1;if(D.groupIds.length>0){if(D.groupIds.some((U)=>C.get(U)))F=!0;else{let U=new Set(D.groupIds.flatMap((z)=>x6(E,z)));F=!MX(Array.from(U),B,E)}D.groupIds.forEach((U)=>{C.set(U,F)})}F||A.push(D)}return A},mB=(u,B)=>u.frameId&&B.get(u.frameId)||null,vMu=(u,B)=>{let E=new Set,A=e4(u);u=_n(u);for(let F of u)u3(F)&&F.id!==B.id&&E.add(F.id);let C=new Set,D=[];for(let F of u)if(!(u3(F)||F.frameId&&E.has(F.frameId)))if(F.groupIds.length){let U=F.groupIds.at(-1);if(!C.has(U)){C.add(U);let z=x6(u,U);if(z.some((k)=>dk(k,B,A)))for(let k of z)D.push(k)}}else dk(F,B,A)&&D.push(F);return D},ZX=(u,B,E,A)=>{let C=e4(u),D=new Map;for(let k of u.values())k.frameId===E.id&&D.set(k.id,!0);let F=new Set(B.map((k)=>k.id)),U=[],z=new Set;for(let k of B)u3(k)&&k.id!==E.id&&z.add(k.id);for(let k of _n(u,B)){if(u3(k)||k.frameId&&z.has(k.frameId)||k.frameId&&A.selectedElementIds[k.id]&&A.selectedElementIds[k.frameId])continue;D.has(k.id)||U.push(k);let f=Y3(k,C);f&&!F.has(f.id)&&!D.has(f.id)&&U.push(f)}for(let k of U)Wu(k,{frameId:E.id},!1);return u},hO=(u,B)=>{let E=new Map,A=new Map;for(let C of u)if(C.frameId){E.set(C.id,C);let D=A.get(C.frameId)||[];D.push(C);let F=Y3(C,B);F&&(E.set(F.id,F),D.push(F)),A.set(C.frameId,D)}for(let[,C]of E)Wu(C,{frameId:null},!1)},Vl0=(u,B)=>{let E=HD(u,B.id);return hO(E,e4(u)),u},hl0=(u,B,E,A)=>ZX(Vl0(u,E),B,E,A.state).slice(),iK=(u,B,E)=>{let A=E.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,elements:u}),C=new Set(A);if(B.editingGroupId)for(let U of A)U.groupIds.length===0?C.add(U):U.groupIds.flatMap((z)=>x6(u,z)).forEach((z)=>C.add(z));let D=new Set,F=e4(u);return C.forEach((U)=>{U.frameId&&!u3(U)&&!mO(U,F,B)&&D.add(U)}),D.size>0&&hO(D,F),u},_n=(u,B)=>{let E=new Set,A=B||u;for(let F of A.values()){let U=F.groupIds[F.groupIds.length-1];U&&E.add(U)}let C=new Set;for(let F of E)x6(u,F).some((U)=>u3(U))&&C.add(F);let D=[];for(let F of A.values())C.has(F.groupIds[F.groupIds.length-1])||D.push(F);return D},Qk0=(u,B,E)=>{let A=l4(u)&&l5(u,B)||u;return A.frameId&&E.selectedElementIds[A.id]&&E.selectedElementIds[A.frameId]?mB(A,B):E.selectedElementIds[A.id]&&E.selectedElementsAreBeingDragged?E.frameToHighlight:mB(A,B)},mO=(u,B,E,A)=>{let C=A?.targetFrame??Qk0(u,B,E);if(!C)return!1;let D=l4(u)&&l5(u,B)||u,F=(z)=>{A?.checkedGroups&&D.groupIds.forEach((k)=>{A.checkedGroups?.set(k,z)})};if(!E.selectedElementIds[D.id]||!E.selectedElementsAreBeingDragged||E.selectedElementIds[D.id]&&E.selectedElementIds[C.id])return!0;if(D.groupIds.length===0)return dk(D,C,B);for(let z of D.groupIds)if(A?.checkedGroups?.has(z))return A.checkedGroups.get(z);let U=new Set(D.groupIds.filter((z)=>A?.checkedGroups?!A.checkedGroups.has(z):!0).flatMap((z)=>x6(B,z)));if(E.editingGroupId&&E.selectedElementsAreBeingDragged){let z=new Set(N3(B,E));if(E.frameToHighlight!==null)return!0;z.forEach((k)=>{U.delete(k)})}for(let z of U)if(u3(z))return F(!1),!1;for(let z of U)if(dk(z,C,B))return F(!0),!0;return!1},gzu=(u,B,E,A,C)=>{if(!E.frameRendering||!E.frameRendering.clip)return!1;let D=Nl0(u,B,A)||il0(u,B,A);if(D){for(let F of u.groupIds)C?.set(F,!0);return!0}if(!D&&u.groupIds.length>0&&!MX([u],B,A)){let F=!1;if(E.selectedElementsAreBeingDragged)F=mO(u,A,E,{targetFrame:B,checkedGroups:C});else{F=u.frameId===B.id;for(let U of u.groupIds)C?.set(U,F)}for(let U of u.groupIds)C?.set(U,F);return F}return!1},ml0=(u)=>u.name===null?_k0(u)?"Frame":"AI Frame":u.name,nn=(u,B)=>LMu({elements:u,bounds:B,type:"overlap"}).filter((E)=>!E.frameId||E.frameId===B.id),rl0=(u)=>{let B=e4(u);return u.length>1&&u.some((E)=>E.frameId&&B.has(E.frameId))},pn=(u)=>{let B=new Set;return u.forEach((E)=>{u3(E)&&B.add(E.id)}),u.filter((E)=>!(E.frameId&&B.has(E.frameId)))},dn=(u,B,E,A=!0)=>{let[C,D,F,U]=S3(B,E),z=u.filter((k)=>{let[f,l,b,M]=UD(k,E),Z=mB(k,E);if(Z){let[J,w,K,Q]=UD(Z,E);f=Math.max(J,f),l=Math.max(w,l),b=Math.min(K,b),M=Math.min(Q,M)}return k.locked===!1&&k.type!=="selection"&&!X6(k)&&C<=f&&D<=l&&F>=b&&U>=M});return z=A?pn(z):z,z=z.filter((k)=>{let f=mB(k,E);return f?dk(k,f,E):!0}),z},SMu=(u,B,E,A)=>{let C=new Set(B.map((D)=>D.id));return u.filter((D)=>{let F=$O(D,E.width,E.height,E,A);return!C.has(D.id)&&F})},Z2,WMu=(u,B,E)=>{let A=Array.from(new Set(N3(u,B).map((C)=>E(C))));return A.length===1?A[0]:null},N3=(u,B,E)=>{let A=new Set,C=[];for(let D of u.values()){if(B.selectedElementIds[D.id]){C.push(D),A.add(D.id);continue}if(E?.includeBoundTextElement&&X6(D)&&B.selectedElementIds[D?.containerId]){C.push(D),A.add(D.id);continue}}if(E?.includeElementsInFrames){let D=[];return C.forEach((F)=>{u3(F)&&HD(u,F.id).forEach((U)=>!A.has(U.id)&&D.push(U)),D.push(F)}),D}return C},$l0=(u,B)=>B.editingTextElement?[B.editingTextElement]:B.newElement?[B.newElement]:N3(u,B,{includeBoundTextElement:!0}),L1=(u,B)=>h5(B.selectedElementIds,u)?B.selectedElementIds:u,_zu=(u)=>{let B=new Map,E=[];for(let A of u)A.isDeleted||(E.push(A),B.set(A.id,A));return{elementsMap:B,elements:E}},Z83,J83=(u)=>{let B=["includeBoundTextElement","includeElementsInFrames"],E="";for(let A of B)E+=`${A}:${u[A]?"1":"0"}`;return E},nzu=(u)=>typeof u=="string",Gk0=class u{constructor(){j0(this,"callbacks",new Set),j0(this,"nonDeletedElements",[]),j0(this,"nonDeletedElementsMap",RE(new Map)),j0(this,"elements",[]),j0(this,"nonDeletedFramesLikes",[]),j0(this,"frames",[]),j0(this,"elementsMap",RE(new Map)),j0(this,"selectedElementsCache",{selectedElementIds:null,elements:null,cache:new Map}),j0(this,"sceneNonce"),j0(this,"insertElement",(B)=>{let E=B.frameId?this.getElementIndex(B.frameId):this.elements.length;this.insertElementAtIndex(B,E)}),j0(this,"insertElements",(B)=>{if(!B.length)return;let E=B[0]?.frameId?this.getElementIndex(B[0].frameId):this.elements.length;this.insertElementsAtIndex(B,E)}),j0(this,"getContainerElement",(B)=>B&&B.containerId&&this.getElement(B.containerId)||null),j0(this,"getElementsFromId",(B)=>{let E=this.getNonDeletedElementsMap(),A=E.get(B);return A?[A]:x6(E,B)})}static mapElementToScene(B,E){nzu(B)?this.sceneMapById.set(B,E):(this.sceneMapByElement.set(B,E),this.sceneMapById.set(B.id,E))}static getScene(B){return nzu(B)?this.sceneMapById.get(B)||null:this.sceneMapByElement.get(B)||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(B){let E=J83(B),A=B?.elements||this.nonDeletedElements;if(this.selectedElementsCache.elements===A&&this.selectedElementsCache.selectedElementIds===B.selectedElementIds){let D=this.selectedElementsCache.cache.get(E);if(D)return D}else B?.elements==null&&this.selectedElementsCache.cache.clear();let C=N3(A,{selectedElementIds:B.selectedElementIds},B);return B?.elements==null&&(this.selectedElementsCache.selectedElementIds=B.selectedElementIds,this.selectedElementsCache.elements=this.nonDeletedElements,this.selectedElementsCache.cache.set(E,C)),C}getNonDeletedFramesLikes(){return this.nonDeletedFramesLikes}getElement(B){return this.elementsMap.get(B)||null}getNonDeletedElement(B){let E=this.getElement(B);return E&&up(E)?E:null}mapElements(B){let E=!1,A=this.elements.map((C)=>{let D=B(C);return D!==C&&(E=!0),D});return E&&this.replaceAllElements(A),E}replaceAllElements(B){let E=B instanceof Array?B:Array.from(B.values()),A=[];Z83(E),this.elements=iU(E),this.elementsMap.clear(),this.elements.forEach((D)=>{u3(D)&&A.push(D),this.elementsMap.set(D.id,D),u.mapElementToScene(D,this)});let C=_zu(this.elements);this.nonDeletedElements=C.elements,this.nonDeletedElementsMap=C.elementsMap,this.frames=A,this.nonDeletedFramesLikes=_zu(this.frames).elements,this.triggerUpdate()}triggerUpdate(){this.sceneNonce=KD();for(let B of Array.from(this.callbacks))B()}onUpdate(B){if(this.callbacks.has(B))throw Error();return this.callbacks.add(B),()=>{if(!this.callbacks.has(B))throw Error();this.callbacks.delete(B)}}destroy(){this.elements=[],this.nonDeletedElements=[],this.nonDeletedFramesLikes=[],this.frames=[],this.elementsMap.clear(),this.selectedElementsCache.selectedElementIds=null,this.selectedElementsCache.elements=null,this.selectedElementsCache.cache.clear(),u.sceneMapById.forEach((B,E)=>{B===this&&u.sceneMapById.delete(E)}),this.callbacks.clear()}insertElementAtIndex(B,E){if(!Number.isFinite(E)||E<0)throw Error("insertElementAtIndex can only be called with index >= 0");let A=[...this.elements.slice(0,E),B,...this.elements.slice(E)];lD(A,e4([B])),this.replaceAllElements(A)}insertElementsAtIndex(B,E){if(!B.length)return;if(!Number.isFinite(E)||E<0)throw Error("insertElementAtIndex can only be called with index >= 0");let A=[...this.elements.slice(0,E),...B,...this.elements.slice(E)];lD(A,e4(B)),this.replaceAllElements(A)}getElementIndex(B){return this.elements.findIndex((E)=>E.id===B)}},w83,RU,Wu=(u,B,E=!0,A)=>{let C=!1,{points:D,fixedSegments:F,fileId:U,startBinding:z,endBinding:k}=B;if(K4(u)&&(Object.keys(B).length===0||typeof D<"u"||typeof F<"u"||typeof z<"u"||typeof k<"u")){let f=RE(RU.getScene(u)?.getNonDeletedElementsMap()??new Map);B={...B,angle:0,...Vn({...u,x:B.x||u.x,y:B.y||u.y},f,{fixedSegments:F,points:D,startBinding:z,endBinding:k},{isDragging:A?.isDragging})}}else typeof D<"u"&&(B={...QK(D),...B});for(let f in B){let l=B[f];if(typeof l<"u"){if(u[f]===l&&(typeof l!="object"||l===null||f==="groupIds"||f==="scale"))continue;if(f==="scale"){let b=u[f],M=l;if(b[0]===M[0]&&b[1]===M[1])continue}else if(f==="points"){let b=u[f],M=l;if(b.length===M.length){let Z=!1,J=b.length;for(;--J;){let w=b[J],K=M[J];if(w[0]!==K[0]||w[1]!==K[1]){Z=!0;break}}if(!Z)continue}}u[f]=l,C=!0}}return C&&((typeof B.height<"u"||typeof B.width<"u"||typeof U<"u"||typeof D<"u")&&p6.delete(u),u.version++,u.versionNonce=KD(),u.updated=eq(),E&&RU.getScene(u)?.triggerUpdate()),u},O3=(u,B,E=!1)=>{let A=!1;for(let C in B){let D=B[C];if(typeof D<"u"){if(u[C]===D&&(typeof D!="object"||D===null))continue;A=!0}}return!A&&!E?u:{...u,...B,updated:eq(),version:u.version+1,versionNonce:KD()}},rO=(u,B)=>(u.version=(B??u.version)+1,u.versionNonce=KD(),u.updated=eq(),u),aK=(u)=>W3(u)||NA(u)?u.points.length<2:u.width===0&&u.height===0,$O=(u,B,E,A,C)=>{let[D,F,U,z]=UD(u,C),k=Q6({clientX:A.offsetLeft,clientY:A.offsetTop},A),f=Q6({clientX:A.offsetLeft+B,clientY:A.offsetTop+E},A);return k.x<=U&&k.y<=z&&f.x>=D&&f.y>=F},yO=(u,B,E,A,C,D)=>{let[F,U,z,k]=T1(u,C),f=Q6({clientX:A.offsetLeft+(D?.left||0),clientY:A.offsetTop+(D?.top||0)},A),l=Q6({clientX:A.offsetLeft+B-(D?.right||0),clientY:A.offsetTop+E-(D?.bottom||0)},A);return F>=f.x&&U>=f.y&&z<=l.x&&k<=l.y},pzu=(u,B,E)=>{let A=Math.abs(B),C=Math.abs(E);if(u==="line"||u==="arrow"||u==="freedraw"){let D=Math.round(Math.atan(C/A)/BM)*BM;D===0?E=0:D===Math.PI/2?B=0:E=A*Math.tan(D)*Math.sign(E)||E}else u!=="selection"&&(E=A*Math.sign(E));return{width:B,height:E}},sn=(u,B,E,A)=>{let C=E-u,D=A-B,F=Math.round(Math.atan(D/C)/BM)*BM;if(F===0)D=0;else if(F===Math.PI/2)C=0;else{let U=Math.tan(F),z=-1,k=B-U*u,f=-1/U,l=-1,b=A-f*E,M=(z*b-l*k)/(U*l-f*z),Z=(k*f-b*U)/(U*l-f*z);C=M-u,D=Z-B}return{width:C,height:D}},yl0=(u)=>{let B={width:u.width,height:u.height,x:u.x,y:u.y};if(u.width<0){let E=Math.abs(u.width);B.width=E,B.x=u.x-E}if(u.height<0){let E=Math.abs(u.height);B.height=E,B.y=u.y-E}return B},dzu,K83=16,YMu,szu,Fk0,yk=(u,B,E,A,C,D,F)=>{let[U,z]=Lu(t(u+E/2,B+A/2),t(C,D),F);return[U-E/2,z-A/2,E,A]},cl0=(u)=>!(u.viewport.isMobile||u.isTouchScreen&&(d43||Wk0)),JX=(u)=>cl0(u)?YMu:{},on=([u,B,E,A,C,D],F,U,z,k={},f=4,l=EM)=>{let b=dzu[z],M=b/U.value,Z=b/U.value,J=b/U.value,w=b/U.value,K=E-u,Q=A-B,G=f/U.value,L=(b-l*2)/(2*U.value),H={nw:k.nw?void 0:yk(u-G-J+L,B-G-w+L,M,Z,C,D,F),ne:k.ne?void 0:yk(E+G-L,B-G-w+L,M,Z,C,D,F),sw:k.sw?void 0:yk(u-G-J+L,A+G-L,M,Z,C,D,F),se:k.se?void 0:yk(E+G-L,A+G-L,M,Z,C,D,F),rotation:k.rotation?void 0:yk(u+K/2-M/2,B-G-w+L-K83/U.value,M,Z,C,D,F)},q=5*dzu.mouse/U.value;return Math.abs(K)>q&&(k.n||(H.n=yk(u+K/2-M/2,B-G-w+L,M,Z,C,D,F)),k.s||(H.s=yk(u+K/2-M/2,A+G-L,M,Z,C,D,F))),Math.abs(Q)>q&&(k.w||(H.w=yk(u-G-J+L,B+Q/2-Z/2,M,Z,C,D,F)),k.e||(H.e=yk(E+G-L,B+Q/2-Z/2,M,Z,C,D,F))),H},gl0=(u,B,E,A="mouse",C=YMu)=>{if(u.locked||K4(u))return{};if(u.type==="freedraw"||W3(u)){if(u.points.length===2){let[,F]=u.points;F[0]===0||F[1]===0?C=Fk0:F[0]>0&&F[1]<0?C=szu:F[0]>0&&F[1]>0?C=Fk0:F[0]<0&&F[1]>0?C=szu:F[0]<0&&F[1]<0&&(C=Fk0)}}else u3(u)&&(C={...C,rotation:!0});let D=W3(u)?EM+8:H1(u)?0:EM;return on(S3(u,E,!0),u.angle,B,A,C,D,H1(u)?0:void 0)},_l0=(u,B)=>{if(B.editingLinearElement)return!1;if(u.length>1)return!0;let E=u[0];return K4(E)?!1:W3(E)?E.points.length>2:!0},Hk0=(u,B,E)=>B>=u[0]&&B<=u[0]+u[2]&&E>=u[1]&&E<=u[1]+u[3],Q83=(u,B,E,A,C,D,F,U)=>{if(!E.selectedElementIds[u.id])return!1;let{rotation:z,...k}=gl0(u,D,B,F,JX(U));if(z&&Hk0(z,A,C))return"rotation";let f=Object.keys(k).filter((l)=>{let b=k[l];return b?Hk0(b,A,C):!1});if(f.length>0)return f[0];if(cl0(U)){let[l,b,M,Z,J,w]=S3(u,B);if(!(W3(u)&&u.points.length<=2)){let K=H1(u)?0:H_/D.value,Q=H_/D.value,G=RMu(t(l-K,b-K),t(M+K,Z+K),t(J,w),u.angle);for(let[L,H]of Object.entries(G))if(ZK(t(A,C),H,Q))return L}}return!1},nl0=(u,B,E,A,C,D,F,U)=>u.reduce((z,k)=>{if(z)return z;let f=Q83(k,F,B,E,A,C,D,U);return f?{element:k,transformHandleType:f}:null},null),pl0=([u,B,E,A],C,D,F,U,z)=>{let k=on([u,B,E,A,(u+E)/2,(B+A)/2],0,F,U,JX(z)),f=Object.keys(k).find((l)=>{let b=k[l];return b&&Hk0(b,C,D)});if(f)return f;if(cl0(z)){let l=(u+E)/2,b=(B+A)/2,M=H_/F.value,Z=RMu(t(u-M,B-M),t(E+M,A+M),t(l,b),0);for(let[J,w]of Object.entries(Z))if(ZK(t(C,D),w,M))return J}return!1},Uk0,G83=(u,B)=>{let E=Uk0.indexOf(u);if(E>=0){let A=Math.round(B/(Math.PI/4));u=Uk0[(E+A)%Uk0.length]}return u},dl0=(u)=>{let{element:B,transformHandleType:E}=u,A=B&&Math.sign(B.height)*Math.sign(B.width)===-1,C=null;switch(E){case"n":case"s":C="ns";break;case"w":case"e":C="ew";break;case"nw":case"se":A?C="nesw":C="nwse";break;case"ne":case"sw":A?C="nwse":C="nesw";break;case"rotation":return"grab"}return C&&B&&(C=G83(C,B.angle)),C?`${C}-resize`:""},RMu=([u,B],[E,A],C,D)=>{let F=Lu(t(u,B),C,D),U=Lu(t(E,B),C,D),z=Lu(t(u,A),C,D),k=Lu(t(E,A),C,D);return{n:[F,U],e:[U,k],s:[k,z],w:[z,F]}},TMu=(u,B,E,A,C,D,F,U,z,k,f,l)=>{if(E.length===1){let[b]=E;if(B==="rotation")K4(b)||(H83(b,A,C,z,k,D),hB(b,A));else{if(l4(b)&&B)return L83(u,b,A,B,F,z,k),hB(b,A),!0;if(B){let M=E[0].id,Z=A.get(M),J=u.get(M);if(Z&&J){let{nextWidth:w,nextHeight:K}=v83(Z,J,A,u,B,z,k,{shouldMaintainAspectRatio:U,shouldResizeFromCenter:F});wX(w,K,Z,J,A,u,B,{shouldMaintainAspectRatio:U,shouldResizeFromCenter:F})}}}return!0}else if(E.length>1){if(B==="rotation")return q83(u,E,A,C,z,k,D,f,l),!0;if(B){let{nextWidth:b,nextHeight:M,flipByX:Z,flipByY:J,originalBoundingBox:w}=S83(E,u,A,B,z,k,{shouldMaintainAspectRatio:U,shouldResizeFromCenter:F});return ol0(E,A,B,C,u,{shouldResizeFromCenter:F,shouldMaintainAspectRatio:U,flipByX:Z,flipByY:J,nextWidth:b,nextHeight:M,originalBoundingBox:w}),!0}}return!1},H83=(u,B,E,A,C,D)=>{let[F,U,z,k]=S3(u,B),f=(F+z)/2,l=(U+k)/2,b;u3(u)?b=0:(b=5*Math.PI/2+Math.atan2(C-l,A-f),D&&(b=b+BM/2,b=b-b%BM),b=q_(b));let M=YU(u);if(Wu(u,{angle:b}),M){let Z=E.getElement(M);Z&&!j3(u)&&Wu(Z,{angle:b})}},tn=(u,B,E,A)=>W3(u)||NA(u)?{points:T_(0,B,T_(1,E,u.points,A),A)}:{},sl0=(u,B,E)=>{let A=u.width;if(X6(u)){let D=l5(u,B);D&&(A=kD(D,u))}let C=u.fontSize*(E/A);return C<Rk0?null:{size:C}},L83=(u,B,E,A,C,D,F)=>{let[U,z,k,f,l,b]=S3(B,E),[M,Z]=Lu(t(D,F),t(l,b),-B.angle),J=0,w=0;A!=="e"&&A!=="w"&&(A.includes("e")&&(J=(M-U)/(k-U)),A.includes("w")&&(J=(k-M)/(k-U)),A.includes("n")&&(w=(f-Z)/(f-z)),A.includes("s")&&(w=(Z-z)/(f-z)));let K=Math.max(J,w);if(K>0){let Q=B.width*K,G=B.height*K,L=sl0(B,E,Q);if(L===null)return;let H=[U,z],q=[k,f],x=[l,b],v=t(U,z);if(["n","w","nw"].includes(A)&&(v=t(q[0]-Math.abs(Q),q[1]-Math.abs(G))),A==="ne"){let I=[H[0],q[1]];v=t(I[0],I[1]-Math.abs(G))}if(A==="sw"){let I=[q[0],H[1]];v=t(I[0]-Math.abs(Q),I[1])}["s","n"].includes(A)&&(v[0]=x[0]-Q/2),["e","w"].includes(A)&&(v[1]=x[1]-G/2),C&&(v[0]=x[0]-Math.abs(Q)/2,v[1]=x[1]-Math.abs(G)/2);let W=B.angle,S=Lu(v,t(l,b),W),T=t(v[0]+Math.abs(Q)/2,v[1]+Math.abs(G)/2),R=Lu(T,t(l,b),W);v=Lu(S,R,-W);let[Y,a]=v;Wu(B,{fontSize:L.size,width:Q,height:G,x:Y,y:a})}if(A==="e"||A==="w"){let Q=u.get(B.id),[G,L,H,q]=tb(Q,Q.width,Q.height,!0),x=t(G,L),v=t(H,q),W=bO(x,v),S=Lu(t(D,F),W,-Q.angle),[T,,R]=tb(B,B.width,B.height,!0),Y=R-T,a=v[0]-x[0],I=p_(e1({fontSize:B.fontSize,fontFamily:B.fontFamily}),B.lineHeight),O=a/Y;A.includes("e")&&(O=(S[0]-x[0])/Y),A.includes("w")&&(O=(v[0]-S[0])/Y);let i=B.width*O<I?I:B.width*O,N=bM(B.originalText,e1(B),Math.abs(i)),V=Q7(N,e1(B),B.lineHeight),h=V.height,[r,m,$,y]=tb(Q,i,h,!0),p=$-r,e=y-m,_=[...x];["n","w","nw"].includes(A)&&(_=[v[0]-Math.abs(p),x[1]]);let b0=Q.angle,B0=Lu(_,W,b0),k0=t(_[0]+Math.abs(p)/2,_[1]+Math.abs(e)/2),f0=Lu(k0,W,b0);_=Lu(B0,f0,-b0);let D0={width:Math.abs(i),height:Math.abs(V.height),x:_[0],y:_[1],text:N,autoResize:!1};Wu(B,D0)}},q83=(u,B,E,A,C,D,F,U,z)=>{let k=5*Math.PI/2+Math.atan2(D-z,C-U);F&&(k+=BM/2,k-=k%BM);for(let f of B)if(!u3(f)){let[l,b,M,Z]=S3(f,E),J=(l+M)/2,w=(b+Z)/2,K=u.get(f.id)?.angle??f.angle,[Q,G]=Lu(t(J,w),t(U,z),k+K-f.angle);K4(f)?Wu(f,{points:g73(f,E)}):Wu(f,{x:f.x+(Q-J),y:f.y+(G-w),angle:q_(k+K)},!1),hB(f,E,{simultaneouslyUpdated:B});let L=Y3(f,E);L&&!j3(f)&&Wu(L,{x:L.x+(Q-J),y:L.y+(G-w),angle:q_(k+K)},!1)}A.triggerUpdate()},OMu=(u,B,E,A,C)=>{let[D,F,U,z]=B.length===1?S3(B[0],E):T1(B),k=(D+U)/2,f=(F+z)/2,l=B.length===1?B[0].angle:0;switch([A,C]=Lu(t(A,C),t(k,f),-l),u){case"n":return Lu(t(A-(D+U)/2,C-F),t(0,0),l);case"s":return Lu(t(A-(D+U)/2,C-z),t(0,0),l);case"w":return Lu(t(A-D,C-(F+z)/2),t(0,0),l);case"e":return Lu(t(A-U,C-(F+z)/2),t(0,0),l);case"nw":return Lu(t(A-D,C-F),t(0,0),l);case"ne":return Lu(t(A-U,C-F),t(0,0),l);case"sw":return Lu(t(A-D,C-z),t(0,0),l);case"se":return Lu(t(A-U,C-z),t(0,0),l);default:return[0,0]}},IMu=(u,B)=>{let[,[E,A]]=B.points;return u==="nw"&&(E<0||A<0)||u==="ne"&&E>=0||u==="sw"&&E<=0||u==="se"&&(E>0||A>0)?"end":"origin"},X83=(u,B,E)=>{if(E)return"center";if(B)switch(u){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(u)?"top-left":["n","nw","w"].includes(u)?"bottom-right":u==="ne"?"bottom-left":"top-right"},x83=(u,B,E,A,C,D,F,U,z)=>{let k=X83(F,U,z),[f,l]=u;switch(k){case"top-left":return{x:f+(B-A)/2+(A-B)/2*Math.cos(D)+(E-C)/2*Math.sin(D),y:l+(E-C)/2+(A-B)/2*Math.sin(D)+(C-E)/2*Math.cos(D)};case"top-right":return{x:f+(B-A)/2*(Math.cos(D)+1)+(E-C)/2*Math.sin(D),y:l+(E-C)/2+(B-A)/2*Math.sin(D)+(C-E)/2*Math.cos(D)};case"bottom-left":return{x:f+(B-A)/2*(1-Math.cos(D))+(C-E)/2*Math.sin(D),y:l+(E-C)/2*(Math.cos(D)+1)+(A-B)/2*Math.sin(D)};case"bottom-right":return{x:f+(B-A)/2*(Math.cos(D)+1)+(C-E)/2*Math.sin(D),y:l+(E-C)/2*(Math.cos(D)+1)+(B-A)/2*Math.sin(D)};case"center":return{x:f-(A-B)/2,y:l-(C-E)/2};case"east-side":return{x:f+(B-A)/2*(Math.cos(D)+1),y:l+(B-A)/2*Math.sin(D)+(E-C)/2};case"west-side":return{x:f+(B-A)/2*(1-Math.cos(D)),y:l+(A-B)/2*Math.sin(D)+(E-C)/2};case"north-side":return{x:f+(B-A)/2+(E-C)/2*Math.sin(D),y:l+(C-E)/2*(Math.cos(D)-1)};case"south-side":return{x:f+(B-A)/2+(C-E)/2*Math.sin(D),y:l+(E-C)/2*(Math.cos(D)+1)}}},wX=(u,B,E,A,C,D,F,{shouldInformMutation:U=!0,shouldMaintainAspectRatio:z=!1,shouldResizeFromCenter:k=!1}={})=>{let f={},l=Y3(E,C);if(l){let J=D.get(l.id);if(J&&(f={fontSize:J.fontSize}),z){let w={...E,width:u,height:B},K=sl0(l,C,kD(w,l));if(K===null)return;f={fontSize:K.size}}else{let w=dk0(e1(l),l.lineHeight),K=ok0(l.fontSize,l.lineHeight);u=Math.max(u,w),B=Math.max(B,K)}}let b=tn(A,u,B,!0),M=t(A.x,A.y);if(W3(A)){let[J,w]=UD(A,D);M=t(J,w)}let Z=x83(M,A.width,A.height,u,B,A.angle,F,z,k);if(W3(A)&&b.points){let J=A.x-M[0],w=A.y-M[1];Z.x+=J,Z.y+=w;let K=b.points[0][0],Q=b.points[0][1];Z.x+=K,Z.y+=Q,b.points=b.points.map((G)=>t(G[0]-K,G[1]-Q))}if(u<0&&(Z.x=Z.x+u),B<0&&(Z.y=Z.y+B),"scale"in E&&"scale"in A&&Wu(E,{scale:[(Math.sign(u)||A.scale[0])*A.scale[0],(Math.sign(B)||A.scale[1])*A.scale[1]]}),j3(E)&&l&&z){let J=u/E.width*l.fontSize;if(J<Rk0)return;f.fontSize=J}if(u!==0&&B!==0&&Number.isFinite(Z.x)&&Number.isFinite(Z.y)){let J={...Z,width:Math.abs(u),height:Math.abs(B),...b};Wu(E,J,U),hB(E,C,{newSize:{width:u,height:B}}),l&&f!=null&&Wu(l,{fontSize:f.fontSize}),kX(E,C,F,z)}},v83=(u,B,E,A,C,D,F,{shouldMaintainAspectRatio:U=!1,shouldResizeFromCenter:z=!1}={})=>{let[k,f,l,b]=tb(B,B.width,B.height,!0),M=t(k,f),Z=t(l,b),J=bO(M,Z),w=Lu(t(D,F),J,-B.angle),[K,Q,G,L]=tb(u,u.width,u.height,!0),H=G-K,q=L-Q,x=Z[0]-M[0],v=Z[1]-M[1],W=x/H,S=v/q;C.includes("e")&&(W=(w[0]-M[0])/H),C.includes("s")&&(S=(w[1]-M[1])/q),C.includes("w")&&(W=(Z[0]-w[0])/H),C.includes("n")&&(S=(Z[1]-w[1])/q);let T=u.width*W,R=u.height*S;if(z&&(T=2*T-B.width,R=2*R-B.height),U){let Y=Math.abs(T)/B.width,a=Math.abs(R)/B.height;if(C.length===1&&(R*=Y,T*=a),C.length===2){let I=Math.max(Y,a);T=B.width*I*Math.sign(T),R=B.height*I*Math.sign(R)}}return{nextWidth:T,nextHeight:R}},S83=(u,B,E,A,C,D,{shouldMaintainAspectRatio:F=!1,shouldResizeFromCenter:U=!1}={})=>{let z=u.map((Y)=>B.get(Y.id)),k=z.reduce((Y,a)=>{if(!W3(a))return Y;let I=YU(a);if(!I)return Y;let O=B.get(I)??null;return X6(O)?[...Y,{...O,...M4.getBoundTextElementPosition(a,O,E)}]:Y},[]),f=hA(z.map((Y)=>Y).concat(k)),{minX:l,minY:b,maxX:M,maxY:Z,midX:J,midY:w}=f,K=M-l,Q=Z-b,G={ne:[l,Z],se:[l,b],sw:[M,b],nw:[M,Z],e:[l,b+Q/2],w:[M,b+Q/2],n:[l+K/2,Z],s:[l+K/2,b]},[L,H]=U?[J,w]:G[A],q=U?2:1,x=Math.max(Math.abs(C-L)/K||0,Math.abs(D-H)/Q||0)*q,v=A.includes("e")||A.includes("w")?Math.abs(C-L)*q:K,W=A.includes("n")||A.includes("s")?Math.abs(D-H)*q:Q;F&&(v=K*x*Math.sign(C-L),W=Q*x*Math.sign(D-H));let S={ne:[C<L,D>H],se:[C<L,D<H],sw:[C>L,D<H],nw:[C>L,D>H],e:[C<L,!1],w:[C>L,!1],n:[!1,D>H],s:[!1,D<H]},[T,R]=S[A].map((Y)=>Y);return{originalBoundingBox:f,nextWidth:v,nextHeight:W,flipByX:T,flipByY:R}},ol0=(u,B,E,A,C,{shouldMaintainAspectRatio:D=!1,shouldResizeFromCenter:F=!1,flipByX:U=!1,flipByY:z=!1,nextHeight:k,nextWidth:f,originalBoundingBox:l}={})=>{if(f===void 0&&k===void 0&&U===void 0&&z===void 0||k===0||f===0)return;C||(C=B);let b=u.reduce((q,x)=>{let v=C.get(x.id);return v&&q.push({orig:v,latest:x}),q},[]),M;if(l)M=l;else{let q=b.reduce((x,{orig:v})=>{if(!W3(v))return x;let W=YU(v);if(!W)return x;let S=C.get(W)??null;return X6(S)?[...x,{...S,...M4.getBoundTextElementPosition(v,S,B)}]:x},[]);M=hA(b.map(({orig:x})=>x).concat(q))}let{minX:Z,minY:J,maxX:w,maxY:K,midX:Q,midY:G}=M,L=w-Z,H=K-J;if(f===void 0&&k===void 0&&(f=L,k=H),D&&(f===void 0?f=k*(L/H):k===void 0?k=f*(H/L):Math.abs(f/k-L/H)>0.001&&(f=k*(L/H))),f&&k){let q=E.includes("e")||E.includes("w")?Math.abs(f)/L:1,x=E.includes("n")||E.includes("s")?Math.abs(k)/H:1,v;E.length===1?v=E.includes("e")||E.includes("w")?q:x:v=Math.max(Math.abs(f)/L||0,Math.abs(k)/H||0);let W={ne:[Z,K],se:[Z,J],sw:[w,J],nw:[w,K],e:[Z,J+H/2],w:[w,J+H/2],n:[Z+L/2,K],s:[Z+L/2,J]},[S,T]=F?[Q,G]:W[E],R=D||b.some((i)=>i.latest.angle!==0||l4(i.latest)||jK(i.latest));R&&(q=v,x=v);let[Y,a]=[U?-1:1,z?-1:1],I=[];for(let{orig:i,latest:N}of b){if(l4(i)&&X6(i))continue;let V=i.width*q,h=i.height*x,r=q_(i.angle*Y*a),m=W3(i)||NA(i),$=i.x-S,y=i.y-T,p=U&&!m?V:0,e=z&&!m?h:0,_=S+Y*($*q+p),b0=T+a*(y*x+e),B0=tn(i,V*Y,h*a,!1),k0={x:_,y:b0,width:V,height:h,angle:r,...B0};if(K4(i)&&(i.startBinding&&(k0.startBinding={...i.startBinding,fixedPoint:[U?-i.startBinding.fixedPoint[0]+1:i.startBinding.fixedPoint[0],z?-i.startBinding.fixedPoint[1]+1:i.startBinding.fixedPoint[1]]}),i.endBinding&&(k0.endBinding={...i.endBinding,fixedPoint:[U?-i.endBinding.fixedPoint[0]+1:i.endBinding.fixedPoint[0],z?-i.endBinding.fixedPoint[1]+1:i.endBinding.fixedPoint[1]]}),i.fixedSegments&&B0.points&&(k0.fixedSegments=i.fixedSegments.map((D0)=>({...D0,start:B0.points[D0.index-1],end:B0.points[D0.index]})))),H1(i)&&(k0.scale=[i.scale[0]*Y,i.scale[1]*a]),l4(i)){let D0=sl0(i,B,V);if(!D0)return;k0.fontSize=D0.size}let f0=C.get(YU(i)??"");if(f0)if(R){let D0=f0.fontSize*v;if(D0<Rk0)return;k0.boundTextFontSize=D0}else k0.boundTextFontSize=f0.fontSize;I.push({element:N,update:k0})}let O=I.map(({element:i})=>i);for(let{element:i,update:{boundTextFontSize:N,...V}}of I){let{width:h,height:r,angle:m}=V;Wu(i,V,!1,{isDragging:!0}),hB(i,B,{simultaneouslyUpdated:O,newSize:{width:h,height:r}});let $=Y3(i,B);$&&N&&(Wu($,{fontSize:N,angle:W3(i)?void 0:m},!1),kX(i,B,E,!0))}A.triggerUpdate()}},PMu=(u,B,E,A,C,D)=>{if(B.length===1&&K4(B[0])&&(B[0].startBinding||B[0].endBinding))return;let F=B.filter((l)=>{if(K4(l)&&l.startBinding&&l.endBinding){let b=B.find((Z)=>Z.id===l.startBinding?.elementId),M=B.find((Z)=>Z.id===l.endBinding?.elementId);return b&&M}return!0}),U=new Set(F),z=F.filter((l)=>u3(l)).map((l)=>l.id);if(z.length>0)for(let l of A.getNonDeletedElements())l.frameId!==null&&z.includes(l.frameId)&&U.add(l);let k=T1(Array.from(U).map((l)=>u.originalElements.get(l.id)??l)),f=W83(k,E,C,D);U.forEach((l)=>{if(ozu(u,l,f),!j3(l)){let b=Y3(l,A.getNonDeletedElementsMap());b&&ozu(u,b,f),hB(l,A.getElementsMapIncludingDeleted(),{simultaneouslyUpdated:Array.from(U)})}})},W83=(u,B,E,A)=>{let[C,D]=u,F=C+B.x+E.x,U=D+B.y+E.y;if(E.x===0||E.y===0){let[z,k]=M2(C+B.x,D+B.y,A);E.x===0&&(F=z),E.y===0&&(U=k)}return{x:F-C,y:U-D}},ozu=(u,B,E)=>{let A=u.originalElements.get(B.id)??B,C=A.x+E.x,D=A.y+E.y;Wu(B,{x:C,y:D})},jMu=(u,B,E)=>{let[A,C]=T1(u);return[B-A,E-C]},tl0=({newElement:u,elementType:B,originX:E,originY:A,x:C,y:D,width:F,height:U,shouldMaintainAspectRatio:z,shouldResizeFromCenter:k,zoom:f,widthAspectRatio:l=null,originOffset:b=null,informMutation:M=!0})=>{z&&u.type!=="selection"&&(l?U=F/l:(Math.abs(D-A)>Math.abs(C-E)?{width:F,height:U}=pzu(B,U,C<E?-F:F):{width:F,height:U}=pzu(B,F,D<A?-U:U),U<0&&(U=-U)));let Z=C<E?E-F:E,J=D<A?A-U:A;k&&(F+=F,U+=U,Z=E-F/2,J=A-U/2);let w=null;if(l4(u)){U=u.height;let K=p_(e1({fontSize:u.fontSize,fontFamily:u.fontFamily}),u.lineHeight);F=Math.max(F,K),Math.abs(C-E)>o43/f&&(w={autoResize:!1}),J=A,k&&(Z=E-F/2)}if(F!==0&&U!==0){let K=null;H1(u)&&(K={initialWidth:F,initialHeight:U}),Wu(u,{x:Z+(b?.x??0),y:J+(b?.y??0),width:F,height:U,...w,...K},M)}},en=(u,B)=>!!(!u.viewModeEnabled&&u.openDialog?.name!=="elementLinkSelector"&&(u.activeTool.type!=="custom"&&(u.editingTextElement||u.activeTool.type!=="selection"&&u.activeTool.type!=="eraser"&&u.activeTool.type!=="hand"&&u.activeTool.type!=="laser")||N3(B,u).length)),NMu=(u)=>{let B=5381;for(let E=0;E<u.length;E++){let A=u.charCodeAt(E);B=(B<<5)+B+A}return B>>>0},Y83=(u)=>u.filter((B)=>!B.isDeleted&&!aK(B)),z6=(u)=>u.filter((B)=>!B.isDeleted),up=(u)=>!u.isDeleted,iMu=(u)=>z6(u).map((B)=>n_(B.type)?{...B,lastCommittedPoint:null}:B),R83=(u)=>iMu(u),aMu=(u)=>iMu(u),VMu=async(u)=>{let B;if(u.type===y4.png)try{return await(await Promise.resolve().then(() => (yz0(),$z0))).decodePngMetadata(u)}catch(E){throw E.message==="INVALID"?new sb("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):new sb("Error: cannot restore image")}else if("text"in Blob?B=await u.text():B=await new Promise((E)=>{let A=new FileReader;A.readAsText(u,"utf8"),A.onloadend=()=>{A.readyState===FileReader.DONE&&E(A.result)}}),u.type===y4.svg)try{return RB3({svg:B})}catch(E){throw E.message==="INVALID"?new sb("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):new sb("Error: cannot restore image")}return B},el0=(u)=>u&&u.name.match(/\.(json|excalidraw|png|svg)$/)?.[1]||null,hMu=(u)=>u==="png"||u==="svg",Bp=(u)=>{let B=el0(u);return B==="png"||B==="svg"},mMu=(u)=>!!u&&Object.values(XK).includes(u),GM=(u)=>{let{type:B}=u||{};return mMu(B)},ub0=async(u,B,E,A)=>{let C=await VMu(u),D;try{try{D=JSON.parse(C)}catch(F){throw GM(u)?new sb("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):F}if(XB3(D))return{type:y4.excalidraw,data:iO({elements:aMu(D.elements||[]),appState:{theme:B?.theme,fileHandle:A||u.handle||null,...Rku(D.appState||{}),...B?FX(D.elements||[],B):{}},files:D.files},B,E,{repairBindings:!0,refreshDimensions:!1})};if(ebu(D))return{type:y4.excalidrawlib,data:D};throw Error("Error: invalid file")}catch(F){throw F instanceof sb?F:Error("Error: invalid file")}},Bb0=async(u,B,E,A)=>{let C=await ub0(u,B,E,A);if(C.type!==y4.excalidraw)throw Error("Error: invalid file");return C.data},Eb0=(u,B="unpublished")=>{let E=JSON.parse(u);if(!ebu(E))throw Error("Invalid library");let A=E.libraryItems||E.library;return mn(A,B)},rMu=async(u,B="unpublished")=>Eb0(await VMu(u),B),KX=async(u)=>new Promise(async(B,E)=>{try{uX(u)&&(u=await u),u.toBlob((A)=>{if(!A)return E(new o33("Error: Canvas too big","CANVAS_POSSIBLY_TOO_BIG"));B(A)})}catch(A){E(A)}}),$Mu=async(u)=>{try{let B=await window.crypto.subtle.digest("SHA-1",await bK(u));return q33(new Uint8Array(B))}catch(B){return console.error(B),z9(40)}},Ab0=async(u)=>new Promise((B,E)=>{let A=new FileReader;A.onload=()=>{let C=A.result;B(C)},A.onerror=(C)=>E(C),A.readAsDataURL(u)}),yMu=(u,B)=>`data:${B};base64,${sMu(i_(u),!0)}`,cMu=(u,B="")=>{let E=u.indexOf(","),A=atob(u.slice(E+1)),C=u.slice(0,E).split(":")[1].split(";")[0],D=new ArrayBuffer(A.length),F=new Uint8Array(D);for(let U=0;U<A.length;U++)F[U]=A.charCodeAt(U);return new File([D],B,{type:C})},gMu=(u)=>oMu(u.slice(u.indexOf(",")+1)),Ep=async(u,B)=>{if(u.type===y4.svg)return u;let[E,A]=await Promise.all([Promise.resolve().then(() => Eu(hUu(),1)).then((D)=>D.default),Promise.resolve().then(() => (nUu(),_Uu)).then((D)=>D.default)]),C=A({pica:E({features:["js","wasm"]})});if(B.outputType){let{outputType:D}=B;C._create_blob=function(F){return this.pica.toBlob(F.out_canvas,D,0.8).then((U)=>(F.out_blob=U,F))}}if(!GM(u))throw Error("Error: unsupported file type",{cause:"UNSUPPORTED"});return new File([await C.toBlob(u,{max:B.maxWidthOrHeight,alpha:!0})],u.name,{type:B.outputType||u.type})},Cb0=(u,B="")=>new File([new TextEncoder().encode(u)],B,{type:y4.svg}),_Mu=async(u,B="")=>{let E;try{E=await fetch(u)}catch{throw Error("Error: failed to fetch image",{cause:"FETCH_ERROR"})}if(!E.ok)throw Error("Error: failed to fetch image",{cause:"FETCH_ERROR"});let A=await E.blob();if(A.type&&GM(A)){let C=B||A.name||"";return new File([A],C,{type:A.type})}throw Error("Error: unsupported file type",{cause:"UNSUPPORTED"})},nMu=async(u)=>{let B=u.dataTransfer.files.item(0),E=await T83(u);return{file:B?await Ap(B):null,fileHandle:E}},T83=async(u)=>{if(rk)try{return await u.dataTransfer.items[0].getAsFileSystemHandle()||null}catch(B){return console.warn(B.name,B.message),null}return null},tzu=(u)=>{let B=null,E=`${[...new Uint8Array(u).slice(0,8)].join(" ")} `,A={png:"137 80 78 71 13 10 26 10 ",jpg:"255 216 255 ",gif:"71 73 70 56 57 97 "};return E===A.png?B=y4.png:E.startsWith(A.jpg)?B=y4.jpg:E.startsWith(A.gif)&&(B=y4.gif),B},_T=(u,B,E)=>new File([u],E||"",{type:B}),Ap=async(u)=>{if(u.type){if(GM(u)){let B=await bK(u),E=tzu(B);E&&E!==u.type&&(u=_T(B,E,u.name))}}else if(u?.name?.endsWith(".excalidrawlib"))u=_T(await bK(u),y4.excalidrawlib,u.name);else if(u?.name?.endsWith(".excalidraw"))u=_T(await bK(u),y4.excalidraw,u.name);else{let B=await bK(u),E=tzu(B);E&&(u=_T(B,E,u.name))}return u},bK=(u)=>("arrayBuffer"in u)?u.arrayBuffer():new Promise((B,E)=>{let A=new FileReader;A.onload=(C)=>{if(!C.target?.result)return E(Error("Couldn't convert blob to ArrayBuffer"));B(C.target.result)},A.readAsArrayBuffer(u)}),i_=(u)=>{let B=typeof u=="string"?new TextEncoder().encode(u):u instanceof Uint8Array?u:new Uint8Array(u),E="";for(let A of B)E+=String.fromCharCode(A);return E},pMu=(u)=>{let B=new ArrayBuffer(u.length),E=new Uint8Array(B);for(let A=0,C=u.length;A<C;A++)E[A]=u.charCodeAt(A);return B},dMu=(u)=>new TextDecoder("utf-8").decode(pMu(u)),sMu=(u,B=!1)=>B?window.btoa(u):window.btoa(i_(u)),oMu=(u,B=!1)=>B?window.atob(u):dMu(window.atob(u)),tMu=({text:u,compress:B})=>{let E;if(B!==!1)try{E=i_(BFu(u))}catch(A){console.error("encode: cannot deflate",A)}return{version:"1",encoding:"bstring",compressed:!!E,encoded:E||i_(u)}},eMu=(u)=>{let B;switch(u.encoding){case"bstring":B=u.compressed?u.encoded:dMu(u.encoded);break;default:throw Error(`decode: unknown encoding "${u.encoding}"`)}return u.compressed?EFu(new Uint8Array(pMu(B)),{to:"string"}):B},cz0=async(u)=>{let B=Lk0.default(new Uint8Array(await bK(u))).find((E)=>E.name==="tEXt");return B?qk0.default.decode(B.data):null},iUu=async({blob:u,metadata:B})=>{let E=Lk0.default(new Uint8Array(await bK(u))),A=qk0.default.encode(y4.excalidraw,JSON.stringify(tMu({text:B,compress:!0})));return E.splice(-1,0,A),new Blob([ezu.default(E)],{type:y4.png})},aUu=async(u)=>{let B=await cz0(u);if(B?.keyword===y4.excalidraw)try{let E=JSON.parse(B.text);if(!("encoded"in E)){if("type"in E&&E.type===WE.excalidraw)return B.text;throw Error("FAILED")}return eMu(E)}catch(E){throw console.error(E),Error("FAILED")}throw Error("INVALID")};var gz0=g(()=>{wq();m4();AFu();rb();bU();PT();PT();cFu();OT();rb();Mu();PT();rb();bU();RUu();Lk0=Eu(WCu(),1),qk0=Eu(ICu(),1),ezu=Eu(iCu(),1),Tku=Eu(Xq(),1),Oku=Eu(kFu(),1),m5=Eu(Gu(),1),hbu=Eu(kUu(),1),uD=[0,2,4,6,8],m3={transparent:"transparent",black:"#1e1e1e",white:"#ffffff",gray:BD("gray",uD),red:BD("red",uD),pink:BD("pink",uD),grape:BD("grape",uD),violet:BD("violet",uD),blue:BD("blue",uD),cyan:BD("cyan",uD),teal:BD("teal",uD),green:BD("green",uD),yellow:BD("yellow",uD),orange:BD("orange",uD),bronze:["#f8f1ee","#eaddd7","#d2bab0","#a18072","#846358"]},Bku=_43(m3,["cyan","blue","violet","grape","pink","green","teal","yellow","orange","red"]),Xk0=[m3.black,m3.red[Iq],m3.green[Iq],m3.blue[Iq],m3.yellow[Iq]],xk0=[m3.transparent,m3.red[Pq],m3.green[Pq],m3.blue[Pq],m3.yellow[Pq]],vk0=[m3.white,"#f8f9fa","#f5faff","#fffce8","#fdf8f6"],Eku={transparent:m3.transparent,white:m3.white,gray:m3.gray,black:m3.black,bronze:m3.bronze,...Bku},Aku={transparent:m3.transparent,white:m3.white,gray:m3.gray,black:m3.black,bronze:m3.bronze,...Bku},bD=/Mac|iPod|iPhone|iPad/.test(navigator.platform),Sk0=/^Win/.test(navigator.platform),d43=/\b(android)\b/i.test(navigator.userAgent),pq="netscape"in window&&navigator.userAgent.indexOf("rv:")>1&&navigator.userAgent.indexOf("Gecko")>1,s43=navigator.userAgent.indexOf("Chrome")!==-1,Dku=!s43&&navigator.userAgent.indexOf("Safari")!==-1,Wk0=/iPad|iPhone/.test(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document,a_=typeof window<"u"&&"ResizeObserver"in window,BM=Math.PI/12,g1={TEXT:"text",CROSSHAIR:"crosshair",GRABBING:"grabbing",GRAB:"grab",POINTER:"pointer",MOVE:"move",AUTO:""},sk={MAIN:0,WHEEL:1,SECONDARY:2,TOUCH:-1,ERASER:5},LK={enabled:"all",disabled:"none",inheritFromUI:"var(--ui-pointerEvents)"},DO={UNSTARTED:-1,ENDED:0,PLAYING:1,PAUSED:2,BUFFERING:3,CUED:5},VB={TEST:"test",DEVELOPMENT:"development"},qK={SHAPE_ACTIONS_MENU:"App-menu__left",ZOOM_ACTIONS:"zoom-actions",SEARCH_MENU_INPUT_WRAPPER:"layer-ui__search-inputWrapper"},n6={Virgil:1,Helvetica:2,Cascadia:3,Excalifont:5,Nunito:6,"Lilita One":7,"Comic Shanns":8,"Liberation Sans":9},Nq={[jq]:100,[pT]:1000},_3={LIGHT:"light",DARK:"dark"},j6={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},ok=n6.Excalifont,H_=2*EM,bku=2*H_-t43,XK={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"},y4={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",...XK},e43=[y4.text,y4.html,...Object.values(XK)],V_={png:"png",svg:"svg",clipboard:"clipboard"},WE={excalidraw:"excalidraw",excalidrawClipboard:"excalidraw/clipboard",excalidrawLibrary:"excalidrawlib",excalidrawClipboardWithAPI:"excalidraw-api/clipboard"},h_=window.EXCALIDRAW_EXPORT_SOURCE||window.location.origin,Tk0={canvasActions:{changeViewBackgroundColor:!0,clearCanvas:!0,export:{saveFileToDisk:!0},loadScene:!0,saveToActiveFile:!0,toggleTheme:null,saveAsImage:!0},tools:{image:!0}},y_=[1,2,3],fO={excalidraw:2,excalidrawLibrary:2},P8={TOP:"top",MIDDLE:"middle",BOTTOM:"bottom"},rq={LEFT:"left",CENTER:"center",RIGHT:"right"},b2={LEGACY:1,PROPORTIONAL_RADIUS:2,ADAPTIVE_RADIUS:3},Sku={architect:0,artist:1,cartoonist:2},c_={thin:1,bold:2,extraBold:4},x9={strokeColor:m3.black,backgroundColor:m3.transparent,fillStyle:"solid",strokeWidth:2,strokeStyle:"solid",roughness:Sku.artist,opacity:100,locked:!1},VA={name:"default",defaultTab:lO},Ik0=new Set(["iframe","embeddable","image"]),O2={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"},sq={OAI_API_KEY:"excalidraw-oai-api-key",MERMAID_TO_EXCALIDRAW:"mermaid-to-excalidraw",PUBLISH_LIBRARY:"publish-library-data"},MK={generalStats:1,elementProperties:2},f5={sharp:"sharp",round:"round",elbow:"elbow"},C33=Symbol.for("__test__originalId__"),Wku=((u)=>(u.ACTIVE="active",u.AWAY="away",u.IDLE="idle",u))(Wku||{}),D33=y_.includes(devicePixelRatio)?devicePixelRatio:1,F33=((u)=>u)({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}});L33=new RegExp(`^[^${G33}]*[${H33}]`);eku="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toLocaleUpperCase(),GO=(()=>{let u={};return{calculate:(B,E)=>{let A=B.charCodeAt(0);if(u[E]||(u[E]=[]),!u[E][A]){let C=wK(B,E);u[E][A]=C}return u[E][A]},getCache:(B)=>u[B],clearCache:(B)=>{u[B]=[]}}})(),RA={WHITESPACE:/\s/u,HYPHEN:/-/u,OPENING:/<\(\[\{/u,CLOSING:/>\)\]\}.,:;!\?…\//u},gk={CHAR:/\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}`'^〃〰〆#&*+-ー/\=|¦〒¬ ̄/u,OPENING:/([{〈《⦅「「『【〖〔〘〚<〝/u,CLOSING:/)]}〉》⦆」」』】〗〕〙〛>。.,、〟‥?!:;・〜〞/u,CURRENCY:/¥₩£¢$/u},kK={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},c1={build:(u)=>new RegExp(u,"u"),join:(...u)=>u.map((B)=>B.source).join(""),and:(...u)=>c1.build(c1.join(...u)),or:(...u)=>c1.build(u.map((B)=>B.source).join("|")),group:(...u)=>c1.build(`(${c1.join(...u)})`),class:(...u)=>c1.build(`[${c1.join(...u)}]`)},_9={On:(...u)=>{let B=c1.join(...u);return c1.build(`([${B}])`)},Before:(...u)=>{let B=c1.join(...u),E=()=>c1.build(`(?=[${B}])`);return _9.Chain(E)},After:(...u)=>{let B=c1.join(...u),E=()=>c1.build(`(?<=[${B}])`);return _9.Chain(E)},BeforeMany:(...u)=>{let B=c1.join(...u),E=()=>c1.build(`(?<![${B}])(?=[${B}])`);return _9.Chain(E)},AfterMany:(...u)=>{let B=c1.join(...u),E=()=>c1.build(`(?<=[${B}])(?![${B}])`);return _9.Chain(E)},NotBefore:(...u)=>{let B=c1.join(...u),E=()=>c1.build(`(?![${B}])`);return _9.Chain(E)},NotAfter:(...u)=>{let B=c1.join(...u),E=()=>c1.build(`(?<![${B}])`);return _9.Chain(E)},Chain:(u)=>({Build:u,PreceededBy:(...B)=>{let E=u(),A=_9.After(...B).Build(),C=()=>c1.and(A,E);return _9.Chain(C)},FollowedBy:(...B)=>{let E=u(),A=_9.Before(...B).Build(),C=()=>c1.and(E,A);return _9.Chain(C)},NotPrecededBy:(...B)=>{let E=u(),A=_9.NotAfter(...B).Build(),C=()=>c1.and(A,E);return _9.Chain(C)},NotFollowedBy:(...B)=>{let E=u(),A=_9.NotBefore(...B).Build(),C=()=>c1.and(E,A);return _9.Chain(C)}})};j0(NB,"rg",new qU),j0(NB,"cache",new WeakMap),j0(NB,"get",(u)=>NB.cache.get(u)),j0(NB,"set",(u,B)=>NB.cache.set(u,B)),j0(NB,"delete",(u)=>NB.cache.delete(u)),j0(NB,"destroy",()=>{NB.cache=new WeakMap}),j0(NB,"generateElementShape",(u,B)=>{let E=B?.isExporting?void 0:NB.get(u);if(E!==void 0)return E;bk0.delete(u);let A=f73(u,NB.rg,B||{isExporting:!1,canvasBackgroundColor:m3.white,embedsValidationStatus:null});return NB.cache.set(u,A),A});p6=NB,k4={width:24,height:24,fill:"none",strokeWidth:2,stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},I3={width:20,height:20,fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},Oq1=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("rect",{x:3,y:8,width:18,height:4,rx:1}),P("line",{x1:12,y1:8,x2:12,y2:21}),P("path",{d:"M19 12v7a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-7"}),P("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"})]}),k4),s_=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M3 19a9 9 0 0 1 9 0a9 9 0 0 1 9 0"}),P("path",{d:"M3 6a9 9 0 0 1 9 0a9 9 0 0 1 9 0"}),P("line",{x1:"3",y1:"6",x2:"3",y2:"19"}),P("line",{x1:"12",y1:"6",x2:"12",y2:"19"}),P("line",{x1:"21",y1:"6",x2:"21",y2:"19"})]}),k4),Efu=ku(l0("svg",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),P("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]}),k4),Afu=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("circle",{cx:"12",cy:"12",r:"1"}),P("circle",{cx:"12",cy:"19",r:"1"}),P("circle",{cx:"12",cy:"5",r:"1"})]}),k4),Cfu=ku(l0("svg",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M9 4v6l-2 4v2h10v-2l-2 -4v-6"}),P("line",{x1:"12",y1:"16",x2:"12",y2:"21"}),P("line",{x1:"8",y1:"4",x2:"16",y2:"4"})]}),k4),HO=ku(l0("g",{children:[P("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"}),P("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"}),P("mask",{id:"UnlockedIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:6,y:1,width:9,height:9,children:P("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"})}),P("g",{mask:"url(#UnlockedIcon)",children:P("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"})})]}),I3),o_=ku(l0("g",{strokeWidth:"1.25",children:[P("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"}),P("path",{d:"M10 13.958a1.042 1.042 0 1 0 0-2.083 1.042 1.042 0 0 0 0 2.083Z"}),P("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"})]}),I3),Dfu=ku(l0(tu,{children:[P("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"}),P("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m12.005 10.478 7.905 14.423L6 25.75l6.005-15.273Z",fill:"currentColor"}),P("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"}),Ffu=ku(l0(tu,{children:[P("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"}),P("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m72.181 59.247-13.058-10-2.948 13.62 16.006-3.62Z",fill:"currentColor"}),P("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"}),Ufu=ku(l0(tu,{children:[P("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"}),P("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m24.165 1.093-2.132 16.309 13.27-4.258-11.138-12.05Z",fill:"currentColor"}),P("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"}),Iq1=ku(P("g",{fill:"currentColor",children:P("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"}),$33=ku(l0("g",{stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M13.5 13.5l4.5 4.5"})]}),{fill:"none",width:22,height:22,strokeWidth:1.25}),y33=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"})]}),k4),c33=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"})]}),k4),g33=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("circle",{cx:"12",cy:"12",r:"9"})]}),k4),_33=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"5",y1:"12",x2:"19",y2:"12"}),P("line",{x1:"15",y1:"16",x2:"19",y2:"12"}),P("line",{x1:"15",y1:"8",x2:"19",y2:"12"})]}),k4),n33=ku(P("path",{d:"M4.167 10h11.666",strokeWidth:"1.5"}),I3),zfu=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M20 17v-12c0 -1.121 -.879 -2 -2 -2s-2 .879 -2 2v12l2 2l2 -2z"}),P("path",{d:"M16 7h4"}),P("path",{d:"M18 19h-13a2 2 0 1 1 0 -4h4a2 2 0 1 0 0 -4h-3"})]}),k4),$q=ku(l0("g",{strokeWidth:"1.25",children:[P("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"}),P("path",{d:"m11.25 5.417 3.333 3.333"})]}),I3),ek0=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"20",x2:"7",y2:"20"}),P("line",{x1:"14",y1:"20",x2:"21",y2:"20"}),P("line",{x1:"6.9",y1:"15",x2:"13.8",y2:"15"}),P("line",{x1:"10.2",y1:"6.3",x2:"16",y2:"20"}),P("polyline",{points:"5 20 11 4 13 4 20 20"})]}),k4),p33=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{d:"M12.5 6.667h.01"}),P("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"}),P("path",{d:"m3.333 12.5 3.334-3.333c.773-.745 1.726-.745 2.5 0l4.166 4.166"}),P("path",{d:"m11.667 11.667.833-.834c.774-.744 1.726-.744 2.5 0l1.667 1.667"})]}),I3),d33=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M18 13.3l-6.3 -6.3"})]}),k4),uf0=ku(P("path",{strokeWidth:"1.25",d:"M10 4.167v11.666M4.167 10h11.666"}),I3),Bf0=ku(P("path",{d:"M5 10h10",strokeWidth:"1.25"}),I3),kfu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M21 21l-6 -6"}),P("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"}),P("path",{d:"M3 4v4h4"})]}),k4),MM=ku(P("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"}),I3),ffu=ku(l0("g",{strokeWidth:"1.25",children:[P("polyline",{points:"12 16 18 10 12 4"}),P("polyline",{points:"8 4 2 10 8 16"})]}),I3),t_=ku(l0("g",{strokeWidth:"1.25",children:[P("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"}),P("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"})]}),I3),e_=ku(P("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"}),I3),un=ku(P("g",{stroke:"currentColor",strokeLinejoin:"round",children:P("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"})}),{...I3,strokeWidth:1.5}),Ef0=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"6",x2:"20",y2:"6"}),P("line",{x1:"4",y1:"12",x2:"20",y2:"12"}),P("line",{x1:"4",y1:"18",x2:"20",y2:"18"})]}),k4),LO=ku(P("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"}),I3),Bn=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("circle",{cx:"12",cy:"12",r:"9"}),P("line",{x1:"12",y1:"17",x2:"12",y2:"17.01"}),P("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),k4),lfu=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("circle",{cx:"12",cy:"12",r:"9"}),P("line",{x1:"12",y1:"17",x2:"12",y2:"17.01"}),P("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),k4),Af0=ku(P("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"}),I3),Cf0=ku(P("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"}),I3),bfu=ku(l0("g",{strokeWidth:"1.25",children:[P("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"}),P("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"})]}),I3),Mfu=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4 4l11.733 16h4.267l-11.733 -16z"}),P("path",{d:"M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772"})]}),k4),Zfu=ku(P("polyline",{fill:"none",stroke:"currentColor",points:"20 6 9 17 4 12"}),{width:24,height:24}),En=ku(l0("g",{strokeWidth:"1.25",children:[P("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"}),P("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"})]}),I3),Jfu=ku("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}),wfu=ku("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}),An=ku(P("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"}),I3),Pq1=ku("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}),Kfu=ku("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"),Cn=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M5 16l1.465 1.638a2 2 0 1 1 -3.015 .099l1.55 -1.737z"}),P("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"}),P("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"})]}),k4),Df0=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M15 8h.01"}),P("path",{d:"M12 20h-5a3 3 0 0 1 -3 -3v-10a3 3 0 0 1 3 -3h10a3 3 0 0 1 3 3v5"}),P("path",{d:"M4 15l4 -4c.928 -.893 2.072 -.893 3 0l4 4"}),P("path",{d:"M14 14l1 -1c.617 -.593 1.328 -.793 2.009 -.598"}),P("path",{d:"M19 16v6"}),P("path",{d:"M22 19l-3 3l-3 -3"})]}),k4),Qfu=ku("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}),jq1=ku("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}),Nq1=ku("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}),Gfu=ku("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"),iq1=ku("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"),Ff0=ku(P("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"}),I3),Uf0=ku(P("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"}),I3),Hfu=ku("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}),Lfu=ku(P("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"}),I3),aq1=ku("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"),Vq1=ku("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}),hq1=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M12 14v-11"}),P("path",{d:"M9 6l3 -3l3 3"})]}),k4),mq1=ku(l0(tu,{children:[P("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"}),P("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}),rq1=ku(P("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}),qfu=l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M12 10l0 10"}),P("path",{d:"M12 10l4 4"}),P("path",{d:"M12 10l-4 4"}),P("path",{d:"M4 4l16 0"})]}),Xfu=l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M12 5l0 14"}),P("path",{d:"M16 9l-4 -4"}),P("path",{d:"M8 9l4 -4"})]}),zf0=ku(Xfu,k4),kf0=ku(Xfu,{...k4,style:{transform:"rotate(180deg)"}}),ff0=ku(qfu,k4),lf0=ku(qfu,{...k4,style:{transform:"rotate(180deg)"}}),bf0=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M3.333 3.333h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),Mf0=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M3.333 16.667h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),Zf0=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M3.333 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),Jf0=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M16.667 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),xfu=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M16.667 3.333v13.334M3.333 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),vfu=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M3.333 3.333h13.334M3.333 16.667h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),wf0=ku(l0("g",{stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M1.667 10h2.916",strokeLinecap:"round",strokeLinejoin:"round"}),P("path",{d:"M8.333 10h3.334",strokeLinejoin:"round"}),P("path",{d:"M15.417 10h2.916",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),I3),Kf0=ku(l0("g",{stroke:"currentColor",strokeWidth:"1.25",children:[P("path",{d:"M10 18.333v-2.916",strokeLinecap:"round",strokeLinejoin:"round"}),P("path",{d:"M10 11.667V8.333",strokeLinejoin:"round"}),P("path",{d:"M10 4.583V1.667",strokeLinecap:"round",strokeLinejoin:"round"}),P("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"})]}),I3),Qf0=ku(l0("g",{strokeWidth:"1.5",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("circle",{cx:"9",cy:"7",r:"4"}),P("path",{d:"M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"}),P("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"}),P("path",{d:"M21 21v-2a4 4 0 0 0 -3 -3.85"})]}),k4),$q1=ku("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"),yq1=ku("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"),OK=ku(l0(tu,{children:[P("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:P("path",{d:"M15 5 5 15M5 5l10 10"})}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),cq1=ku("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}),gq1=ku("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}),_q1=ku("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}),Gf0=m5.default.memo(({theme:u})=>ku(l0(tu,{children:[P("path",{d:"M25 26H111V111H25",fill:CD(u)}),P("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:CD(u),strokeWidth:"2"}),P("path",{d:"M100 100H160V160H100",fill:CD(u)}),P("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:CD(u),strokeWidth:"2"}),l0("g",{fill:Bfu(u),stroke:CD(u),strokeWidth:"6",children:[P("rect",{x:"2.5",y:"2.5",width:"30",height:"30"}),P("rect",{x:"2.5",y:"149.5",width:"30",height:"30"}),P("rect",{x:"147.5",y:"149.5",width:"30",height:"30"}),P("rect",{x:"147.5",y:"2.5",width:"30",height:"30"})]})]}),{width:182,height:182,mirror:!0})),Hf0=m5.default.memo(({theme:u})=>ku(l0(tu,{children:[P("path",{d:"M25 26H111V111H25",fill:CD(u)}),P("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:CD(u),strokeWidth:"2"}),P("path",{d:"M100 100H160V160H100",fill:CD(u)}),P("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:CD(u),strokeWidth:"2"}),l0("g",{fill:Bfu(u),stroke:CD(u),strokeWidth:"6",children:[P("rect",{x:"2.5",y:"2.5",width:"30",height:"30"}),P("rect",{x:"78.5",y:"149.5",width:"30",height:"30"}),P("rect",{x:"147.5",y:"149.5",width:"30",height:"30"}),P("rect",{x:"147.5",y:"78.5",width:"30",height:"30"}),P("rect",{x:"105.5",y:"2.5",width:"30",height:"30"}),P("rect",{x:"2.5",y:"102.5",width:"30",height:"30"})]})]}),{width:182,height:182,mirror:!0})),Sfu=ku(P("g",{strokeWidth:1.25,children:P("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"})}),I3),Wfu=ku(l0(tu,{children:[P("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"}),P("mask",{id:"FillHachureIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:2,y:2,width:16,height:16,children:P("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"})}),P("g",{mask:"url(#FillHachureIcon)",children:P("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"})})]}),I3),Yfu=ku(l0(tu,{children:[l0("g",{clipPath:"url(#a)",children:[P("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"}),P("mask",{id:"FillCrossHatchIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:-1,y:-1,width:22,height:22,children:P("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"})}),P("g",{mask:"url(#FillCrossHatchIcon)",children:P("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"})})]}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),Rfu=ku(l0(tu,{children:[P("g",{clipPath:"url(#a)",children:P("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"})}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),{...I3,fill:"currentColor"}),Lf0=ku(P(tu,{children:P("path",{d:"M4.167 10h11.666",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),I3),Tfu=ku(P("path",{d:"M5 10h10",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"}),I3),Ofu=ku(P("path",{d:"M5 10h10",stroke:"currentColor",strokeWidth:"3.75",strokeLinecap:"round",strokeLinejoin:"round"}),I3),nq1=m5.default.memo(({theme:u})=>ku(P("path",{d:"M6 10H34",stroke:CD(u),strokeWidth:2,fill:"none",strokeLinecap:"round"}),{width:40,height:20})),Ifu=ku(l0("g",{strokeWidth:"2",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M5 12h2"}),P("path",{d:"M17 12h2"}),P("path",{d:"M11 12h2"})]}),k4),Pfu=ku(l0("g",{strokeWidth:"2",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4 12v.01"}),P("path",{d:"M8 12v.01"}),P("path",{d:"M12 12v.01"}),P("path",{d:"M16 12v.01"}),P("path",{d:"M20 12v.01"})]}),k4),jfu=ku(P("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"}),I3),Nfu=ku(P("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"}),I3),ifu=ku(P("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"}),I3),afu=ku(l0("svg",{strokeWidth:"1.5",children:[P("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"}),P("path",{d:"M13.3333 3.33331V3.34331"}),P("path",{d:"M16.6667 3.33331V3.34331"}),P("path",{d:"M16.6667 6.66669V6.67669"}),P("path",{d:"M16.6667 10V10.01"}),P("path",{d:"M3.33334 13.3333V13.3433"}),P("path",{d:"M16.6667 13.3333V13.3433"}),P("path",{d:"M3.33334 16.6667V16.6767"}),P("path",{d:"M6.66666 16.6667V16.6767"}),P("path",{d:"M10 16.6667V16.6767"}),P("path",{d:"M13.3333 16.6667V16.6767"}),P("path",{d:"M16.6667 16.6667V16.6767"})]}),I3),Vfu=ku(l0("g",{strokeWidth:"1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4 12v-4a4 4 0 0 1 4 -4h4"}),P("line",{x1:"16",y1:"4",x2:"16",y2:"4.01"}),P("line",{x1:"20",y1:"4",x2:"20",y2:"4.01"}),P("line",{x1:"20",y1:"8",x2:"20",y2:"8.01"}),P("line",{x1:"20",y1:"12",x2:"20",y2:"12.01"}),P("line",{x1:"4",y1:"16",x2:"4",y2:"16.01"}),P("line",{x1:"20",y1:"16",x2:"20",y2:"16.01"}),P("line",{x1:"4",y1:"20",x2:"4",y2:"20.01"}),P("line",{x1:"8",y1:"20",x2:"8",y2:"20.01"}),P("line",{x1:"12",y1:"20",x2:"12",y2:"20.01"}),P("line",{x1:"16",y1:"20",x2:"16",y2:"20.01"}),P("line",{x1:"20",y1:"20",x2:"20",y2:"20.01"})]}),k4),hfu=ku(l0("g",{stroke:"currentColor",opacity:0.3,strokeWidth:2,children:[P("path",{d:"M12 12l9 0"}),P("path",{d:"M3 9l6 6"}),P("path",{d:"M3 15l6 -6"})]}),k4),mfu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{transform:u?"translate(40, 0) scale(-1, 1)":"",stroke:"currentColor",strokeWidth:2,fill:"none",children:[P("path",{d:"M34 10H6M34 10L27 5M34 10L27 15"}),P("path",{d:"M27.5 5L34.5 10L27.5 15"})]}),{width:40,height:20})),rfu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{stroke:"currentColor",fill:"currentColor",transform:u?"translate(40, 0) scale(-1, 1)":"",children:[P("path",{d:"M32 10L6 10",strokeWidth:2}),P("circle",{r:"4",transform:"matrix(-1 0 0 1 30 10)"})]}),{width:40,height:20})),$fu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{stroke:"currentColor",fill:"none",transform:u?"translate(40, 0) scale(-1, 1)":"",strokeWidth:2,children:[P("path",{d:"M26 10L6 10"}),P("circle",{r:"4",transform:"matrix(-1 0 0 1 30 10)"})]}),{width:40,height:20})),yfu=m5.default.memo(({flip:u=!1})=>ku(P("g",{transform:u?"translate(40, 0) scale(-1, 1)":"",children:P("path",{d:"M34 10H5.99996M34 10L34 5M34 10L34 15",stroke:"currentColor",strokeWidth:2,fill:"none"})}),{width:40,height:20})),cfu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{stroke:"currentColor",fill:"currentColor",transform:u?"translate(40, 0) scale(-1, 1)":"",children:[P("path",{d:"M32 10L6 10",strokeWidth:2}),P("path",{d:"M27.5 5.5L34.5 10L27.5 14.5L27.5 5.5"})]}),{width:40,height:20})),gfu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{stroke:"currentColor",fill:"none",transform:u?"translate(40, 0) scale(-1, 1)":"",strokeWidth:2,strokeLinejoin:"round",children:[P("path",{d:"M6,9.5H27"}),P("path",{d:"M27,5L34,10L27,14Z",fill:"none"})]}),{width:40,height:20})),_fu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{stroke:"currentColor",fill:"currentColor",transform:u?"translate(40, 0) scale(-1, 1)":"",strokeLinejoin:"round",strokeWidth:2,children:[P("path",{d:"M6,9.5H20"}),P("path",{d:"M27,5L34,10L27,14L20,9.5Z"})]}),{width:40,height:20})),nfu=m5.default.memo(({flip:u=!1})=>ku(l0("g",{stroke:"currentColor",fill:"none",transform:u?"translate(40, 0) scale(-1, 1)":"",strokeLinejoin:"round",strokeWidth:2,children:[P("path",{d:"M6,9.5H20"}),P("path",{d:"M27,5L34,10L27,14L20,9.5Z"})]}),{width:40,height:20})),pfu=m5.default.memo(({flip:u=!1})=>ku(P("g",{stroke:"currentColor",fill:"none",transform:u?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:P("path",{d:"M34,10 H6 M15,10 L7,5 M15,10 L7,15"})}),{width:40,height:20})),dfu=m5.default.memo(({flip:u=!1})=>ku(P("g",{stroke:"currentColor",fill:"none",transform:u?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:P("path",{d:"M34,10 H6 M15,10 L15,15 L15,5"})}),{width:40,height:20})),sfu=m5.default.memo(({flip:u=!1})=>ku(P("g",{stroke:"currentColor",fill:"none",transform:u?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:P("path",{d:"M34,10 H6 M15,10 L15,16 L15,4 M15,10 L7,5 M15,10 L7,15"})}),{width:40,height:20})),ofu=ku(l0(tu,{children:[P("g",{clipPath:"url(#a)",children:P("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"})}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),tfu=ku(l0(tu,{children:[P("g",{clipPath:"url(#a)",children:P("path",{d:"M5 16.667V3.333L10 15l5-11.667v13.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),efu=ku(l0(tu,{children:[P("g",{clipPath:"url(#a)",children:P("path",{d:"M5.833 3.333v13.334h8.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),ulu=ku(P(tu,{children:P("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"})}),I3),qO=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M3 7v-2h13v2"}),P("path",{d:"M10 5v14"}),P("path",{d:"M12 19h-4"}),P("path",{d:"M15 13v-1h6v1"}),P("path",{d:"M18 12v7"}),P("path",{d:"M17 19h2"})]}),k4),s33=ku(P(tu,{children:l0("g",{stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M7 12h10"}),P("path",{d:"M7 5v14"}),P("path",{d:"M17 5v14"}),P("path",{d:"M15 19h4"}),P("path",{d:"M15 5h4"}),P("path",{d:"M5 19h4"}),P("path",{d:"M5 5h4"})]})}),k4),tT=ku(P(tu,{children:P("g",{stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:P("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"})})}),I3),Y_=ku(l0(tu,{children:[P("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:P("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"})}),P("defs",{children:P("clipPath",{id:"a",children:P("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),I3),Blu=ku(l0("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),P("line",{x1:"4",y1:"12",x2:"12",y2:"12"}),P("line",{x1:"4",y1:"16",x2:"16",y2:"16"})]}),k4),Elu=ku(l0("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),P("line",{x1:"8",y1:"12",x2:"16",y2:"12"}),P("line",{x1:"6",y1:"16",x2:"18",y2:"16"})]}),k4),Alu=ku(l0("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),P("line",{x1:"10",y1:"12",x2:"20",y2:"12"}),P("line",{x1:"8",y1:"16",x2:"20",y2:"16"})]}),k4),Clu=m5.default.memo(({theme:u})=>ku(l0("g",{strokeWidth:"1.5",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"4",x2:"20",y2:"4"}),P("rect",{x:"9",y:"8",width:"6",height:"12",rx:"2"})]}),k4)),Dlu=m5.default.memo(({theme:u})=>ku(l0("g",{strokeWidth:"2",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"20",x2:"20",y2:"20"}),P("rect",{x:"9",y:"4",width:"6",height:"12",rx:"2"})]}),k4)),Flu=m5.default.memo(({theme:u})=>ku(l0("g",{strokeWidth:"1.5",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("line",{x1:"4",y1:"12",x2:"9",y2:"12"}),P("line",{x1:"15",y1:"12",x2:"20",y2:"12"}),P("rect",{x:"9",y:"6",width:"6",height:"12",rx:"2"})]}),k4)),qf0=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M21 19h-18l9 -15"}),P("path",{d:"M20.615 15.171h.015"}),P("path",{d:"M19.515 11.771h.015"}),P("path",{d:"M17.715 8.671h.015"}),P("path",{d:"M15.415 5.971h.015"})]}),k4),Ulu=ku(P("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}),pq1=ku(P("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"})),Xf0=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5"}),P("path",{d:"M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5"}),P("path",{d:"M14 5.5a1.5 1.5 0 0 1 3 0v6.5"}),P("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"})]}),k4),xf0=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"}),P("path",{d:"M7 11l5 5l5 -5"}),P("path",{d:"M12 4l0 12"})]}),k4),Dn=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2"})]}),k4),zlu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M7 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),P("path",{d:"M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),P("path",{d:"M9.15 14.85l8.85 -10.85"}),P("path",{d:"M6 4l8.85 10.85"})]}),k4),klu=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"}),P("path",{d:"M12 17l0 .01"}),P("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),k4),dq1=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M7 4v16l13 -8z"})]}),k4),sq1=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"})]}),k4),flu=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M5 12l5 5l10 -10"})]}),k4),llu=ku(l0(tu,{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M12 9v4"}),P("path",{d:"M12 17h.01"})]}),k4),blu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M11 7l6 6"}),P("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"})]}),k4),Mlu=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M12 3l-4 7h8z"}),P("path",{d:"M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),P("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"})]}),k4),vf0=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4 7l16 0"}),P("path",{d:"M4 17l16 0"}),P("path",{d:"M7 4l0 16"}),P("path",{d:"M17 4l0 16"})]}),k4),Sf0=ku(P("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"})),XO=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{d:"M4.16602 10H15.8327"}),P("path",{d:"M12.5 13.3333L15.8333 10"}),P("path",{d:"M12.5 6.66666L15.8333 9.99999"})]}),I3),Wf0=ku(l0("g",{fill:"none",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",transform:"rotate(90 10 10)",children:[P("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"}),P("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),Yf0=ku(l0("g",{stroke:"currentColor",fill:"none",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z"}),P("path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3"}),P("path",{d:"M15 6l3 3"}),P("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"}),P("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"})]}),k4),oq1=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z"}),P("path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3"}),P("path",{d:"M15 6l3 3"}),P("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"}),P("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"})]}),k4),tq1=ku(l0("g",{stroke:"currentColor",fill:"none",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M11.217 19.384a3.501 3.501 0 0 0 6.783 -1.217v-5.167l-6 -3.35"}),P("path",{d:"M5.214 15.014a3.501 3.501 0 0 0 4.446 5.266l4.34 -2.534v-6.946"}),P("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"}),P("path",{d:"M12.783 4.616a3.501 3.501 0 0 0 -6.783 1.217v5.067l6 3.45"}),P("path",{d:"M18.786 8.986a3.501 3.501 0 0 0 -4.446 -5.266l-4.34 2.534v6.946"}),P("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"})]}),k4),Zlu=ku(l0("g",{stroke:"currentColor",fill:"none",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2"}),P("path",{d:"M4 16v2a2 2 0 0 0 2 2h2"}),P("path",{d:"M16 4h2a2 2 0 0 1 2 2v2"}),P("path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2"})]}),k4),Fn=ku(l0("g",{stroke:"currentColor",fill:"none",strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0"}),P("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"})]}),k4),Jlu=ku(l0("g",{stroke:"currentColor",fill:"none",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M10.585 10.587a2 2 0 0 0 2.829 2.828"}),P("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"}),P("path",{d:"M3 3l18 18"})]}),k4),wlu=ku(l0("g",{stroke:"currentColor",fill:"none",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("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"}),P("path",{d:"M17.5 16a3.5 3.5 0 0 0 0 -7h-.5"}),P("path",{d:"M19 9.3v-2.8a3.5 3.5 0 0 0 -7 0"}),P("path",{d:"M6.5 16a3.5 3.5 0 0 1 0 -7h.5"}),P("path",{d:"M5 9.3v-2.8a3.5 3.5 0 0 1 7 0v10"})]}),k4),Klu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("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"}),P("path",{d:"M17.5 16a3.5 3.5 0 0 0 0 -7h-.5"}),P("path",{d:"M19 9.3v-2.8a3.5 3.5 0 0 0 -7 0"}),P("path",{d:"M6.5 16a3.5 3.5 0 0 1 0 -7h.5"}),P("path",{d:"M5 9.3v-2.8a3.5 3.5 0 0 1 7 0v10"})]}),k4),ZM=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0"}),P("path",{d:"M21 21l-6 -6"})]}),k4),Qlu=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M20.984 12.53a9 9 0 1 0 -7.552 8.355"}),P("path",{d:"M12 7v5l3 3"}),P("path",{d:"M19 16l-2 3h4l-2 3"})]}),k4),Glu=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M5 10a7 7 0 0 0 14 0"}),P("path",{d:"M8 21l8 0"}),P("path",{d:"M12 17l0 4"})]}),k4),Hlu=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M3 3l18 18"}),P("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"}),P("path",{d:"M5 10a7 7 0 0 0 10.846 5.85m2 -2a6.967 6.967 0 0 0 1.152 -3.85"}),P("path",{d:"M8 21l8 0"}),P("path",{d:"M12 17l0 4"})]}),k4),Rf0=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11"})]}),k4),Llu=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M12 20v.01"}),P("path",{d:"M16 20v.01"}),P("path",{d:"M8 20v.01"}),P("path",{d:"M4 20v.01"}),P("path",{d:"M4 16v.01"}),P("path",{d:"M4 12v.01"}),P("path",{d:"M4 8v.01"}),P("path",{d:"M4 4v.01"}),P("path",{d:"M8 4v.01"}),P("path",{d:"M12 4v.01"}),P("path",{d:"M16 4v.01"}),P("path",{d:"M20 4v.01"}),P("path",{d:"M20 8v.01"}),P("path",{d:"M20 12v.01"}),P("path",{d:"M20 16v.01"}),P("path",{d:"M20 20v.01"})]}),k4),qlu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M5 3v18"}),P("path",{d:"M19 21v-18"}),P("path",{d:"M5 7h14"}),P("path",{d:"M5 15h14"}),P("path",{d:"M8 13v4"}),P("path",{d:"M11 13v4"}),P("path",{d:"M16 13v4"}),P("path",{d:"M14 5v4"}),P("path",{d:"M11 5v4"}),P("path",{d:"M8 5v4"}),P("path",{d:"M3 21h18"})]}),k4),Xlu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M3 12l18 0"}),P("path",{d:"M7 16l10 0l-10 5l0 -5"}),P("path",{d:"M7 8l10 0l-10 -5l0 5"})]}),k4),xlu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M12 3l0 18"}),P("path",{d:"M16 7l0 10l5 0l-5 -10"}),P("path",{d:"M8 7l0 10l-5 0l5 -10"})]}),k4),Tf0=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M19 6h1a2 2 0 0 1 2 2a5 5 0 0 1 -5 5l-5 0v2"}),P("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"})]}),k4),Un=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M15 15m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0"}),P("path",{d:"M22 22l-3 -3"}),P("path",{d:"M6 18h-1a2 2 0 0 1 -2 -2v-1"}),P("path",{d:"M3 11v-1"}),P("path",{d:"M3 6v-1a2 2 0 0 1 2 -2h1"}),P("path",{d:"M10 3h1"}),P("path",{d:"M15 3h1a2 2 0 0 1 2 2v1"})]}),k4),vlu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M14 3v4a1 1 0 0 0 1 1h4"}),P("path",{d:"M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4"}),P("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"}),P("path",{d:"M10 15l2 6l2 -6"}),P("path",{d:"M20 15h-1a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h1v-3"})]}),k4),Slu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M14 3v4a1 1 0 0 0 1 1h4"}),P("path",{d:"M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4"}),P("path",{d:"M20 15h-1a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h1v-3"}),P("path",{d:"M5 18h1.5a1.5 1.5 0 0 0 0 -3h-1.5v6"}),P("path",{d:"M11 21v-6l3 6v-6"})]}),k4),Wlu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M4 8l5 0"}),P("path",{d:"M15 8l4 0"})]}),k4),Ylu=ku(l0("g",{strokeWidth:1.25,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M8 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2"}),P("path",{d:"M12 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2"}),P("path",{d:"M3 10h14v5a6 6 0 0 1 -6 6h-2a6 6 0 0 1 -6 -6v-5z"}),P("path",{d:"M16.746 16.726a3 3 0 1 0 .252 -5.555"})]}),k4),Rlu=ku(l0("g",{stroke:"currentColor",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"})]}),{...k4,strokeWidth:1.5}),eq1=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M21 12h-13l3 -3"}),P("path",{d:"M11 15l-3 -3"})]}),k4),Tlu=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("path",{d:"M10 9l5 3l-5 3z"})]}),k4),Olu=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M3 6h18"}),P("path",{d:"M3 12h18"}),P("path",{d:"M3 18h18"}),P("path",{d:"M6 3v18"}),P("path",{d:"M12 3v18"}),P("path",{d:"M18 3v18"})]}),k4),Ilu=ku(l0("g",{strokeWidth:1.5,children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("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"}),P("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"}),P("path",{d:"M17 5c-6.627 0 -12 5.373 -12 12"})]}),k4),Plu=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M6 18l12 -12"}),P("path",{d:"M18 10v-4h-4"})]}),k4),jlu=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M4,19L10,19C11.097,19 12,18.097 12,17L12,9C12,7.903 12.903,7 14,7L21,7"}),P("path",{d:"M18 4l3 3l-3 3"})]}),k4),Nlu=ku(l0("g",{children:[P("path",{d:"M16,12L20,9L16,6"}),P("path",{d:"M6 20c0 -6.075 4.925 -11 11 -11h3"})]}),k4),Of0=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M6 9l6 6l6 -6"})]}),k4),ilu=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M6 15l6 -6l6 6"})]}),k4),alu=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M6 15l6 -6l6 6"})]}),k4),If0=ku(l0("g",{strokeWidth:"1.25",children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M8 5v10a1 1 0 0 0 1 1h10"}),P("path",{d:"M5 8h10a1 1 0 0 1 1 1v10"})]}),k4),Pf0=ku(l0("g",{children:[P("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),P("path",{d:"M5 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),P("path",{d:"M19 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),P("path",{d:"M5 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),P("path",{d:"M19 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),P("path",{d:"M5 7l0 10"}),P("path",{d:"M7 5l10 0"}),P("path",{d:"M7 19l10 0"}),P("path",{d:"M19 7l0 10"})]}),k4),R_={[n6.Excalifont]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},icon:$q},[n6.Nunito]:{metrics:{unitsPerEm:1000,ascender:1011,descender:-353,lineHeight:1.35},icon:tT},[n6["Lilita One"]]:{metrics:{unitsPerEm:1000,ascender:923,descender:-220,lineHeight:1.15},icon:s33},[n6["Comic Shanns"]]:{metrics:{unitsPerEm:1000,ascender:750,descender:-250,lineHeight:1.25},icon:Y_},[n6.Virgil]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},icon:$q,deprecated:!0},[n6.Helvetica]:{metrics:{unitsPerEm:2048,ascender:1577,descender:-471,lineHeight:1.15},icon:tT,deprecated:!0,local:!0},[n6.Cascadia]:{metrics:{unitsPerEm:2048,ascender:1900,descender:-480,lineHeight:1.2},icon:Y_,deprecated:!0},[n6["Liberation Sans"]]:{metrics:{unitsPerEm:2048,ascender:1854,descender:-434,lineHeight:1.15},serverSide:!0},[Nq.Xiaolai]:{metrics:{unitsPerEm:1000,ascender:880,descender:-144,lineHeight:1.15},fallback:!0},[Nq["Segoe UI Emoji"]]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},local:!0,fallback:!0}},fK={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"},o33=class extends Error{constructor(u="Couldn't export canvas.",B="CANVAS_ERROR"){super(),this.name=B,this.message=u}},xO=class extends DOMException{constructor(u="Request Aborted"){super(u,"AbortError")}},sb=class extends Error{constructor(u="Image Scene Data Error",B="IMAGE_SCENE_DATA_ERROR"){super(u);j0(this,"code"),this.name="EncodingError",this.code=B}},t33=class extends Error{constructor(){super(...arguments);j0(this,"code","ELEMENT_HAS_INVALID_INDEX")}},Vlu=class extends Error{constructor(u="Worker URL is not defined!",B="WORKER_URL_NOT_DEFINED"){super(u);j0(this,"code"),this.name="WorkerUrlNotDefinedError",this.code=B}},hlu=class extends Error{constructor(u="Worker has to be in a separate chunk!",B="WORKER_IN_THE_MAIN_CHUNK"){super(u);j0(this,"code"),this.name="WorkerInTheMainChunkError",this.code=B}},Ezu=class extends Error{constructor(u){super(u),this.name="ExcalidrawError"}},Azu=typeof Worker<"u";j0(mlu,"ASSETS_FALLBACK_URL",`https://esm.sh/${Z3.PKG_NAME?`${Z3.PKG_NAME}@${Z3.PKG_VERSION}`:"@excalidraw/excalidraw"}/dist/prod/`);D13=mlu,U13=[{uri:F13}],b13=[{uri:z13,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:k13,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:f13,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:l13,descriptors:{unicodeRange:"U+3bb"}}],M13=[{uri:jf0}],L13=[{uri:Z13,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:J13,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:w13,descriptors:{unicodeRange:"U+400-45f,U+490-491,U+2116"}},{uri:K13,descriptors:{unicodeRange:"U+37e,U+384-38a,U+38c,U+38e-393,U+395-3a1,U+3a3-3a8,U+3aa-3cf,U+3d7"}},{uri:Q13,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:G13,descriptors:{unicodeRange:"U+462-463,U+472-475,U+4d8-4d9,U+4e2-4e3,U+4e6-4e9,U+4ee-4ef"}},{uri:H13,descriptors:{unicodeRange:"U+300-301,U+303"}}],q13=[{uri:jf0}],x13=[{uri:X13}],W13=[{uri:S13,descriptors:{unicodeRange:fK.LATIN_EXT}},{uri:v13,descriptors:{unicodeRange:fK.LATIN}}],P13=[{uri:O13,descriptors:{unicodeRange:fK.CYRILIC_EXT,weight:"500"}},{uri:T13,descriptors:{unicodeRange:fK.CYRILIC,weight:"500"}},{uri:I13,descriptors:{unicodeRange:fK.VIETNAMESE,weight:"500"}},{uri:R13,descriptors:{unicodeRange:fK.LATIN_EXT,weight:"500"}},{uri:Y13,descriptors:{unicodeRange:fK.LATIN,weight:"500"}}],N13=[{uri:j13}],R53=[{uri:i13,descriptors:{unicodeRange:"U+f9b8-fa6d,U+fe32,U+fe45-fe4f,U+ff02-ff0b,U+ff0d-ff1e,U+ff20-ff2a"}},{uri:a13,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:V13,descriptors:{unicodeRange:"U+d7eb-d7fb,U+f900-f9b7"}},{uri:h13,descriptors:{unicodeRange:"U+d6f2-d7a3,U+d7b0-d7c6,U+d7cb-d7ea"}},{uri:m13,descriptors:{unicodeRange:"U+d609-d6f1"}},{uri:r13,descriptors:{unicodeRange:"U+d520-d608"}},{uri:$13,descriptors:{unicodeRange:"U+d437-d51f"}},{uri:y13,descriptors:{unicodeRange:"U+d34e-d436"}},{uri:c13,descriptors:{unicodeRange:"U+d265-d34d"}},{uri:g13,descriptors:{unicodeRange:"U+d17c-d264"}},{uri:_13,descriptors:{unicodeRange:"U+d093-d17b"}},{uri:n13,descriptors:{unicodeRange:"U+cfaa-d092"}},{uri:p13,descriptors:{unicodeRange:"U+cec1-cfa9"}},{uri:d13,descriptors:{unicodeRange:"U+cdd8-cec0"}},{uri:s13,descriptors:{unicodeRange:"U+ccf1-cdd7"}},{uri:o13,descriptors:{unicodeRange:"U+cc08-ccf0"}},{uri:t13,descriptors:{unicodeRange:"U+cb43-cc07"}},{uri:e13,descriptors:{unicodeRange:"U+ca83-cb42"}},{uri:u63,descriptors:{unicodeRange:"U+c9a1-ca82"}},{uri:B63,descriptors:{unicodeRange:"U+c8b8-c9a0"}},{uri:E63,descriptors:{unicodeRange:"U+c7cf-c8b7"}},{uri:A63,descriptors:{unicodeRange:"U+c6e6-c7ce"}},{uri:C63,descriptors:{unicodeRange:"U+c5fd-c6e5"}},{uri:D63,descriptors:{unicodeRange:"U+c514-c5fc"}},{uri:F63,descriptors:{unicodeRange:"U+c42b-c513"}},{uri:U63,descriptors:{unicodeRange:"U+c341-c34e,U+c350-c42a"}},{uri:z63,descriptors:{unicodeRange:"U+c258-c340"}},{uri:k63,descriptors:{unicodeRange:"U+c16f-c257"}},{uri:f63,descriptors:{unicodeRange:"U+c086-c16e"}},{uri:l63,descriptors:{unicodeRange:"U+bf9d-c085"}},{uri:b63,descriptors:{unicodeRange:"U+beb4-bf9c"}},{uri:M63,descriptors:{unicodeRange:"U+bdcb-beb3"}},{uri:Z63,descriptors:{unicodeRange:"U+bce2-bdca"}},{uri:J63,descriptors:{unicodeRange:"U+bbf9-bce1"}},{uri:w63,descriptors:{unicodeRange:"U+bb10-bbf8"}},{uri:K63,descriptors:{unicodeRange:"U+ba27-bb0f"}},{uri:Q63,descriptors:{unicodeRange:"U+b93e-ba26"}},{uri:G63,descriptors:{unicodeRange:"U+b855-b93d"}},{uri:H63,descriptors:{unicodeRange:"U+b76c-b854"}},{uri:L63,descriptors:{unicodeRange:"U+b683-b76b"}},{uri:q63,descriptors:{unicodeRange:"U+b59a-b682"}},{uri:X63,descriptors:{unicodeRange:"U+b4b1-b599"}},{uri:x63,descriptors:{unicodeRange:"U+11fb-11ff,U+b3cd-b4b0"}},{uri:v63,descriptors:{unicodeRange:"U+11e6-11fa,U+b2f9-b3cc"}},{uri:S63,descriptors:{unicodeRange:"U+11d1-11e5,U+b225-b2f8"}},{uri:W63,descriptors:{unicodeRange:"U+11bc-11d0,U+b151-b224"}},{uri:Y63,descriptors:{unicodeRange:"U+11a7-11bb,U+b07d-b150"}},{uri:R63,descriptors:{unicodeRange:"U+1191-11a6,U+afaa-b07c"}},{uri:T63,descriptors:{unicodeRange:"U+117c-1190,U+aed6-afa9"}},{uri:O63,descriptors:{unicodeRange:"U+1167-117b,U+ae02-aed5"}},{uri:I63,descriptors:{unicodeRange:"U+1152-115e,U+1160-1166,U+ad2d-ae01"}},{uri:P63,descriptors:{unicodeRange:"U+113d-1151,U+ac59-ad2c"}},{uri:j63,descriptors:{unicodeRange:"U+1100-113c,U+9f95-9f98,U+9f9c-9f9e,U+9fa1-9fce,U+9fd0,U+a960-a97c,U+ac00-ac58"}},{uri:N63,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:i63,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:a63,descriptors:{unicodeRange:"U+923c-9273,U+9275-928d,U+928f-92ad,U+92af-92c7,U+92c9-92ee"}},{uri:V63,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:h63,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:m63,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:r63,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:$63,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:y63,descriptors:{unicodeRange:"U+8a64-8a78,U+8a7a-8a88,U+8a8b-8a92,U+8a94-8b06,U+8b08-8b1b"}},{uri:c63,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:g63,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:_63,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:n63,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:p63,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:d63,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:s63,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:o63,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:t63,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:e63,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:u93,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:B93,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:E93,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:A93,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:C93,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:D93,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:F93,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:U93,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:z93,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:k93,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:f93,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:l93,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:b93,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:M93,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:Z93,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:J93,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:w93,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:K93,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:Q93,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:G93,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:H93,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:L93,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:q93,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:X93,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:x93,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:v93,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:S93,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:W93,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:Y93,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:R93,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:T93,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:O93,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:I93,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:P93,descriptors:{unicodeRange:"U+49d5-4a77"}},{uri:j93,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:N93,descriptors:{unicodeRange:"U+4933-49d4"}},{uri:i93,descriptors:{unicodeRange:"U+487a-4932"}},{uri:a93,descriptors:{unicodeRange:"U+47d2-4879,U+2ce7c,U+2ce88,U+2ce93"}},{uri:V93,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:h93,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:m93,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:r93,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:$93,descriptors:{unicodeRange:"U+4449-4511,U+2afa2,U+2b127-2b128,U+2b137-2b138,U+2b1ed"}},{uri:y93,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:c93,descriptors:{unicodeRange:"U+4275-430d,U+298c6,U+29a72,U+29d98,U+29ddb,U+29e15,U+29e3d,U+29e49"}},{uri:g93,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:_93,descriptors:{unicodeRange:"U+41df-4274,U+292b1,U+29490,U+295cf,U+2967f,U+296f0,U+29719,U+29750"}},{uri:n93,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:p93,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:d93,descriptors:{unicodeRange:"U+3f30-3fdb,U+27985,U+27a84,U+27bb3,U+27bbe,U+27bc7,U+27cb8,U+27da0,U+27e10"}},{uri:s93,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:o93,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:t93,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:e93,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:u23,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:B23,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:E23,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:A23,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:C23,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:D23,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:F23,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:U23,descriptors:{unicodeRange:"U+3698-375f,U+22218,U+2231e,U+223ad,U+224dc,U+226f3,U+2285b,U+228ab,U+2298f"}},{uri:z23,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:k23,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:f23,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:l23,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:b23,descriptors:{unicodeRange:"U+328b-336c,U+2000b,U+20089,U+200a2,U+200a4,U+20164,U+201a2,U+20213"}},{uri:M23,descriptors:{unicodeRange:"U+3192-31ba,U+31c0-31e3,U+31f0-321e,U+3220-328a,U+1f250-1f251"}},{uri:Z23,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:J23,descriptors:{unicodeRange:"U+30a2-30ff,U+3105-312f,U+3131-318e,U+3190-3191"}},{uri:w23,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:K23,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:Q23,descriptors:{unicodeRange:"U+2e3b,U+2e80-2e99,U+2e9b-2ef3,U+2f00-2f73,U+ffffd"}},{uri:G23,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:H23,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:L23,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:q23,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:X23,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:x23,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:v23,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:S23,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:W23,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:Y23,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:R23,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:T23,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:O23,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:I23,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:P23,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:j23,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:N23,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:i23,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:a23,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:V23,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:h23,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:m23,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:r23,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:$23,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:y23,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:c23,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:g23,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:_23,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:n23,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:p23,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:d23,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:s23,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:o23,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:t23,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:e23,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:u53,descriptors:{unicodeRange:"U+92ef-933d,U+933f-9369,U+936b-9388"}},{uri:B53,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:E53,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:A53,descriptors:{unicodeRange:"U+4b0b-4ba0"}},{uri:C53,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:D53,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:F53,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:U53,descriptors:{unicodeRange:"U+7d95-7da5,U+7da7-7dad,U+7daf-7e2a"}},{uri:z53,descriptors:{unicodeRange:"U+4a78-4b0a"}},{uri:k53,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:f53,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:l53,descriptors:{unicodeRange:"U+99c9-9a53"}},{uri:b53,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:M53,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:Z53,descriptors:{unicodeRange:"U+4ba1-4c2c"}},{uri:J53,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:w53,descriptors:{unicodeRange:"U+9d1a-9da1"}},{uri:K53,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:Q53,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:G53,descriptors:{unicodeRange:"U+4cad-4d2f"}},{uri:H53,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:L53,descriptors:{unicodeRange:"U+9389-938e,U+9390-93c9,U+93cb-93d5,U+93d7-9410"}},{uri:q53,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:X53,descriptors:{unicodeRange:"U+9bd0-9c4a"}},{uri:x53,descriptors:{unicodeRange:"U+4c2d-4cac"}},{uri:v53,descriptors:{unicodeRange:"U+4d30-4dab"}},{uri:S53,descriptors:{unicodeRange:"U+9411-943d,U+943f-946a,U+946c-9484"}},{uri:W53,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:Y53,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"}}];j0(_b,"loadedFontsCache",new Set),j0(_b,"_registered"),j0(_b,"_initialized",!1),j0(_b,"loadElementsFonts",async(u)=>{let B=_b.getUniqueFamilies(u),E=_b.getCharsPerFamily(u);return _b.loadFontFaces(B,E)});PU=_b;U1={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"},y0={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:bD?"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"},_53=new Map([[y0.Z,U1.Z],[y0.Y,U1.Y]]),ln=[{icon:$33,value:"selection",key:y0.V,numericKey:y0[1],fillable:!0},{icon:y33,value:"rectangle",key:y0.R,numericKey:y0[2],fillable:!0},{icon:c33,value:"diamond",key:y0.D,numericKey:y0[3],fillable:!0},{icon:g33,value:"ellipse",key:y0.O,numericKey:y0[4],fillable:!0},{icon:_33,value:"arrow",key:y0.A,numericKey:y0[5],fillable:!0},{icon:n33,value:"line",key:y0.L,numericKey:y0[6],fillable:!0},{icon:$q,value:"freedraw",key:[y0.P,y0.X],numericKey:y0[7],fillable:!1},{icon:ek0,value:"text",key:y0.T,numericKey:y0[8],fillable:!1},{icon:p33,value:"image",key:null,numericKey:y0[9],fillable:!1},{icon:d33,value:"eraser",key:y0.E,numericKey:y0[0],fillable:!1}],u73=MD(),Ubu=document.createElement("img");Ubu.src=`data:${y4.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>')}`;zbu=document.createElement("img");zbu.src=`data:${y4.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>')}`;bk0=new WeakMap,fbu=new WeakMap([]);F73=/(\s?[A-Z]?,?-?[0-9]*\.[0-9]{0,2})(([0-9]|e|-)*)/g;l9=[1,0],k5=[0,1],iB=[-1,0],aB=[0,-1];j0(Mbu,"boundsCache",new WeakMap);b73=Mbu,y73=new Set(["boundElements","frameId","containerId","startBinding","endBinding"]);j0(aq,"rebindAffected",(u,B,E)=>{!B||B.isDeleted||qn(u,B,(A,C)=>{if(!A||A.isDeleted){E(B,{[C]:null});return}C!=="frameId"&&(A.boundElements?.find((D)=>D.id===B.id)||(j3(B)&&E(A,{boundElements:BO(A.boundElements,new Set,Array(B))}),l4(B)&&(A.boundElements?.find((D)=>D.type==="text")?E(B,{[C]:null}):E(A,{boundElements:BO(A.boundElements,new Set,Array(B))}))))})});j0(Vq,"rebindAffected",(u,B,E)=>{!B||B.isDeleted||Ln(u,B,(A,C,D)=>{if(!A||A.isDeleted){E(B,{boundElements:BO(B.boundElements,new Set([D]))});return}l4(A)&&((B.boundElements?.slice()??[]).reverse().find((F)=>F.type==="text")?.id===A.id?A.containerId!==B.id&&E(A,{containerId:B.id}):(A.containerId!==null&&E(A,{containerId:null}),E(B,{boundElements:BO(B.boundElements,new Set([A.id]))})))})});y7=function(){let u=null,B=null,E=null,A=(D,F,U,z)=>{if(E!==void 0&&F===B&&D===u&&U.editingGroupId===E?.editingGroupId)return E;let k={};for(let b of D){let M=b.groupIds;if(U.editingGroupId){let Z=M.indexOf(U.editingGroupId);Z>-1&&(M=M.slice(0,Z))}if(M.length>0){let Z=M[M.length-1];k[Z]=!0}}let f={},l=F.reduce((b,M)=>{if(M.isDeleted)return b;let Z=M.groupIds.find((J)=>k[J]);return Z&&(b[M.id]=!0,Array.isArray(f[Z])?f[Z].push(M.id):f[Z]=[M.id]),b},{});for(let b of Object.keys(f))f[b].length<2&&k[b]&&(k[b]=!1);return B=F,u=D,E={editingGroupId:U.editingGroupId,selectedGroupIds:k,selectedElementIds:L1({...U.selectedElementIds,...l},z)},E},C=(D,F,U,z)=>{let k=z?z.scene.getSelectedElements({selectedElementIds:D.selectedElementIds,elements:F}):N3(F,D);return k.length?A(k,F,D,U):{selectedGroupIds:{},editingGroupId:null,selectedElementIds:L1(D.selectedElementIds,U)}};return C.clearCache=()=>{B=null,u=null,E=null},C}();j0(I8,"referenceSnapPoints",null),j0(I8,"visibleGaps",null),j0(I8,"setReferenceSnapPoints",(u)=>{I8.referenceSnapPoints=u}),j0(I8,"getReferenceSnapPoints",()=>I8.referenceSnapPoints),j0(I8,"setVisibleGaps",(u)=>{I8.visibleGaps=u}),j0(I8,"getVisibleGaps",()=>I8.visibleGaps),j0(I8,"destroy",()=>{I8.referenceSnapPoints=null,I8.visibleGaps=null});NU=I8,yb={version:null,points:[],zoom:null};j0(g9,"POINT_HANDLE_SIZE",10),j0(g9,"getEditorMidPoints",(u,B,E)=>{let A=Y3(u,B);return!K4(u)&&!E.editingLinearElement&&u.points.length>2&&!A?[]:(yb.version===u.version&&yb.zoom===E.zoom.value||g9.updateEditorMidPointsCache(u,B,E),yb.points)}),j0(g9,"updateEditorMidPointsCache",(u,B,E)=>{let A=g9.getPointsGlobalCoordinates(u,B),C=0,D=[];for(;C<A.length-1;){if(g9.isSegmentTooShort(u,u.points[C],u.points[C+1],C,E.zoom)){D.push(null),C++;continue}let F=g9.getSegmentMidPoint(u,A[C],A[C+1],C+1,B);D.push(F),C++}yb.points=D,yb.version=u.version,yb.zoom=E.zoom.value}),j0(g9,"getSegmentMidpointHitCoords",(u,B,E,A)=>{let{elementId:C}=u,D=g9.getElement(C,A);if(!D)return null;let F=g9.getPointIndexUnderCursor(D,A,E.zoom,B.x,B.y);if(!K4(D)&&F>=0||g9.getPointsGlobalCoordinates(D,A).length>=3&&!E.editingLinearElement&&!K4(D))return null;let U=(g9.POINT_HANDLE_SIZE+1)/E.zoom.value,z=u.segmentMidPointHoveredCoords;if(z&&G1(t(z[0],z[1]),t(B.x,B.y))<=U)return z;let k=0,f=g9.getEditorMidPoints(D,A,E);for(;k<f.length;){if(f[k]!==null&&G1(f[k],t(B.x,B.y))<=U)return f[k];k++}return null}),j0(g9,"getBoundTextElementPosition",(u,B,E)=>{let A=g9.getPointsGlobalCoordinates(u,E);A.length<2&&Wu(B,{isDeleted:!0});let C=0,D=0;if(u.points.length%2===1){let F=Math.floor(u.points.length/2),U=g9.getPointGlobalCoordinates(u,u.points[F],E);C=U[0]-B.width/2,D=U[1]-B.height/2}else{let F=u.points.length/2-1,U=yb.points[F];u.points.length===2&&(U=bO(A[0],A[1])),(!U||yb.version!==u.version)&&(U=g9.getSegmentMidPoint(u,A[F],A[F+1],F+1,E)),C=U[0]-B.width/2,D=U[1]-B.height/2}return{x:C,y:D}}),j0(g9,"getMinMaxXYWithBoundText",(u,B,E,A)=>{let[C,D,F,U]=E,z=(C+F)/2,k=(D+U)/2,{x:f,y:l}=g9.getBoundTextElementPosition(u,A,B),b=f+A.width,M=l+A.height,Z=t(z,k),J=Lu(t(C,D),Z,u.angle),w=Lu(t(F,D),Z,u.angle),K=Lu(t(f,l),Z,-u.angle),Q=Lu(t(b,l),Z,-u.angle),G=Lu(t(f,M),Z,-u.angle),L=Lu(t(b,M),Z,-u.angle);return J[0]<w[0]&&J[1]>=w[1]?(C=Math.min(C,G[0]),F=Math.max(F,Math.max(Q[0],L[0])),D=Math.min(D,K[1]),U=Math.max(U,L[1])):J[0]>=w[0]&&J[1]>w[1]?(C=Math.min(C,L[0]),F=Math.max(F,Math.max(K[0],Q[0])),D=Math.min(D,G[1]),U=Math.max(U,Q[1])):J[0]>=w[0]?(C=Math.min(C,Q[0]),F=Math.max(F,G[0]),D=Math.min(D,L[1]),U=Math.max(U,K[1])):J[1]<=w[1]&&(C=Math.min(C,Math.min(Q[0],K[0])),F=Math.max(F,L[0]),D=Math.min(D,Q[1]),U=Math.max(U,G[1])),[C,D,F,U,z,k]}),j0(g9,"getElementAbsoluteCoords",(u,B,E=!1)=>{let A,C,D,F,U;if(u.points.length<2||!p6.get(u)){let{minX:l,minY:b,maxX:M,maxY:Z}=u.points.reduce((J,[w,K])=>(J.minY=Math.min(J.minY,K),J.minX=Math.min(J.minX,w),J.maxX=Math.max(J.maxX,w),J.maxY=Math.max(J.maxY,K),J),{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});C=l+u.x,D=b+u.y,F=M+u.x,U=Z+u.y}else{let l=p6.generateElementShape(u,null),b=wM(l[0]),[M,Z,J,w]=Jn(b);C=M+u.x,D=Z+u.y,F=J+u.x,U=w+u.y}let z=(C+F)/2,k=(D+U)/2;if(A=[C,D,F,U,z,k],!E)return A;let f=Y3(u,B);return f&&(A=g9.getMinMaxXYWithBoundText(u,B,[C,D,F,U],f)),A});M4=g9,GK={},BB3=new Set(["rectangle","ellipse","diamond","arrow"]),O_=[],AB3=`data:${y4.svg},${encodeURIComponent(`${mbu}${rbu}</svg>`)}`,CB3=`data:${y4.svg},${encodeURIComponent(`${mbu}${EB3}${rbu}</svg>`)}`,DB3=new vT(Date.now());j0(nb,"satisfiesAddition",({deleted:u,inserted:B})=>u.isDeleted===!0&&!B.isDeleted),j0(nb,"satisfiesRemoval",({deleted:u,inserted:B})=>!u.isDeleted&&B.isDeleted===!0),j0(nb,"satisfiesUpdate",({deleted:u,inserted:B})=>!!u.isDeleted==!!B.isDeleted),j0(nb,"createApplier",(u,B,E)=>{let A=nb.createGetter(u,B,E);return(C)=>Array.from(C.entries()).reduce((D,[F,U])=>{let z=A(F,U.inserted);if(z){let k=nb.applyDelta(z,U,E);u.set(k.id,k),D.set(k.id,k)}return D},new Map)}),j0(nb,"createGetter",(u,B,E)=>(A,C)=>{let D=u.get(A);return D||(D=B.get(A),D&&(E.containsZindexDifference=!0,(C.isDeleted===!1||C.isDeleted!==!0&&D.isDeleted===!1)&&(E.containsVisibleDifference=!0))),D});qzu=nb,Xu={IMMEDIATELY:"IMMEDIATELY",NEVER:"NEVER",EVENTUALLY:"EVENTUALLY"},xU=new Map,MB3=/^(?: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]*$/,ZB3=/^(?:http(?:s)?:\/\/)?(?:(?:w){3}\.)?(?:player\.)?vimeo\.com\/(?:video\/)?([^?\s]+)(?:\?.*)?$/,JB3=/^https:\/\/(?:www\.)?figma\.com/,xzu=/^https:\/\/gist\.github\.com\/([\w_-]+)\/([\w_-]+)/,wB3=/^<script[\s\S]*?\ssrc=["'](https:\/\/gist\.github\.com\/.*?)\.js["']/i,vzu=/(?:https?:\/\/)?(?:(?:w){3}\.)?(?:twitter|x)\.com\/[^/]+\/status\/(\d+)/,KB3=/^<blockquote[\s\S]*?\shref=["'](https?:\/\/(?:twitter|x)\.com\/[^"']*)/i,QB3=/^https:\/\/(?:www\.)?val\.town\/(v|embed)\/[a-zA-Z_$][0-9a-zA-Z_$]+\.[a-zA-Z_$][0-9a-zA-Z_$]+/,GB3=/^<(?:iframe|blockquote)[\s\S]*?\s(?:src|href)=["']([^"']*)["'][\s\S]*?>$/i,Szu=/giphy.com\/(?:clips|embed|gifs)\/[a-zA-Z0-9]*?-?([a-zA-Z0-9]+)(?:[^a-zA-Z0-9]|$)/,Wzu=/^(?:http(?:s)?:\/\/)?(?:www\.)?reddit\.com\/r\/([a-zA-Z0-9_]+)\/comments\/([a-zA-Z0-9_]+)\/([a-zA-Z0-9_]+)\/?(?:\?[^#\s]*)?(?:#[^\s]*)?$/,HB3=/^<blockquote[\s\S]*?\shref=["'](https?:\/\/(?:www\.)?reddit\.com\/[^"']*)/i,Jk0=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"]),Yzu=new Set(["youtube.com","youtu.be","vimeo.com","player.vimeo.com","figma.com","twitter.com","x.com","*.simplepdf.eu","stackblitz.com","reddit.com"]),UX1=C4({name:"setEmbeddableAsActiveTool",trackEvent:{category:"toolbar"},target:"Tool",label:"toolBar.embeddable",perform:(u,B,E,A)=>{let C=n9(B,{type:"embeddable"});return wD(A.canvas,{...B,activeTool:C}),{elements:u,appState:{...B,activeTool:n9(B,{type:"embeddable"})},captureUpdate:Xu.EVENTUALLY}}}),BMu=document.createElement("img");BMu.src=`data:${y4.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>')}`;EMu=document.createElement("img");EMu.src=`data:${y4.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>')}`;Z_={Bold:"#dddddd",Regular:"#e5e5e5"},Ozu={regularLink:null,elementLink:null},Xl0=MO((u)=>{CMu(u)},{trailing:!0}),$B3={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},Vzu={isSidebarDocked:(u,B)=>["defaultSidebarDockedPreference",u.isSidebarDocked??pB3("defaultSidebarDockedPreference",u,B)]},N_=p43(n43),PA={fillStyle:"hachure",fontFamily:ok,fontSize:TU,opacity:100,roughness:1,strokeColor:m3.black,roundness:null,strokeStyle:"solid",strokeWidth:1,verticalAlign:P8.MIDDLE,locked:!1},kX1="clipboard"in navigator&&"readText"in navigator.clipboard,rn="clipboard"in navigator&&"writeText"in navigator.clipboard,$n="clipboard"in navigator&&"write"in navigator.clipboard&&"ClipboardItem"in window&&"toBlob"in HTMLCanvasElement.prototype;Z2=function(){let u=null,B=null,E=null,A=(C,D)=>(E!=null&&C===u&&D.selectedElementIds===B||(E=C.some((F)=>D.selectedElementIds[F.id]),u=C,B=D.selectedElementIds),E);return A.clearCache=()=>{u=null,B=null,E=null},A}(),Z83=Tku.default((u)=>{(Z3.DEV||Z3.MODE===VB.TEST||window?.DEBUG_FRACTIONAL_INDICES)&&Rn(u,{shouldThrow:Z3.DEV||Z3.MODE===VB.TEST,includeBoundTextValidation:!0})},60000,{leading:!0,trailing:!1});j0(Gk0,"sceneMapByElement",new WeakMap),j0(Gk0,"sceneMapById",new Map);w83=Gk0,RU=w83,dzu={mouse:8,pen:16,touch:28},YMu={e:!0,s:!0,n:!0,w:!0},szu={e:!0,s:!0,n:!0,w:!0,nw:!0,se:!0},Fk0={e:!0,s:!0,n:!0,w:!0},Uk0=["ns","nesw","ew","nwse"]});var Db0,Fb0,Ub0,zb0,kb0,fb0,lb0,bb0,Mb0,Zb0,Jb0,wb0,Kb0,Qb0,Gb0,Hb0,Lb0,qb0,Xb0,xb0,vb0,Sb0,Wb0,Yb0,Rb0,Tb0,Ob0,Ib0,Pb0,jb0,Nb0,ib0,ab0,Vb0,hb0,cO;var mb0=g(()=>{Db0={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"},Fb0={title:"Link to object",desc:"Click on a shape on canvas or paste a link.",notFound:"Linked object wasn't found on canvas."},Ub0={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."},zb0={title:"Find on canvas",noMatch:"No matches found...",singleResult:"result",multipleResults:"results",placeholder:"Find text on canvas..."},kb0={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"},fb0={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!`},lb0={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."},bb0={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"},Mb0={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"},Zb0={canvasActions:"Canvas actions",selectedShapeActions:"Selected shape actions",shapes:"Shapes"},Jb0={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"},wb0={cannotShowPreview:"Cannot show preview",canvasTooBig:"The canvas may be too big.",canvasTooBigTip:"Tip: try moving the farthest elements a bit closer together."},Kb0={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:"},Qb0={or:"Or"},Gb0={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"},Hb0={title:"Error"},Lb0={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..."},qb0={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"},Xb0={title:"Clear canvas"},xb0={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."},vb0={title:"Library submitted",content:"Thank you {{authorName}}. Your library has been submitted for review. You can track the status <link>here</link>"},Sb0={resetLibrary:"Reset library",removeItemsFromLib:"Remove selected items from library"},Wb0={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"}},Yb0={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"},Rb0={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"},Tb0={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"},Ob0={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"},Ib0={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"}},Pb0={mostUsedCustomColors:"Most used custom colors",colors:"Colors",shades:"Shades",hexCode:"Hex code",noShades:"No shades available for this color"},jb0={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."}}},Nb0={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"},ib0={placeholder:"Quick search"},ab0={badge:{old:"old"},sceneFonts:"In this scene",availableFonts:"Available fonts",empty:"No fonts found"},Vb0={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"}},hb0={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}}"},cO={labels:Db0,elementLink:Fb0,library:Ub0,search:zb0,buttons:kb0,alerts:fb0,errors:lb0,toolBar:bb0,element:Mb0,headings:Zb0,hints:Jb0,canvasError:wb0,errorSplash:Kb0,shareDialog:Qb0,roomDialog:Gb0,errorDialog:Hb0,exportDialog:Lb0,helpDialog:qb0,clearCanvasDialog:Xb0,publishDialog:xb0,publishSuccessDialog:vb0,confirmDialog:Sb0,imageExportDialog:Wb0,encrypted:Yb0,stats:Rb0,toast:Tb0,colors:Ob0,welcomeScreen:Ib0,colorPicker:Pb0,overwriteConfirm:jb0,mermaid:Nb0,quickSearch:ib0,fontList:ab0,userList:Vb0,commandPalette:hb0}});var rb0=100,$b0=36,Cp;var yb0=g(()=>{Cp={"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:rb0,"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:$b0,"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 QZu=P1((y83)=>{function eb0(u,B){var E=u.length;u.push(B);u:for(;0<E;){var A=E-1>>>1,C=u[A];if(0<kp(C,B))u[A]=B,u[E]=C,E=A;else break u}}function LD(u){return u.length===0?null:u[0]}function Mp(u){if(u.length===0)return null;var B=u[0],E=u.pop();if(E!==B){u[0]=E;u:for(var A=0,C=u.length,D=C>>>1;A<D;){var F=2*(A+1)-1,U=u[F],z=F+1,k=u[z];if(0>kp(U,E))z<C&&0>kp(k,U)?(u[A]=k,u[z]=E,A=z):(u[A]=U,u[F]=E,A=F);else if(z<C&&0>kp(k,E))u[A]=k,u[z]=E,A=z;else break u}}return B}function kp(u,B){var E=u.sortIndex-B.sortIndex;return E!==0?E:u.id-B.id}if(typeof performance==="object"&&typeof performance.now==="function")uM0=performance,y83.unstable_now=function(){return uM0.now()};else fp=Date,BM0=fp.now(),y83.unstable_now=function(){return fp.now()-BM0};var uM0,fp,BM0,aU=[],HM=[],$83=1,rA=null,_7=3,Zp=!1,hK=!1,dO=!1,MZu=typeof setTimeout==="function"?setTimeout:null,ZZu=typeof clearTimeout==="function"?clearTimeout:null,bZu=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function EM0(u){for(var B=LD(HM);B!==null;){if(B.callback===null)Mp(HM);else if(B.startTime<=u)Mp(HM),B.sortIndex=B.expirationTime,eb0(aU,B);else break;B=LD(HM)}}function CM0(u){if(dO=!1,EM0(u),!hK)if(LD(aU)!==null)hK=!0,FM0(DM0);else{var B=LD(HM);B!==null&&UM0(CM0,B.startTime-u)}}function DM0(u,B){hK=!1,dO&&(dO=!1,ZZu(sO),sO=-1),Zp=!0;var E=_7;try{EM0(B);for(rA=LD(aU);rA!==null&&(!(rA.expirationTime>B)||u&&!KZu());){var A=rA.callback;if(typeof A==="function"){rA.callback=null,_7=rA.priorityLevel;var C=A(rA.expirationTime<=B);B=y83.unstable_now(),typeof C==="function"?rA.callback=C:rA===LD(aU)&&Mp(aU),EM0(B)}else Mp(aU);rA=LD(aU)}if(rA!==null)var D=!0;else{var F=LD(HM);F!==null&&UM0(CM0,F.startTime-B),D=!1}return D}finally{rA=null,_7=E,Zp=!1}}var Jp=!1,lp=null,sO=-1,JZu=5,wZu=-1;function KZu(){return y83.unstable_now()-wZu<JZu?!1:!0}function tb0(){if(lp!==null){var u=y83.unstable_now();wZu=u;var B=!0;try{B=lp(!0,u)}finally{B?pO():(Jp=!1,lp=null)}}else Jp=!1}var pO;if(typeof bZu==="function")pO=function(){bZu(tb0)};else if(typeof MessageChannel<"u")bp=new MessageChannel,AM0=bp.port2,bp.port1.onmessage=tb0,pO=function(){AM0.postMessage(null)};else pO=function(){MZu(tb0,0)};var bp,AM0;function FM0(u){lp=u,Jp||(Jp=!0,pO())}function UM0(u,B){sO=MZu(function(){u(y83.unstable_now())},B)}y83.unstable_IdlePriority=5;y83.unstable_ImmediatePriority=1;y83.unstable_LowPriority=4;y83.unstable_NormalPriority=3;y83.unstable_Profiling=null;y83.unstable_UserBlockingPriority=2;y83.unstable_cancelCallback=function(u){u.callback=null};y83.unstable_continueExecution=function(){hK||Zp||(hK=!0,FM0(DM0))};y83.unstable_forceFrameRate=function(u){0>u||125<u?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):JZu=0<u?Math.floor(1000/u):5};y83.unstable_getCurrentPriorityLevel=function(){return _7};y83.unstable_getFirstCallbackNode=function(){return LD(aU)};y83.unstable_next=function(u){switch(_7){case 1:case 2:case 3:var B=3;break;default:B=_7}var E=_7;_7=B;try{return u()}finally{_7=E}};y83.unstable_pauseExecution=function(){};y83.unstable_requestPaint=function(){};y83.unstable_runWithPriority=function(u,B){switch(u){case 1:case 2:case 3:case 4:case 5:break;default:u=3}var E=_7;_7=u;try{return B()}finally{_7=E}};y83.unstable_scheduleCallback=function(u,B,E){var A=y83.unstable_now();switch(typeof E==="object"&&E!==null?(E=E.delay,E=typeof E==="number"&&0<E?A+E:A):E=A,u){case 1:var C=-1;break;case 2:C=250;break;case 5:C=1073741823;break;case 4:C=1e4;break;default:C=5000}return C=E+C,u={id:$83++,callback:B,priorityLevel:u,startTime:E,expirationTime:C,sortIndex:-1},E>A?(u.sortIndex=E,eb0(HM,u),LD(aU)===null&&u===LD(HM)&&(dO?(ZZu(sO),sO=-1):dO=!0,UM0(CM0,E-A))):(u.sortIndex=C,eb0(aU,u),hK||Zp||(hK=!0,FM0(DM0))),u};y83.unstable_shouldYield=KZu;y83.unstable_wrapCallback=function(u){var B=_7;return function(){var E=_7;_7=B;try{return u.apply(this,arguments)}finally{_7=E}}}});var MJ0={};ju(MJ0,{version:()=>IKu,unstable_renderSubtreeIntoContainer:()=>OKu,unstable_batchedUpdates:()=>TKu,unmountComponentAtNode:()=>RKu,render:()=>YKu,hydrateRoot:()=>WKu,hydrate:()=>SKu,flushSync:()=>vKu,findDOMNode:()=>xKu,createRoot:()=>XKu,createPortal:()=>qKu,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:()=>LKu});function A4(u){for(var B="https://reactjs.org/docs/error-decoder.html?invariant="+u,E=1;E<arguments.length;E++)B+="&args[]="+encodeURIComponent(arguments[E]);return"Minified React error #"+u+"; visit "+B+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function eK(u,B){$X(u,B),$X(u+"Capture",B)}function $X(u,B){LI[u]=B;for(u=0;u<B.length;u++)xJu.add(B[u])}function kE3(u){if(RM0.call(HZu,u))return!0;if(RM0.call(GZu,u))return!1;if(zE3.test(u))return HZu[u]=!0;return GZu[u]=!0,!1}function fE3(u,B,E,A){if(E!==null&&E.type===0)return!1;switch(typeof B){case"function":case"symbol":return!0;case"boolean":if(A)return!1;if(E!==null)return!E.acceptsBooleans;return u=u.toLowerCase().slice(0,5),u!=="data-"&&u!=="aria-";default:return!1}}function lE3(u,B,E,A){if(B===null||typeof B>"u"||fE3(u,B,E,A))return!0;if(A)return!1;if(E!==null)switch(E.type){case 3:return!B;case 4:return B===!1;case 5:return isNaN(B);case 6:return isNaN(B)||1>B}return!1}function cB(u,B,E,A,C,D,F){this.acceptsBooleans=B===2||B===3||B===4,this.attributeName=A,this.attributeNamespace=C,this.mustUseProperty=E,this.propertyName=u,this.type=B,this.sanitizeURL=D,this.removeEmptyString=F}function xZ0(u){return u[1].toUpperCase()}function vZ0(u,B,E,A){var C=L7.hasOwnProperty(B)?L7[B]:null;if(C!==null?C.type!==0:A||!(2<B.length)||B[0]!=="o"&&B[0]!=="O"||B[1]!=="n"&&B[1]!=="N")lE3(B,E,C,A)&&(E=null),A||C===null?kE3(B)&&(E===null?u.removeAttribute(B):u.setAttribute(B,""+E)):C.mustUseProperty?u[C.propertyName]=E===null?C.type===3?!1:"":E:(B=C.attributeName,A=C.attributeNamespace,E===null?u.removeAttribute(B):(C=C.type,E=C===3||C===4&&E===!0?"":""+E,A?u.setAttributeNS(A,B,E):u.setAttribute(B,E)))}function oO(u){if(u===null||typeof u!=="object")return null;return u=LZu&&u[LZu]||u["@@iterator"],typeof u==="function"?u:null}function CI(u){if(zM0===void 0)try{throw Error()}catch(E){var B=E.stack.trim().match(/\n( *(at )?)/);zM0=B&&B[1]||""}return`
`+zM0+u}function fM0(u,B){if(!u||kM0)return"";kM0=!0;var E=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(B)if(B=function(){throw Error()},Object.defineProperty(B.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==="object"&&Reflect.construct){try{Reflect.construct(B,[])}catch(k){var A=k}Reflect.construct(u,[],B)}else{try{B.call()}catch(k){A=k}u.call(B.prototype)}else{try{throw Error()}catch(k){A=k}u()}}catch(k){if(k&&A&&typeof k.stack==="string"){for(var C=k.stack.split(`
`),D=A.stack.split(`
`),F=C.length-1,U=D.length-1;1<=F&&0<=U&&C[F]!==D[U];)U--;for(;1<=F&&0<=U;F--,U--)if(C[F]!==D[U]){if(F!==1||U!==1)do if(F--,U--,0>U||C[F]!==D[U]){var z=`
`+C[F].replace(" at new "," at ");return u.displayName&&z.includes("<anonymous>")&&(z=z.replace("<anonymous>",u.displayName)),z}while(1<=F&&0<=U);break}}}finally{kM0=!1,Error.prepareStackTrace=E}return(u=u?u.displayName||u.name:"")?CI(u):""}function bE3(u){switch(u.tag){case 5:return CI(u.type);case 16:return CI("Lazy");case 13:return CI("Suspense");case 19:return CI("SuspenseList");case 0:case 2:case 15:return u=fM0(u.type,!1),u;case 11:return u=fM0(u.type.render,!1),u;case 1:return u=fM0(u.type,!0),u;default:return""}}function PM0(u){if(u==null)return null;if(typeof u==="function")return u.displayName||u.name||null;if(typeof u==="string")return u;switch(u){case vX:return"Fragment";case xX:return"Portal";case TM0:return"Profiler";case SZ0:return"StrictMode";case OM0:return"Suspense";case IM0:return"SuspenseList"}if(typeof u==="object")switch(u.$$typeof){case SJu:return(u.displayName||"Context")+".Consumer";case vJu:return(u._context.displayName||"Context")+".Provider";case WZ0:var B=u.render;return u=u.displayName,u||(u=B.displayName||B.name||"",u=u!==""?"ForwardRef("+u+")":"ForwardRef"),u;case YZ0:return B=u.displayName||null,B!==null?B:PM0(u.type)||"Memo";case qM:B=u._payload,u=u._init;try{return PM0(u(B))}catch(E){}}return null}function ME3(u){var B=u.type;switch(u.tag){case 24:return"Cache";case 9:return(B.displayName||"Context")+".Consumer";case 10:return(B._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return u=B.render,u=u.displayName||u.name||"",B.displayName||(u!==""?"ForwardRef("+u+")":"ForwardRef");case 7:return"Fragment";case 5:return B;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return PM0(B);case 8:return B===SZ0?"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 B==="function")return B.displayName||B.name||null;if(typeof B==="string")return B}return null}function iM(u){switch(typeof u){case"boolean":case"number":case"string":case"undefined":return u;case"object":return u;default:return""}}function YJu(u){var B=u.type;return(u=u.nodeName)&&u.toLowerCase()==="input"&&(B==="checkbox"||B==="radio")}function ZE3(u){var B=YJu(u)?"checked":"value",E=Object.getOwnPropertyDescriptor(u.constructor.prototype,B),A=""+u[B];if(!u.hasOwnProperty(B)&&typeof E<"u"&&typeof E.get==="function"&&typeof E.set==="function"){var{get:C,set:D}=E;return Object.defineProperty(u,B,{configurable:!0,get:function(){return C.call(this)},set:function(F){A=""+F,D.call(this,F)}}),Object.defineProperty(u,B,{enumerable:E.enumerable}),{getValue:function(){return A},setValue:function(F){A=""+F},stopTracking:function(){u._valueTracker=null,delete u[B]}}}}function Kp(u){u._valueTracker||(u._valueTracker=ZE3(u))}function RJu(u){if(!u)return!1;var B=u._valueTracker;if(!B)return!0;var E=B.getValue(),A="";return u&&(A=YJu(u)?u.checked?"true":"false":u.value),u=A,u!==E?(B.setValue(u),!0):!1}function $p(u){if(u=u||(typeof document<"u"?document:void 0),typeof u>"u")return null;try{return u.activeElement||u.body}catch(B){return u.body}}function jM0(u,B){var E=B.checked;return W9({},B,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:E!=null?E:u._wrapperState.initialChecked})}function qZu(u,B){var E=B.defaultValue==null?"":B.defaultValue,A=B.checked!=null?B.checked:B.defaultChecked;E=iM(B.value!=null?B.value:E),u._wrapperState={initialChecked:A,initialValue:E,controlled:B.type==="checkbox"||B.type==="radio"?B.checked!=null:B.value!=null}}function TJu(u,B){B=B.checked,B!=null&&vZ0(u,"checked",B,!1)}function NM0(u,B){TJu(u,B);var E=iM(B.value),A=B.type;if(E!=null)if(A==="number"){if(E===0&&u.value===""||u.value!=E)u.value=""+E}else u.value!==""+E&&(u.value=""+E);else if(A==="submit"||A==="reset"){u.removeAttribute("value");return}B.hasOwnProperty("value")?iM0(u,B.type,E):B.hasOwnProperty("defaultValue")&&iM0(u,B.type,iM(B.defaultValue)),B.checked==null&&B.defaultChecked!=null&&(u.defaultChecked=!!B.defaultChecked)}function XZu(u,B,E){if(B.hasOwnProperty("value")||B.hasOwnProperty("defaultValue")){var A=B.type;if(!(A!=="submit"&&A!=="reset"||B.value!==void 0&&B.value!==null))return;B=""+u._wrapperState.initialValue,E||B===u.value||(u.value=B),u.defaultValue=B}E=u.name,E!==""&&(u.name=""),u.defaultChecked=!!u._wrapperState.initialChecked,E!==""&&(u.name=E)}function iM0(u,B,E){if(B!=="number"||$p(u.ownerDocument)!==u)E==null?u.defaultValue=""+u._wrapperState.initialValue:u.defaultValue!==""+E&&(u.defaultValue=""+E)}function iX(u,B,E,A){if(u=u.options,B){B={};for(var C=0;C<E.length;C++)B["$"+E[C]]=!0;for(E=0;E<u.length;E++)C=B.hasOwnProperty("$"+u[E].value),u[E].selected!==C&&(u[E].selected=C),C&&A&&(u[E].defaultSelected=!0)}else{E=""+iM(E),B=null;for(C=0;C<u.length;C++){if(u[C].value===E){u[C].selected=!0,A&&(u[C].defaultSelected=!0);return}B!==null||u[C].disabled||(B=u[C])}B!==null&&(B.selected=!0)}}function aM0(u,B){if(B.dangerouslySetInnerHTML!=null)throw Error(A4(91));return W9({},B,{value:void 0,defaultValue:void 0,children:""+u._wrapperState.initialValue})}function xZu(u,B){var E=B.value;if(E==null){if(E=B.children,B=B.defaultValue,E!=null){if(B!=null)throw Error(A4(92));if(DI(E)){if(1<E.length)throw Error(A4(93));E=E[0]}B=E}B==null&&(B=""),E=B}u._wrapperState={initialValue:iM(E)}}function OJu(u,B){var E=iM(B.value),A=iM(B.defaultValue);E!=null&&(E=""+E,E!==u.value&&(u.value=E),B.defaultValue==null&&u.defaultValue!==E&&(u.defaultValue=E)),A!=null&&(u.defaultValue=""+A)}function vZu(u){var B=u.textContent;B===u._wrapperState.initialValue&&B!==""&&B!==null&&(u.value=B)}function IJu(u){switch(u){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 VM0(u,B){return u==null||u==="http://www.w3.org/1999/xhtml"?IJu(B):u==="http://www.w3.org/2000/svg"&&B==="foreignObject"?"http://www.w3.org/1999/xhtml":u}function qI(u,B){if(B){var E=u.firstChild;if(E&&E===u.lastChild&&E.nodeType===3){E.nodeValue=B;return}}u.textContent=B}function jJu(u,B,E){return B==null||typeof B==="boolean"||B===""?"":E||typeof B!=="number"||B===0||bI.hasOwnProperty(u)&&bI[u]?(""+B).trim():B+"px"}function NJu(u,B){u=u.style;for(var E in B)if(B.hasOwnProperty(E)){var A=E.indexOf("--")===0,C=jJu(E,B[E],A);E==="float"&&(E="cssFloat"),A?u.setProperty(E,C):u[E]=C}}function hM0(u,B){if(B){if(wE3[u]&&(B.children!=null||B.dangerouslySetInnerHTML!=null))throw Error(A4(137,u));if(B.dangerouslySetInnerHTML!=null){if(B.children!=null)throw Error(A4(60));if(typeof B.dangerouslySetInnerHTML!=="object"||!("__html"in B.dangerouslySetInnerHTML))throw Error(A4(61))}if(B.style!=null&&typeof B.style!=="object")throw Error(A4(62))}}function mM0(u,B){if(u.indexOf("-")===-1)return typeof B.is==="string";switch(u){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}}function RZ0(u){return u=u.target||u.srcElement||window,u.correspondingUseElement&&(u=u.correspondingUseElement),u.nodeType===3?u.parentNode:u}function SZu(u){if(u=mI(u)){if(typeof $M0!=="function")throw Error(A4(280));var B=u.stateNode;B&&(B=wd(B),$M0(u.stateNode,u.type,B))}}function iJu(u){aX?VX?VX.push(u):VX=[u]:aX=u}function aJu(){if(aX){var u=aX,B=VX;if(VX=aX=null,SZu(u),B)for(u=0;u<B.length;u++)SZu(B[u])}}function VJu(u,B){return u(B)}function hJu(){}function mJu(u,B,E){if(lM0)return u(B,E);lM0=!0;try{return VJu(u,B,E)}finally{if(lM0=!1,aX!==null||VX!==null)hJu(),aJu()}}function XI(u,B){var E=u.stateNode;if(E===null)return null;var A=wd(E);if(A===null)return null;E=A[B];u:switch(B){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(A=!A.disabled)||(u=u.type,A=!(u==="button"||u==="input"||u==="select"||u==="textarea")),u=!A;break u;default:u=!1}if(u)return null;if(E&&typeof E!=="function")throw Error(A4(231,B,typeof E));return E}function KE3(u,B,E,A,C,D,F,U,z){var k=Array.prototype.slice.call(arguments,3);try{B.apply(E,k)}catch(f){this.onError(f)}}function GE3(u,B,E,A,C,D,F,U,z){MI=!1,yp=null,KE3.apply(QE3,arguments)}function HE3(u,B,E,A,C,D,F,U,z){if(GE3.apply(this,arguments),MI){if(MI){var k=yp;MI=!1,yp=null}else throw Error(A4(198));cp||(cp=!0,cM0=k)}}function uQ(u){var B=u,E=u;if(u.alternate)for(;B.return;)B=B.return;else{u=B;do B=u,(B.flags&4098)!==0&&(E=B.return),u=B.return;while(u)}return B.tag===3?E:null}function rJu(u){if(u.tag===13){var B=u.memoizedState;if(B===null&&(u=u.alternate,u!==null&&(B=u.memoizedState)),B!==null)return B.dehydrated}return null}function WZu(u){if(uQ(u)!==u)throw Error(A4(188))}function LE3(u){var B=u.alternate;if(!B){if(B=uQ(u),B===null)throw Error(A4(188));return B!==u?null:u}for(var E=u,A=B;;){var C=E.return;if(C===null)break;var D=C.alternate;if(D===null){if(A=C.return,A!==null){E=A;continue}break}if(C.child===D.child){for(D=C.child;D;){if(D===E)return WZu(C),u;if(D===A)return WZu(C),B;D=D.sibling}throw Error(A4(188))}if(E.return!==A.return)E=C,A=D;else{for(var F=!1,U=C.child;U;){if(U===E){F=!0,E=C,A=D;break}if(U===A){F=!0,A=C,E=D;break}U=U.sibling}if(!F){for(U=D.child;U;){if(U===E){F=!0,E=D,A=C;break}if(U===A){F=!0,A=D,E=C;break}U=U.sibling}if(!F)throw Error(A4(189))}}if(E.alternate!==A)throw Error(A4(190))}if(E.tag!==3)throw Error(A4(188));return E.stateNode.current===E?u:B}function $Ju(u){return u=LE3(u),u!==null?yJu(u):null}function yJu(u){if(u.tag===5||u.tag===6)return u;for(u=u.child;u!==null;){var B=yJu(u);if(B!==null)return B;u=u.sibling}return null}function SE3(u){if(rU&&typeof rU.onCommitFiberRoot==="function")try{rU.onCommitFiberRoot(bd,u,void 0,(u.current.flags&128)===128)}catch(B){}}function RE3(u){return u>>>=0,u===0?32:31-(WE3(u)/YE3|0)|0}function FI(u){switch(u&-u){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 u&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return u&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return u}}function _p(u,B){var E=u.pendingLanes;if(E===0)return 0;var A=0,C=u.suspendedLanes,D=u.pingedLanes,F=E&268435455;if(F!==0){var U=F&~C;U!==0?A=FI(U):(D&=F,D!==0&&(A=FI(D)))}else F=E&~C,F!==0?A=FI(F):D!==0&&(A=FI(D));if(A===0)return 0;if(B!==0&&B!==A&&(B&C)===0&&(C=A&-A,D=B&-B,C>=D||C===16&&(D&4194240)!==0))return B;if((A&4)!==0&&(A|=E&16),B=u.entangledLanes,B!==0)for(u=u.entanglements,B&=A;0<B;)E=31-SD(B),C=1<<E,A|=u[E],B&=~C;return A}function TE3(u,B){switch(u){case 1:case 2:case 4:return B+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 B+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 OE3(u,B){for(var{suspendedLanes:E,pingedLanes:A,expirationTimes:C,pendingLanes:D}=u;0<D;){var F=31-SD(D),U=1<<F,z=C[F];if(z===-1){if((U&E)===0||(U&A)!==0)C[F]=TE3(U,B)}else z<=B&&(u.expiredLanes|=U);D&=~U}}function gM0(u){return u=u.pendingLanes&-1073741825,u!==0?u:u&1073741824?1073741824:0}function nJu(){var u=Gp;return Gp<<=1,(Gp&4194240)===0&&(Gp=64),u}function bM0(u){for(var B=[],E=0;31>E;E++)B.push(u);return B}function VI(u,B,E){u.pendingLanes|=B,B!==536870912&&(u.suspendedLanes=0,u.pingedLanes=0),u=u.eventTimes,B=31-SD(B),u[B]=E}function IE3(u,B){var E=u.pendingLanes&~B;u.pendingLanes=B,u.suspendedLanes=0,u.pingedLanes=0,u.expiredLanes&=B,u.mutableReadLanes&=B,u.entangledLanes&=B,B=u.entanglements;var A=u.eventTimes;for(u=u.expirationTimes;0<E;){var C=31-SD(E),D=1<<C;B[C]=0,A[C]=-1,u[C]=-1,E&=~D}}function OZ0(u,B){var E=u.entangledLanes|=B;for(u=u.entanglements;E;){var A=31-SD(E),C=1<<A;C&B|u[A]&B&&(u[A]|=B),E&=~C}}function pJu(u){return u&=-u,1<u?4<u?(u&268435455)!==0?16:536870912:4:1}function RZu(u,B){switch(u){case"focusin":case"focusout":YM=null;break;case"dragenter":case"dragleave":RM=null;break;case"mouseover":case"mouseout":TM=null;break;case"pointerover":case"pointerout":xI.delete(B.pointerId);break;case"gotpointercapture":case"lostpointercapture":vI.delete(B.pointerId)}}function tO(u,B,E,A,C,D){if(u===null||u.nativeEvent!==D)return u={blockedOn:B,domEventName:E,eventSystemFlags:A,nativeEvent:D,targetContainers:[C]},B!==null&&(B=mI(B),B!==null&&IZ0(B)),u;return u.eventSystemFlags|=A,B=u.targetContainers,C!==null&&B.indexOf(C)===-1&&B.push(C),u}function jE3(u,B,E,A,C){switch(B){case"focusin":return YM=tO(YM,u,B,E,A,C),!0;case"dragenter":return RM=tO(RM,u,B,E,A,C),!0;case"mouseover":return TM=tO(TM,u,B,E,A,C),!0;case"pointerover":var D=C.pointerId;return xI.set(D,tO(xI.get(D)||null,u,B,E,A,C)),!0;case"gotpointercapture":return D=C.pointerId,vI.set(D,tO(vI.get(D)||null,u,B,E,A,C)),!0}return!1}function eJu(u){var B=yK(u.target);if(B!==null){var E=uQ(B);if(E!==null){if(B=E.tag,B===13){if(B=rJu(E),B!==null){u.blockedOn=B,tJu(u.priority,function(){sJu(E)});return}}else if(B===3&&E.stateNode.current.memoizedState.isDehydrated){u.blockedOn=E.tag===3?E.stateNode.containerInfo:null;return}}}u.blockedOn=null}function Op(u){if(u.blockedOn!==null)return!1;for(var B=u.targetContainers;0<B.length;){var E=nM0(u.domEventName,u.eventSystemFlags,B[0],u.nativeEvent);if(E===null){E=u.nativeEvent;var A=new E.constructor(E.type,E);rM0=A,E.target.dispatchEvent(A),rM0=null}else return B=mI(E),B!==null&&IZ0(B),u.blockedOn=E,!1;B.shift()}return!0}function TZu(u,B,E){Op(u)&&E.delete(B)}function NE3(){_M0=!1,YM!==null&&Op(YM)&&(YM=null),RM!==null&&Op(RM)&&(RM=null),TM!==null&&Op(TM)&&(TM=null),xI.forEach(TZu),vI.forEach(TZu)}function eO(u,B){u.blockedOn===B&&(u.blockedOn=null,_M0||(_M0=!0,J9.unstable_scheduleCallback(J9.unstable_NormalPriority,NE3)))}function SI(u){function B(C){return eO(C,u)}if(0<Lp.length){eO(Lp[0],u);for(var E=1;E<Lp.length;E++){var A=Lp[E];A.blockedOn===u&&(A.blockedOn=null)}}YM!==null&&eO(YM,u),RM!==null&&eO(RM,u),TM!==null&&eO(TM,u),xI.forEach(B),vI.forEach(B);for(E=0;E<xM.length;E++)A=xM[E],A.blockedOn===u&&(A.blockedOn=null);for(;0<xM.length&&(E=xM[0],E.blockedOn===null);)eJu(E),E.blockedOn===null&&xM.shift()}function iE3(u,B,E,A){var C=k6,D=hX.transition;hX.transition=null;try{k6=1,PZ0(u,B,E,A)}finally{k6=C,hX.transition=D}}function aE3(u,B,E,A){var C=k6,D=hX.transition;hX.transition=null;try{k6=4,PZ0(u,B,E,A)}finally{k6=C,hX.transition=D}}function PZ0(u,B,E,A){if(np){var C=nM0(u,B,E,A);if(C===null)QM0(u,B,A,pp,E),RZu(u,A);else if(jE3(C,u,B,E,A))A.stopPropagation();else if(RZu(u,A),B&4&&-1<PE3.indexOf(u)){for(;C!==null;){var D=mI(C);if(D!==null&&dJu(D),D=nM0(u,B,E,A),D===null&&QM0(u,B,A,pp,E),D===C)break;C=D}C!==null&&A.stopPropagation()}else QM0(u,B,A,null,E)}}function nM0(u,B,E,A){if(pp=null,u=RZ0(A),u=yK(u),u!==null)if(B=uQ(u),B===null)u=null;else if(E=B.tag,E===13){if(u=rJu(B),u!==null)return u;u=null}else if(E===3){if(B.stateNode.current.memoizedState.isDehydrated)return B.tag===3?B.stateNode.containerInfo:null;u=null}else B!==u&&(u=null);return pp=u,null}function uwu(u){switch(u){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(xE3()){case TZ0:return 1;case gJu:return 4;case gp:case vE3:return 16;case _Ju:return 536870912;default:return 16}default:return 16}}function Bwu(){if(Ip)return Ip;var u,B=jZ0,E=B.length,A,C="value"in SM?SM.value:SM.textContent,D=C.length;for(u=0;u<E&&B[u]===C[u];u++);var F=E-u;for(A=1;A<=F&&B[E-A]===C[D-A];A++);return Ip=C.slice(u,1<A?1-A:void 0)}function Pp(u){var B=u.keyCode;return"charCode"in u?(u=u.charCode,u===0&&B===13&&(u=13)):u=B,u===10&&(u=13),32<=u||u===13?u:0}function qp(){return!0}function OZu(){return!1}function iE(u){function B(E,A,C,D,F){this._reactName=E,this._targetInst=C,this.type=A,this.nativeEvent=D,this.target=F,this.currentTarget=null;for(var U in u)u.hasOwnProperty(U)&&(E=u[U],this[U]=E?E(D):D[U]);return this.isDefaultPrevented=(D.defaultPrevented!=null?D.defaultPrevented:D.returnValue===!1)?qp:OZu,this.isPropagationStopped=OZu,this}return W9(B.prototype,{preventDefault:function(){this.defaultPrevented=!0;var E=this.nativeEvent;E&&(E.preventDefault?E.preventDefault():typeof E.returnValue!=="unknown"&&(E.returnValue=!1),this.isDefaultPrevented=qp)},stopPropagation:function(){var E=this.nativeEvent;E&&(E.stopPropagation?E.stopPropagation():typeof E.cancelBubble!=="unknown"&&(E.cancelBubble=!0),this.isPropagationStopped=qp)},persist:function(){},isPersistent:qp}),B}function sE3(u){var B=this.nativeEvent;return B.getModifierState?B.getModifierState(u):(u=dE3[u])?!!B[u]:!1}function iZ0(){return sE3}function Awu(u,B){switch(u){case"keyup":return FA3.indexOf(B.keyCode)!==-1;case"keydown":return B.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Cwu(u){return u=u.detail,typeof u==="object"&&"data"in u?u.data:null}function zA3(u,B){switch(u){case"compositionend":return Cwu(B);case"keypress":if(B.which!==32)return null;return iZu=!0,NZu;case"textInput":return u=B.data,u===NZu&&iZu?null:u;default:return null}}function kA3(u,B){if(SX)return u==="compositionend"||!aZ0&&Awu(u,B)?(u=Bwu(),Ip=jZ0=SM=null,SX=!1,u):null;switch(u){case"paste":return null;case"keypress":if(!(B.ctrlKey||B.altKey||B.metaKey)||B.ctrlKey&&B.altKey){if(B.char&&1<B.char.length)return B.char;if(B.which)return String.fromCharCode(B.which)}return null;case"compositionend":return Ewu&&B.locale!=="ko"?null:B.data;default:return null}}function aZu(u){var B=u&&u.nodeName&&u.nodeName.toLowerCase();return B==="input"?!!fA3[u.type]:B==="textarea"?!0:!1}function Dwu(u,B,E,A){iJu(A),B=dp(B,"onChange"),0<B.length&&(E=new NZ0("onChange","change",null,E,A),u.push({event:E,listeners:B}))}function lA3(u){wwu(u,0)}function Zd(u){var B=RX(u);if(RJu(B))return u}function bA3(u,B){if(u==="change")return B}function VZu(){JI&&(JI.detachEvent("onpropertychange",Uwu),WI=JI=null)}function Uwu(u){if(u.propertyName==="value"&&Zd(WI)){var B=[];Dwu(B,WI,u,RZ0(u)),mJu(lA3,B)}}function MA3(u,B,E){u==="focusin"?(VZu(),JI=B,WI=E,JI.attachEvent("onpropertychange",Uwu)):u==="focusout"&&VZu()}function ZA3(u){if(u==="selectionchange"||u==="keyup"||u==="keydown")return Zd(WI)}function JA3(u,B){if(u==="click")return Zd(B)}function wA3(u,B){if(u==="input"||u==="change")return Zd(B)}function KA3(u,B){return u===B&&(u!==0||1/u===1/B)||u!==u&&B!==B}function YI(u,B){if(YD(u,B))return!0;if(typeof u!=="object"||u===null||typeof B!=="object"||B===null)return!1;var E=Object.keys(u),A=Object.keys(B);if(E.length!==A.length)return!1;for(A=0;A<E.length;A++){var C=E[A];if(!RM0.call(B,C)||!YD(u[C],B[C]))return!1}return!0}function hZu(u){for(;u&&u.firstChild;)u=u.firstChild;return u}function mZu(u,B){var E=hZu(u);u=0;for(var A;E;){if(E.nodeType===3){if(A=u+E.textContent.length,u<=B&&A>=B)return{node:E,offset:B-u};u=A}u:{for(;E;){if(E.nextSibling){E=E.nextSibling;break u}E=E.parentNode}E=void 0}E=hZu(E)}}function zwu(u,B){return u&&B?u===B?!0:u&&u.nodeType===3?!1:B&&B.nodeType===3?zwu(u,B.parentNode):("contains"in u)?u.contains(B):u.compareDocumentPosition?!!(u.compareDocumentPosition(B)&16):!1:!1}function kwu(){for(var u=window,B=$p();B instanceof u.HTMLIFrameElement;){try{var E=typeof B.contentWindow.location.href==="string"}catch(A){E=!1}if(E)u=B.contentWindow;else break;B=$p(u.document)}return B}function VZ0(u){var B=u&&u.nodeName&&u.nodeName.toLowerCase();return B&&(B==="input"&&(u.type==="text"||u.type==="search"||u.type==="tel"||u.type==="url"||u.type==="password")||B==="textarea"||u.contentEditable==="true")}function QA3(u){var B=kwu(),E=u.focusedElem,A=u.selectionRange;if(B!==E&&E&&E.ownerDocument&&zwu(E.ownerDocument.documentElement,E)){if(A!==null&&VZ0(E)){if(B=A.start,u=A.end,u===void 0&&(u=B),"selectionStart"in E)E.selectionStart=B,E.selectionEnd=Math.min(u,E.value.length);else if(u=(B=E.ownerDocument||document)&&B.defaultView||window,u.getSelection){u=u.getSelection();var C=E.textContent.length,D=Math.min(A.start,C);A=A.end===void 0?D:Math.min(A.end,C),!u.extend&&D>A&&(C=A,A=D,D=C),C=mZu(E,D);var F=mZu(E,A);C&&F&&(u.rangeCount!==1||u.anchorNode!==C.node||u.anchorOffset!==C.offset||u.focusNode!==F.node||u.focusOffset!==F.offset)&&(B=B.createRange(),B.setStart(C.node,C.offset),u.removeAllRanges(),D>A?(u.addRange(B),u.extend(F.node,F.offset)):(B.setEnd(F.node,F.offset),u.addRange(B)))}}B=[];for(u=E;u=u.parentNode;)u.nodeType===1&&B.push({element:u,left:u.scrollLeft,top:u.scrollTop});typeof E.focus==="function"&&E.focus();for(E=0;E<B.length;E++)u=B[E],u.element.scrollLeft=u.left,u.element.scrollTop=u.top}}function rZu(u,B,E){var A=E.window===E?E.document:E.nodeType===9?E:E.ownerDocument;dM0||WX==null||WX!==$p(A)||(A=WX,("selectionStart"in A)&&VZ0(A)?A={start:A.selectionStart,end:A.selectionEnd}:(A=(A.ownerDocument&&A.ownerDocument.defaultView||window).getSelection(),A={anchorNode:A.anchorNode,anchorOffset:A.anchorOffset,focusNode:A.focusNode,focusOffset:A.focusOffset}),wI&&YI(wI,A)||(wI=A,A=dp(pM0,"onSelect"),0<A.length&&(B=new NZ0("onSelect","select",null,B,E),u.push({event:B,listeners:A}),B.target=WX)))}function Xp(u,B){var E={};return E[u.toLowerCase()]=B.toLowerCase(),E["Webkit"+u]="webkit"+B,E["Moz"+u]="moz"+B,E}function Jd(u){if(wM0[u])return wM0[u];if(!YX[u])return u;var B=YX[u],E;for(E in B)if(B.hasOwnProperty(E)&&E in fwu)return wM0[u]=B[E];return u}function VM(u,B){Jwu.set(u,B),eK(B,[u])}function yZu(u,B,E){var A=u.type||"unknown-event";u.currentTarget=E,HE3(A,B,void 0,u),u.currentTarget=null}function wwu(u,B){B=(B&4)!==0;for(var E=0;E<u.length;E++){var A=u[E],C=A.event;A=A.listeners;u:{var D=void 0;if(B)for(var F=A.length-1;0<=F;F--){var U=A[F],z=U.instance,k=U.currentTarget;if(U=U.listener,z!==D&&C.isPropagationStopped())break u;yZu(C,U,k),D=z}else for(F=0;F<A.length;F++){if(U=A[F],z=U.instance,k=U.currentTarget,U=U.listener,z!==D&&C.isPropagationStopped())break u;yZu(C,U,k),D=z}}}if(cp)throw u=cM0,cp=!1,cM0=null,u}function s6(u,B){var E=B[EZ0];E===void 0&&(E=B[EZ0]=new Set);var A=u+"__bubble";E.has(A)||(Kwu(B,u,2,!1),E.add(A))}function KM0(u,B,E){var A=0;B&&(A|=4),Kwu(E,u,A,B)}function RI(u){if(!u[xp]){u[xp]=!0,xJu.forEach(function(E){E!=="selectionchange"&&(HA3.has(E)||KM0(E,!1,u),KM0(E,!0,u))});var B=u.nodeType===9?u:u.ownerDocument;B===null||B[xp]||(B[xp]=!0,KM0("selectionchange",!1,B))}}function Kwu(u,B,E,A){switch(uwu(B)){case 1:var C=iE3;break;case 4:C=aE3;break;default:C=PZ0}E=C.bind(null,B,E,u),C=void 0,!yM0||B!=="touchstart"&&B!=="touchmove"&&B!=="wheel"||(C=!0),A?C!==void 0?u.addEventListener(B,E,{capture:!0,passive:C}):u.addEventListener(B,E,!0):C!==void 0?u.addEventListener(B,E,{passive:C}):u.addEventListener(B,E,!1)}function QM0(u,B,E,A,C){var D=A;if((B&1)===0&&(B&2)===0&&A!==null)u:for(;;){if(A===null)return;var F=A.tag;if(F===3||F===4){var U=A.stateNode.containerInfo;if(U===C||U.nodeType===8&&U.parentNode===C)break;if(F===4)for(F=A.return;F!==null;){var z=F.tag;if(z===3||z===4){if(z=F.stateNode.containerInfo,z===C||z.nodeType===8&&z.parentNode===C)return}F=F.return}for(;U!==null;){if(F=yK(U),F===null)return;if(z=F.tag,z===5||z===6){A=D=F;continue u}U=U.parentNode}}A=A.return}mJu(function(){var k=D,f=RZ0(E),l=[];u:{var b=Jwu.get(u);if(b!==void 0){var M=NZ0,Z=u;switch(u){case"keypress":if(Pp(E)===0)break u;case"keydown":case"keyup":M=tE3;break;case"focusin":Z="focus",M=JM0;break;case"focusout":Z="blur",M=JM0;break;case"beforeblur":case"afterblur":M=JM0;break;case"click":if(E.button===2)break u;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":M=IZu;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":M=mE3;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":M=BA3;break;case lwu:case bwu:case Mwu:M=yE3;break;case Zwu:M=AA3;break;case"scroll":M=VE3;break;case"wheel":M=DA3;break;case"copy":case"cut":case"paste":M=gE3;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":M=jZu}var J=(B&4)!==0,w=!J&&u==="scroll",K=J?b!==null?b+"Capture":null:b;J=[];for(var Q=k,G;Q!==null;){G=Q;var L=G.stateNode;if(G.tag===5&&L!==null&&(G=L,K!==null&&(L=XI(Q,K),L!=null&&J.push(TI(Q,L,G)))),w)break;Q=Q.return}0<J.length&&(b=new M(b,Z,null,E,f),l.push({event:b,listeners:J}))}}if((B&7)===0){u:{if(b=u==="mouseover"||u==="pointerover",M=u==="mouseout"||u==="pointerout",b&&E!==rM0&&(Z=E.relatedTarget||E.fromElement)&&(yK(Z)||Z[Uf]))break u;if(M||b){if(b=f.window===f?f:(b=f.ownerDocument)?b.defaultView||b.parentWindow:window,M){if(Z=E.relatedTarget||E.toElement,M=k,Z=Z?yK(Z):null,Z!==null&&(w=uQ(Z),Z!==w||Z.tag!==5&&Z.tag!==6))Z=null}else M=null,Z=k;if(M!==Z){if(J=IZu,L="onMouseLeave",K="onMouseEnter",Q="mouse",u==="pointerout"||u==="pointerover")J=jZu,L="onPointerLeave",K="onPointerEnter",Q="pointer";if(w=M==null?b:RX(M),G=Z==null?b:RX(Z),b=new J(L,Q+"leave",M,E,f),b.target=w,b.relatedTarget=G,L=null,yK(f)===k&&(J=new J(K,Q+"enter",Z,E,f),J.target=G,J.relatedTarget=w,L=J),w=L,M&&Z)B:{J=M,K=Z,Q=0;for(G=J;G;G=qX(G))Q++;G=0;for(L=K;L;L=qX(L))G++;for(;0<Q-G;)J=qX(J),Q--;for(;0<G-Q;)K=qX(K),G--;for(;Q--;){if(J===K||K!==null&&J===K.alternate)break B;J=qX(J),K=qX(K)}J=null}else J=null;M!==null&&cZu(l,b,M,J,!1),Z!==null&&w!==null&&cZu(l,w,Z,J,!0)}}}u:{if(b=k?RX(k):window,M=b.nodeName&&b.nodeName.toLowerCase(),M==="select"||M==="input"&&b.type==="file")var H=bA3;else if(aZu(b))if(Fwu)H=wA3;else{H=ZA3;var q=MA3}else(M=b.nodeName)&&M.toLowerCase()==="input"&&(b.type==="checkbox"||b.type==="radio")&&(H=JA3);if(H&&(H=H(u,k))){Dwu(l,H,E,f);break u}q&&q(u,b,k),u==="focusout"&&(q=b._wrapperState)&&q.controlled&&b.type==="number"&&iM0(b,"number",b.value)}switch(q=k?RX(k):window,u){case"focusin":if(aZu(q)||q.contentEditable==="true")WX=q,pM0=k,wI=null;break;case"focusout":wI=pM0=WX=null;break;case"mousedown":dM0=!0;break;case"contextmenu":case"mouseup":case"dragend":dM0=!1,rZu(l,E,f);break;case"selectionchange":if(GA3)break;case"keydown":case"keyup":rZu(l,E,f)}var x;if(aZ0)u:{switch(u){case"compositionstart":var v="onCompositionStart";break u;case"compositionend":v="onCompositionEnd";break u;case"compositionupdate":v="onCompositionUpdate";break u}v=void 0}else SX?Awu(u,E)&&(v="onCompositionEnd"):u==="keydown"&&E.keyCode===229&&(v="onCompositionStart");if(v&&(Ewu&&E.locale!=="ko"&&(SX||v!=="onCompositionStart"?v==="onCompositionEnd"&&SX&&(x=Bwu()):(SM=f,jZ0=("value"in SM)?SM.value:SM.textContent,SX=!0)),q=dp(k,v),0<q.length&&(v=new PZu(v,u,null,E,f),l.push({event:v,listeners:q}),x?v.data=x:(x=Cwu(E),x!==null&&(v.data=x)))),x=UA3?zA3(u,E):kA3(u,E))k=dp(k,"onBeforeInput"),0<k.length&&(f=new PZu("onBeforeInput","beforeinput",null,E,f),l.push({event:f,listeners:k}),f.data=x)}wwu(l,B)})}function TI(u,B,E){return{instance:u,listener:B,currentTarget:E}}function dp(u,B){for(var E=B+"Capture",A=[];u!==null;){var C=u,D=C.stateNode;C.tag===5&&D!==null&&(C=D,D=XI(u,E),D!=null&&A.unshift(TI(u,D,C)),D=XI(u,B),D!=null&&A.push(TI(u,D,C))),u=u.return}return A}function qX(u){if(u===null)return null;do u=u.return;while(u&&u.tag!==5);return u?u:null}function cZu(u,B,E,A,C){for(var D=B._reactName,F=[];E!==null&&E!==A;){var U=E,z=U.alternate,k=U.stateNode;if(z!==null&&z===A)break;U.tag===5&&k!==null&&(U=k,C?(z=XI(E,D),z!=null&&F.unshift(TI(E,z,U))):C||(z=XI(E,D),z!=null&&F.push(TI(E,z,U)))),E=E.return}F.length!==0&&u.push({event:B,listeners:F})}function gZu(u){return(typeof u==="string"?u:""+u).replace(LA3,`
`).replace(qA3,"")}function vp(u,B,E){if(B=gZu(B),gZu(u)!==B&&E)throw Error(A4(425))}function sp(){}function uZ0(u,B){return u==="textarea"||u==="noscript"||typeof B.children==="string"||typeof B.children==="number"||typeof B.dangerouslySetInnerHTML==="object"&&B.dangerouslySetInnerHTML!==null&&B.dangerouslySetInnerHTML.__html!=null}function vA3(u){setTimeout(function(){throw u})}function GM0(u,B){var E=B,A=0;do{var C=E.nextSibling;if(u.removeChild(E),C&&C.nodeType===8)if(E=C.data,E==="/$"){if(A===0){u.removeChild(C),SI(B);return}A--}else E!=="$"&&E!=="$?"&&E!=="$!"||A++;E=C}while(E);SI(B)}function OM(u){for(;u!=null;u=u.nextSibling){var B=u.nodeType;if(B===1||B===3)break;if(B===8){if(B=u.data,B==="$"||B==="$!"||B==="$?")break;if(B==="/$")return null}}return u}function nZu(u){u=u.previousSibling;for(var B=0;u;){if(u.nodeType===8){var E=u.data;if(E==="$"||E==="$!"||E==="$?"){if(B===0)return u;B--}else E==="/$"&&B++}u=u.previousSibling}return null}function yK(u){var B=u[mU];if(B)return B;for(var E=u.parentNode;E;){if(B=E[Uf]||E[mU]){if(E=B.alternate,B.child!==null||E!==null&&E.child!==null)for(u=nZu(u);u!==null;){if(E=u[mU])return E;u=nZu(u)}return B}u=E,E=u.parentNode}return null}function mI(u){return u=u[mU]||u[Uf],!u||u.tag!==5&&u.tag!==6&&u.tag!==13&&u.tag!==3?null:u}function RX(u){if(u.tag===5||u.tag===6)return u.stateNode;throw Error(A4(33))}function wd(u){return u[OI]||null}function hM(u){return{current:u}}function o6(u){0>TX||(u.current=AZ0[TX],AZ0[TX]=null,TX--)}function N6(u,B){TX++,AZ0[TX]=u.current,u.current=B}function yX(u,B){var E=u.type.contextTypes;if(!E)return aM;var A=u.stateNode;if(A&&A.__reactInternalMemoizedUnmaskedChildContext===B)return A.__reactInternalMemoizedMaskedChildContext;var C={},D;for(D in E)C[D]=B[D];return A&&(u=u.stateNode,u.__reactInternalMemoizedUnmaskedChildContext=B,u.__reactInternalMemoizedMaskedChildContext=C),C}function m8(u){return u=u.childContextTypes,u!==null&&u!==void 0}function op(){o6(h8),o6(s7)}function pZu(u,B,E){if(s7.current!==aM)throw Error(A4(168));N6(s7,B),N6(h8,E)}function Qwu(u,B,E){var A=u.stateNode;if(B=B.childContextTypes,typeof A.getChildContext!=="function")return E;A=A.getChildContext();for(var C in A)if(!(C in B))throw Error(A4(108,ME3(u)||"Unknown",C));return W9({},E,A)}function tp(u){return u=(u=u.stateNode)&&u.__reactInternalMemoizedMergedChildContext||aM,pK=s7.current,N6(s7,u),N6(h8,h8.current),!0}function dZu(u,B,E){var A=u.stateNode;if(!A)throw Error(A4(169));E?(u=Qwu(u,B,pK),A.__reactInternalMemoizedMergedChildContext=u,o6(h8),o6(s7),N6(s7,u)):o6(h8),N6(h8,E)}function Gwu(u){Ef===null?Ef=[u]:Ef.push(u)}function YA3(u){Kd=!0,Gwu(u)}function mM(){if(!HM0&&Ef!==null){HM0=!0;var u=0,B=k6;try{var E=Ef;for(k6=1;u<E.length;u++){var A=E[u];do A=A(!0);while(A!==null)}Ef=null,Kd=!1}catch(C){throw Ef!==null&&(Ef=Ef.slice(u+1)),cJu(TZ0,mM),C}finally{k6=B,HM0=!1}}return null}function rK(u,B){OX[IX++]=ud,OX[IX++]=ep,ep=u,ud=B}function Hwu(u,B,E){$A[yA++]=Af,$A[yA++]=Cf,$A[yA++]=dK,dK=u;var A=Af;u=Cf;var C=32-SD(A)-1;A&=~(1<<C),E+=1;var D=32-SD(B)+C;if(30<D){var F=C-C%5;D=(A&(1<<F)-1).toString(32),A>>=F,C-=F,Af=1<<32-SD(B)+C|E<<C|A,Cf=D+u}else Af=1<<D|E<<C|A,Cf=u}function hZ0(u){u.return!==null&&(rK(u,1),Hwu(u,1,0))}function mZ0(u){for(;u===ep;)ep=OX[--IX],OX[IX]=null,ud=OX[--IX],OX[IX]=null;for(;u===dK;)dK=$A[--yA],$A[yA]=null,Cf=$A[--yA],$A[yA]=null,Af=$A[--yA],$A[yA]=null}function Lwu(u,B){var E=cA(5,null,null,0);E.elementType="DELETED",E.stateNode=B,E.return=u,B=u.deletions,B===null?(u.deletions=[E],u.flags|=16):B.push(E)}function sZu(u,B){switch(u.tag){case 5:var E=u.type;return B=B.nodeType!==1||E.toLowerCase()!==B.nodeName.toLowerCase()?null:B,B!==null?(u.stateNode=B,NE=u,jE=OM(B.firstChild),!0):!1;case 6:return B=u.pendingProps===""||B.nodeType!==3?null:B,B!==null?(u.stateNode=B,NE=u,jE=null,!0):!1;case 13:return B=B.nodeType!==8?null:B,B!==null?(E=dK!==null?{id:Af,overflow:Cf}:null,u.memoizedState={dehydrated:B,treeContext:E,retryLane:1073741824},E=cA(18,null,null,0),E.stateNode=B,E.return=u,u.child=E,NE=u,jE=null,!0):!1;default:return!1}}function CZ0(u){return(u.mode&1)!==0&&(u.flags&128)===0}function DZ0(u){if(Z9){var B=jE;if(B){var E=B;if(!sZu(u,B)){if(CZ0(u))throw Error(A4(418));B=OM(E.nextSibling);var A=NE;B&&sZu(u,B)?Lwu(A,E):(u.flags=u.flags&-4097|2,Z9=!1,NE=u)}}else{if(CZ0(u))throw Error(A4(418));u.flags=u.flags&-4097|2,Z9=!1,NE=u}}}function oZu(u){for(u=u.return;u!==null&&u.tag!==5&&u.tag!==3&&u.tag!==13;)u=u.return;NE=u}function Sp(u){if(u!==NE)return!1;if(!Z9)return oZu(u),Z9=!0,!1;var B;if((B=u.tag!==3)&&!(B=u.tag!==5)&&(B=u.type,B=B!=="head"&&B!=="body"&&!uZ0(u.type,u.memoizedProps)),B&&(B=jE)){if(CZ0(u))throw qwu(),Error(A4(418));for(;B;)Lwu(u,B),B=OM(B.nextSibling)}if(oZu(u),u.tag===13){if(u=u.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(A4(317));u:{u=u.nextSibling;for(B=0;u;){if(u.nodeType===8){var E=u.data;if(E==="/$"){if(B===0){jE=OM(u.nextSibling);break u}B--}else E!=="$"&&E!=="$!"&&E!=="$?"||B++}u=u.nextSibling}jE=null}}else jE=NE?OM(u.stateNode.nextSibling):null;return!0}function qwu(){for(var u=jE;u;)u=OM(u.nextSibling)}function cX(){jE=NE=null,Z9=!1}function rZ0(u){vD===null?vD=[u]:vD.push(u)}function BI(u,B,E){if(u=E.ref,u!==null&&typeof u!=="function"&&typeof u!=="object"){if(E._owner){if(E=E._owner,E){if(E.tag!==1)throw Error(A4(309));var A=E.stateNode}if(!A)throw Error(A4(147,u));var C=A,D=""+u;if(B!==null&&B.ref!==null&&typeof B.ref==="function"&&B.ref._stringRef===D)return B.ref;return B=function(F){var U=C.refs;F===null?delete U[D]:U[D]=F},B._stringRef=D,B}if(typeof u!=="string")throw Error(A4(284));if(!E._owner)throw Error(A4(290,u))}return u}function Wp(u,B){throw u=Object.prototype.toString.call(B),Error(A4(31,u==="[object Object]"?"object with keys {"+Object.keys(B).join(", ")+"}":u))}function tZu(u){var B=u._init;return B(u._payload)}function Xwu(u){function B(K,Q){if(u){var G=K.deletions;G===null?(K.deletions=[Q],K.flags|=16):G.push(Q)}}function E(K,Q){if(!u)return null;for(;Q!==null;)B(K,Q),Q=Q.sibling;return null}function A(K,Q){for(K=new Map;Q!==null;)Q.key!==null?K.set(Q.key,Q):K.set(Q.index,Q),Q=Q.sibling;return K}function C(K,Q){return K=NM(K,Q),K.index=0,K.sibling=null,K}function D(K,Q,G){if(K.index=G,!u)return K.flags|=1048576,Q;if(G=K.alternate,G!==null)return G=G.index,G<Q?(K.flags|=2,Q):G;return K.flags|=2,Q}function F(K){return u&&K.alternate===null&&(K.flags|=2),K}function U(K,Q,G,L){if(Q===null||Q.tag!==6)return Q=WM0(G,K.mode,L),Q.return=K,Q;return Q=C(Q,G),Q.return=K,Q}function z(K,Q,G,L){var H=G.type;if(H===vX)return f(K,Q,G.props.children,L,G.key);if(Q!==null&&(Q.elementType===H||typeof H==="object"&&H!==null&&H.$$typeof===qM&&tZu(H)===Q.type))return L=C(Q,G.props),L.ref=BI(K,Q,G),L.return=K,L;return L=rp(G.type,G.key,G.props,null,K.mode,L),L.ref=BI(K,Q,G),L.return=K,L}function k(K,Q,G,L){if(Q===null||Q.tag!==4||Q.stateNode.containerInfo!==G.containerInfo||Q.stateNode.implementation!==G.implementation)return Q=YM0(G,K.mode,L),Q.return=K,Q;return Q=C(Q,G.children||[]),Q.return=K,Q}function f(K,Q,G,L,H){if(Q===null||Q.tag!==7)return Q=nK(G,K.mode,L,H),Q.return=K,Q;return Q=C(Q,G),Q.return=K,Q}function l(K,Q,G){if(typeof Q==="string"&&Q!==""||typeof Q==="number")return Q=WM0(""+Q,K.mode,G),Q.return=K,Q;if(typeof Q==="object"&&Q!==null){switch(Q.$$typeof){case wp:return G=rp(Q.type,Q.key,Q.props,null,K.mode,G),G.ref=BI(K,null,Q),G.return=K,G;case xX:return Q=YM0(Q,K.mode,G),Q.return=K,Q;case qM:var L=Q._init;return l(K,L(Q._payload),G)}if(DI(Q)||oO(Q))return Q=nK(Q,K.mode,G,null),Q.return=K,Q;Wp(K,Q)}return null}function b(K,Q,G,L){var H=Q!==null?Q.key:null;if(typeof G==="string"&&G!==""||typeof G==="number")return H!==null?null:U(K,Q,""+G,L);if(typeof G==="object"&&G!==null){switch(G.$$typeof){case wp:return G.key===H?z(K,Q,G,L):null;case xX:return G.key===H?k(K,Q,G,L):null;case qM:return H=G._init,b(K,Q,H(G._payload),L)}if(DI(G)||oO(G))return H!==null?null:f(K,Q,G,L,null);Wp(K,G)}return null}function M(K,Q,G,L,H){if(typeof L==="string"&&L!==""||typeof L==="number")return K=K.get(G)||null,U(Q,K,""+L,H);if(typeof L==="object"&&L!==null){switch(L.$$typeof){case wp:return K=K.get(L.key===null?G:L.key)||null,z(Q,K,L,H);case xX:return K=K.get(L.key===null?G:L.key)||null,k(Q,K,L,H);case qM:var q=L._init;return M(K,Q,G,q(L._payload),H)}if(DI(L)||oO(L))return K=K.get(G)||null,f(Q,K,L,H,null);Wp(Q,L)}return null}function Z(K,Q,G,L){for(var H=null,q=null,x=Q,v=Q=0,W=null;x!==null&&v<G.length;v++){x.index>v?(W=x,x=null):W=x.sibling;var S=b(K,x,G[v],L);if(S===null){x===null&&(x=W);break}u&&x&&S.alternate===null&&B(K,x),Q=D(S,Q,v),q===null?H=S:q.sibling=S,q=S,x=W}if(v===G.length)return E(K,x),Z9&&rK(K,v),H;if(x===null){for(;v<G.length;v++)x=l(K,G[v],L),x!==null&&(Q=D(x,Q,v),q===null?H=x:q.sibling=x,q=x);return Z9&&rK(K,v),H}for(x=A(K,x);v<G.length;v++)W=M(x,K,v,G[v],L),W!==null&&(u&&W.alternate!==null&&x.delete(W.key===null?v:W.key),Q=D(W,Q,v),q===null?H=W:q.sibling=W,q=W);return u&&x.forEach(function(T){return B(K,T)}),Z9&&rK(K,v),H}function J(K,Q,G,L){var H=oO(G);if(typeof H!=="function")throw Error(A4(150));if(G=H.call(G),G==null)throw Error(A4(151));for(var q=H=null,x=Q,v=Q=0,W=null,S=G.next();x!==null&&!S.done;v++,S=G.next()){x.index>v?(W=x,x=null):W=x.sibling;var T=b(K,x,S.value,L);if(T===null){x===null&&(x=W);break}u&&x&&T.alternate===null&&B(K,x),Q=D(T,Q,v),q===null?H=T:q.sibling=T,q=T,x=W}if(S.done)return E(K,x),Z9&&rK(K,v),H;if(x===null){for(;!S.done;v++,S=G.next())S=l(K,S.value,L),S!==null&&(Q=D(S,Q,v),q===null?H=S:q.sibling=S,q=S);return Z9&&rK(K,v),H}for(x=A(K,x);!S.done;v++,S=G.next())S=M(x,K,v,S.value,L),S!==null&&(u&&S.alternate!==null&&x.delete(S.key===null?v:S.key),Q=D(S,Q,v),q===null?H=S:q.sibling=S,q=S);return u&&x.forEach(function(R){return B(K,R)}),Z9&&rK(K,v),H}function w(K,Q,G,L){if(typeof G==="object"&&G!==null&&G.type===vX&&G.key===null&&(G=G.props.children),typeof G==="object"&&G!==null){switch(G.$$typeof){case wp:u:{for(var H=G.key,q=Q;q!==null;){if(q.key===H){if(H=G.type,H===vX){if(q.tag===7){E(K,q.sibling),Q=C(q,G.props.children),Q.return=K,K=Q;break u}}else if(q.elementType===H||typeof H==="object"&&H!==null&&H.$$typeof===qM&&tZu(H)===q.type){E(K,q.sibling),Q=C(q,G.props),Q.ref=BI(K,q,G),Q.return=K,K=Q;break u}E(K,q);break}else B(K,q);q=q.sibling}G.type===vX?(Q=nK(G.props.children,K.mode,L,G.key),Q.return=K,K=Q):(L=rp(G.type,G.key,G.props,null,K.mode,L),L.ref=BI(K,Q,G),L.return=K,K=L)}return F(K);case xX:u:{for(q=G.key;Q!==null;){if(Q.key===q)if(Q.tag===4&&Q.stateNode.containerInfo===G.containerInfo&&Q.stateNode.implementation===G.implementation){E(K,Q.sibling),Q=C(Q,G.children||[]),Q.return=K,K=Q;break u}else{E(K,Q);break}else B(K,Q);Q=Q.sibling}Q=YM0(G,K.mode,L),Q.return=K,K=Q}return F(K);case qM:return q=G._init,w(K,Q,q(G._payload),L)}if(DI(G))return Z(K,Q,G,L);if(oO(G))return J(K,Q,G,L);Wp(K,G)}return typeof G==="string"&&G!==""||typeof G==="number"?(G=""+G,Q!==null&&Q.tag===6?(E(K,Q.sibling),Q=C(Q,G),Q.return=K,K=Q):(E(K,Q),Q=WM0(G,K.mode,L),Q.return=K,K=Q),F(K)):E(K,Q)}return w}function yZ0(){$Z0=PX=Ed=null}function cZ0(u){var B=Bd.current;o6(Bd),u._currentValue=B}function FZ0(u,B,E){for(;u!==null;){var A=u.alternate;if((u.childLanes&B)!==B?(u.childLanes|=B,A!==null&&(A.childLanes|=B)):A!==null&&(A.childLanes&B)!==B&&(A.childLanes|=B),u===E)break;u=u.return}}function mX(u,B){Ed=u,$Z0=PX=null,u=u.dependencies,u!==null&&u.firstContext!==null&&((u.lanes&B)!==0&&(V8=!0),u.firstContext=null)}function _A(u){var B=u._currentValue;if($Z0!==u)if(u={context:u,memoizedValue:B,next:null},PX===null){if(Ed===null)throw Error(A4(308));PX=u,Ed.dependencies={lanes:0,firstContext:u}}else PX=PX.next=u;return B}function gZ0(u){cK===null?cK=[u]:cK.push(u)}function vwu(u,B,E,A){var C=B.interleaved;return C===null?(E.next=E,gZ0(B)):(E.next=C.next,C.next=E),B.interleaved=E,zf(u,A)}function zf(u,B){u.lanes|=B;var E=u.alternate;E!==null&&(E.lanes|=B),E=u;for(u=u.return;u!==null;)u.childLanes|=B,E=u.alternate,E!==null&&(E.childLanes|=B),E=u,u=u.return;return E.tag===3?E.stateNode:null}function _Z0(u){u.updateQueue={baseState:u.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Swu(u,B){u=u.updateQueue,B.updateQueue===u&&(B.updateQueue={baseState:u.baseState,firstBaseUpdate:u.firstBaseUpdate,lastBaseUpdate:u.lastBaseUpdate,shared:u.shared,effects:u.effects})}function Df(u,B){return{eventTime:u,lane:B,tag:0,payload:null,callback:null,next:null}}function IM(u,B,E){var A=u.updateQueue;if(A===null)return null;if(A=A.shared,(O1&2)!==0){var C=A.pending;return C===null?B.next=B:(B.next=C.next,C.next=B),A.pending=B,zf(u,E)}return C=A.interleaved,C===null?(B.next=B,gZ0(A)):(B.next=C.next,C.next=B),A.interleaved=B,zf(u,E)}function Np(u,B,E){if(B=B.updateQueue,B!==null&&(B=B.shared,(E&4194240)!==0)){var A=B.lanes;A&=u.pendingLanes,E|=A,B.lanes=E,OZ0(u,E)}}function eZu(u,B){var{updateQueue:E,alternate:A}=u;if(A!==null&&(A=A.updateQueue,E===A)){var C=null,D=null;if(E=E.firstBaseUpdate,E!==null){do{var F={eventTime:E.eventTime,lane:E.lane,tag:E.tag,payload:E.payload,callback:E.callback,next:null};D===null?C=D=F:D=D.next=F,E=E.next}while(E!==null);D===null?C=D=B:D=D.next=B}else C=D=B;E={baseState:A.baseState,firstBaseUpdate:C,lastBaseUpdate:D,shared:A.shared,effects:A.effects},u.updateQueue=E;return}u=E.lastBaseUpdate,u===null?E.firstBaseUpdate=B:u.next=B,E.lastBaseUpdate=B}function Ad(u,B,E,A){var C=u.updateQueue;XM=!1;var{firstBaseUpdate:D,lastBaseUpdate:F}=C,U=C.shared.pending;if(U!==null){C.shared.pending=null;var z=U,k=z.next;z.next=null,F===null?D=k:F.next=k,F=z;var f=u.alternate;f!==null&&(f=f.updateQueue,U=f.lastBaseUpdate,U!==F&&(U===null?f.firstBaseUpdate=k:U.next=k,f.lastBaseUpdate=z))}if(D!==null){var l=C.baseState;F=0,f=k=z=null,U=D;do{var{lane:b,eventTime:M}=U;if((A&b)===b){f!==null&&(f=f.next={eventTime:M,lane:0,tag:U.tag,payload:U.payload,callback:U.callback,next:null});u:{var Z=u,J=U;switch(b=B,M=E,J.tag){case 1:if(Z=J.payload,typeof Z==="function"){l=Z.call(M,l,b);break u}l=Z;break u;case 3:Z.flags=Z.flags&-65537|128;case 0:if(Z=J.payload,b=typeof Z==="function"?Z.call(M,l,b):Z,b===null||b===void 0)break u;l=W9({},l,b);break u;case 2:XM=!0}}U.callback!==null&&U.lane!==0&&(u.flags|=64,b=C.effects,b===null?C.effects=[U]:b.push(U))}else M={eventTime:M,lane:b,tag:U.tag,payload:U.payload,callback:U.callback,next:null},f===null?(k=f=M,z=l):f=f.next=M,F|=b;if(U=U.next,U===null)if(U=C.shared.pending,U===null)break;else b=U,U=b.next,b.next=null,C.lastBaseUpdate=b,C.shared.pending=null}while(1);if(f===null&&(z=l),C.baseState=z,C.firstBaseUpdate=k,C.lastBaseUpdate=f,B=C.shared.interleaved,B!==null){C=B;do F|=C.lane,C=C.next;while(C!==B)}else D===null&&(C.shared.lanes=0);oK|=F,u.lanes=F,u.memoizedState=l}}function uJu(u,B,E){if(u=B.effects,B.effects=null,u!==null)for(B=0;B<u.length;B++){var A=u[B],C=A.callback;if(C!==null){if(A.callback=null,A=E,typeof C!=="function")throw Error(A4(191,C));C.call(A)}}}function gK(u){if(u===rI)throw Error(A4(174));return u}function nZ0(u,B){switch(N6(PI,B),N6(II,u),N6($U,rI),u=B.nodeType,u){case 9:case 11:B=(B=B.documentElement)?B.namespaceURI:VM0(null,"");break;default:u=u===8?B.parentNode:B,B=u.namespaceURI||null,u=u.tagName,B=VM0(B,u)}o6($U),N6($U,B)}function _X(){o6($U),o6(II),o6(PI)}function Wwu(u){gK(PI.current);var B=gK($U.current),E=VM0(B,u.type);B!==E&&(N6(II,u),N6($U,E))}function pZ0(u){II.current===u&&(o6($U),o6(II))}function Cd(u){for(var B=u;B!==null;){if(B.tag===13){var E=B.memoizedState;if(E!==null&&(E=E.dehydrated,E===null||E.data==="$?"||E.data==="$!"))return B}else if(B.tag===19&&B.memoizedProps.revealOrder!==void 0){if((B.flags&128)!==0)return B}else if(B.child!==null){B.child.return=B,B=B.child;continue}if(B===u)break;for(;B.sibling===null;){if(B.return===null||B.return===u)return null;B=B.return}B.sibling.return=B.return,B=B.sibling}return null}function dZ0(){for(var u=0;u<LM0.length;u++)LM0[u]._workInProgressVersionPrimary=null;LM0.length=0}function n7(){throw Error(A4(321))}function sZ0(u,B){if(B===null)return!1;for(var E=0;E<B.length&&E<u.length;E++)if(!YD(u[E],B[E]))return!1;return!0}function oZ0(u,B,E,A,C,D){if(sK=D,S9=B,B.memoizedState=null,B.updateQueue=null,B.lanes=0,ip.current=u===null||u.memoizedState===null?jA3:NA3,u=E(A,C),KI){D=0;do{if(KI=!1,jI=0,25<=D)throw Error(A4(301));D+=1,r5=b5=null,B.updateQueue=null,ip.current=iA3,u=E(A,C)}while(KI)}if(ip.current=Fd,B=b5!==null&&b5.next!==null,sK=0,r5=b5=S9=null,Dd=!1,B)throw Error(A4(300));return u}function tZ0(){var u=jI!==0;return jI=0,u}function hU(){var u={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return r5===null?S9.memoizedState=r5=u:r5=r5.next=u,r5}function nA(){if(b5===null){var u=S9.alternate;u=u!==null?u.memoizedState:null}else u=b5.next;var B=r5===null?S9.memoizedState:r5.next;if(B!==null)r5=B,b5=u;else{if(u===null)throw Error(A4(310));b5=u,u={memoizedState:b5.memoizedState,baseState:b5.baseState,baseQueue:b5.baseQueue,queue:b5.queue,next:null},r5===null?S9.memoizedState=r5=u:r5=r5.next=u}return r5}function NI(u,B){return typeof B==="function"?B(u):B}function XM0(u){var B=nA(),E=B.queue;if(E===null)throw Error(A4(311));E.lastRenderedReducer=u;var A=b5,C=A.baseQueue,D=E.pending;if(D!==null){if(C!==null){var F=C.next;C.next=D.next,D.next=F}A.baseQueue=C=D,E.pending=null}if(C!==null){D=C.next,A=A.baseState;var U=F=null,z=null,k=D;do{var f=k.lane;if((sK&f)===f)z!==null&&(z=z.next={lane:0,action:k.action,hasEagerState:k.hasEagerState,eagerState:k.eagerState,next:null}),A=k.hasEagerState?k.eagerState:u(A,k.action);else{var l={lane:f,action:k.action,hasEagerState:k.hasEagerState,eagerState:k.eagerState,next:null};z===null?(U=z=l,F=A):z=z.next=l,S9.lanes|=f,oK|=f}k=k.next}while(k!==null&&k!==D);z===null?F=A:z.next=U,YD(A,B.memoizedState)||(V8=!0),B.memoizedState=A,B.baseState=F,B.baseQueue=z,E.lastRenderedState=A}if(u=E.interleaved,u!==null){C=u;do D=C.lane,S9.lanes|=D,oK|=D,C=C.next;while(C!==u)}else C===null&&(E.lanes=0);return[B.memoizedState,E.dispatch]}function xM0(u){var B=nA(),E=B.queue;if(E===null)throw Error(A4(311));E.lastRenderedReducer=u;var{dispatch:A,pending:C}=E,D=B.memoizedState;if(C!==null){E.pending=null;var F=C=C.next;do D=u(D,F.action),F=F.next;while(F!==C);YD(D,B.memoizedState)||(V8=!0),B.memoizedState=D,B.baseQueue===null&&(B.baseState=D),E.lastRenderedState=D}return[D,A]}function Ywu(){}function Rwu(u,B){var E=S9,A=nA(),C=B(),D=!YD(A.memoizedState,C);if(D&&(A.memoizedState=C,V8=!0),A=A.queue,eZ0(Iwu.bind(null,E,A,u),[u]),A.getSnapshot!==B||D||r5!==null&&r5.memoizedState.tag&1){if(E.flags|=2048,iI(9,Owu.bind(null,E,A,C,B),void 0,null),$5===null)throw Error(A4(349));(sK&30)!==0||Twu(E,B,C)}return C}function Twu(u,B,E){u.flags|=16384,u={getSnapshot:B,value:E},B=S9.updateQueue,B===null?(B={lastEffect:null,stores:null},S9.updateQueue=B,B.stores=[u]):(E=B.stores,E===null?B.stores=[u]:E.push(u))}function Owu(u,B,E,A){B.value=E,B.getSnapshot=A,Pwu(B)&&jwu(u)}function Iwu(u,B,E){return E(function(){Pwu(B)&&jwu(u)})}function Pwu(u){var B=u.getSnapshot;u=u.value;try{var E=B();return!YD(u,E)}catch(A){return!0}}function jwu(u){var B=zf(u,1);B!==null&&WD(B,u,1,-1)}function BJu(u){var B=hU();return typeof u==="function"&&(u=u()),B.memoizedState=B.baseState=u,u={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:NI,lastRenderedState:u},B.queue=u,u=u.dispatch=PA3.bind(null,S9,u),[B.memoizedState,u]}function iI(u,B,E,A){return u={tag:u,create:B,destroy:E,deps:A,next:null},B=S9.updateQueue,B===null?(B={lastEffect:null,stores:null},S9.updateQueue=B,B.lastEffect=u.next=u):(E=B.lastEffect,E===null?B.lastEffect=u.next=u:(A=E.next,E.next=u,u.next=A,B.lastEffect=u)),u}function Nwu(){return nA().memoizedState}function ap(u,B,E,A){var C=hU();S9.flags|=u,C.memoizedState=iI(1|B,E,void 0,A===void 0?null:A)}function Qd(u,B,E,A){var C=nA();A=A===void 0?null:A;var D=void 0;if(b5!==null){var F=b5.memoizedState;if(D=F.destroy,A!==null&&sZ0(A,F.deps)){C.memoizedState=iI(B,E,D,A);return}}S9.flags|=u,C.memoizedState=iI(1|B,E,D,A)}function EJu(u,B){return ap(8390656,8,u,B)}function eZ0(u,B){return Qd(2048,8,u,B)}function iwu(u,B){return Qd(4,2,u,B)}function awu(u,B){return Qd(4,4,u,B)}function Vwu(u,B){if(typeof B==="function")return u=u(),B(u),function(){B(null)};if(B!==null&&B!==void 0)return u=u(),B.current=u,function(){B.current=null}}function hwu(u,B,E){return E=E!==null&&E!==void 0?E.concat([u]):null,Qd(4,4,Vwu.bind(null,B,u),E)}function uJ0(){}function mwu(u,B){var E=nA();B=B===void 0?null:B;var A=E.memoizedState;if(A!==null&&B!==null&&sZ0(B,A[1]))return A[0];return E.memoizedState=[u,B],u}function rwu(u,B){var E=nA();B=B===void 0?null:B;var A=E.memoizedState;if(A!==null&&B!==null&&sZ0(B,A[1]))return A[0];return u=u(),E.memoizedState=[u,B],u}function $wu(u,B,E){if((sK&21)===0)return u.baseState&&(u.baseState=!1,V8=!0),u.memoizedState=E;return YD(E,B)||(E=nJu(),S9.lanes|=E,oK|=E,u.baseState=!0),B}function OA3(u,B){var E=k6;k6=E!==0&&4>E?E:4,u(!0);var A=qM0.transition;qM0.transition={};try{u(!1),B()}finally{k6=E,qM0.transition=A}}function ywu(){return nA().memoizedState}function IA3(u,B,E){var A=jM(u);if(E={lane:A,action:E,hasEagerState:!1,eagerState:null,next:null},cwu(u))gwu(B,E);else if(E=vwu(u,B,E,A),E!==null){var C=yB();WD(E,u,A,C),_wu(E,B,A)}}function PA3(u,B,E){var A=jM(u),C={lane:A,action:E,hasEagerState:!1,eagerState:null,next:null};if(cwu(u))gwu(B,C);else{var D=u.alternate;if(u.lanes===0&&(D===null||D.lanes===0)&&(D=B.lastRenderedReducer,D!==null))try{var F=B.lastRenderedState,U=D(F,E);if(C.hasEagerState=!0,C.eagerState=U,YD(U,F)){var z=B.interleaved;z===null?(C.next=C,gZ0(B)):(C.next=z.next,z.next=C),B.interleaved=C;return}}catch(k){}finally{}E=vwu(u,B,C,A),E!==null&&(C=yB(),WD(E,u,A,C),_wu(E,B,A))}}function cwu(u){var B=u.alternate;return u===S9||B!==null&&B===S9}function gwu(u,B){KI=Dd=!0;var E=u.pending;E===null?B.next=B:(B.next=E.next,E.next=B),u.pending=B}function _wu(u,B,E){if((E&4194240)!==0){var A=B.lanes;A&=u.pendingLanes,E|=A,B.lanes=E,OZ0(u,E)}}function XD(u,B){if(u&&u.defaultProps){B=W9({},B),u=u.defaultProps;for(var E in u)B[E]===void 0&&(B[E]=u[E]);return B}return B}function UZ0(u,B,E,A){B=u.memoizedState,E=E(A,B),E=E===null||E===void 0?B:W9({},B,E),u.memoizedState=E,u.lanes===0&&(u.updateQueue.baseState=E)}function AJu(u,B,E,A,C,D,F){return u=u.stateNode,typeof u.shouldComponentUpdate==="function"?u.shouldComponentUpdate(A,D,F):B.prototype&&B.prototype.isPureReactComponent?!YI(E,A)||!YI(C,D):!0}function nwu(u,B,E){var A=!1,C=aM,D=B.contextType;return typeof D==="object"&&D!==null?D=_A(D):(C=m8(B)?pK:s7.current,A=B.contextTypes,D=(A=A!==null&&A!==void 0)?yX(u,C):aM),B=new B(E,D),u.memoizedState=B.state!==null&&B.state!==void 0?B.state:null,B.updater=Gd,u.stateNode=B,B._reactInternals=u,A&&(u=u.stateNode,u.__reactInternalMemoizedUnmaskedChildContext=C,u.__reactInternalMemoizedMaskedChildContext=D),B}function CJu(u,B,E,A){u=B.state,typeof B.componentWillReceiveProps==="function"&&B.componentWillReceiveProps(E,A),typeof B.UNSAFE_componentWillReceiveProps==="function"&&B.UNSAFE_componentWillReceiveProps(E,A),B.state!==u&&Gd.enqueueReplaceState(B,B.state,null)}function zZ0(u,B,E,A){var C=u.stateNode;C.props=E,C.state=u.memoizedState,C.refs={},_Z0(u);var D=B.contextType;typeof D==="object"&&D!==null?C.context=_A(D):(D=m8(B)?pK:s7.current,C.context=yX(u,D)),C.state=u.memoizedState,D=B.getDerivedStateFromProps,typeof D==="function"&&(UZ0(u,B,D,E),C.state=u.memoizedState),typeof B.getDerivedStateFromProps==="function"||typeof C.getSnapshotBeforeUpdate==="function"||typeof C.UNSAFE_componentWillMount!=="function"&&typeof C.componentWillMount!=="function"||(B=C.state,typeof C.componentWillMount==="function"&&C.componentWillMount(),typeof C.UNSAFE_componentWillMount==="function"&&C.UNSAFE_componentWillMount(),B!==C.state&&Gd.enqueueReplaceState(C,C.state,null),Ad(u,E,C,A),C.state=u.memoizedState),typeof C.componentDidMount==="function"&&(u.flags|=4194308)}function nX(u,B){try{var E="",A=B;do E+=bE3(A),A=A.return;while(A);var C=E}catch(D){C=`
Error generating stack: `+D.message+`
`+D.stack}return{value:u,source:B,stack:C,digest:null}}function vM0(u,B,E){return{value:u,source:null,stack:E!=null?E:null,digest:B!=null?B:null}}function kZ0(u,B){try{console.error(B.value)}catch(E){setTimeout(function(){throw E})}}function pwu(u,B,E){E=Df(-1,E),E.tag=3,E.payload={element:null};var A=B.value;return E.callback=function(){zd||(zd=!0,GZ0=A),kZ0(u,B)},E}function dwu(u,B,E){E=Df(-1,E),E.tag=3;var A=u.type.getDerivedStateFromError;if(typeof A==="function"){var C=B.value;E.payload=function(){return A(C)},E.callback=function(){kZ0(u,B)}}var D=u.stateNode;return D!==null&&typeof D.componentDidCatch==="function"&&(E.callback=function(){kZ0(u,B),typeof A!=="function"&&(PM===null?PM=new Set([this]):PM.add(this));var F=B.stack;this.componentDidCatch(B.value,{componentStack:F!==null?F:""})}),E}function DJu(u,B,E){var A=u.pingCache;if(A===null){A=u.pingCache=new aA3;var C=new Set;A.set(B,C)}else C=A.get(B),C===void 0&&(C=new Set,A.set(B,C));C.has(E)||(C.add(E),u=oA3.bind(null,u,B,E),B.then(u,u))}function FJu(u){do{var B;if(B=u.tag===13)B=u.memoizedState,B=B!==null?B.dehydrated!==null?!0:!1:!0;if(B)return u;u=u.return}while(u!==null);return null}function UJu(u,B,E,A,C){if((u.mode&1)===0)return u===B?u.flags|=65536:(u.flags|=128,E.flags|=131072,E.flags&=-52805,E.tag===1&&(E.alternate===null?E.tag=17:(B=Df(-1,1),B.tag=2,IM(E,B,1))),E.lanes|=1),u;return u.flags|=65536,u.lanes=C,u}function $B(u,B,E,A){B.child=u===null?xwu(B,null,E,A):gX(B,u.child,E,A)}function zJu(u,B,E,A,C){E=E.render;var D=B.ref;if(mX(B,C),A=oZ0(u,B,E,A,D,C),E=tZ0(),u!==null&&!V8)return B.updateQueue=u.updateQueue,B.flags&=-2053,u.lanes&=~C,kf(u,B,C);return Z9&&E&&hZ0(B),B.flags|=1,$B(u,B,A,C),B.child}function kJu(u,B,E,A,C){if(u===null){var D=E.type;if(typeof D==="function"&&!zJ0(D)&&D.defaultProps===void 0&&E.compare===null&&E.defaultProps===void 0)return B.tag=15,B.type=D,swu(u,B,D,A,C);return u=rp(E.type,null,A,B,B.mode,C),u.ref=B.ref,u.return=B,B.child=u}if(D=u.child,(u.lanes&C)===0){var F=D.memoizedProps;if(E=E.compare,E=E!==null?E:YI,E(F,A)&&u.ref===B.ref)return kf(u,B,C)}return B.flags|=1,u=NM(D,A),u.ref=B.ref,u.return=B,B.child=u}function swu(u,B,E,A,C){if(u!==null){var D=u.memoizedProps;if(YI(D,A)&&u.ref===B.ref)if(V8=!1,B.pendingProps=A=D,(u.lanes&C)!==0)(u.flags&131072)!==0&&(V8=!0);else return B.lanes=u.lanes,kf(u,B,C)}return fZ0(u,B,E,A,C)}function owu(u,B,E){var A=B.pendingProps,C=A.children,D=u!==null?u.memoizedState:null;if(A.mode==="hidden")if((B.mode&1)===0)B.memoizedState={baseLanes:0,cachePool:null,transitions:null},N6(NX,PE),PE|=E;else{if((E&1073741824)===0)return u=D!==null?D.baseLanes|E:E,B.lanes=B.childLanes=1073741824,B.memoizedState={baseLanes:u,cachePool:null,transitions:null},B.updateQueue=null,N6(NX,PE),PE|=u,null;B.memoizedState={baseLanes:0,cachePool:null,transitions:null},A=D!==null?D.baseLanes:E,N6(NX,PE),PE|=A}else D!==null?(A=D.baseLanes|E,B.memoizedState=null):A=E,N6(NX,PE),PE|=A;return $B(u,B,C,E),B.child}function twu(u,B){var E=B.ref;if(u===null&&E!==null||u!==null&&u.ref!==E)B.flags|=512,B.flags|=2097152}function fZ0(u,B,E,A,C){var D=m8(E)?pK:s7.current;if(D=yX(B,D),mX(B,C),E=oZ0(u,B,E,A,D,C),A=tZ0(),u!==null&&!V8)return B.updateQueue=u.updateQueue,B.flags&=-2053,u.lanes&=~C,kf(u,B,C);return Z9&&A&&hZ0(B),B.flags|=1,$B(u,B,E,C),B.child}function fJu(u,B,E,A,C){if(m8(E)){var D=!0;tp(B)}else D=!1;if(mX(B,C),B.stateNode===null)Vp(u,B),nwu(B,E,A),zZ0(B,E,A,C),A=!0;else if(u===null){var{stateNode:F,memoizedProps:U}=B;F.props=U;var z=F.context,k=E.contextType;typeof k==="object"&&k!==null?k=_A(k):(k=m8(E)?pK:s7.current,k=yX(B,k));var f=E.getDerivedStateFromProps,l=typeof f==="function"||typeof F.getSnapshotBeforeUpdate==="function";l||typeof F.UNSAFE_componentWillReceiveProps!=="function"&&typeof F.componentWillReceiveProps!=="function"||(U!==A||z!==k)&&CJu(B,F,A,k),XM=!1;var b=B.memoizedState;F.state=b,Ad(B,A,F,C),z=B.memoizedState,U!==A||b!==z||h8.current||XM?(typeof f==="function"&&(UZ0(B,E,f,A),z=B.memoizedState),(U=XM||AJu(B,E,U,A,b,z,k))?(l||typeof F.UNSAFE_componentWillMount!=="function"&&typeof F.componentWillMount!=="function"||(typeof F.componentWillMount==="function"&&F.componentWillMount(),typeof F.UNSAFE_componentWillMount==="function"&&F.UNSAFE_componentWillMount()),typeof F.componentDidMount==="function"&&(B.flags|=4194308)):(typeof F.componentDidMount==="function"&&(B.flags|=4194308),B.memoizedProps=A,B.memoizedState=z),F.props=A,F.state=z,F.context=k,A=U):(typeof F.componentDidMount==="function"&&(B.flags|=4194308),A=!1)}else{F=B.stateNode,Swu(u,B),U=B.memoizedProps,k=B.type===B.elementType?U:XD(B.type,U),F.props=k,l=B.pendingProps,b=F.context,z=E.contextType,typeof z==="object"&&z!==null?z=_A(z):(z=m8(E)?pK:s7.current,z=yX(B,z));var M=E.getDerivedStateFromProps;(f=typeof M==="function"||typeof F.getSnapshotBeforeUpdate==="function")||typeof F.UNSAFE_componentWillReceiveProps!=="function"&&typeof F.componentWillReceiveProps!=="function"||(U!==l||b!==z)&&CJu(B,F,A,z),XM=!1,b=B.memoizedState,F.state=b,Ad(B,A,F,C);var Z=B.memoizedState;U!==l||b!==Z||h8.current||XM?(typeof M==="function"&&(UZ0(B,E,M,A),Z=B.memoizedState),(k=XM||AJu(B,E,k,A,b,Z,z)||!1)?(f||typeof F.UNSAFE_componentWillUpdate!=="function"&&typeof F.componentWillUpdate!=="function"||(typeof F.componentWillUpdate==="function"&&F.componentWillUpdate(A,Z,z),typeof F.UNSAFE_componentWillUpdate==="function"&&F.UNSAFE_componentWillUpdate(A,Z,z)),typeof F.componentDidUpdate==="function"&&(B.flags|=4),typeof F.getSnapshotBeforeUpdate==="function"&&(B.flags|=1024)):(typeof F.componentDidUpdate!=="function"||U===u.memoizedProps&&b===u.memoizedState||(B.flags|=4),typeof F.getSnapshotBeforeUpdate!=="function"||U===u.memoizedProps&&b===u.memoizedState||(B.flags|=1024),B.memoizedProps=A,B.memoizedState=Z),F.props=A,F.state=Z,F.context=z,A=k):(typeof F.componentDidUpdate!=="function"||U===u.memoizedProps&&b===u.memoizedState||(B.flags|=4),typeof F.getSnapshotBeforeUpdate!=="function"||U===u.memoizedProps&&b===u.memoizedState||(B.flags|=1024),A=!1)}return lZ0(u,B,E,A,D,C)}function lZ0(u,B,E,A,C,D){twu(u,B);var F=(B.flags&128)!==0;if(!A&&!F)return C&&dZu(B,E,!1),kf(u,B,D);A=B.stateNode,VA3.current=B;var U=F&&typeof E.getDerivedStateFromError!=="function"?null:A.render();return B.flags|=1,u!==null&&F?(B.child=gX(B,u.child,null,D),B.child=gX(B,null,U,D)):$B(u,B,U,D),B.memoizedState=A.state,C&&dZu(B,E,!0),B.child}function ewu(u){var B=u.stateNode;B.pendingContext?pZu(u,B.pendingContext,B.pendingContext!==B.context):B.context&&pZu(u,B.context,!1),nZ0(u,B.containerInfo)}function lJu(u,B,E,A,C){return cX(),rZ0(C),B.flags|=256,$B(u,B,E,A),B.child}function MZ0(u){return{baseLanes:u,cachePool:null,transitions:null}}function uKu(u,B,E){var A=B.pendingProps,C=v9.current,D=!1,F=(B.flags&128)!==0,U;if((U=F)||(U=u!==null&&u.memoizedState===null?!1:(C&2)!==0),U)D=!0,B.flags&=-129;else if(u===null||u.memoizedState!==null)C|=1;if(N6(v9,C&1),u===null){if(DZ0(B),u=B.memoizedState,u!==null&&(u=u.dehydrated,u!==null))return(B.mode&1)===0?B.lanes=1:u.data==="$!"?B.lanes=8:B.lanes=1073741824,null;return F=A.children,u=A.fallback,D?(A=B.mode,D=B.child,F={mode:"hidden",children:F},(A&1)===0&&D!==null?(D.childLanes=0,D.pendingProps=F):D=qd(F,A,0,null),u=nK(u,A,E,null),D.return=B,u.return=B,D.sibling=u,B.child=D,B.child.memoizedState=MZ0(E),B.memoizedState=bZ0,u):BJ0(B,F)}if(C=u.memoizedState,C!==null&&(U=C.dehydrated,U!==null))return hA3(u,B,F,A,U,C,E);if(D){D=A.fallback,F=B.mode,C=u.child,U=C.sibling;var z={mode:"hidden",children:A.children};return(F&1)===0&&B.child!==C?(A=B.child,A.childLanes=0,A.pendingProps=z,B.deletions=null):(A=NM(C,z),A.subtreeFlags=C.subtreeFlags&14680064),U!==null?D=NM(U,D):(D=nK(D,F,E,null),D.flags|=2),D.return=B,A.return=B,A.sibling=D,B.child=A,A=D,D=B.child,F=u.child.memoizedState,F=F===null?MZ0(E):{baseLanes:F.baseLanes|E,cachePool:null,transitions:F.transitions},D.memoizedState=F,D.childLanes=u.childLanes&~E,B.memoizedState=bZ0,A}return D=u.child,u=D.sibling,A=NM(D,{mode:"visible",children:A.children}),(B.mode&1)===0&&(A.lanes=E),A.return=B,A.sibling=null,u!==null&&(E=B.deletions,E===null?(B.deletions=[u],B.flags|=16):E.push(u)),B.child=A,B.memoizedState=null,A}function BJ0(u,B){return B=qd({mode:"visible",children:B},u.mode,0,null),B.return=u,u.child=B}function Yp(u,B,E,A){return A!==null&&rZ0(A),gX(B,u.child,null,E),u=BJ0(B,B.pendingProps.children),u.flags|=2,B.memoizedState=null,u}function hA3(u,B,E,A,C,D,F){if(E){if(B.flags&256)return B.flags&=-257,A=vM0(Error(A4(422))),Yp(u,B,F,A);if(B.memoizedState!==null)return B.child=u.child,B.flags|=128,null;return D=A.fallback,C=B.mode,A=qd({mode:"visible",children:A.children},C,0,null),D=nK(D,C,F,null),D.flags|=2,A.return=B,D.return=B,A.sibling=D,B.child=A,(B.mode&1)!==0&&gX(B,u.child,null,F),B.child.memoizedState=MZ0(F),B.memoizedState=bZ0,D}if((B.mode&1)===0)return Yp(u,B,F,null);if(C.data==="$!"){if(A=C.nextSibling&&C.nextSibling.dataset,A)var U=A.dgst;return A=U,D=Error(A4(419)),A=vM0(D,A,void 0),Yp(u,B,F,A)}if(U=(F&u.childLanes)!==0,V8||U){if(A=$5,A!==null){switch(F&-F){case 4:C=2;break;case 16:C=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:C=32;break;case 536870912:C=268435456;break;default:C=0}C=(C&(A.suspendedLanes|F))!==0?0:C,C!==0&&C!==D.retryLane&&(D.retryLane=C,zf(u,C),WD(A,u,C,-1))}return UJ0(),A=vM0(Error(A4(421))),Yp(u,B,F,A)}if(C.data==="$?")return B.flags|=128,B.child=u.child,B=tA3.bind(null,u),C._reactRetry=B,null;return u=D.treeContext,jE=OM(C.nextSibling),NE=B,Z9=!0,vD=null,u!==null&&($A[yA++]=Af,$A[yA++]=Cf,$A[yA++]=dK,Af=u.id,Cf=u.overflow,dK=B),B=BJ0(B,A.children),B.flags|=4096,B}function bJu(u,B,E){u.lanes|=B;var A=u.alternate;A!==null&&(A.lanes|=B),FZ0(u.return,B,E)}function SM0(u,B,E,A,C){var D=u.memoizedState;D===null?u.memoizedState={isBackwards:B,rendering:null,renderingStartTime:0,last:A,tail:E,tailMode:C}:(D.isBackwards=B,D.rendering=null,D.renderingStartTime=0,D.last=A,D.tail=E,D.tailMode=C)}function BKu(u,B,E){var A=B.pendingProps,C=A.revealOrder,D=A.tail;if($B(u,B,A.children,E),A=v9.current,(A&2)!==0)A=A&1|2,B.flags|=128;else{if(u!==null&&(u.flags&128)!==0)u:for(u=B.child;u!==null;){if(u.tag===13)u.memoizedState!==null&&bJu(u,E,B);else if(u.tag===19)bJu(u,E,B);else if(u.child!==null){u.child.return=u,u=u.child;continue}if(u===B)break u;for(;u.sibling===null;){if(u.return===null||u.return===B)break u;u=u.return}u.sibling.return=u.return,u=u.sibling}A&=1}if(N6(v9,A),(B.mode&1)===0)B.memoizedState=null;else switch(C){case"forwards":E=B.child;for(C=null;E!==null;)u=E.alternate,u!==null&&Cd(u)===null&&(C=E),E=E.sibling;E=C,E===null?(C=B.child,B.child=null):(C=E.sibling,E.sibling=null),SM0(B,!1,C,E,D);break;case"backwards":E=null,C=B.child;for(B.child=null;C!==null;){if(u=C.alternate,u!==null&&Cd(u)===null){B.child=C;break}u=C.sibling,C.sibling=E,E=C,C=u}SM0(B,!0,E,null,D);break;case"together":SM0(B,!1,null,null,void 0);break;default:B.memoizedState=null}return B.child}function Vp(u,B){(B.mode&1)===0&&u!==null&&(u.alternate=null,B.alternate=null,B.flags|=2)}function kf(u,B,E){if(u!==null&&(B.dependencies=u.dependencies),oK|=B.lanes,(E&B.childLanes)===0)return null;if(u!==null&&B.child!==u.child)throw Error(A4(153));if(B.child!==null){u=B.child,E=NM(u,u.pendingProps),B.child=E;for(E.return=B;u.sibling!==null;)u=u.sibling,E=E.sibling=NM(u,u.pendingProps),E.return=B;E.sibling=null}return B.child}function mA3(u,B,E){switch(B.tag){case 3:ewu(B),cX();break;case 5:Wwu(B);break;case 1:m8(B.type)&&tp(B);break;case 4:nZ0(B,B.stateNode.containerInfo);break;case 10:var A=B.type._context,C=B.memoizedProps.value;N6(Bd,A._currentValue),A._currentValue=C;break;case 13:if(A=B.memoizedState,A!==null){if(A.dehydrated!==null)return N6(v9,v9.current&1),B.flags|=128,null;if((E&B.child.childLanes)!==0)return uKu(u,B,E);return N6(v9,v9.current&1),u=kf(u,B,E),u!==null?u.sibling:null}N6(v9,v9.current&1);break;case 19:if(A=(E&B.childLanes)!==0,(u.flags&128)!==0){if(A)return BKu(u,B,E);B.flags|=128}if(C=B.memoizedState,C!==null&&(C.rendering=null,C.tail=null,C.lastEffect=null),N6(v9,v9.current),A)break;else return null;case 22:case 23:return B.lanes=0,owu(u,B,E)}return kf(u,B,E)}function EI(u,B){if(!Z9)switch(u.tailMode){case"hidden":B=u.tail;for(var E=null;B!==null;)B.alternate!==null&&(E=B),B=B.sibling;E===null?u.tail=null:E.sibling=null;break;case"collapsed":E=u.tail;for(var A=null;E!==null;)E.alternate!==null&&(A=E),E=E.sibling;A===null?B||u.tail===null?u.tail=null:u.tail.sibling=null:A.sibling=null}}function p7(u){var B=u.alternate!==null&&u.alternate.child===u.child,E=0,A=0;if(B)for(var C=u.child;C!==null;)E|=C.lanes|C.childLanes,A|=C.subtreeFlags&14680064,A|=C.flags&14680064,C.return=u,C=C.sibling;else for(C=u.child;C!==null;)E|=C.lanes|C.childLanes,A|=C.subtreeFlags,A|=C.flags,C.return=u,C=C.sibling;return u.subtreeFlags|=A,u.childLanes=E,B}function rA3(u,B,E){var A=B.pendingProps;switch(mZ0(B),B.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return p7(B),null;case 1:return m8(B.type)&&op(),p7(B),null;case 3:if(A=B.stateNode,_X(),o6(h8),o6(s7),dZ0(),A.pendingContext&&(A.context=A.pendingContext,A.pendingContext=null),u===null||u.child===null)Sp(B)?B.flags|=4:u===null||u.memoizedState.isDehydrated&&(B.flags&256)===0||(B.flags|=1024,vD!==null&&(qZ0(vD),vD=null));return ZZ0(u,B),p7(B),null;case 5:pZ0(B);var C=gK(PI.current);if(E=B.type,u!==null&&B.stateNode!=null)AKu(u,B,E,A,C),u.ref!==B.ref&&(B.flags|=512,B.flags|=2097152);else{if(!A){if(B.stateNode===null)throw Error(A4(166));return p7(B),null}if(u=gK($U.current),Sp(B)){A=B.stateNode,E=B.type;var D=B.memoizedProps;switch(A[mU]=B,A[OI]=D,u=(B.mode&1)!==0,E){case"dialog":s6("cancel",A),s6("close",A);break;case"iframe":case"object":case"embed":s6("load",A);break;case"video":case"audio":for(C=0;C<lI.length;C++)s6(lI[C],A);break;case"source":s6("error",A);break;case"img":case"image":case"link":s6("error",A),s6("load",A);break;case"details":s6("toggle",A);break;case"input":qZu(A,D),s6("invalid",A);break;case"select":A._wrapperState={wasMultiple:!!D.multiple},s6("invalid",A);break;case"textarea":xZu(A,D),s6("invalid",A)}hM0(E,D),C=null;for(var F in D)if(D.hasOwnProperty(F)){var U=D[F];F==="children"?typeof U==="string"?A.textContent!==U&&(D.suppressHydrationWarning!==!0&&vp(A.textContent,U,u),C=["children",U]):typeof U==="number"&&A.textContent!==""+U&&(D.suppressHydrationWarning!==!0&&vp(A.textContent,U,u),C=["children",""+U]):LI.hasOwnProperty(F)&&U!=null&&F==="onScroll"&&s6("scroll",A)}switch(E){case"input":Kp(A),XZu(A,D,!0);break;case"textarea":Kp(A),vZu(A);break;case"select":case"option":break;default:typeof D.onClick==="function"&&(A.onclick=sp)}A=C,B.updateQueue=A,A!==null&&(B.flags|=4)}else{F=C.nodeType===9?C:C.ownerDocument,u==="http://www.w3.org/1999/xhtml"&&(u=IJu(E)),u==="http://www.w3.org/1999/xhtml"?E==="script"?(u=F.createElement("div"),u.innerHTML="<script><\/script>",u=u.removeChild(u.firstChild)):typeof A.is==="string"?u=F.createElement(E,{is:A.is}):(u=F.createElement(E),E==="select"&&(F=u,A.multiple?F.multiple=!0:A.size&&(F.size=A.size))):u=F.createElementNS(u,E),u[mU]=B,u[OI]=A,EKu(u,B,!1,!1),B.stateNode=u;u:{switch(F=mM0(E,A),E){case"dialog":s6("cancel",u),s6("close",u),C=A;break;case"iframe":case"object":case"embed":s6("load",u),C=A;break;case"video":case"audio":for(C=0;C<lI.length;C++)s6(lI[C],u);C=A;break;case"source":s6("error",u),C=A;break;case"img":case"image":case"link":s6("error",u),s6("load",u),C=A;break;case"details":s6("toggle",u),C=A;break;case"input":qZu(u,A),C=jM0(u,A),s6("invalid",u);break;case"option":C=A;break;case"select":u._wrapperState={wasMultiple:!!A.multiple},C=W9({},A,{value:void 0}),s6("invalid",u);break;case"textarea":xZu(u,A),C=aM0(u,A),s6("invalid",u);break;default:C=A}hM0(E,C),U=C;for(D in U)if(U.hasOwnProperty(D)){var z=U[D];D==="style"?NJu(u,z):D==="dangerouslySetInnerHTML"?(z=z?z.__html:void 0,z!=null&&PJu(u,z)):D==="children"?typeof z==="string"?(E!=="textarea"||z!=="")&&qI(u,z):typeof z==="number"&&qI(u,""+z):D!=="suppressContentEditableWarning"&&D!=="suppressHydrationWarning"&&D!=="autoFocus"&&(LI.hasOwnProperty(D)?z!=null&&D==="onScroll"&&s6("scroll",u):z!=null&&vZ0(u,D,z,F))}switch(E){case"input":Kp(u),XZu(u,A,!1);break;case"textarea":Kp(u),vZu(u);break;case"option":A.value!=null&&u.setAttribute("value",""+iM(A.value));break;case"select":u.multiple=!!A.multiple,D=A.value,D!=null?iX(u,!!A.multiple,D,!1):A.defaultValue!=null&&iX(u,!!A.multiple,A.defaultValue,!0);break;default:typeof C.onClick==="function"&&(u.onclick=sp)}switch(E){case"button":case"input":case"select":case"textarea":A=!!A.autoFocus;break u;case"img":A=!0;break u;default:A=!1}}A&&(B.flags|=4)}B.ref!==null&&(B.flags|=512,B.flags|=2097152)}return p7(B),null;case 6:if(u&&B.stateNode!=null)CKu(u,B,u.memoizedProps,A);else{if(typeof A!=="string"&&B.stateNode===null)throw Error(A4(166));if(E=gK(PI.current),gK($U.current),Sp(B)){if(A=B.stateNode,E=B.memoizedProps,A[mU]=B,D=A.nodeValue!==E){if(u=NE,u!==null)switch(u.tag){case 3:vp(A.nodeValue,E,(u.mode&1)!==0);break;case 5:u.memoizedProps.suppressHydrationWarning!==!0&&vp(A.nodeValue,E,(u.mode&1)!==0)}}D&&(B.flags|=4)}else A=(E.nodeType===9?E:E.ownerDocument).createTextNode(A),A[mU]=B,B.stateNode=A}return p7(B),null;case 13:if(o6(v9),A=B.memoizedState,u===null||u.memoizedState!==null&&u.memoizedState.dehydrated!==null){if(Z9&&jE!==null&&(B.mode&1)!==0&&(B.flags&128)===0)qwu(),cX(),B.flags|=98560,D=!1;else if(D=Sp(B),A!==null&&A.dehydrated!==null){if(u===null){if(!D)throw Error(A4(318));if(D=B.memoizedState,D=D!==null?D.dehydrated:null,!D)throw Error(A4(317));D[mU]=B}else cX(),(B.flags&128)===0&&(B.memoizedState=null),B.flags|=4;p7(B),D=!1}else vD!==null&&(qZ0(vD),vD=null),D=!0;if(!D)return B.flags&65536?B:null}if((B.flags&128)!==0)return B.lanes=E,B;return A=A!==null,A!==(u!==null&&u.memoizedState!==null)&&A&&(B.child.flags|=8192,(B.mode&1)!==0&&(u===null||(v9.current&1)!==0?M5===0&&(M5=3):UJ0())),B.updateQueue!==null&&(B.flags|=4),p7(B),null;case 4:return _X(),ZZ0(u,B),u===null&&RI(B.stateNode.containerInfo),p7(B),null;case 10:return cZ0(B.type._context),p7(B),null;case 17:return m8(B.type)&&op(),p7(B),null;case 19:if(o6(v9),D=B.memoizedState,D===null)return p7(B),null;if(A=(B.flags&128)!==0,F=D.rendering,F===null)if(A)EI(D,!1);else{if(M5!==0||u!==null&&(u.flags&128)!==0)for(u=B.child;u!==null;){if(F=Cd(u),F!==null){B.flags|=128,EI(D,!1),A=F.updateQueue,A!==null&&(B.updateQueue=A,B.flags|=4),B.subtreeFlags=0,A=E;for(E=B.child;E!==null;)D=E,u=A,D.flags&=14680066,F=D.alternate,F===null?(D.childLanes=0,D.lanes=u,D.child=null,D.subtreeFlags=0,D.memoizedProps=null,D.memoizedState=null,D.updateQueue=null,D.dependencies=null,D.stateNode=null):(D.childLanes=F.childLanes,D.lanes=F.lanes,D.child=F.child,D.subtreeFlags=0,D.deletions=null,D.memoizedProps=F.memoizedProps,D.memoizedState=F.memoizedState,D.updateQueue=F.updateQueue,D.type=F.type,u=F.dependencies,D.dependencies=u===null?null:{lanes:u.lanes,firstContext:u.firstContext}),E=E.sibling;return N6(v9,v9.current&1|2),B.child}u=u.sibling}D.tail!==null&&J2()>pX&&(B.flags|=128,A=!0,EI(D,!1),B.lanes=4194304)}else{if(!A)if(u=Cd(F),u!==null){if(B.flags|=128,A=!0,E=u.updateQueue,E!==null&&(B.updateQueue=E,B.flags|=4),EI(D,!0),D.tail===null&&D.tailMode==="hidden"&&!F.alternate&&!Z9)return p7(B),null}else 2*J2()-D.renderingStartTime>pX&&E!==1073741824&&(B.flags|=128,A=!0,EI(D,!1),B.lanes=4194304);D.isBackwards?(F.sibling=B.child,B.child=F):(E=D.last,E!==null?E.sibling=F:B.child=F,D.last=F)}if(D.tail!==null)return B=D.tail,D.rendering=B,D.tail=B.sibling,D.renderingStartTime=J2(),B.sibling=null,E=v9.current,N6(v9,A?E&1|2:E&1),B;return p7(B),null;case 22:case 23:return FJ0(),A=B.memoizedState!==null,u!==null&&u.memoizedState!==null!==A&&(B.flags|=8192),A&&(B.mode&1)!==0?(PE&1073741824)!==0&&(p7(B),B.subtreeFlags&6&&(B.flags|=8192)):p7(B),null;case 24:return null;case 25:return null}throw Error(A4(156,B.tag))}function $A3(u,B){switch(mZ0(B),B.tag){case 1:return m8(B.type)&&op(),u=B.flags,u&65536?(B.flags=u&-65537|128,B):null;case 3:return _X(),o6(h8),o6(s7),dZ0(),u=B.flags,(u&65536)!==0&&(u&128)===0?(B.flags=u&-65537|128,B):null;case 5:return pZ0(B),null;case 13:if(o6(v9),u=B.memoizedState,u!==null&&u.dehydrated!==null){if(B.alternate===null)throw Error(A4(340));cX()}return u=B.flags,u&65536?(B.flags=u&-65537|128,B):null;case 19:return o6(v9),null;case 4:return _X(),null;case 10:return cZ0(B.type._context),null;case 22:case 23:return FJ0(),null;case 24:return null;default:return null}}function jX(u,B){var E=u.ref;if(E!==null)if(typeof E==="function")try{E(null)}catch(A){p9(u,B,A)}else E.current=null}function JZ0(u,B,E){try{E()}catch(A){p9(u,B,A)}}function cA3(u,B){if(tM0=np,u=kwu(),VZ0(u)){if("selectionStart"in u)var E={start:u.selectionStart,end:u.selectionEnd};else u:{E=(E=u.ownerDocument)&&E.defaultView||window;var A=E.getSelection&&E.getSelection();if(A&&A.rangeCount!==0){E=A.anchorNode;var{anchorOffset:C,focusNode:D}=A;A=A.focusOffset;try{E.nodeType,D.nodeType}catch(L){E=null;break u}var F=0,U=-1,z=-1,k=0,f=0,l=u,b=null;B:for(;;){for(var M;;){if(l!==E||C!==0&&l.nodeType!==3||(U=F+C),l!==D||A!==0&&l.nodeType!==3||(z=F+A),l.nodeType===3&&(F+=l.nodeValue.length),(M=l.firstChild)===null)break;b=l,l=M}for(;;){if(l===u)break B;if(b===E&&++k===C&&(U=F),b===D&&++f===A&&(z=F),(M=l.nextSibling)!==null)break;l=b,b=l.parentNode}l=M}E=U===-1||z===-1?null:{start:U,end:z}}else E=null}E=E||{start:0,end:0}}else E=null;eM0={focusedElem:u,selectionRange:E},np=!1;for(I4=B;I4!==null;)if(B=I4,u=B.child,(B.subtreeFlags&1028)!==0&&u!==null)u.return=B,I4=u;else for(;I4!==null;){B=I4;try{var Z=B.alternate;if((B.flags&1024)!==0)switch(B.tag){case 0:case 11:case 15:break;case 1:if(Z!==null){var{memoizedProps:J,memoizedState:w}=Z,K=B.stateNode,Q=K.getSnapshotBeforeUpdate(B.elementType===B.type?J:XD(B.type,J),w);K.__reactInternalSnapshotBeforeUpdate=Q}break;case 3:var G=B.stateNode.containerInfo;G.nodeType===1?G.textContent="":G.nodeType===9&&G.documentElement&&G.removeChild(G.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(A4(163))}}catch(L){p9(B,B.return,L)}if(u=B.sibling,u!==null){u.return=B.return,I4=u;break}I4=B.return}return Z=MJu,MJu=!1,Z}function QI(u,B,E){var A=B.updateQueue;if(A=A!==null?A.lastEffect:null,A!==null){var C=A=A.next;do{if((C.tag&u)===u){var D=C.destroy;C.destroy=void 0,D!==void 0&&JZ0(B,E,D)}C=C.next}while(C!==A)}}function Hd(u,B){if(B=B.updateQueue,B=B!==null?B.lastEffect:null,B!==null){var E=B=B.next;do{if((E.tag&u)===u){var A=E.create;E.destroy=A()}E=E.next}while(E!==B)}}function wZ0(u){var B=u.ref;if(B!==null){var E=u.stateNode;switch(u.tag){case 5:u=E;break;default:u=E}typeof B==="function"?B(u):B.current=u}}function DKu(u){var B=u.alternate;B!==null&&(u.alternate=null,DKu(B)),u.child=null,u.deletions=null,u.sibling=null,u.tag===5&&(B=u.stateNode,B!==null&&(delete B[mU],delete B[OI],delete B[EZ0],delete B[SA3],delete B[WA3])),u.stateNode=null,u.return=null,u.dependencies=null,u.memoizedProps=null,u.memoizedState=null,u.pendingProps=null,u.stateNode=null,u.updateQueue=null}function FKu(u){return u.tag===5||u.tag===3||u.tag===4}function ZJu(u){u:for(;;){for(;u.sibling===null;){if(u.return===null||FKu(u.return))return null;u=u.return}u.sibling.return=u.return;for(u=u.sibling;u.tag!==5&&u.tag!==6&&u.tag!==18;){if(u.flags&2)continue u;if(u.child===null||u.tag===4)continue u;else u.child.return=u,u=u.child}if(!(u.flags&2))return u.stateNode}}function KZ0(u,B,E){var A=u.tag;if(A===5||A===6)u=u.stateNode,B?E.nodeType===8?E.parentNode.insertBefore(u,B):E.insertBefore(u,B):(E.nodeType===8?(B=E.parentNode,B.insertBefore(u,E)):(B=E,B.appendChild(u)),E=E._reactRootContainer,E!==null&&E!==void 0||B.onclick!==null||(B.onclick=sp));else if(A!==4&&(u=u.child,u!==null))for(KZ0(u,B,E),u=u.sibling;u!==null;)KZ0(u,B,E),u=u.sibling}function QZ0(u,B,E){var A=u.tag;if(A===5||A===6)u=u.stateNode,B?E.insertBefore(u,B):E.appendChild(u);else if(A!==4&&(u=u.child,u!==null))for(QZ0(u,B,E),u=u.sibling;u!==null;)QZ0(u,B,E),u=u.sibling}function LM(u,B,E){for(E=E.child;E!==null;)UKu(u,B,E),E=E.sibling}function UKu(u,B,E){if(rU&&typeof rU.onCommitFiberUnmount==="function")try{rU.onCommitFiberUnmount(bd,E)}catch(U){}switch(E.tag){case 5:d7||jX(E,B);case 6:var A=G7,C=xD;G7=null,LM(u,B,E),G7=A,xD=C,G7!==null&&(xD?(u=G7,E=E.stateNode,u.nodeType===8?u.parentNode.removeChild(E):u.removeChild(E)):G7.removeChild(E.stateNode));break;case 18:G7!==null&&(xD?(u=G7,E=E.stateNode,u.nodeType===8?GM0(u.parentNode,E):u.nodeType===1&&GM0(u,E),SI(u)):GM0(G7,E.stateNode));break;case 4:A=G7,C=xD,G7=E.stateNode.containerInfo,xD=!0,LM(u,B,E),G7=A,xD=C;break;case 0:case 11:case 14:case 15:if(!d7&&(A=E.updateQueue,A!==null&&(A=A.lastEffect,A!==null))){C=A=A.next;do{var D=C,F=D.destroy;D=D.tag,F!==void 0&&((D&2)!==0?JZ0(E,B,F):(D&4)!==0&&JZ0(E,B,F)),C=C.next}while(C!==A)}LM(u,B,E);break;case 1:if(!d7&&(jX(E,B),A=E.stateNode,typeof A.componentWillUnmount==="function"))try{A.props=E.memoizedProps,A.state=E.memoizedState,A.componentWillUnmount()}catch(U){p9(E,B,U)}LM(u,B,E);break;case 21:LM(u,B,E);break;case 22:E.mode&1?(d7=(A=d7)||E.memoizedState!==null,LM(u,B,E),d7=A):LM(u,B,E);break;default:LM(u,B,E)}}function JJu(u){var B=u.updateQueue;if(B!==null){u.updateQueue=null;var E=u.stateNode;E===null&&(E=u.stateNode=new yA3),B.forEach(function(A){var C=eA3.bind(null,u,A);E.has(A)||(E.add(A),A.then(C,C))})}}function qD(u,B){var E=B.deletions;if(E!==null)for(var A=0;A<E.length;A++){var C=E[A];try{var D=u,F=B,U=F;u:for(;U!==null;){switch(U.tag){case 5:G7=U.stateNode,xD=!1;break u;case 3:G7=U.stateNode.containerInfo,xD=!0;break u;case 4:G7=U.stateNode.containerInfo,xD=!0;break u}U=U.return}if(G7===null)throw Error(A4(160));UKu(D,F,C),G7=null,xD=!1;var z=C.alternate;z!==null&&(z.return=null),C.return=null}catch(k){p9(C,B,k)}}if(B.subtreeFlags&12854)for(B=B.child;B!==null;)zKu(B,u),B=B.sibling}function zKu(u,B){var{alternate:E,flags:A}=u;switch(u.tag){case 0:case 11:case 14:case 15:if(qD(B,u),VU(u),A&4){try{QI(3,u,u.return),Hd(3,u)}catch(J){p9(u,u.return,J)}try{QI(5,u,u.return)}catch(J){p9(u,u.return,J)}}break;case 1:qD(B,u),VU(u),A&512&&E!==null&&jX(E,E.return);break;case 5:if(qD(B,u),VU(u),A&512&&E!==null&&jX(E,E.return),u.flags&32){var C=u.stateNode;try{qI(C,"")}catch(J){p9(u,u.return,J)}}if(A&4&&(C=u.stateNode,C!=null)){var D=u.memoizedProps,F=E!==null?E.memoizedProps:D,U=u.type,z=u.updateQueue;if(u.updateQueue=null,z!==null)try{U==="input"&&D.type==="radio"&&D.name!=null&&TJu(C,D),mM0(U,F);var k=mM0(U,D);for(F=0;F<z.length;F+=2){var f=z[F],l=z[F+1];f==="style"?NJu(C,l):f==="dangerouslySetInnerHTML"?PJu(C,l):f==="children"?qI(C,l):vZ0(C,f,l,k)}switch(U){case"input":NM0(C,D);break;case"textarea":OJu(C,D);break;case"select":var b=C._wrapperState.wasMultiple;C._wrapperState.wasMultiple=!!D.multiple;var M=D.value;M!=null?iX(C,!!D.multiple,M,!1):b!==!!D.multiple&&(D.defaultValue!=null?iX(C,!!D.multiple,D.defaultValue,!0):iX(C,!!D.multiple,D.multiple?[]:"",!1))}C[OI]=D}catch(J){p9(u,u.return,J)}}break;case 6:if(qD(B,u),VU(u),A&4){if(u.stateNode===null)throw Error(A4(162));C=u.stateNode,D=u.memoizedProps;try{C.nodeValue=D}catch(J){p9(u,u.return,J)}}break;case 3:if(qD(B,u),VU(u),A&4&&E!==null&&E.memoizedState.isDehydrated)try{SI(B.containerInfo)}catch(J){p9(u,u.return,J)}break;case 4:qD(B,u),VU(u);break;case 13:qD(B,u),VU(u),C=u.child,C.flags&8192&&(D=C.memoizedState!==null,C.stateNode.isHidden=D,!D||C.alternate!==null&&C.alternate.memoizedState!==null||(CJ0=J2())),A&4&&JJu(u);break;case 22:if(f=E!==null&&E.memoizedState!==null,u.mode&1?(d7=(k=d7)||f,qD(B,u),d7=k):qD(B,u),VU(u),A&8192){if(k=u.memoizedState!==null,(u.stateNode.isHidden=k)&&!f&&(u.mode&1)!==0)for(I4=u,f=u.child;f!==null;){for(l=I4=f;I4!==null;){switch(b=I4,M=b.child,b.tag){case 0:case 11:case 14:case 15:QI(4,b,b.return);break;case 1:jX(b,b.return);var Z=b.stateNode;if(typeof Z.componentWillUnmount==="function"){A=b,E=b.return;try{B=A,Z.props=B.memoizedProps,Z.state=B.memoizedState,Z.componentWillUnmount()}catch(J){p9(A,E,J)}}break;case 5:jX(b,b.return);break;case 22:if(b.memoizedState!==null){KJu(l);continue}}M!==null?(M.return=b,I4=M):KJu(l)}f=f.sibling}u:for(f=null,l=u;;){if(l.tag===5){if(f===null){f=l;try{C=l.stateNode,k?(D=C.style,typeof D.setProperty==="function"?D.setProperty("display","none","important"):D.display="none"):(U=l.stateNode,z=l.memoizedProps.style,F=z!==void 0&&z!==null&&z.hasOwnProperty("display")?z.display:null,U.style.display=jJu("display",F))}catch(J){p9(u,u.return,J)}}}else if(l.tag===6){if(f===null)try{l.stateNode.nodeValue=k?"":l.memoizedProps}catch(J){p9(u,u.return,J)}}else if((l.tag!==22&&l.tag!==23||l.memoizedState===null||l===u)&&l.child!==null){l.child.return=l,l=l.child;continue}if(l===u)break u;for(;l.sibling===null;){if(l.return===null||l.return===u)break u;f===l&&(f=null),l=l.return}f===l&&(f=null),l.sibling.return=l.return,l=l.sibling}}break;case 19:qD(B,u),VU(u),A&4&&JJu(u);break;case 21:break;default:qD(B,u),VU(u)}}function VU(u){var B=u.flags;if(B&2){try{u:{for(var E=u.return;E!==null;){if(FKu(E)){var A=E;break u}E=E.return}throw Error(A4(160))}switch(A.tag){case 5:var C=A.stateNode;A.flags&32&&(qI(C,""),A.flags&=-33);var D=ZJu(u);QZ0(u,D,C);break;case 3:case 4:var F=A.stateNode.containerInfo,U=ZJu(u);KZ0(u,U,F);break;default:throw Error(A4(161))}}catch(z){p9(u,u.return,z)}u.flags&=-3}B&4096&&(u.flags&=-4097)}function gA3(u,B,E){I4=u,kKu(u,B,E)}function kKu(u,B,E){for(var A=(u.mode&1)!==0;I4!==null;){var C=I4,D=C.child;if(C.tag===22&&A){var F=C.memoizedState!==null||Rp;if(!F){var U=C.alternate,z=U!==null&&U.memoizedState!==null||d7;U=Rp;var k=d7;if(Rp=F,(d7=z)&&!k)for(I4=C;I4!==null;)F=I4,z=F.child,F.tag===22&&F.memoizedState!==null?QJu(C):z!==null?(z.return=F,I4=z):QJu(C);for(;D!==null;)I4=D,kKu(D,B,E),D=D.sibling;I4=C,Rp=U,d7=k}wJu(u,B,E)}else(C.subtreeFlags&8772)!==0&&D!==null?(D.return=C,I4=D):wJu(u,B,E)}}function wJu(u){for(;I4!==null;){var B=I4;if((B.flags&8772)!==0){var E=B.alternate;try{if((B.flags&8772)!==0)switch(B.tag){case 0:case 11:case 15:d7||Hd(5,B);break;case 1:var A=B.stateNode;if(B.flags&4&&!d7)if(E===null)A.componentDidMount();else{var C=B.elementType===B.type?E.memoizedProps:XD(B.type,E.memoizedProps);A.componentDidUpdate(C,E.memoizedState,A.__reactInternalSnapshotBeforeUpdate)}var D=B.updateQueue;D!==null&&uJu(B,D,A);break;case 3:var F=B.updateQueue;if(F!==null){if(E=null,B.child!==null)switch(B.child.tag){case 5:E=B.child.stateNode;break;case 1:E=B.child.stateNode}uJu(B,F,E)}break;case 5:var U=B.stateNode;if(E===null&&B.flags&4){E=U;var z=B.memoizedProps;switch(B.type){case"button":case"input":case"select":case"textarea":z.autoFocus&&E.focus();break;case"img":z.src&&(E.src=z.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(B.memoizedState===null){var k=B.alternate;if(k!==null){var f=k.memoizedState;if(f!==null){var l=f.dehydrated;l!==null&&SI(l)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(A4(163))}d7||B.flags&512&&wZ0(B)}catch(b){p9(B,B.return,b)}}if(B===u){I4=null;break}if(E=B.sibling,E!==null){E.return=B.return,I4=E;break}I4=B.return}}function KJu(u){for(;I4!==null;){var B=I4;if(B===u){I4=null;break}var E=B.sibling;if(E!==null){E.return=B.return,I4=E;break}I4=B.return}}function QJu(u){for(;I4!==null;){var B=I4;try{switch(B.tag){case 0:case 11:case 15:var E=B.return;try{Hd(4,B)}catch(z){p9(B,E,z)}break;case 1:var A=B.stateNode;if(typeof A.componentDidMount==="function"){var C=B.return;try{A.componentDidMount()}catch(z){p9(B,C,z)}}var D=B.return;try{wZ0(B)}catch(z){p9(B,D,z)}break;case 5:var F=B.return;try{wZ0(B)}catch(z){p9(B,F,z)}}}catch(z){p9(B,B.return,z)}if(B===u){I4=null;break}var U=B.sibling;if(U!==null){U.return=B.return,I4=U;break}I4=B.return}}function yB(){return(O1&6)!==0?J2():hp!==-1?hp:hp=J2()}function jM(u){if((u.mode&1)===0)return 1;if((O1&2)!==0&&H7!==0)return H7&-H7;if(RA3.transition!==null)return mp===0&&(mp=nJu()),mp;if(u=k6,u!==0)return u;return u=window.event,u=u===void 0?16:uwu(u.type),u}function WD(u,B,E,A){if(50<HI)throw HI=0,HZ0=null,Error(A4(185));if(VI(u,E,A),(O1&2)===0||u!==$5)u===$5&&((O1&2)===0&&(Ld|=E),M5===4&&vM(u,H7)),r8(u,A),E===1&&O1===0&&(B.mode&1)===0&&(pX=J2()+500,Kd&&mM())}function r8(u,B){var E=u.callbackNode;OE3(u,B);var A=_p(u,u===$5?H7:0);if(A===0)E!==null&&YZu(E),u.callbackNode=null,u.callbackPriority=0;else if(B=A&-A,u.callbackPriority!==B){if(E!=null&&YZu(E),B===1)u.tag===0?YA3(GJu.bind(null,u)):Gwu(GJu.bind(null,u)),xA3(function(){(O1&6)===0&&mM()}),E=null;else{switch(pJu(A)){case 1:E=TZ0;break;case 4:E=gJu;break;case 16:E=gp;break;case 536870912:E=_Ju;break;default:E=gp}E=KKu(E,fKu.bind(null,u))}u.callbackPriority=B,u.callbackNode=E}}function fKu(u,B){if(hp=-1,mp=0,(O1&6)!==0)throw Error(A4(327));var E=u.callbackNode;if(rX()&&u.callbackNode!==E)return null;var A=_p(u,u===$5?H7:0);if(A===0)return null;if((A&30)!==0||(A&u.expiredLanes)!==0||B)B=fd(u,A);else{B=A;var C=O1;O1|=2;var D=bKu();if($5!==u||H7!==B)Bf=null,pX=J2()+500,_K(u,B);do try{dA3();break}catch(U){lKu(u,U)}while(1);yZ0(),Ud.current=D,O1=C,P2!==null?B=0:($5=null,H7=0,B=M5)}if(B!==0){if(B===2&&(C=gM0(u),C!==0&&(A=C,B=LZ0(u,C))),B===1)throw E=aI,_K(u,0),vM(u,A),r8(u,J2()),E;if(B===6)vM(u,A);else{if(C=u.current.alternate,(A&30)===0&&!nA3(C)&&(B=fd(u,A),B===2&&(D=gM0(u),D!==0&&(A=D,B=LZ0(u,D))),B===1))throw E=aI,_K(u,0),vM(u,A),r8(u,J2()),E;switch(u.finishedWork=C,u.finishedLanes=A,B){case 0:case 1:throw Error(A4(345));case 2:$K(u,a8,Bf);break;case 3:if(vM(u,A),(A&130023424)===A&&(B=CJ0+500-J2(),10<B)){if(_p(u,0)!==0)break;if(C=u.suspendedLanes,(C&A)!==A){yB(),u.pingedLanes|=u.suspendedLanes&C;break}u.timeoutHandle=BZ0($K.bind(null,u,a8,Bf),B);break}$K(u,a8,Bf);break;case 4:if(vM(u,A),(A&4194240)===A)break;B=u.eventTimes;for(C=-1;0<A;){var F=31-SD(A);D=1<<F,F=B[F],F>C&&(C=F),A&=~D}if(A=C,A=J2()-A,A=(120>A?120:480>A?480:1080>A?1080:1920>A?1920:3000>A?3000:4320>A?4320:1960*_A3(A/1960))-A,10<A){u.timeoutHandle=BZ0($K.bind(null,u,a8,Bf),A);break}$K(u,a8,Bf);break;case 5:$K(u,a8,Bf);break;default:throw Error(A4(329))}}}return r8(u,J2()),u.callbackNode===E?fKu.bind(null,u):null}function LZ0(u,B){var E=GI;return u.current.memoizedState.isDehydrated&&(_K(u,B).flags|=256),u=fd(u,B),u!==2&&(B=a8,a8=E,B!==null&&qZ0(B)),u}function qZ0(u){a8===null?a8=u:a8.push.apply(a8,u)}function nA3(u){for(var B=u;;){if(B.flags&16384){var E=B.updateQueue;if(E!==null&&(E=E.stores,E!==null))for(var A=0;A<E.length;A++){var C=E[A],D=C.getSnapshot;C=C.value;try{if(!YD(D(),C))return!1}catch(F){return!1}}}if(E=B.child,B.subtreeFlags&16384&&E!==null)E.return=B,B=E;else{if(B===u)break;for(;B.sibling===null;){if(B.return===null||B.return===u)return!0;B=B.return}B.sibling.return=B.return,B=B.sibling}}return!0}function vM(u,B){B&=~AJ0,B&=~Ld,u.suspendedLanes|=B,u.pingedLanes&=~B;for(u=u.expirationTimes;0<B;){var E=31-SD(B),A=1<<E;u[E]=-1,B&=~A}}function GJu(u){if((O1&6)!==0)throw Error(A4(327));rX();var B=_p(u,0);if((B&1)===0)return r8(u,J2()),null;var E=fd(u,B);if(u.tag!==0&&E===2){var A=gM0(u);A!==0&&(B=A,E=LZ0(u,A))}if(E===1)throw E=aI,_K(u,0),vM(u,B),r8(u,J2()),E;if(E===6)throw Error(A4(345));return u.finishedWork=u.current.alternate,u.finishedLanes=B,$K(u,a8,Bf),r8(u,J2()),null}function DJ0(u,B){var E=O1;O1|=1;try{return u(B)}finally{O1=E,O1===0&&(pX=J2()+500,Kd&&mM())}}function tK(u){WM!==null&&WM.tag===0&&(O1&6)===0&&rX();var B=O1;O1|=1;var E=gA.transition,A=k6;try{if(gA.transition=null,k6=1,u)return u()}finally{k6=A,gA.transition=E,O1=B,(O1&6)===0&&mM()}}function FJ0(){PE=NX.current,o6(NX)}function _K(u,B){u.finishedWork=null,u.finishedLanes=0;var E=u.timeoutHandle;if(E!==-1&&(u.timeoutHandle=-1,XA3(E)),P2!==null)for(E=P2.return;E!==null;){var A=E;switch(mZ0(A),A.tag){case 1:A=A.type.childContextTypes,A!==null&&A!==void 0&&op();break;case 3:_X(),o6(h8),o6(s7),dZ0();break;case 5:pZ0(A);break;case 4:_X();break;case 13:o6(v9);break;case 19:o6(v9);break;case 10:cZ0(A.type._context);break;case 22:case 23:FJ0()}E=E.return}if($5=u,P2=u=NM(u.current,null),H7=PE=B,M5=0,aI=null,AJ0=Ld=oK=0,a8=GI=null,cK!==null){for(B=0;B<cK.length;B++)if(E=cK[B],A=E.interleaved,A!==null){E.interleaved=null;var C=A.next,D=E.pending;if(D!==null){var F=D.next;D.next=C,A.next=F}E.pending=A}cK=null}return u}function lKu(u,B){do{var E=P2;try{if(yZ0(),ip.current=Fd,Dd){for(var A=S9.memoizedState;A!==null;){var C=A.queue;C!==null&&(C.pending=null),A=A.next}Dd=!1}if(sK=0,r5=b5=S9=null,KI=!1,jI=0,EJ0.current=null,E===null||E.return===null){M5=1,aI=B,P2=null;break}u:{var D=u,F=E.return,U=E,z=B;if(B=H7,U.flags|=32768,z!==null&&typeof z==="object"&&typeof z.then==="function"){var k=z,f=U,l=f.tag;if((f.mode&1)===0&&(l===0||l===11||l===15)){var b=f.alternate;b?(f.updateQueue=b.updateQueue,f.memoizedState=b.memoizedState,f.lanes=b.lanes):(f.updateQueue=null,f.memoizedState=null)}var M=FJu(F);if(M!==null){M.flags&=-257,UJu(M,F,U,D,B),M.mode&1&&DJu(D,k,B),B=M,z=k;var Z=B.updateQueue;if(Z===null){var J=new Set;J.add(z),B.updateQueue=J}else Z.add(z);break u}else{if((B&1)===0){DJu(D,k,B),UJ0();break u}z=Error(A4(426))}}else if(Z9&&U.mode&1){var w=FJu(F);if(w!==null){(w.flags&65536)===0&&(w.flags|=256),UJu(w,F,U,D,B),rZ0(nX(z,U));break u}}D=z=nX(z,U),M5!==4&&(M5=2),GI===null?GI=[D]:GI.push(D),D=F;do{switch(D.tag){case 3:D.flags|=65536,B&=-B,D.lanes|=B;var K=pwu(D,z,B);eZu(D,K);break u;case 1:U=z;var{type:Q,stateNode:G}=D;if((D.flags&128)===0&&(typeof Q.getDerivedStateFromError==="function"||G!==null&&typeof G.componentDidCatch==="function"&&(PM===null||!PM.has(G)))){D.flags|=65536,B&=-B,D.lanes|=B;var L=dwu(D,U,B);eZu(D,L);break u}}D=D.return}while(D!==null)}ZKu(E)}catch(H){B=H,P2===E&&E!==null&&(P2=E=E.return);continue}break}while(1)}function bKu(){var u=Ud.current;return Ud.current=Fd,u===null?Fd:u}function UJ0(){if(M5===0||M5===3||M5===2)M5=4;$5===null||(oK&268435455)===0&&(Ld&268435455)===0||vM($5,H7)}function fd(u,B){var E=O1;O1|=2;var A=bKu();if($5!==u||H7!==B)Bf=null,_K(u,B);do try{pA3();break}catch(C){lKu(u,C)}while(1);if(yZ0(),O1=E,Ud.current=A,P2!==null)throw Error(A4(261));return $5=null,H7=0,M5}function pA3(){for(;P2!==null;)MKu(P2)}function dA3(){for(;P2!==null&&!qE3();)MKu(P2)}function MKu(u){var B=wKu(u.alternate,u,PE);u.memoizedProps=u.pendingProps,B===null?ZKu(u):P2=B,EJ0.current=null}function ZKu(u){var B=u;do{var E=B.alternate;if(u=B.return,(B.flags&32768)===0){if(E=rA3(E,B,PE),E!==null){P2=E;return}}else{if(E=$A3(E,B),E!==null){E.flags&=32767,P2=E;return}if(u!==null)u.flags|=32768,u.subtreeFlags=0,u.deletions=null;else{M5=6,P2=null;return}}if(B=B.sibling,B!==null){P2=B;return}P2=B=u}while(B!==null);M5===0&&(M5=5)}function $K(u,B,E){var A=k6,C=gA.transition;try{gA.transition=null,k6=1,sA3(u,B,E,A)}finally{gA.transition=C,k6=A}return null}function sA3(u,B,E,A){do rX();while(WM!==null);if((O1&6)!==0)throw Error(A4(327));E=u.finishedWork;var C=u.finishedLanes;if(E===null)return null;if(u.finishedWork=null,u.finishedLanes=0,E===u.current)throw Error(A4(177));u.callbackNode=null,u.callbackPriority=0;var D=E.lanes|E.childLanes;if(IE3(u,D),u===$5&&(P2=$5=null,H7=0),(E.subtreeFlags&2064)===0&&(E.flags&2064)===0||Tp||(Tp=!0,KKu(gp,function(){return rX(),null})),D=(E.flags&15990)!==0,(E.subtreeFlags&15990)!==0||D){D=gA.transition,gA.transition=null;var F=k6;k6=1;var U=O1;O1|=4,EJ0.current=null,cA3(u,E),zKu(E,u),QA3(eM0),np=!!tM0,eM0=tM0=null,u.current=E,gA3(E,u,C),XE3(),O1=U,k6=F,gA.transition=D}else u.current=E;if(Tp&&(Tp=!1,WM=u,kd=C),D=u.pendingLanes,D===0&&(PM=null),SE3(E.stateNode,A),r8(u,J2()),B!==null)for(A=u.onRecoverableError,E=0;E<B.length;E++)C=B[E],A(C.value,{componentStack:C.stack,digest:C.digest});if(zd)throw zd=!1,u=GZ0,GZ0=null,u;return(kd&1)!==0&&u.tag!==0&&rX(),D=u.pendingLanes,(D&1)!==0?u===HZ0?HI++:(HI=0,HZ0=u):HI=0,mM(),null}function rX(){if(WM!==null){var u=pJu(kd),B=gA.transition,E=k6;try{if(gA.transition=null,k6=16>u?16:u,WM===null)var A=!1;else{if(u=WM,WM=null,kd=0,(O1&6)!==0)throw Error(A4(331));var C=O1;O1|=4;for(I4=u.current;I4!==null;){var D=I4,F=D.child;if((I4.flags&16)!==0){var U=D.deletions;if(U!==null){for(var z=0;z<U.length;z++){var k=U[z];for(I4=k;I4!==null;){var f=I4;switch(f.tag){case 0:case 11:case 15:QI(8,f,D)}var l=f.child;if(l!==null)l.return=f,I4=l;else for(;I4!==null;){f=I4;var{sibling:b,return:M}=f;if(DKu(f),f===k){I4=null;break}if(b!==null){b.return=M,I4=b;break}I4=M}}}var Z=D.alternate;if(Z!==null){var J=Z.child;if(J!==null){Z.child=null;do{var w=J.sibling;J.sibling=null,J=w}while(J!==null)}}I4=D}}if((D.subtreeFlags&2064)!==0&&F!==null)F.return=D,I4=F;else u:for(;I4!==null;){if(D=I4,(D.flags&2048)!==0)switch(D.tag){case 0:case 11:case 15:QI(9,D,D.return)}var K=D.sibling;if(K!==null){K.return=D.return,I4=K;break u}I4=D.return}}var Q=u.current;for(I4=Q;I4!==null;){F=I4;var G=F.child;if((F.subtreeFlags&2064)!==0&&G!==null)G.return=F,I4=G;else u:for(F=Q;I4!==null;){if(U=I4,(U.flags&2048)!==0)try{switch(U.tag){case 0:case 11:case 15:Hd(9,U)}}catch(H){p9(U,U.return,H)}if(U===F){I4=null;break u}var L=U.sibling;if(L!==null){L.return=U.return,I4=L;break u}I4=U.return}}if(O1=C,mM(),rU&&typeof rU.onPostCommitFiberRoot==="function")try{rU.onPostCommitFiberRoot(bd,u)}catch(H){}A=!0}return A}finally{k6=E,gA.transition=B}}return!1}function HJu(u,B,E){B=nX(E,B),B=pwu(u,B,1),u=IM(u,B,1),B=yB(),u!==null&&(VI(u,1,B),r8(u,B))}function p9(u,B,E){if(u.tag===3)HJu(u,u,E);else for(;B!==null;){if(B.tag===3){HJu(B,u,E);break}else if(B.tag===1){var A=B.stateNode;if(typeof B.type.getDerivedStateFromError==="function"||typeof A.componentDidCatch==="function"&&(PM===null||!PM.has(A))){u=nX(E,u),u=dwu(B,u,1),B=IM(B,u,1),u=yB(),B!==null&&(VI(B,1,u),r8(B,u));break}}B=B.return}}function oA3(u,B,E){var A=u.pingCache;A!==null&&A.delete(B),B=yB(),u.pingedLanes|=u.suspendedLanes&E,$5===u&&(H7&E)===E&&(M5===4||M5===3&&(H7&130023424)===H7&&500>J2()-CJ0?_K(u,0):AJ0|=E),r8(u,B)}function JKu(u,B){B===0&&((u.mode&1)===0?B=1:(B=Hp,Hp<<=1,(Hp&130023424)===0&&(Hp=4194304)));var E=yB();u=zf(u,B),u!==null&&(VI(u,B,E),r8(u,E))}function tA3(u){var B=u.memoizedState,E=0;B!==null&&(E=B.retryLane),JKu(u,E)}function eA3(u,B){var E=0;switch(u.tag){case 13:var{stateNode:A,memoizedState:C}=u;C!==null&&(E=C.retryLane);break;case 19:A=u.stateNode;break;default:throw Error(A4(314))}A!==null&&A.delete(B),JKu(u,E)}function KKu(u,B){return cJu(u,B)}function uC3(u,B,E,A){this.tag=u,this.key=E,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=B,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=A,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function cA(u,B,E,A){return new uC3(u,B,E,A)}function zJ0(u){return u=u.prototype,!(!u||!u.isReactComponent)}function BC3(u){if(typeof u==="function")return zJ0(u)?1:0;if(u!==void 0&&u!==null){if(u=u.$$typeof,u===WZ0)return 11;if(u===YZ0)return 14}return 2}function NM(u,B){var E=u.alternate;return E===null?(E=cA(u.tag,B,u.key,u.mode),E.elementType=u.elementType,E.type=u.type,E.stateNode=u.stateNode,E.alternate=u,u.alternate=E):(E.pendingProps=B,E.type=u.type,E.flags=0,E.subtreeFlags=0,E.deletions=null),E.flags=u.flags&14680064,E.childLanes=u.childLanes,E.lanes=u.lanes,E.child=u.child,E.memoizedProps=u.memoizedProps,E.memoizedState=u.memoizedState,E.updateQueue=u.updateQueue,B=u.dependencies,E.dependencies=B===null?null:{lanes:B.lanes,firstContext:B.firstContext},E.sibling=u.sibling,E.index=u.index,E.ref=u.ref,E}function rp(u,B,E,A,C,D){var F=2;if(A=u,typeof u==="function")zJ0(u)&&(F=1);else if(typeof u==="string")F=5;else u:switch(u){case vX:return nK(E.children,C,D,B);case SZ0:F=8,C|=8;break;case TM0:return u=cA(12,E,B,C|2),u.elementType=TM0,u.lanes=D,u;case OM0:return u=cA(13,E,B,C),u.elementType=OM0,u.lanes=D,u;case IM0:return u=cA(19,E,B,C),u.elementType=IM0,u.lanes=D,u;case WJu:return qd(E,C,D,B);default:if(typeof u==="object"&&u!==null)switch(u.$$typeof){case vJu:F=10;break u;case SJu:F=9;break u;case WZ0:F=11;break u;case YZ0:F=14;break u;case qM:F=16,A=null;break u}throw Error(A4(130,u==null?u:typeof u,""))}return B=cA(F,E,B,C),B.elementType=u,B.type=A,B.lanes=D,B}function nK(u,B,E,A){return u=cA(7,u,A,B),u.lanes=E,u}function qd(u,B,E,A){return u=cA(22,u,A,B),u.elementType=WJu,u.lanes=E,u.stateNode={isHidden:!1},u}function WM0(u,B,E){return u=cA(6,u,null,B),u.lanes=E,u}function YM0(u,B,E){return B=cA(4,u.children!==null?u.children:[],u.key,B),B.lanes=E,B.stateNode={containerInfo:u.containerInfo,pendingChildren:null,implementation:u.implementation},B}function EC3(u,B,E,A,C){this.tag=B,this.containerInfo=u,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=bM0(0),this.expirationTimes=bM0(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=bM0(0),this.identifierPrefix=A,this.onRecoverableError=C,this.mutableSourceEagerHydrationData=null}function kJ0(u,B,E,A,C,D,F,U,z){return u=new EC3(u,B,E,U,z),B===1?(B=1,D===!0&&(B|=8)):B=0,D=cA(3,null,null,B),u.current=D,D.stateNode=u,D.memoizedState={element:A,isDehydrated:E,cache:null,transitions:null,pendingSuspenseBoundaries:null},_Z0(D),u}function AC3(u,B,E){var A=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:xX,key:A==null?null:""+A,children:u,containerInfo:B,implementation:E}}function QKu(u){if(!u)return aM;u=u._reactInternals;u:{if(uQ(u)!==u||u.tag!==1)throw Error(A4(170));var B=u;do{switch(B.tag){case 3:B=B.stateNode.context;break u;case 1:if(m8(B.type)){B=B.stateNode.__reactInternalMemoizedMergedChildContext;break u}}B=B.return}while(B!==null);throw Error(A4(171))}if(u.tag===1){var E=u.type;if(m8(E))return Qwu(u,E,B)}return B}function GKu(u,B,E,A,C,D,F,U,z){return u=kJ0(E,A,!0,u,C,D,F,U,z),u.context=QKu(null),E=u.current,A=yB(),C=jM(E),D=Df(A,C),D.callback=B!==void 0&&B!==null?B:null,IM(E,D,C),u.current.lanes=C,VI(u,C,A),r8(u,A),u}function Xd(u,B,E,A){var C=B.current,D=yB(),F=jM(C);return E=QKu(E),B.context===null?B.context=E:B.pendingContext=E,B=Df(D,F),B.payload={element:u},A=A===void 0?null:A,A!==null&&(B.callback=A),u=IM(C,B,F),u!==null&&(WD(u,C,F,D),Np(u,C,F)),F}function ld(u){if(u=u.current,!u.child)return null;switch(u.child.tag){case 5:return u.child.stateNode;default:return u.child.stateNode}}function LJu(u,B){if(u=u.memoizedState,u!==null&&u.dehydrated!==null){var E=u.retryLane;u.retryLane=E!==0&&E<B?E:B}}function fJ0(u,B){LJu(u,B),(u=u.alternate)&&LJu(u,B)}function CC3(){return null}function lJ0(u){this._internalRoot=u}function xd(u){this._internalRoot=u}function bJ0(u){return!(!u||u.nodeType!==1&&u.nodeType!==9&&u.nodeType!==11)}function vd(u){return!(!u||u.nodeType!==1&&u.nodeType!==9&&u.nodeType!==11&&(u.nodeType!==8||u.nodeValue!==" react-mount-point-unstable "))}function qJu(){}function DC3(u,B,E,A,C){if(C){if(typeof A==="function"){var D=A;A=function(){var k=ld(F);D.call(k)}}var F=GKu(B,A,u,0,null,!1,!1,"",qJu);return u._reactRootContainer=F,u[Uf]=F.current,RI(u.nodeType===8?u.parentNode:u),tK(),F}for(;C=u.lastChild;)u.removeChild(C);if(typeof A==="function"){var U=A;A=function(){var k=ld(z);U.call(k)}}var z=kJ0(u,0,!1,null,null,!1,!1,"",qJu);return u._reactRootContainer=z,u[Uf]=z.current,RI(u.nodeType===8?u.parentNode:u),tK(function(){Xd(B,z,E,A)}),z}function Sd(u,B,E,A,C){var D=E._reactRootContainer;if(D){var F=D;if(typeof C==="function"){var U=C;C=function(){var z=ld(F);U.call(z)}}Xd(B,F,u,C)}else F=DC3(E,B,u,C,A);return ld(F)}var XJu,J9,xJu,LI,Ff,RM0,zE3,GZu,HZu,L7,XZ0,ff,wp,xX,vX,SZ0,TM0,vJu,SJu,WZ0,OM0,IM0,YZ0,qM,WJu,LZu,W9,zM0,kM0=!1,DI,Qp,PJu,bI,JE3,wE3,rM0=null,$M0=null,aX=null,VX=null,lM0=!1,yM0=!1,mK,MI=!1,yp=null,cp=!1,cM0=null,QE3,cJu,YZu,qE3,XE3,J2,xE3,TZ0,gJu,gp,vE3,_Ju,bd=null,rU=null,SD,WE3,YE3,Gp=64,Hp=4194304,k6=0,dJu,IZ0,sJu,oJu,tJu,_M0=!1,Lp,YM=null,RM=null,TM=null,xI,vI,xM,PE3,hX,np=!0,pp=null,SM=null,jZ0=null,Ip=null,dX,NZ0,hI,VE3,MM0,ZM0,uI,Md,IZu,hE3,mE3,rE3,JM0,$E3,yE3,cE3,gE3,_E3,PZu,nE3,pE3,dE3,oE3,tE3,eE3,jZu,uA3,BA3,EA3,AA3,CA3,DA3,FA3,aZ0,ZI=null,UA3,Ewu,NZu,iZu=!1,SX=!1,fA3,JI=null,WI=null,Fwu=!1,UI,zI,jp,YD,GA3,WX=null,pM0=null,wI=null,dM0=!1,YX,wM0,fwu,lwu,bwu,Mwu,Zwu,Jwu,$Zu,fI,sM0,oM0,kI,lI,HA3,xp,LA3,qA3,tM0=null,eM0=null,BZ0,XA3,_Zu,xA3,sX,mU,OI,Uf,EZ0,SA3,WA3,AZ0,TX=-1,aM,s7,h8,pK,Ef=null,Kd=!1,HM0=!1,OX,IX=0,ep=null,ud=0,$A,yA=0,dK=null,Af=1,Cf="",NE=null,jE=null,Z9=!1,vD=null,RA3,gX,xwu,Bd,Ed=null,PX=null,$Z0=null,cK=null,XM=!1,rI,$U,II,PI,v9,LM0,ip,qM0,sK=0,S9=null,b5=null,r5=null,Dd=!1,KI=!1,jI=0,TA3=0,Fd,jA3,NA3,iA3,Gd,aA3,VA3,V8=!1,bZ0,EKu,ZZ0,AKu,CKu,Rp=!1,d7=!1,yA3,I4=null,MJu=!1,G7=null,xD=!1,_A3,Ud,EJ0,gA,O1=0,$5=null,P2=null,H7=0,PE=0,NX,M5=0,aI=null,oK=0,Ld=0,AJ0=0,GI=null,a8=null,CJ0=0,pX=1/0,Bf=null,zd=!1,GZ0=null,PM=null,Tp=!1,WM=null,kd=0,HI=0,HZ0=null,hp=-1,mp=0,wKu,HKu,FC3,AI,UC3,XX,LKu,qKu=function(u,B){var E=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!bJ0(B))throw Error(A4(200));return AC3(u,B,null,E)},XKu=function(u,B){if(!bJ0(u))throw Error(A4(299));var E=!1,A="",C=HKu;return B!==null&&B!==void 0&&(B.unstable_strictMode===!0&&(E=!0),B.identifierPrefix!==void 0&&(A=B.identifierPrefix),B.onRecoverableError!==void 0&&(C=B.onRecoverableError)),B=kJ0(u,1,!1,null,null,E,!1,A,C),u[Uf]=B.current,RI(u.nodeType===8?u.parentNode:u),new lJ0(B)},xKu=function(u){if(u==null)return null;if(u.nodeType===1)return u;var B=u._reactInternals;if(B===void 0){if(typeof u.render==="function")throw Error(A4(188));throw u=Object.keys(u).join(","),Error(A4(268,u))}return u=$Ju(B),u=u===null?null:u.stateNode,u},vKu=function(u){return tK(u)},SKu=function(u,B,E){if(!vd(B))throw Error(A4(200));return Sd(null,u,B,!0,E)},WKu=function(u,B,E){if(!bJ0(u))throw Error(A4(405));var A=E!=null&&E.hydratedSources||null,C=!1,D="",F=HKu;if(E!==null&&E!==void 0&&(E.unstable_strictMode===!0&&(C=!0),E.identifierPrefix!==void 0&&(D=E.identifierPrefix),E.onRecoverableError!==void 0&&(F=E.onRecoverableError)),B=GKu(B,null,u,1,E!=null?E:null,C,!1,D,F),u[Uf]=B.current,RI(u),A)for(u=0;u<A.length;u++)E=A[u],C=E._getVersion,C=C(E._source),B.mutableSourceEagerHydrationData==null?B.mutableSourceEagerHydrationData=[E,C]:B.mutableSourceEagerHydrationData.push(E,C);return new xd(B)},YKu=function(u,B,E){if(!vd(B))throw Error(A4(200));return Sd(null,u,B,!1,E)},RKu=function(u){if(!vd(u))throw Error(A4(40));return u._reactRootContainer?(tK(function(){Sd(null,null,u,!1,function(){u._reactRootContainer=null,u[Uf]=null})}),!0):!1},TKu,OKu=function(u,B,E,A){if(!vd(E))throw Error(A4(200));if(u==null||u._reactInternals===void 0)throw Error(A4(38));return Sd(u,B,E,!1,A)},IKu="18.3.1-next-f1338f8080-20240426";var PKu=g(()=>{XJu=Eu(Gu(),1),J9=Eu(QZu(),1);xJu=new Set,LI={};Ff=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),RM0=Object.prototype.hasOwnProperty,zE3=/^[: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]*$/,GZu={},HZu={};L7={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(u){L7[u]=new cB(u,0,!1,u,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(u){var B=u[0];L7[B]=new cB(B,1,!1,u[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(u){L7[u]=new cB(u,2,!1,u.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(u){L7[u]=new cB(u,2,!1,u,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(u){L7[u]=new cB(u,3,!1,u.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(u){L7[u]=new cB(u,3,!0,u,null,!1,!1)});["capture","download"].forEach(function(u){L7[u]=new cB(u,4,!1,u,null,!1,!1)});["cols","rows","size","span"].forEach(function(u){L7[u]=new cB(u,6,!1,u,null,!1,!1)});["rowSpan","start"].forEach(function(u){L7[u]=new cB(u,5,!1,u.toLowerCase(),null,!1,!1)});XZ0=/[\-:]([a-z])/g;"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(u){var B=u.replace(XZ0,xZ0);L7[B]=new cB(B,1,!1,u,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(u){var B=u.replace(XZ0,xZ0);L7[B]=new cB(B,1,!1,u,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(u){var B=u.replace(XZ0,xZ0);L7[B]=new cB(B,1,!1,u,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(u){L7[u]=new cB(u,1,!1,u.toLowerCase(),null,!1,!1)});L7.xlinkHref=new cB("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(u){L7[u]=new cB(u,1,!1,u.toLowerCase(),null,!0,!0)});ff=XJu.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,wp=Symbol.for("react.element"),xX=Symbol.for("react.portal"),vX=Symbol.for("react.fragment"),SZ0=Symbol.for("react.strict_mode"),TM0=Symbol.for("react.profiler"),vJu=Symbol.for("react.provider"),SJu=Symbol.for("react.context"),WZ0=Symbol.for("react.forward_ref"),OM0=Symbol.for("react.suspense"),IM0=Symbol.for("react.suspense_list"),YZ0=Symbol.for("react.memo"),qM=Symbol.for("react.lazy"),WJu=Symbol.for("react.offscreen"),LZu=Symbol.iterator;W9=Object.assign;DI=Array.isArray;PJu=function(u){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(B,E,A,C){MSApp.execUnsafeLocalFunction(function(){return u(B,E,A,C)})}:u}(function(u,B){if(u.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in u)u.innerHTML=B;else{Qp=Qp||document.createElement("div"),Qp.innerHTML="<svg>"+B.valueOf().toString()+"</svg>";for(B=Qp.firstChild;u.firstChild;)u.removeChild(u.firstChild);for(;B.firstChild;)u.appendChild(B.firstChild)}});bI={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},JE3=["Webkit","ms","Moz","O"];Object.keys(bI).forEach(function(u){JE3.forEach(function(B){B=B+u.charAt(0).toUpperCase()+u.substring(1),bI[B]=bI[u]})});wE3=W9({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});if(Ff)try{mK={},Object.defineProperty(mK,"passive",{get:function(){yM0=!0}}),window.addEventListener("test",mK,mK),window.removeEventListener("test",mK,mK)}catch(u){yM0=!1}QE3={onError:function(u){MI=!0,yp=u}};cJu=J9.unstable_scheduleCallback,YZu=J9.unstable_cancelCallback,qE3=J9.unstable_shouldYield,XE3=J9.unstable_requestPaint,J2=J9.unstable_now,xE3=J9.unstable_getCurrentPriorityLevel,TZ0=J9.unstable_ImmediatePriority,gJu=J9.unstable_UserBlockingPriority,gp=J9.unstable_NormalPriority,vE3=J9.unstable_LowPriority,_Ju=J9.unstable_IdlePriority;SD=Math.clz32?Math.clz32:RE3,WE3=Math.log,YE3=Math.LN2;Lp=[],xI=new Map,vI=new Map,xM=[],PE3="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(" ");hX=ff.ReactCurrentBatchConfig;dX={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(u){return u.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},NZ0=iE(dX),hI=W9({},dX,{view:0,detail:0}),VE3=iE(hI),Md=W9({},hI,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:iZ0,button:0,buttons:0,relatedTarget:function(u){return u.relatedTarget===void 0?u.fromElement===u.srcElement?u.toElement:u.fromElement:u.relatedTarget},movementX:function(u){if("movementX"in u)return u.movementX;return u!==uI&&(uI&&u.type==="mousemove"?(MM0=u.screenX-uI.screenX,ZM0=u.screenY-uI.screenY):ZM0=MM0=0,uI=u),MM0},movementY:function(u){return"movementY"in u?u.movementY:ZM0}}),IZu=iE(Md),hE3=W9({},Md,{dataTransfer:0}),mE3=iE(hE3),rE3=W9({},hI,{relatedTarget:0}),JM0=iE(rE3),$E3=W9({},dX,{animationName:0,elapsedTime:0,pseudoElement:0}),yE3=iE($E3),cE3=W9({},dX,{clipboardData:function(u){return"clipboardData"in u?u.clipboardData:window.clipboardData}}),gE3=iE(cE3),_E3=W9({},dX,{data:0}),PZu=iE(_E3),nE3={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},pE3={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"},dE3={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};oE3=W9({},hI,{key:function(u){if(u.key){var B=nE3[u.key]||u.key;if(B!=="Unidentified")return B}return u.type==="keypress"?(u=Pp(u),u===13?"Enter":String.fromCharCode(u)):u.type==="keydown"||u.type==="keyup"?pE3[u.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:iZ0,charCode:function(u){return u.type==="keypress"?Pp(u):0},keyCode:function(u){return u.type==="keydown"||u.type==="keyup"?u.keyCode:0},which:function(u){return u.type==="keypress"?Pp(u):u.type==="keydown"||u.type==="keyup"?u.keyCode:0}}),tE3=iE(oE3),eE3=W9({},Md,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),jZu=iE(eE3),uA3=W9({},hI,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:iZ0}),BA3=iE(uA3),EA3=W9({},dX,{propertyName:0,elapsedTime:0,pseudoElement:0}),AA3=iE(EA3),CA3=W9({},Md,{deltaX:function(u){return"deltaX"in u?u.deltaX:("wheelDeltaX"in u)?-u.wheelDeltaX:0},deltaY:function(u){return"deltaY"in u?u.deltaY:("wheelDeltaY"in u)?-u.wheelDeltaY:("wheelDelta"in u)?-u.wheelDelta:0},deltaZ:0,deltaMode:0}),DA3=iE(CA3),FA3=[9,13,27,32],aZ0=Ff&&"CompositionEvent"in window;Ff&&"documentMode"in document&&(ZI=document.documentMode);UA3=Ff&&"TextEvent"in window&&!ZI,Ewu=Ff&&(!aZ0||ZI&&8<ZI&&11>=ZI),NZu=String.fromCharCode(32);fA3={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};if(Ff){if(Ff){if(zI="oninput"in document,!zI)jp=document.createElement("div"),jp.setAttribute("oninput","return;"),zI=typeof jp.oninput==="function";UI=zI}else UI=!1;Fwu=UI&&(!document.documentMode||9<document.documentMode)}YD=typeof Object.is==="function"?Object.is:KA3;GA3=Ff&&"documentMode"in document&&11>=document.documentMode;YX={animationend:Xp("Animation","AnimationEnd"),animationiteration:Xp("Animation","AnimationIteration"),animationstart:Xp("Animation","AnimationStart"),transitionend:Xp("Transition","TransitionEnd")},wM0={},fwu={};Ff&&(fwu=document.createElement("div").style,("AnimationEvent"in window)||(delete YX.animationend.animation,delete YX.animationiteration.animation,delete YX.animationstart.animation),("TransitionEvent"in window)||delete YX.transitionend.transition);lwu=Jd("animationend"),bwu=Jd("animationiteration"),Mwu=Jd("animationstart"),Zwu=Jd("transitionend"),Jwu=new Map,$Zu="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(" ");for(kI=0;kI<$Zu.length;kI++)fI=$Zu[kI],sM0=fI.toLowerCase(),oM0=fI[0].toUpperCase()+fI.slice(1),VM(sM0,"on"+oM0);VM(lwu,"onAnimationEnd");VM(bwu,"onAnimationIteration");VM(Mwu,"onAnimationStart");VM("dblclick","onDoubleClick");VM("focusin","onFocus");VM("focusout","onBlur");VM(Zwu,"onTransitionEnd");$X("onMouseEnter",["mouseout","mouseover"]);$X("onMouseLeave",["mouseout","mouseover"]);$X("onPointerEnter",["pointerout","pointerover"]);$X("onPointerLeave",["pointerout","pointerover"]);eK("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));eK("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));eK("onBeforeInput",["compositionend","keypress","textInput","paste"]);eK("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));eK("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));eK("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));lI="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(" "),HA3=new Set("cancel close invalid load scroll toggle".split(" ").concat(lI));xp="_reactListening"+Math.random().toString(36).slice(2);LA3=/\r\n?/g,qA3=/\u0000|\uFFFD/g;BZ0=typeof setTimeout==="function"?setTimeout:void 0,XA3=typeof clearTimeout==="function"?clearTimeout:void 0,_Zu=typeof Promise==="function"?Promise:void 0,xA3=typeof queueMicrotask==="function"?queueMicrotask:typeof _Zu<"u"?function(u){return _Zu.resolve(null).then(u).catch(vA3)}:BZ0;sX=Math.random().toString(36).slice(2),mU="__reactFiber$"+sX,OI="__reactProps$"+sX,Uf="__reactContainer$"+sX,EZ0="__reactEvents$"+sX,SA3="__reactListeners$"+sX,WA3="__reactHandles$"+sX;AZ0=[];aM={},s7=hM(aM),h8=hM(!1),pK=aM;OX=[],$A=[];RA3=ff.ReactCurrentBatchConfig;gX=Xwu(!0),xwu=Xwu(!1),Bd=hM(null);rI={},$U=hM(rI),II=hM(rI),PI=hM(rI);v9=hM(0);LM0=[];ip=ff.ReactCurrentDispatcher,qM0=ff.ReactCurrentBatchConfig;Fd={readContext:_A,useCallback:n7,useContext:n7,useEffect:n7,useImperativeHandle:n7,useInsertionEffect:n7,useLayoutEffect:n7,useMemo:n7,useReducer:n7,useRef:n7,useState:n7,useDebugValue:n7,useDeferredValue:n7,useTransition:n7,useMutableSource:n7,useSyncExternalStore:n7,useId:n7,unstable_isNewReconciler:!1},jA3={readContext:_A,useCallback:function(u,B){return hU().memoizedState=[u,B===void 0?null:B],u},useContext:_A,useEffect:EJu,useImperativeHandle:function(u,B,E){return E=E!==null&&E!==void 0?E.concat([u]):null,ap(4194308,4,Vwu.bind(null,B,u),E)},useLayoutEffect:function(u,B){return ap(4194308,4,u,B)},useInsertionEffect:function(u,B){return ap(4,2,u,B)},useMemo:function(u,B){var E=hU();return B=B===void 0?null:B,u=u(),E.memoizedState=[u,B],u},useReducer:function(u,B,E){var A=hU();return B=E!==void 0?E(B):B,A.memoizedState=A.baseState=B,u={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:u,lastRenderedState:B},A.queue=u,u=u.dispatch=IA3.bind(null,S9,u),[A.memoizedState,u]},useRef:function(u){var B=hU();return u={current:u},B.memoizedState=u},useState:BJu,useDebugValue:uJ0,useDeferredValue:function(u){return hU().memoizedState=u},useTransition:function(){var u=BJu(!1),B=u[0];return u=OA3.bind(null,u[1]),hU().memoizedState=u,[B,u]},useMutableSource:function(){},useSyncExternalStore:function(u,B,E){var A=S9,C=hU();if(Z9){if(E===void 0)throw Error(A4(407));E=E()}else{if(E=B(),$5===null)throw Error(A4(349));(sK&30)!==0||Twu(A,B,E)}C.memoizedState=E;var D={value:E,getSnapshot:B};return C.queue=D,EJu(Iwu.bind(null,A,D,u),[u]),A.flags|=2048,iI(9,Owu.bind(null,A,D,E,B),void 0,null),E},useId:function(){var u=hU(),B=$5.identifierPrefix;if(Z9){var E=Cf,A=Af;E=(A&~(1<<32-SD(A)-1)).toString(32)+E,B=":"+B+"R"+E,E=jI++,0<E&&(B+="H"+E.toString(32)),B+=":"}else E=TA3++,B=":"+B+"r"+E.toString(32)+":";return u.memoizedState=B},unstable_isNewReconciler:!1},NA3={readContext:_A,useCallback:mwu,useContext:_A,useEffect:eZ0,useImperativeHandle:hwu,useInsertionEffect:iwu,useLayoutEffect:awu,useMemo:rwu,useReducer:XM0,useRef:Nwu,useState:function(){return XM0(NI)},useDebugValue:uJ0,useDeferredValue:function(u){var B=nA();return $wu(B,b5.memoizedState,u)},useTransition:function(){var u=XM0(NI)[0],B=nA().memoizedState;return[u,B]},useMutableSource:Ywu,useSyncExternalStore:Rwu,useId:ywu,unstable_isNewReconciler:!1},iA3={readContext:_A,useCallback:mwu,useContext:_A,useEffect:eZ0,useImperativeHandle:hwu,useInsertionEffect:iwu,useLayoutEffect:awu,useMemo:rwu,useReducer:xM0,useRef:Nwu,useState:function(){return xM0(NI)},useDebugValue:uJ0,useDeferredValue:function(u){var B=nA();return b5===null?B.memoizedState=u:$wu(B,b5.memoizedState,u)},useTransition:function(){var u=xM0(NI)[0],B=nA().memoizedState;return[u,B]},useMutableSource:Ywu,useSyncExternalStore:Rwu,useId:ywu,unstable_isNewReconciler:!1};Gd={isMounted:function(u){return(u=u._reactInternals)?uQ(u)===u:!1},enqueueSetState:function(u,B,E){u=u._reactInternals;var A=yB(),C=jM(u),D=Df(A,C);D.payload=B,E!==void 0&&E!==null&&(D.callback=E),B=IM(u,D,C),B!==null&&(WD(B,u,C,A),Np(B,u,C))},enqueueReplaceState:function(u,B,E){u=u._reactInternals;var A=yB(),C=jM(u),D=Df(A,C);D.tag=1,D.payload=B,E!==void 0&&E!==null&&(D.callback=E),B=IM(u,D,C),B!==null&&(WD(B,u,C,A),Np(B,u,C))},enqueueForceUpdate:function(u,B){u=u._reactInternals;var E=yB(),A=jM(u),C=Df(E,A);C.tag=2,B!==void 0&&B!==null&&(C.callback=B),B=IM(u,C,A),B!==null&&(WD(B,u,A,E),Np(B,u,A))}};aA3=typeof WeakMap==="function"?WeakMap:Map;VA3=ff.ReactCurrentOwner;bZ0={dehydrated:null,treeContext:null,retryLane:0};EKu=function(u,B){for(var E=B.child;E!==null;){if(E.tag===5||E.tag===6)u.appendChild(E.stateNode);else if(E.tag!==4&&E.child!==null){E.child.return=E,E=E.child;continue}if(E===B)break;for(;E.sibling===null;){if(E.return===null||E.return===B)return;E=E.return}E.sibling.return=E.return,E=E.sibling}};ZZ0=function(){};AKu=function(u,B,E,A){var C=u.memoizedProps;if(C!==A){u=B.stateNode,gK($U.current);var D=null;switch(E){case"input":C=jM0(u,C),A=jM0(u,A),D=[];break;case"select":C=W9({},C,{value:void 0}),A=W9({},A,{value:void 0}),D=[];break;case"textarea":C=aM0(u,C),A=aM0(u,A),D=[];break;default:typeof C.onClick!=="function"&&typeof A.onClick==="function"&&(u.onclick=sp)}hM0(E,A);var F;E=null;for(k in C)if(!A.hasOwnProperty(k)&&C.hasOwnProperty(k)&&C[k]!=null)if(k==="style"){var U=C[k];for(F in U)U.hasOwnProperty(F)&&(E||(E={}),E[F]="")}else k!=="dangerouslySetInnerHTML"&&k!=="children"&&k!=="suppressContentEditableWarning"&&k!=="suppressHydrationWarning"&&k!=="autoFocus"&&(LI.hasOwnProperty(k)?D||(D=[]):(D=D||[]).push(k,null));for(k in A){var z=A[k];if(U=C!=null?C[k]:void 0,A.hasOwnProperty(k)&&z!==U&&(z!=null||U!=null))if(k==="style")if(U){for(F in U)!U.hasOwnProperty(F)||z&&z.hasOwnProperty(F)||(E||(E={}),E[F]="");for(F in z)z.hasOwnProperty(F)&&U[F]!==z[F]&&(E||(E={}),E[F]=z[F])}else E||(D||(D=[]),D.push(k,E)),E=z;else k==="dangerouslySetInnerHTML"?(z=z?z.__html:void 0,U=U?U.__html:void 0,z!=null&&U!==z&&(D=D||[]).push(k,z)):k==="children"?typeof z!=="string"&&typeof z!=="number"||(D=D||[]).push(k,""+z):k!=="suppressContentEditableWarning"&&k!=="suppressHydrationWarning"&&(LI.hasOwnProperty(k)?(z!=null&&k==="onScroll"&&s6("scroll",u),D||U===z||(D=[])):(D=D||[]).push(k,z))}E&&(D=D||[]).push("style",E);var k=D;if(B.updateQueue=k)B.flags|=4}};CKu=function(u,B,E,A){E!==A&&(B.flags|=4)};yA3=typeof WeakSet==="function"?WeakSet:Set;_A3=Math.ceil,Ud=ff.ReactCurrentDispatcher,EJ0=ff.ReactCurrentOwner,gA=ff.ReactCurrentBatchConfig,NX=hM(0);wKu=function(u,B,E){if(u!==null)if(u.memoizedProps!==B.pendingProps||h8.current)V8=!0;else{if((u.lanes&E)===0&&(B.flags&128)===0)return V8=!1,mA3(u,B,E);V8=(u.flags&131072)!==0?!0:!1}else V8=!1,Z9&&(B.flags&1048576)!==0&&Hwu(B,ud,B.index);switch(B.lanes=0,B.tag){case 2:var A=B.type;Vp(u,B),u=B.pendingProps;var C=yX(B,s7.current);mX(B,E),C=oZ0(null,B,A,u,C,E);var D=tZ0();return B.flags|=1,typeof C==="object"&&C!==null&&typeof C.render==="function"&&C.$$typeof===void 0?(B.tag=1,B.memoizedState=null,B.updateQueue=null,m8(A)?(D=!0,tp(B)):D=!1,B.memoizedState=C.state!==null&&C.state!==void 0?C.state:null,_Z0(B),C.updater=Gd,B.stateNode=C,C._reactInternals=B,zZ0(B,A,u,E),B=lZ0(null,B,A,!0,D,E)):(B.tag=0,Z9&&D&&hZ0(B),$B(null,B,C,E),B=B.child),B;case 16:A=B.elementType;u:{switch(Vp(u,B),u=B.pendingProps,C=A._init,A=C(A._payload),B.type=A,C=B.tag=BC3(A),u=XD(A,u),C){case 0:B=fZ0(null,B,A,u,E);break u;case 1:B=fJu(null,B,A,u,E);break u;case 11:B=zJu(null,B,A,u,E);break u;case 14:B=kJu(null,B,A,XD(A.type,u),E);break u}throw Error(A4(306,A,""))}return B;case 0:return A=B.type,C=B.pendingProps,C=B.elementType===A?C:XD(A,C),fZ0(u,B,A,C,E);case 1:return A=B.type,C=B.pendingProps,C=B.elementType===A?C:XD(A,C),fJu(u,B,A,C,E);case 3:u:{if(ewu(B),u===null)throw Error(A4(387));A=B.pendingProps,D=B.memoizedState,C=D.element,Swu(u,B),Ad(B,A,null,E);var F=B.memoizedState;if(A=F.element,D.isDehydrated)if(D={element:A,isDehydrated:!1,cache:F.cache,pendingSuspenseBoundaries:F.pendingSuspenseBoundaries,transitions:F.transitions},B.updateQueue.baseState=D,B.memoizedState=D,B.flags&256){C=nX(Error(A4(423)),B),B=lJu(u,B,A,E,C);break u}else if(A!==C){C=nX(Error(A4(424)),B),B=lJu(u,B,A,E,C);break u}else for(jE=OM(B.stateNode.containerInfo.firstChild),NE=B,Z9=!0,vD=null,E=xwu(B,null,A,E),B.child=E;E;)E.flags=E.flags&-3|4096,E=E.sibling;else{if(cX(),A===C){B=kf(u,B,E);break u}$B(u,B,A,E)}B=B.child}return B;case 5:return Wwu(B),u===null&&DZ0(B),A=B.type,C=B.pendingProps,D=u!==null?u.memoizedProps:null,F=C.children,uZ0(A,C)?F=null:D!==null&&uZ0(A,D)&&(B.flags|=32),twu(u,B),$B(u,B,F,E),B.child;case 6:return u===null&&DZ0(B),null;case 13:return uKu(u,B,E);case 4:return nZ0(B,B.stateNode.containerInfo),A=B.pendingProps,u===null?B.child=gX(B,null,A,E):$B(u,B,A,E),B.child;case 11:return A=B.type,C=B.pendingProps,C=B.elementType===A?C:XD(A,C),zJu(u,B,A,C,E);case 7:return $B(u,B,B.pendingProps,E),B.child;case 8:return $B(u,B,B.pendingProps.children,E),B.child;case 12:return $B(u,B,B.pendingProps.children,E),B.child;case 10:u:{if(A=B.type._context,C=B.pendingProps,D=B.memoizedProps,F=C.value,N6(Bd,A._currentValue),A._currentValue=F,D!==null)if(YD(D.value,F)){if(D.children===C.children&&!h8.current){B=kf(u,B,E);break u}}else for(D=B.child,D!==null&&(D.return=B);D!==null;){var U=D.dependencies;if(U!==null){F=D.child;for(var z=U.firstContext;z!==null;){if(z.context===A){if(D.tag===1){z=Df(-1,E&-E),z.tag=2;var k=D.updateQueue;if(k!==null){k=k.shared;var f=k.pending;f===null?z.next=z:(z.next=f.next,f.next=z),k.pending=z}}D.lanes|=E,z=D.alternate,z!==null&&(z.lanes|=E),FZ0(D.return,E,B),U.lanes|=E;break}z=z.next}}else if(D.tag===10)F=D.type===B.type?null:D.child;else if(D.tag===18){if(F=D.return,F===null)throw Error(A4(341));F.lanes|=E,U=F.alternate,U!==null&&(U.lanes|=E),FZ0(F,E,B),F=D.sibling}else F=D.child;if(F!==null)F.return=D;else for(F=D;F!==null;){if(F===B){F=null;break}if(D=F.sibling,D!==null){D.return=F.return,F=D;break}F=F.return}D=F}$B(u,B,C.children,E),B=B.child}return B;case 9:return C=B.type,A=B.pendingProps.children,mX(B,E),C=_A(C),A=A(C),B.flags|=1,$B(u,B,A,E),B.child;case 14:return A=B.type,C=XD(A,B.pendingProps),C=XD(A.type,C),kJu(u,B,A,C,E);case 15:return swu(u,B,B.type,B.pendingProps,E);case 17:return A=B.type,C=B.pendingProps,C=B.elementType===A?C:XD(A,C),Vp(u,B),B.tag=1,m8(A)?(u=!0,tp(B)):u=!1,mX(B,E),nwu(B,A,C),zZ0(B,A,C,E),lZ0(null,B,A,!0,u,E);case 19:return BKu(u,B,E);case 22:return owu(u,B,E)}throw Error(A4(156,B.tag))};HKu=typeof reportError==="function"?reportError:function(u){console.error(u)};xd.prototype.render=lJ0.prototype.render=function(u){var B=this._internalRoot;if(B===null)throw Error(A4(409));Xd(u,B,null,null)};xd.prototype.unmount=lJ0.prototype.unmount=function(){var u=this._internalRoot;if(u!==null){this._internalRoot=null;var B=u.containerInfo;tK(function(){Xd(null,u,null,null)}),B[Uf]=null}};xd.prototype.unstable_scheduleHydration=function(u){if(u){var B=oJu();u={blockedOn:null,target:u,priority:B};for(var E=0;E<xM.length&&B!==0&&B<xM[E].priority;E++);xM.splice(E,0,u),E===0&&eJu(u)}};dJu=function(u){switch(u.tag){case 3:var B=u.stateNode;if(B.current.memoizedState.isDehydrated){var E=FI(B.pendingLanes);E!==0&&(OZ0(B,E|1),r8(B,J2()),(O1&6)===0&&(pX=J2()+500,mM()))}break;case 13:tK(function(){var A=zf(u,1);if(A!==null){var C=yB();WD(A,u,1,C)}}),fJ0(u,1)}};IZ0=function(u){if(u.tag===13){var B=zf(u,134217728);if(B!==null){var E=yB();WD(B,u,134217728,E)}fJ0(u,134217728)}};sJu=function(u){if(u.tag===13){var B=jM(u),E=zf(u,B);if(E!==null){var A=yB();WD(E,u,B,A)}fJ0(u,B)}};oJu=function(){return k6};tJu=function(u,B){var E=k6;try{return k6=u,B()}finally{k6=E}};$M0=function(u,B,E){switch(B){case"input":if(NM0(u,E),B=E.name,E.type==="radio"&&B!=null){for(E=u;E.parentNode;)E=E.parentNode;E=E.querySelectorAll("input[name="+JSON.stringify(""+B)+'][type="radio"]');for(B=0;B<E.length;B++){var A=E[B];if(A!==u&&A.form===u.form){var C=wd(A);if(!C)throw Error(A4(90));RJu(A),NM0(A,C)}}}break;case"textarea":OJu(u,E);break;case"select":B=E.value,B!=null&&iX(u,!!E.multiple,B,!1)}};VJu=DJ0;hJu=tK;FC3={usingClientEntryPoint:!1,Events:[mI,RX,wd,iJu,aJu,DJ0]},AI={findFiberByHostInstance:yK,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},UC3={bundleType:AI.bundleType,version:AI.version,rendererPackageName:AI.rendererPackageName,rendererConfig:AI.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ff.ReactCurrentDispatcher,findHostInstanceByFiber:function(u){return u=$Ju(u),u===null?null:u.stateNode},findFiberByHostInstance:AI.findFiberByHostInstance||CC3,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(XX=__REACT_DEVTOOLS_GLOBAL_HOOK__,!XX.isDisabled&&XX.supportsFiber)try{bd=XX.inject(UC3),rU=XX}catch(u){}}LKu=FC3,TKu=DJ0});var aE=P1((gX1,NKu)=>{PKu();function jKu(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=="function")return;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(jKu)}catch(u){console.error(u)}}jKu(),NKu.exports=MJ0});var uHu=P1((tGu,eGu)=>{(function(){var u=this,B={};if(typeof tGu<"u")eGu.exports=B;else u.fuzzy=B;B.simpleFilter=function(E,A){return A.filter(function(C){return B.test(E,C)})},B.test=function(E,A){return B.match(E,A)!==null},B.match=function(E,A,C){C=C||{};var D=0,F=[],U=A.length,z=0,k=0,f=C.pre||"",l=C.post||"",b=C.caseSensitive&&A||A.toLowerCase(),M;E=C.caseSensitive&&E||E.toLowerCase();for(var Z=0;Z<U;Z++){if(M=A[Z],b[Z]===E[D])M=f+M+l,D+=1,k+=1+k;else k=0;z+=k,F[F.length]=M}if(D===E.length)return z=b===E?1/0:z,{rendered:F.join(""),score:z};return null},B.filter=function(E,A,C){if(!A||A.length===0)return[];if(typeof E!=="string")return A;return C=C||{},A.reduce(function(D,F,U,z){var k=F;if(C.extract)k=C.extract(F);var f=B.match(E,k,C);if(f!=null)D[D.length]={string:f.rendered,score:f.score,index:U,original:F};return D},[]).sort(function(D,F){var U=F.score-D.score;if(U)return U;return D.index-F.index})}})()});var AHu=P1((CF3)=>{var PD=Eu(Gu());function dD3(u,B){return u===B&&(u!==0||1/u===1/B)||u!==u&&B!==B}var sD3=typeof Object.is==="function"?Object.is:dD3,oD3=PD.useState,tD3=PD.useEffect,eD3=PD.useLayoutEffect,uF3=PD.useDebugValue;function BF3(u,B){var E=B(),A=oD3({inst:{value:E,getSnapshot:B}}),C=A[0].inst,D=A[1];return eD3(function(){C.value=E,C.getSnapshot=B,uw0(C)&&D({inst:C})},[u,E,B]),tD3(function(){return uw0(C)&&D({inst:C}),u(function(){uw0(C)&&D({inst:C})})},[u]),uF3(E),E}function uw0(u){var B=u.getSnapshot;u=u.value;try{var E=B();return!sD3(u,E)}catch(A){return!0}}function EF3(u,B){return B()}var AF3=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?EF3:BF3;CF3.useSyncExternalStore=PD.useSyncExternalStore!==void 0?PD.useSyncExternalStore:AF3});var CHu=P1((ZF3)=>{var nM=Eu(Gu()),FF3=AHu();function UF3(u,B){return u===B&&(u!==0||1/u===1/B)||u!==u&&B!==B}var zF3=typeof Object.is==="function"?Object.is:UF3,kF3=FF3.useSyncExternalStore,fF3=nM.useRef,lF3=nM.useEffect,bF3=nM.useMemo,MF3=nM.useDebugValue;ZF3.useSyncExternalStoreWithSelector=function(u,B,E,A,C){var D=fF3(null);if(D.current===null){var F={hasValue:!1,value:null};D.current=F}else F=D.current;D=bF3(function(){function z(M){if(!k){if(k=!0,f=M,M=A(M),C!==void 0&&F.hasValue){var Z=F.value;if(C(Z,M))return l=Z}return l=M}if(Z=l,zF3(f,M))return Z;var J=A(M);if(C!==void 0&&C(Z,J))return f=M,Z;return f=M,l=J}var k=!1,f,l,b=E===void 0?null:E;return[function(){return z(B())},b===null?void 0:function(){return z(b())}]},[B,E,A,C]);var U=kF3(u,D[0],D[1]);return lF3(function(){F.hasValue=!0,F.value=U},[U]),MF3(U),U}});var cHu=P1((qY1,yHu)=>{var GU3="Expected a function",rHu=NaN,HU3="[object Symbol]",LU3=/^\s+|\s+$/g,qU3=/^[-+]0x[0-9a-f]+$/i,XU3=/^0b[01]+$/i,xU3=/^0o[0-7]+$/i,vU3=parseInt,SU3=typeof global=="object"&&global&&global.Object===Object&&global,WU3=typeof self=="object"&&self&&self.Object===Object&&self,YU3=SU3||WU3||Function("return this")(),RU3=Object.prototype,TU3=RU3.toString,OU3=Math.max,IU3=Math.min,Hw0=function(){return YU3.Date.now()};function PU3(u,B,E){var A,C,D,F,U,z,k=0,f=!1,l=!1,b=!0;if(typeof u!="function")throw TypeError(GU3);if(B=$Hu(B)||0,Lw0(E))f=!!E.leading,l="maxWait"in E,D=l?OU3($Hu(E.maxWait)||0,B):D,b="trailing"in E?!!E.trailing:b;function M(q){var x=A,v=C;return A=C=void 0,k=q,F=u.apply(v,x),F}function Z(q){return k=q,U=setTimeout(K,B),f?M(q):F}function J(q){var x=q-z,v=q-k,W=B-x;return l?IU3(W,D-v):W}function w(q){var x=q-z,v=q-k;return z===void 0||x>=B||x<0||l&&v>=D}function K(){var q=Hw0();if(w(q))return Q(q);U=setTimeout(K,J(q))}function Q(q){if(U=void 0,b&&A)return M(q);return A=C=void 0,F}function G(){if(U!==void 0)clearTimeout(U);k=0,A=z=C=U=void 0}function L(){return U===void 0?F:Q(Hw0())}function H(){var q=Hw0(),x=w(q);if(A=arguments,C=this,z=q,x){if(U===void 0)return Z(z);if(l)return U=setTimeout(K,B),M(z)}if(U===void 0)U=setTimeout(K,B);return F}return H.cancel=G,H.flush=L,H}function Lw0(u){var B=typeof u;return!!u&&(B=="object"||B=="function")}function jU3(u){return!!u&&typeof u=="object"}function NU3(u){return typeof u=="symbol"||jU3(u)&&TU3.call(u)==HU3}function $Hu(u){if(typeof u=="number")return u;if(NU3(u))return rHu;if(Lw0(u)){var B=typeof u.valueOf=="function"?u.valueOf():u;u=Lw0(B)?B+"":B}if(typeof u!="string")return u===0?u:+u;u=u.replace(LU3,"");var E=XU3.test(u);return E||xU3.test(u)?vU3(u.slice(2),E?2:8):qU3.test(u)?rHu:+u}yHu.exports=PU3});var LLu={};ju(LLu,{welcomeScreen:()=>KLu,toolBar:()=>eHu,toast:()=>JLu,stats:()=>ZLu,roomDialog:()=>CLu,publishSuccessDialog:()=>fLu,publishDialog:()=>kLu,overwriteConfirm:()=>GLu,mermaid:()=>HLu,library:()=>dHu,labels:()=>pHu,imageExportDialog:()=>bLu,hints:()=>BLu,helpDialog:()=>ULu,headings:()=>uLu,exportDialog:()=>FLu,errors:()=>tHu,errorSplash:()=>ALu,errorDialog:()=>DLu,encrypted:()=>MLu,default:()=>$U3,confirmDialog:()=>lLu,colors:()=>wLu,colorPicker:()=>QLu,clearCanvasDialog:()=>zLu,canvasError:()=>ELu,buttons:()=>sHu,alerts:()=>oHu});var pHu,dHu,sHu,oHu,tHu,eHu,uLu,BLu,ELu,ALu,CLu,DLu,FLu,ULu,zLu,kLu,fLu,lLu,bLu,MLu,ZLu,JLu,wLu,KLu,QLu,GLu,HLu,$U3;var qLu=g(()=>{m4();pHu={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:""},dHu={noItems:"لا توجد عناصر أضيفت بعد...",hint_emptyLibrary:"حدد عنصر على القماش لإضافته هنا، أو تثبيت مكتبة من المستودع العام أدناه.",hint_emptyPrivateLibrary:"حدد عنصر على القماش لإضافته هنا."},sHu={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:"اضغط للتفاعل"},oHu={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:`لا يوجد اتصال بالانترنت.
لن يتم حفظ التغييرات التي قمت بها!`},tHu={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:""},eHu={selection:"تحديد",image:"إدراج صورة",rectangle:"مستطيل",diamond:"مضلع",ellipse:"دائرة",arrow:"سهم",line:"خط",freedraw:"رسم",text:"نص",library:"مكتبة",lock:"الحفاظ على أداة التحديد نشطة بعد الرسم",penMode:"وضع القلم - امنع اللمس",link:"إضافة/تحديث الرابط للشكل المحدد",eraser:"ممحاة",frame:"أداة الإطار",magicframe:"",embeddable:"تضمين ويب",laser:"مؤشر ليزر",hand:"يد (أداة الإزاحة)",extraTools:"المزيد من أﻷدوات",mermaidToExcalidraw:"",magicSettings:""},uLu={canvasActions:"إجراءات اللوحة",selectedShapeActions:"إجراءات الشكل المحدد",shapes:"الأشكال"},BLu={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 لتعطيل الالتقاط"},ELu={cannotShowPreview:"تعذر عرض المعاينة",canvasTooBig:"قد تكون اللوحة كبيرة جداً.",canvasTooBigTip:"نصيحة: حاول تحريك العناصر البعيدة بشكل أقرب قليلاً."},ALu={headingMain:"حدث خطأ. حاول <button>تحديث الصفحة</button>.",clearCanvasMessage:"إذا لم تعمل إعادة التحميل، حاول مرة أخرى ",clearCanvasCaveat:" هذا سيؤدي إلى فقدان العمل ",trackedToSentry:"تم تتبع الخطأ في المعرف {{eventId}} على نظامنا.",openIssueMessage:"حرصنا على عدم إضافة معلومات المشهد في بلاغ الخطأ. في حال كون مشهدك لا يحمل أي معلومات خاصة نرجو المتابعة على <button>نظام تتبع الأخطاء</button>. نرجو إضافة المعلومات أدناه بنسخها ولصقها في محتوى البلاغ على GitHub.",sceneContent:"محتوى المشهد:"},CLu={desc_intro:"يمكنك دعوة الآخرين لمشاركتك نفس الجلسة التي تعمل عليها.",desc_privacy:"لا تقلق، الجلسة تستخدم التشفير من النهاية إلى النهاية، لذلك فإن أي شيء ترسمه سيبقى خاصاً. لن يتمكن حتى الخادوم الخاص بنا من رؤية ما توصلت إليه.",button_startSession:"بدء الجلسة",button_stopSession:"إيقاف الجلسة",desc_inProgressIntro:"تجري الآن المشاركة الحية.",desc_shareLink:"شارك هذا الرابط مع أي شخص تريده أن يشاركك الجلسة:",desc_exitSession:"إيقاف الجلسة سيؤدي إلى قطع الاتصال الخاص بك من الغرفة، ولكن ستتمكن من مواصلة العمل مع المشهد، محليا. لاحظ أن هذا لن يؤثر على الأشخاص الآخرين، و سيظلون قادرين على التعاون في إصدارهم.",shareTitle:"الانضمام إلى جلسة تعاون حية على Excalidraw"},DLu={title:"خطأ"},FLu={disk_title:"حفظ الملف للجهاز",disk_details:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً.",disk_button:"إحفظ لملف",link_title:"رابط قابل للمشاركة",link_details:"صدر الملف للمشاهدة فقط.",link_button:"التصدير كرابط",excalidrawplus_description:"حفظ المشهد إلى مساحة العمل +Excalidraw الخاصة بك.",excalidrawplus_button:"تصدير",excalidrawplus_exportError:"تعذر التصدير إلى +Excalidraw في الوقت الحالي..."},ULu={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:"نقل الصفحة يسار/يمين"},zLu={title:"مسح اللوحة"},kLu={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:"ملاحظة: بعض العناصر المحددة معينة على أنه نشرها أو تقديمها من قبل. يجب عليك فقط إعادة إرسال العناصر عند تحديث مكتبة موجودة أو إرسالها."},fLu={title:"تم إرسال المكتبة",content:"شكرا لك {{authorName}}. لقد تم إرسال مكتبتك للمراجعة. يمكنك تتبع الحالة"},lLu={resetLibrary:"إعادة ضبط المكتبة",removeItemsFromLib:"إزالة العناصر المحددة من المكتبة"},bLu={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:"نسخ إلى الحافظة"}},MLu={tooltip:"رسوماتك مشفرة من النهاية إلى النهاية حتى أن خوادم Excalidraw لن تراها أبدا.",link:"مشاركة المدونة في التشفير من النهاية إلى النهاية في Excalidraw"},ZLu={angle:"الزاوية",element:"عنصر",elements:"العناصر",height:"الارتفاع",scene:"المشهد",selected:"المحدد",storage:"التخزين",title:"إحصائيات للمهووسين",total:"المجموع",version:"الإصدار",versionCopy:"انقر للنسخ",versionNotAvailable:"الإصدار غير متوفر",width:"العرض"},JLu={addedToLibrary:"تمت الاضافة الى المكتبة!",copyStyles:"نسخت الانماط.",copyToClipboard:"نسخ إلى الحافظة.",copyToClipboardAsPng:`تم نسخ {{exportSelection}} إلى الحافظة بصيغة PNG
({{exportColorScheme}})`,fileSaved:"تم حفظ الملف.",fileSavedToFilename:"حفظ باسم {filename}",canvas:"لوحة الرسم",selection:"العنصر المحدد",pasteAsSingleElement:`استخدم {{shortcut}} للصق كعنصر واحد،
أو لصق في محرر نص موجود`,unableToEmbed:"تضمين هذا الرابط غير مسموح حاليًا. افتح بلاغاً على GitHub لطلب عنوان Url القائمة البيضاء",unrecognizedLinkFormat:"الرابط الذي ضمنته لا يتطابق مع التنسيق المتوقع. الرجاء محاولة لصق النص 'المضمن' المُزوَد من موقع المصدر"},wLu={transparent:"شفاف",black:"أسود",white:"أبيض",red:"أحمر",pink:"وردي",grape:"عنبي",violet:"بنفسجي",gray:"رمادي",blue:"أزرق",cyan:"سماوي",teal:"أزرق مخضر",green:"أخضر",yellow:"أصفر",orange:"برتقالي",bronze:"برونزي"},KLu={app:{center_heading:"جميع بياناتك محفوظة محليا في المتصفح الخاص بك.",center_heading_plus:"هل تريد الذهاب إلى Excalidraw+ بدلاً من ذلك؟",menuHint:"التصدير والتفضيلات واللغات ..."},defaults:{menuHint:"التصدير والتفضيلات وغيرها...",center_heading:"الرسم البياني التصويري. بشكل مبسط.",toolbarHint:"اختر أداة و ابدأ الرسم!",helpHint:"الاختصارات و المساعدة"}},QLu={mostUsedCustomColors:"الألوان المخصصة الأكثر استخداما",colors:"الألوان",shades:"الدرجات",hexCode:"رمز Hex",noShades:"لا تتوفر درجات لهذا اللون"},GLu={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>بإمكانك إجراء النسخ الاحتياطي لرسمتك الحالية باستخدام أحد الخيارات أدناه."}}},HLu={title:"",button:"",description:"",syntax:"",preview:""},$U3={labels:pHu,library:dHu,buttons:sHu,alerts:oHu,errors:tHu,toolBar:eHu,headings:uLu,hints:BLu,canvasError:ELu,errorSplash:ALu,roomDialog:CLu,errorDialog:DLu,exportDialog:FLu,helpDialog:ULu,clearCanvasDialog:zLu,publishDialog:kLu,publishSuccessDialog:fLu,confirmDialog:lLu,imageExportDialog:bLu,encrypted:MLu,stats:ZLu,toast:JLu,colors:wLu,welcomeScreen:KLu,colorPicker:QLu,overwriteConfirm:GLu,mermaid:HLu}});var sLu={};ju(sLu,{welcomeScreen:()=>_Lu,toolBar:()=>YLu,toast:()=>cLu,stats:()=>yLu,roomDialog:()=>PLu,publishSuccessDialog:()=>hLu,publishDialog:()=>VLu,overwriteConfirm:()=>pLu,mermaid:()=>dLu,library:()=>xLu,labels:()=>XLu,imageExportDialog:()=>rLu,hints:()=>TLu,helpDialog:()=>iLu,headings:()=>RLu,exportDialog:()=>NLu,errors:()=>WLu,errorSplash:()=>ILu,errorDialog:()=>jLu,encrypted:()=>$Lu,default:()=>yU3,confirmDialog:()=>mLu,colors:()=>gLu,colorPicker:()=>nLu,clearCanvasDialog:()=>aLu,canvasError:()=>OLu,buttons:()=>vLu,alerts:()=>SLu});var XLu,xLu,vLu,SLu,WLu,YLu,RLu,TLu,OLu,ILu,PLu,jLu,NLu,iLu,aLu,VLu,hLu,mLu,rLu,$Lu,yLu,cLu,gLu,_Lu,nLu,pLu,dLu,yU3;var oLu=g(()=>{m4();XLu={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:""},xLu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},vLu={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:""},SLu={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},WLu={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:""},YLu={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},RLu={canvasActions:"",selectedShapeActions:"",shapes:""},TLu={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:""},OLu={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},ILu={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},PLu={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},jLu={title:""},NLu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},iLu={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:""},aLu={title:""},VLu={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},hLu={title:"",content:""},mLu={resetLibrary:"",removeItemsFromLib:""},rLu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},$Lu={tooltip:"",link:""},yLu={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},cLu={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},gLu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},_Lu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},nLu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},pLu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},dLu={title:"",button:"",description:"",syntax:"",preview:""},yU3={labels:XLu,library:xLu,buttons:vLu,alerts:SLu,errors:WLu,toolBar:YLu,headings:RLu,hints:TLu,canvasError:OLu,errorSplash:ILu,roomDialog:PLu,errorDialog:jLu,exportDialog:NLu,helpDialog:iLu,clearCanvasDialog:aLu,publishDialog:VLu,publishSuccessDialog:hLu,confirmDialog:mLu,imageExportDialog:rLu,encrypted:$Lu,stats:yLu,toast:cLu,colors:gLu,welcomeScreen:_Lu,colorPicker:nLu,overwriteConfirm:pLu,mermaid:dLu}});var vqu={};ju(vqu,{welcomeScreen:()=>Lqu,toolBar:()=>Aqu,toast:()=>Gqu,stats:()=>Qqu,roomDialog:()=>zqu,publishSuccessDialog:()=>Zqu,publishDialog:()=>Mqu,overwriteConfirm:()=>Xqu,mermaid:()=>xqu,library:()=>eLu,labels:()=>tLu,imageExportDialog:()=>wqu,hints:()=>Dqu,helpDialog:()=>lqu,headings:()=>Cqu,exportDialog:()=>fqu,errors:()=>Equ,errorSplash:()=>Uqu,errorDialog:()=>kqu,encrypted:()=>Kqu,default:()=>cU3,confirmDialog:()=>Jqu,colors:()=>Hqu,colorPicker:()=>qqu,clearCanvasDialog:()=>bqu,canvasError:()=>Fqu,buttons:()=>uqu,alerts:()=>Bqu});var tLu,eLu,uqu,Bqu,Equ,Aqu,Cqu,Dqu,Fqu,Uqu,zqu,kqu,fqu,lqu,bqu,Mqu,Zqu,Jqu,wqu,Kqu,Qqu,Gqu,Hqu,Lqu,qqu,Xqu,xqu,cU3;var Squ=g(()=>{m4();tLu={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:""},eLu={noItems:"Няма добавени неща все още...",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},uqu={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:""},Bqu={clearReset:"Това ще изчисти цялото платно. Сигурни ли сте?",couldNotCreateShareableLink:"Връзката не може да бъде създадена.",couldNotCreateShareableLinkTooBig:"Не може да се създаде връзка за споделяне: сцената е твърде голяма",couldNotLoadInvalidFile:"Невалиден файл не може да се зареди",importBackendFailed:"Импортирането от бекенд не беше успешно.",cannotExportEmptyCanvas:"Не може да се експортира празно платно.",couldNotCopyToClipboard:"Не можем да копираме в клипбоарда.",decryptFailed:"Данните не можаха да се дешифрират.",uploadedSecurly:"Качването е защитено с криптиране от край до край, което означава, че сървърът Excalidraw и трети страни не могат да четат съдържанието.",loadSceneOverridePrompt:"Зареждането на външна рисунка ще презапише настоящото ви съдържание. Желаете ли да продължите?",collabStopOverridePrompt:`Прекратяването на сесията ще презапише предишната, локално запазена, рисунка. Сигурни ли сте?
(Ако искате да продължите с локалната рисунка, просто затворете таба на браузъра.)`,errorAddingToLibrary:"Не можем да заредим от библиотеката",errorRemovingFromLibrary:"Не можем да премахнем елемент от библиотеката",confirmAddLibrary:"Ще се добавят {{numShapes}} фигура(и) във вашата библиотека. Сигурни ли сте?",imageDoesNotContainScene:"",cannotRestoreFromImage:"Не може да бъде възстановена сцена от този файл",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"Изтрий {{count}} елемент(а) от библиотеката?",invalidEncryptionKey:"",collabOfflineWarning:""},Equ={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:""},Aqu={selection:"Селекция",image:"Вмъкване на изображение",rectangle:"Правоъгълник",diamond:"Диамант",ellipse:"Елипс",arrow:"Стрелка",line:"Линия",freedraw:"Рисуване",text:"Текст",library:"Библиотека",lock:"Поддържайте избрания инструмент активен след рисуване",penMode:"",link:"",eraser:"Гума",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"Още инструменти",mermaidToExcalidraw:"",magicSettings:""},Cqu={canvasActions:"Действия по платното",selectedShapeActions:"Избрани действия",shapes:"Фигури"},Dqu={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:""},Fqu={cannotShowPreview:"Невъзможност за показване на preview",canvasTooBig:"Платното е твърде голямо.",canvasTooBigTip:"Подсказка: пробвайте да приближите далечните елементи по-близко."},Uqu={headingMain:"Среща грешка. Опитайте <button>презареждане на страницата.</button>",clearCanvasMessage:"Ако презареждането не работи, опитайте <button>изчистване на платното.</button>",clearCanvasCaveat:" Това ще доведе до загуба на работа ",trackedToSentry:"Грешката с идентификатор {{eventId}} беше проследен в нашата система.",openIssueMessage:"Бяхме много предпазливи да не включите информацията за вашата сцена при грешката. Ако сцената ви не е частна, моля, помислете за последващи действия на нашата <button>тракер за грешки.</button> Моля, включете информация по-долу, като я копирате и добавите в GitHub.",sceneContent:"Съдържание на сцената:"},zqu={desc_intro:"Можете да поканите хора на текущата си сцена да си сътрудничат с вас.",desc_privacy:"Не се притеснявайте, сесията използва криптиране от край до край, така че каквото нарисувате ще остане частно. Дори нашият сървър няма да може да види какво предлагате.",button_startSession:"Стартирайте сесията",button_stopSession:"Стоп на сесията",desc_inProgressIntro:"Сесията за сътрудничество на живо е в ход.",desc_shareLink:"Споделете тази връзка с всеки, с когото искате да си сътрудничите:",desc_exitSession:"Спирането на сесията ще ви изключи от стаята, но ще можете да продължите да работите със сцената, локално. Имайте предвид, че това няма да засегне други хора и те все още ще могат да си сътрудничат с тяхната версия.",shareTitle:""},kqu={title:"Грешка"},fqu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"Експорт",excalidrawplus_exportError:""},lqu={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:"Премести страница наляво/надясно"},bqu={title:"Изчисти платното"},Mqu={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:""},Zqu={title:"",content:""},Jqu={resetLibrary:"Нулирай библиотека",removeItemsFromLib:""},wqu={header:"",label:{withBackground:"Фон",onlySelected:"Само избраното",darkMode:"Тъмен режим",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Изнасяне в PNG",exportToSvg:"Изнасяне в SVG",copyPngToClipboard:"Копирай PNG в клипборда"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Копиране в клипборда"}},Kqu={tooltip:"Вашите рисунки са криптирани от край до край, така че сървърите на Excalidraw няма да могат да ги виждат.",link:""},Qqu={angle:"Ъгъл",element:"Елемент",elements:"Елементи",height:"Височина",scene:"Сцена",selected:"Селектирано",storage:"Съхранение на данни",title:"Статистика за хакери",total:"Общо",version:"Версия",versionCopy:"Настисни за да копираш",versionNotAvailable:"Версията не е налична",width:"Широчина"},Gqu={addedToLibrary:"Добавена към библиотеката",copyStyles:"Копирани стилове.",copyToClipboard:"Копирано в клипборда.",copyToClipboardAsPng:`Копира {{exportSelection}} в клипборда като PNG
({{exportColorScheme}})`,fileSaved:"Файлът е запазен.",fileSavedToFilename:"Запазен към {filename}",canvas:"платно",selection:"селекция",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Hqu={transparent:"Прозрачен",black:"Черен",white:"Бял",red:"Червен",pink:"Розов",grape:"Грозде",violet:"Виолетово",gray:"Сив",blue:"Син",cyan:"Синьозелено",teal:"Тъмно синьо-зелено",green:"Зелено",yellow:"Жълто",orange:"Оранжево",bronze:"Бронзово"},Lqu={app:{center_heading:"Всичките Ви данни са запазени локално в браузъра Ви.",center_heading_plus:"",menuHint:"Експорт, предпочитания, езици, ..."},defaults:{menuHint:"Експорт, предпочитания, и още...",center_heading:"Диаграми. Направени. Просто.",toolbarHint:"Изберете инструмент & Започнете да рисувате!",helpHint:"Преки пътища & помощ"}},qqu={mostUsedCustomColors:"Най-често използвани цветове",colors:"Цветове",shades:"Нюанси",hexCode:"Шестнадесетичен код",noShades:""},Xqu={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:""}}},xqu={title:"",button:"",description:"",syntax:"",preview:""},cU3={labels:tLu,library:eLu,buttons:uqu,alerts:Bqu,errors:Equ,toolBar:Aqu,headings:Cqu,hints:Dqu,canvasError:Fqu,errorSplash:Uqu,roomDialog:zqu,errorDialog:kqu,exportDialog:fqu,helpDialog:lqu,clearCanvasDialog:bqu,publishDialog:Mqu,publishSuccessDialog:Zqu,confirmDialog:Jqu,imageExportDialog:wqu,encrypted:Kqu,stats:Qqu,toast:Gqu,colors:Hqu,welcomeScreen:Lqu,colorPicker:qqu,overwriteConfirm:Xqu,mermaid:xqu}});var uXu={};ju(uXu,{welcomeScreen:()=>squ,toolBar:()=>Iqu,toast:()=>pqu,stats:()=>nqu,roomDialog:()=>aqu,publishSuccessDialog:()=>yqu,publishDialog:()=>$qu,overwriteConfirm:()=>tqu,mermaid:()=>equ,library:()=>Yqu,labels:()=>Wqu,imageExportDialog:()=>gqu,hints:()=>jqu,helpDialog:()=>mqu,headings:()=>Pqu,exportDialog:()=>hqu,errors:()=>Oqu,errorSplash:()=>iqu,errorDialog:()=>Vqu,encrypted:()=>_qu,default:()=>gU3,confirmDialog:()=>cqu,colors:()=>dqu,colorPicker:()=>oqu,clearCanvasDialog:()=>rqu,canvasError:()=>Nqu,buttons:()=>Rqu,alerts:()=>Tqu});var Wqu,Yqu,Rqu,Tqu,Oqu,Iqu,Pqu,jqu,Nqu,iqu,aqu,Vqu,hqu,mqu,rqu,$qu,yqu,cqu,gqu,_qu,nqu,pqu,dqu,squ,oqu,tqu,equ,gU3;var BXu=g(()=>{m4();Wqu={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:""},Yqu={noItems:"সংগ্রহে কিছু যোগ করা হয়নি",hint_emptyLibrary:"এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন, অথবা নীচে, প্রকাশ্য সংগ্রহশালা থেকে একটি সংগ্রহ ইনস্টল করুন৷",hint_emptyPrivateLibrary:"এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন"},Rqu={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:""},Tqu={clearReset:"এটি পুরো ক্যানভাস সাফ করবে। আপনি কি নিশ্চিত?",couldNotCreateShareableLink:"ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি।",couldNotCreateShareableLinkTooBig:"ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি: দৃশ্যটি খুব বড়",couldNotLoadInvalidFile:"অবৈধ ফাইল লোড করা যায়নি",importBackendFailed:"ব্যাকেন্ড থেকে আপলোড ব্যর্থ হয়েছে।",cannotExportEmptyCanvas:"খালি ক্যানভাস নিবদ্ধ করা যাবে না।",couldNotCopyToClipboard:"ক্লিপবোর্ডে কপি করা যায়নি।",decryptFailed:"তথ্য ডিক্রিপ্ট করা যায়নি।",uploadedSecurly:"আপলোডটি এন্ড-টু-এন্ড এনক্রিপশনের মাধ্যমে সুরক্ষিত করা হয়েছে, যার অর্থ হল এক্সক্যালিড্র সার্ভার এবং তৃতীয় পক্ষের দ্বারা পড়তে পারা সম্ভব নয়।",loadSceneOverridePrompt:"বাহ্যিক অঙ্কন লোড করা আপনার বিদ্যমান দৃশ্য প্রতিস্থাপন করবে। আপনি কি অবিরত করতে চান?",collabStopOverridePrompt:`অধিবেশন বন্ধ করা আপনার পূর্ববর্তী, স্থানীয়ভাবে সঞ্চিত অঙ্কন ওভাররাইট করবে। আপনি কি নিশ্চিত?
(যদি আপনি আপনার স্থানীয় অঙ্কন রাখতে চান, তাহলে শুধু ব্রাউজার ট্যাবটি বন্ধ করুন।)`,errorAddingToLibrary:"বস্তুটি সংগ্রহে যোগ করা যায়নি",errorRemovingFromLibrary:"বস্তুটি সংগ্রহ থেকে বিয়োগ করা যায়নি",confirmAddLibrary:"এটি আপনার সংগ্রহে {{numShapes}} আকার(গুলি) যোগ করবে। আপনি কি নিশ্চিত?",imageDoesNotContainScene:"এই ছবিতে কোনো দৃশ্যের তথ্য আছে বলে মনে হয় না৷ আপনি কি নিবদ্ধ করার সময় দৃশ্য এমবেডিং করতে সক্ষম?",cannotRestoreFromImage:"এই ফাইল থেকে দৃশ্য পুনরুদ্ধার করা যায়নি",invalidSceneUrl:"সরবরাহ করা লিঙ্ক থেকে দৃশ্য লোড করা যায়নি৷ এটি হয় বিকৃত, অথবা বৈধ এক্সক্যালিড্র জেসন তথ্য নেই৷",resetLibrary:"এটি আপনার সংগ্রহ পরিষ্কার করবে। আপনি কি নিশ্চিত?",removeItemsFromsLibrary:"সংগ্রহ থেকে {{count}} বস্তু বিয়োগ করা হবে। আপনি কি নিশ্চিত?",invalidEncryptionKey:"অবৈধ এনক্রীপশন কী।",collabOfflineWarning:""},Oqu={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:""},Iqu={selection:"বাছাই",image:"চিত্র সন্নিবেশ",rectangle:"আয়তক্ষেত্র",diamond:"রুহিতন",ellipse:"উপবৃত্ত",arrow:"তীর",line:"রেখা",freedraw:"কলম",text:"লেখা",library:"সংগ্রহ",lock:"আঁকার পরে নির্বাচিত টুল সক্রিয় রাখুন",penMode:"",link:"একটি নির্বাচিত আকৃতির জন্য লিঙ্ক যোগ বা আপডেট করুন",eraser:"ঝাড়ন",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},Pqu={canvasActions:"ক্যানভাস কার্যকলাপ",selectedShapeActions:"বাছাই করা আকার(গুলি)র কার্যকলাপ",shapes:"আকার(গুলি)"},jqu={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:""},Nqu={cannotShowPreview:"প্রিভিউ দেখাতে অপারগ",canvasTooBig:"ক্যানভাস অনেক বড়।",canvasTooBigTip:"বিশেষ্য: দূরতম উপাদানগুলোকে একটু কাছাকাছি নিয়ে যাওয়ার চেষ্টা করুন।"},iqu={headingMain:"একটি ত্রুটির সম্মুখীন হয়েছে৷ চেষ্টা করুন <button>পৃষ্ঠাটি পুনরায় লোড করার।</button>",clearCanvasMessage:"যদি পুনরায় লোড করা কাজ না করে, চেষ্টা করুন <button>ক্যানভাস পরিষ্কার করার।</button>",clearCanvasCaveat:" এর ফলে কাজের ক্ষতি হবে ",trackedToSentry:"ত্রুটি {{eventId}} আমাদের সিস্টেমে ট্র্যাক করা হয়েছিল।",openIssueMessage:"আমরা ত্রুটিতে আপনার দৃশ্যের তথ্য অন্তর্ভুক্ত না করার জন্য খুব সতর্ক ছিলাম। আপনার দৃশ্য ব্যক্তিগত না হলে, আমাদের অনুসরণ করার কথা বিবেচনা করুন <button>ত্রুটি ইতিবৃত্ত।</button> অনুগ্রহ করে GitHub ইস্যুতে অনুলিপি এবং পেস্ট করে নীচের তথ্য অন্তর্ভুক্ত করুন।",sceneContent:"দৃশ্য বিষয়বস্তু:"},aqu={desc_intro:"আপনি আপনার সাথে সহযোগিতা করার জন্য আপনার বর্তমান দৃশ্যে লোকেদের আমন্ত্রণ জানাতে পারেন৷",desc_privacy:"চিন্তা করবেন না, সেশনটি এন্ড-টু-এন্ড এনক্রিপশন ব্যবহার করে, তাই আপনি যা আঁকবেন তা গোপন থাকবে। এমনকি আমাদের সার্ভার আপনি যা নিয়ে এসেছেন তা দেখতে সক্ষম হবে না।",button_startSession:"সেশন শুরু করুন",button_stopSession:"সেশন বন্ধ করুন",desc_inProgressIntro:"লাইভ-সহযোগীতার সেশন এখন চলছে।",desc_shareLink:"আপনি যার সাথে সহযোগিতা করতে চান তাদের সাথে এই লিঙ্কটি ভাগ করুন: ",desc_exitSession:"অধিবেশন বন্ধ করা আপনাকে রুম থেকে সংযোগ বিচ্ছিন্ন করবে, কিন্তু আপনি স্থানীয়ভাবে দৃশ্যের সাথে কাজ চালিয়ে যেতে সক্ষম হবেন। মনে রাখবেন যে এটি অন্য লোকেদের প্রভাবিত করবে না এবং তারা এখনও তাদের সংস্করণে সহযোগিতা করতে সক্ষম হবে।",shareTitle:"এক্সক্যালিড্র লাইভ সহযোগিতা সেশনে যোগ দিন"},Vqu={title:"ত্রুটি"},hqu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"নিবদ্ধ",excalidrawplus_exportError:""},mqu={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:""},rqu={title:""},$qu={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},yqu={title:"",content:""},cqu={resetLibrary:"",removeItemsFromLib:""},gqu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},_qu={tooltip:"",link:""},nqu={angle:"কোণ",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:"প্রস্থ"},pqu={addedToLibrary:"সংগ্রহশালায় যুক্ত হয়েছে",copyStyles:"",copyToClipboard:"ক্লিপবোর্ডে কপি করা হয়েছে।",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"বাছাই",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},dqu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},squ={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},oqu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},tqu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},equ={title:"",button:"",description:"",syntax:"",preview:""},gU3={labels:Wqu,library:Yqu,buttons:Rqu,alerts:Tqu,errors:Oqu,toolBar:Iqu,headings:Pqu,hints:jqu,canvasError:Nqu,errorSplash:iqu,roomDialog:aqu,errorDialog:Vqu,exportDialog:hqu,helpDialog:mqu,clearCanvasDialog:rqu,publishDialog:$qu,publishSuccessDialog:yqu,confirmDialog:cqu,imageExportDialog:gqu,encrypted:_qu,stats:nqu,toast:pqu,colors:dqu,welcomeScreen:squ,colorPicker:oqu,overwriteConfirm:tqu,mermaid:equ}});var RXu={};ju(RXu,{welcomeScreen:()=>vXu,toolBar:()=>UXu,toast:()=>XXu,stats:()=>qXu,roomDialog:()=>bXu,publishSuccessDialog:()=>QXu,publishDialog:()=>KXu,overwriteConfirm:()=>WXu,mermaid:()=>YXu,library:()=>AXu,labels:()=>EXu,imageExportDialog:()=>HXu,hints:()=>kXu,helpDialog:()=>JXu,headings:()=>zXu,exportDialog:()=>ZXu,errors:()=>FXu,errorSplash:()=>lXu,errorDialog:()=>MXu,encrypted:()=>LXu,default:()=>_U3,confirmDialog:()=>GXu,colors:()=>xXu,colorPicker:()=>SXu,clearCanvasDialog:()=>wXu,canvasError:()=>fXu,buttons:()=>CXu,alerts:()=>DXu});var EXu,AXu,CXu,DXu,FXu,UXu,zXu,kXu,fXu,lXu,bXu,MXu,ZXu,JXu,wXu,KXu,QXu,GXu,HXu,LXu,qXu,XXu,xXu,vXu,SXu,WXu,YXu,_U3;var TXu=g(()=>{m4();EXu={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 lesquerra",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:""},AXu={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í."},CXu={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"},DXu={clearReset:"S'esborrarà tot el llenç. N'esteu segur?",couldNotCreateShareableLink:"No s'ha pogut crear un enllaç per a compartir.",couldNotCreateShareableLinkTooBig:"No sha pogut crear un enllaç per a compartir: lescena é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:"Lescena no sha pogut restaurar des daquest fitxer dimatge",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!`},FXu={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:""},UXu={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"},zXu={canvasActions:"Accions del llenç",selectedShapeActions:"Accions per a les formes seleccionades",shapes:"Formes"},kXu={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:""},fXu={cannotShowPreview:"No es pot mostrar la previsualització",canvasTooBig:"Pot ser que el llenç sigui massa gran.",canvasTooBigTip:"Consell: proveu dacostar una mica els elements més allunyats."},lXu={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:"},bXu={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"},MXu={title:"Error"},ZXu={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..."},JXu={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"},wXu={title:"Neteja el llenç"},KXu={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."},QXu={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>"},GXu={resetLibrary:"Restableix la biblioteca",removeItemsFromLib:"Suprimeix els elements seleccionats de la llibreria"},HXu={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:""}},LXu={tooltip:"Els vostres dibuixos estan xifrats de punta a punta de manera que els servidors dExcalidraw no els veuran mai.",link:"Article del blog sobre encriptació d'extrem a extrem a Excalidraw"},qXu={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"},XXu={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:""},xXu={transparent:"Transparent",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"Verd",yellow:"Groc",orange:"Taronja",bronze:"Bronze"},vXu={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"}},SXu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},WXu={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:""}}},YXu={title:"De Mermaid a Excalidraw",button:"Insereix",description:"",syntax:"Sintaxi de Mermaid",preview:"Previsualització"},_U3={labels:EXu,library:AXu,buttons:CXu,alerts:DXu,errors:FXu,toolBar:UXu,headings:zXu,hints:kXu,canvasError:fXu,errorSplash:lXu,roomDialog:bXu,errorDialog:MXu,exportDialog:ZXu,helpDialog:JXu,clearCanvasDialog:wXu,publishDialog:KXu,publishSuccessDialog:QXu,confirmDialog:GXu,imageExportDialog:HXu,encrypted:LXu,stats:qXu,toast:XXu,colors:xXu,welcomeScreen:vXu,colorPicker:SXu,overwriteConfirm:WXu,mermaid:YXu}});var Cxu={};ju(Cxu,{welcomeScreen:()=>uxu,toolBar:()=>iXu,toast:()=>tXu,stats:()=>oXu,roomDialog:()=>rXu,publishSuccessDialog:()=>nXu,publishDialog:()=>_Xu,overwriteConfirm:()=>Exu,mermaid:()=>Axu,library:()=>IXu,labels:()=>OXu,imageExportDialog:()=>dXu,hints:()=>VXu,helpDialog:()=>cXu,headings:()=>aXu,exportDialog:()=>yXu,errors:()=>NXu,errorSplash:()=>mXu,errorDialog:()=>$Xu,encrypted:()=>sXu,default:()=>nU3,confirmDialog:()=>pXu,colors:()=>eXu,colorPicker:()=>Bxu,clearCanvasDialog:()=>gXu,canvasError:()=>hXu,buttons:()=>PXu,alerts:()=>jXu});var OXu,IXu,PXu,jXu,NXu,iXu,aXu,VXu,hXu,mXu,rXu,$Xu,yXu,cXu,gXu,_Xu,nXu,pXu,dXu,sXu,oXu,tXu,eXu,uxu,Bxu,Exu,Axu,nU3;var Dxu=g(()=>{m4();OXu={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:""},IXu={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."},PXu={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:""},jXu={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!`},NXu={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:""},iXu={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:""},aXu={canvasActions:"Akce plátna",selectedShapeActions:"Akce vybraného tvaru",shapes:"Tvary"},VXu={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:""},hXu={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ě."},mXu={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:"},rXu={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"},$Xu={title:"Chyba"},yXu={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..."},cXu={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"},gXu={title:"Vymazat plátno"},_Xu={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í."},nXu={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>"},pXu={resetLibrary:"Resetovat knihovnu",removeItemsFromLib:"Odstranit vybrané položky z knihovny"},dXu={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"}},sXu={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"},oXu={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"},tXu={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:""},eXu={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á"},uxu={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"}},Bxu={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"},Exu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Axu={title:"",button:"",description:"",syntax:"",preview:""},nU3={labels:OXu,library:IXu,buttons:PXu,alerts:jXu,errors:NXu,toolBar:iXu,headings:aXu,hints:VXu,canvasError:hXu,errorSplash:mXu,roomDialog:rXu,errorDialog:$Xu,exportDialog:yXu,helpDialog:cXu,clearCanvasDialog:gXu,publishDialog:_Xu,publishSuccessDialog:nXu,confirmDialog:pXu,imageExportDialog:dXu,encrypted:sXu,stats:oXu,toast:tXu,colors:eXu,welcomeScreen:uxu,colorPicker:Bxu,overwriteConfirm:Exu,mermaid:Axu}});var Pxu={};ju(Pxu,{welcomeScreen:()=>Rxu,toolBar:()=>lxu,toast:()=>Wxu,stats:()=>Sxu,roomDialog:()=>wxu,publishSuccessDialog:()=>qxu,publishDialog:()=>Lxu,overwriteConfirm:()=>Oxu,mermaid:()=>Ixu,library:()=>Uxu,labels:()=>Fxu,imageExportDialog:()=>xxu,hints:()=>Mxu,helpDialog:()=>Gxu,headings:()=>bxu,exportDialog:()=>Qxu,errors:()=>fxu,errorSplash:()=>Jxu,errorDialog:()=>Kxu,encrypted:()=>vxu,default:()=>pU3,confirmDialog:()=>Xxu,colors:()=>Yxu,colorPicker:()=>Txu,clearCanvasDialog:()=>Hxu,canvasError:()=>Zxu,buttons:()=>zxu,alerts:()=>kxu});var Fxu,Uxu,zxu,kxu,fxu,lxu,bxu,Mxu,Zxu,Jxu,wxu,Kxu,Qxu,Gxu,Hxu,Lxu,qxu,Xxu,xxu,vxu,Sxu,Wxu,Yxu,Rxu,Txu,Oxu,Ixu,pU3;var jxu=g(()=>{m4();Fxu={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"},Uxu={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."},zxu={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"},kxu={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!`},fxu={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."},lxu={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"},bxu={canvasActions:"Lærred handlinger",selectedShapeActions:"Valgte figurhandlinger",shapes:"Former"},Mxu={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:""},Zxu={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."},Jxu={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:"},wxu={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:""},Kxu={title:"Fejl"},Qxu={disk_title:"Gem til disk",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},Gxu={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:""},Hxu={title:""},Lxu={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},qxu={title:"",content:""},Xxu={resetLibrary:"",removeItemsFromLib:""},xxu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},vxu={tooltip:"",link:""},Sxu={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"Statistik for nørder",total:"",version:"",versionCopy:"Klik for at kopiere",versionNotAvailable:"",width:"Bredde"},Wxu={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:""},Yxu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Rxu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},Txu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Oxu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Ixu={title:"",button:"",description:"",syntax:"",preview:""},pU3={labels:Fxu,library:Uxu,buttons:zxu,alerts:kxu,errors:fxu,toolBar:lxu,headings:bxu,hints:Mxu,canvasError:Zxu,errorSplash:Jxu,roomDialog:wxu,errorDialog:Kxu,exportDialog:Qxu,helpDialog:Gxu,clearCanvasDialog:Hxu,publishDialog:Lxu,publishSuccessDialog:qxu,confirmDialog:Xxu,imageExportDialog:xxu,encrypted:vxu,stats:Sxu,toast:Wxu,colors:Yxu,welcomeScreen:Rxu,colorPicker:Txu,overwriteConfirm:Oxu,mermaid:Ixu}});var zvu={};ju(zvu,{welcomeScreen:()=>Cvu,toolBar:()=>mxu,toast:()=>Evu,stats:()=>Bvu,roomDialog:()=>gxu,publishSuccessDialog:()=>oxu,publishDialog:()=>sxu,overwriteConfirm:()=>Fvu,mermaid:()=>Uvu,library:()=>ixu,labels:()=>Nxu,imageExportDialog:()=>exu,hints:()=>$xu,helpDialog:()=>pxu,headings:()=>rxu,exportDialog:()=>nxu,errors:()=>hxu,errorSplash:()=>cxu,errorDialog:()=>_xu,encrypted:()=>uvu,default:()=>dU3,confirmDialog:()=>txu,colors:()=>Avu,colorPicker:()=>Dvu,clearCanvasDialog:()=>dxu,canvasError:()=>yxu,buttons:()=>axu,alerts:()=>Vxu});var Nxu,ixu,axu,Vxu,hxu,mxu,rxu,$xu,yxu,cxu,gxu,_xu,nxu,pxu,dxu,sxu,oxu,txu,exu,uvu,Bvu,Evu,Avu,Cvu,Dvu,Fvu,Uvu,dU3;var kvu=g(()=>{m4();Nxu={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"},ixu={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."},axu={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"},Vxu={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!`},hxu={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."},mxu={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"},rxu={canvasActions:"Aktionen für Zeichenfläche",selectedShapeActions:"Aktionen für Auswahl",shapes:"Formen"},$xu={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"},yxu={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."},cxu={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:"},gxu={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"},_xu={title:"Fehler"},nxu={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..."},pxu={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"},dxu={title:"Zeichenfläche löschen"},sxu={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."},oxu={title:"Bibliothek übermittelt",content:"Vielen Dank {{authorName}}. Deine Bibliothek wurde zur Überprüfung eingereicht. Du kannst den Status verfolgen<link>hier</link>"},txu={resetLibrary:"Bibliothek zurücksetzen",removeItemsFromLib:"Ausgewählte Elemente aus der Bibliothek entfernen"},exu={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"}},uvu={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"},Bvu={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"},Evu={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"},Avu={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"},Cvu={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"}},Dvu={mostUsedCustomColors:"Beliebteste benutzerdefinierte Farben",colors:"Farben",shades:"Schattierungen",hexCode:"Hex-Code",noShades:"Keine Schattierungen für diese Farbe verfügbar"},Fvu={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."}}},Uvu={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"},dU3={labels:Nxu,library:ixu,buttons:axu,alerts:Vxu,errors:hxu,toolBar:mxu,headings:rxu,hints:$xu,canvasError:yxu,errorSplash:cxu,roomDialog:gxu,errorDialog:_xu,exportDialog:nxu,helpDialog:pxu,clearCanvasDialog:dxu,publishDialog:sxu,publishSuccessDialog:oxu,confirmDialog:txu,imageExportDialog:exu,encrypted:uvu,stats:Bvu,toast:Evu,colors:Avu,welcomeScreen:Cvu,colorPicker:Dvu,overwriteConfirm:Fvu,mermaid:Uvu}});var avu={};ju(avu,{welcomeScreen:()=>Pvu,toolBar:()=>Jvu,toast:()=>Ovu,stats:()=>Tvu,roomDialog:()=>Hvu,publishSuccessDialog:()=>Svu,publishDialog:()=>vvu,overwriteConfirm:()=>Nvu,mermaid:()=>ivu,library:()=>lvu,labels:()=>fvu,imageExportDialog:()=>Yvu,hints:()=>Kvu,helpDialog:()=>Xvu,headings:()=>wvu,exportDialog:()=>qvu,errors:()=>Zvu,errorSplash:()=>Gvu,errorDialog:()=>Lvu,encrypted:()=>Rvu,default:()=>sU3,confirmDialog:()=>Wvu,colors:()=>Ivu,colorPicker:()=>jvu,clearCanvasDialog:()=>xvu,canvasError:()=>Qvu,buttons:()=>bvu,alerts:()=>Mvu});var fvu,lvu,bvu,Mvu,Zvu,Jvu,wvu,Kvu,Qvu,Gvu,Hvu,Lvu,qvu,Xvu,xvu,vvu,Svu,Wvu,Yvu,Rvu,Tvu,Ovu,Ivu,Pvu,jvu,Nvu,ivu,sU3;var Vvu=g(()=>{m4();fvu={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:""},lvu={noItems:"Δεν έχουν προστεθεί αντικείμενα ακόμη...",hint_emptyLibrary:"Επιλέξτε ένα στοιχείο στον καμβά για να το προσθέσετε εδώ, ή εγκαταστήστε μια βιβλιοθήκη από το δημόσιο αποθετήριο, παρακάτω.",hint_emptyPrivateLibrary:"Επιλέξτε ένα στοιχείο στον καμβά για να το προσθέσετε εδώ."},bvu={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:""},Mvu={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.
Οι αλλαγές σας δεν θα αποθηκευτούν!`},Zvu={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:""},Jvu={selection:"Επιλογή",image:"Εισαγωγή εικόνας",rectangle:"Ορθογώνιο",diamond:"Ρόμβος",ellipse:"Έλλειψη",arrow:"Βέλος",line:"Γραμμή",freedraw:"Σχεδίαση",text:"Κείμενο",library:"Βιβλιοθήκη",lock:"Κράτησε επιλεγμένο το εργαλείο μετά το σχέδιο",penMode:"Λειτουργία μολυβιού - αποτροπή αφής",link:"Προσθήκη/ Ενημέρωση συνδέσμου για ένα επιλεγμένο σχήμα",eraser:"Γόμα",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},wvu={canvasActions:"Ενέργειες καμβά",selectedShapeActions:"Επιλεγμένες ενέργειες σχήματος",shapes:"Σχήματα"},Kvu={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:""},Qvu={cannotShowPreview:"Αδυναμία εμφάνισης προεπισκόπησης",canvasTooBig:"Ο καμβάς μπορεί να είναι μεγάλος.",canvasTooBigTip:"Συμβουλή: προσπαθήστε να μετακινήσετε τα πιο απομακρυσμένα στοιχεία λίγο πιο κοντά μαζί."},Gvu={headingMain:"Συνέβη κάποιο σφάλμα. Προσπάθησε <button>φόρτωσε ξανά την σελίδα.</button>",clearCanvasMessage:"Εάν το παραπάνω δεν δουλέψει, προσπάθησε <button>καθαρίσετε τον κανβά.</button>",clearCanvasCaveat:" Αυτό θα προκαλέσει απώλεια της δουλειάς σου ",trackedToSentry:"Το σφάλμα με αναγνωριστικό {{eventId}} παρακολουθήθηκε στο σύστημά μας.",openIssueMessage:"Ήμασταν πολύ προσεκτικοί για να μην συμπεριλάβουμε τις πληροφορίες της σκηνής σου στο σφάλμα. Αν η σκηνή σου δεν είναι ιδιωτική, παρακαλώ σκέψου να ακολουθήσεις το δικό μας <button>ανιχνευτής σφαλμάτων.</button> Παρακαλώ να συμπεριλάβετε τις παρακάτω πληροφορίες, αντιγράφοντας και επικολλώντας το ζήτημα στο GitHub.",sceneContent:"Περιεχόμενο σκηνής:"},Hvu={desc_intro:"Μπορείς να προσκαλέσεις άλλους να δουλέψουν μαζί σου.",desc_privacy:"Μην ανησυχείς, η συνεδρία χρησιμοποιεί κρυπτογράφηση από σημείο σε σημείο, άρα οτιδήποτε κάνεις θα παραμείνει ανοιχτό μόνο σε εσένα. Ούτε οι μηχανές μας μπορούν να δουν τι κάνεις.",button_startSession:"Έναρξη Συνεδρίας",button_stopSession:"Τερματισμός Συνεδρίας",desc_inProgressIntro:"Η ζωντανή συνεργασία με άλλους είναι σε ενεργή.",desc_shareLink:"Μοιραστείτε τον σύνδεσμο με όποιον θέλετε να δουλέψετε μαζί:",desc_exitSession:"Η διακοπή θα σας αποσυνδέσει από το δωμάτιο, αλλά θα μπορείτε να συνεχίσετε να δουλεύετε στον πίνακα, τοπικά. Σημειώσατε ότι αυτό δεν θα επηρεάσει τον πίνακα άλλων, και θα μπορούν ακόμα να συνεισφέρουν στην δική τους έκδοση.",shareTitle:"Συμμετάσχετε σε μια ζωντανή συνεδρία συνεργασίας για το Excalidraw"},Lvu={title:"Σφάλμα"},qvu={disk_title:"Αποθήκευση στο δίσκο",disk_details:"Εξαγωγή δεδομένων σκηνής σε ένα αρχείο από το οποίο μπορείτε να εισάγετε αργότερα.",disk_button:"Αποθήκευση σε αρχείο",link_title:"Κοινόχρηστος σύνδεσμος",link_details:"Εξαγωγή ως σύνδεσμο μόνο για ανάγνωση.",link_button:"Εξαγωγή σε Σύνδεση",excalidrawplus_description:"Αποθηκεύστε τη σκηνή στο χώρο εργασίας σας Excalidraw+.",excalidrawplus_button:"Εξαγωγή",excalidrawplus_exportError:"Δεν ήταν δυνατή η εξαγωγή στο Excalidraw+ αυτή τη στιγμή..."},Xvu={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:"Μετακίνηση σελίδας αριστερά/δεξιά"},xvu={title:"Καθαρισμός καμβά"},vvu={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:"Σημείωση: μερικά από τα επιλεγμένα αντικέιμενα έχουν ήδη επισημανθεί ως δημοσιευμένα/υποβεβλημένα. Θα πρέπει να υποβάλετε αντικείμενα εκ νέου μόνο για να ενημερώσετε μία ήδη υπάρχουσα βιβλιοθήκη ή υποβολή."},Svu={title:"Η βιβλιοθήκη υποβλήθηκε",content:"Ευχαριστούμε {{authorName}}. Η βιβλιοθήκη σας έχει υποβληθεί για αξιολόγηση. Μπορείτε να παρακολουθείτε τη διαδικασία<link>εδώ</link>"},Wvu={resetLibrary:"Καθαρισμός βιβλιοθήκης",removeItemsFromLib:"Αφαίρεση επιλεγμένων αντικειμένων από τη βιβλιοθήκη"},Yvu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Rvu={tooltip:"Τα σχέδιά σου είναι κρυπτογραφημένα από άκρο σε άκρο, έτσι δεν θα είναι ποτέ ορατά μέσα από τους διακομιστές του Excalidraw.",link:"Blog post στην κρυπτογράφηση end-to-end στο Excalidraw"},Tvu={angle:"Γωνία",element:"Στοιχείο",elements:"Στοιχεία",height:"Ύψος",scene:"Σκηνή",selected:"Επιλεγμένα",storage:"Χώρος",title:"Στατιστικά για σπασίκλες",total:"Σύνολο ",version:"Έκδοση",versionCopy:"Κάνε κλικ για αντιγραφή",versionNotAvailable:"Έκδοση μη διαθέσιμη",width:"Πλάτος"},Ovu={addedToLibrary:"Προστέθηκε στη βιβλιοθήκη",copyStyles:"Αντιγράφηκαν στυλ.",copyToClipboard:"Αντιγράφηκε στο πρόχειρο.",copyToClipboardAsPng:`Αντιγράφηκε {{exportSelection}} στο πρόχειρο ως PNG
({{exportColorScheme}})`,fileSaved:"Το αρχείο αποθηκεύτηκε.",fileSavedToFilename:"Αποθηκεύτηκε στο {filename}",canvas:"καμβάς",selection:"επιλογή",pasteAsSingleElement:`Χρησιμοποίησε το {{shortcut}} για να επικολλήσεις ως ένα μόνο στοιχείο,
ή να επικολλήσεις σε έναν υπάρχοντα επεξεργαστή κειμένου`,unableToEmbed:"",unrecognizedLinkFormat:""},Ivu={transparent:"Διαφανές",black:"Μαύρο",white:"Λευκό",red:"Κόκκινο",pink:"Ροζ",grape:"Σταφυλί",violet:"Βιολετί",gray:"Γκρι",blue:"Μπλε",cyan:"Κυανό",teal:"Τιρκουάζ",green:"Πράσινο",yellow:"Κίτρινο",orange:"Πορτοκαλί",bronze:"Χαλκινο"},Pvu={app:{center_heading:"Όλα τα δεδομένα σας αποθηκεύονται τοπικά στο πρόγραμμα περιήγησης.",center_heading_plus:"Μήπως θέλατε να πάτε στο Excalidraw+;",menuHint:"Εξαγωγή, προτιμήσεις, γλώσσες, ..."},defaults:{menuHint:"Εξαγωγή, προτιμήσεις και άλλες επιλογές...",center_heading:"Διαγράμματα. Εύκολα. Γρήγορα.",toolbarHint:"Επιλέξτε ένα εργαλείο και ξεκινήστε να σχεδιάζεται!",helpHint:"Συντομεύσεις και βοήθεια"}},jvu={mostUsedCustomColors:"Πιο χρησιμοποιούμενα χρώματα",colors:"Χρώματα",shades:"Αποχρώσεις",hexCode:"Κωδικός Hex",noShades:"Δεν υπάρχουν διαθέσιμες αποχρώσεις για αυτό το χρώμα"},Nvu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},ivu={title:"",button:"",description:"",syntax:"",preview:""},sU3={labels:fvu,library:lvu,buttons:bvu,alerts:Mvu,errors:Zvu,toolBar:Jvu,headings:wvu,hints:Kvu,canvasError:Qvu,errorSplash:Gvu,roomDialog:Hvu,errorDialog:Lvu,exportDialog:qvu,helpDialog:Xvu,clearCanvasDialog:xvu,publishDialog:vvu,publishSuccessDialog:Svu,confirmDialog:Wvu,imageExportDialog:Yvu,encrypted:Rvu,stats:Tvu,toast:Ovu,colors:Ivu,welcomeScreen:Pvu,colorPicker:jvu,overwriteConfirm:Nvu,mermaid:ivu}});var hvu={};ju(hvu,{welcomeScreen:()=>Ib0,userList:()=>Vb0,toolBar:()=>bb0,toast:()=>Tb0,stats:()=>Rb0,shareDialog:()=>Qb0,search:()=>zb0,roomDialog:()=>Gb0,quickSearch:()=>ib0,publishSuccessDialog:()=>vb0,publishDialog:()=>xb0,overwriteConfirm:()=>jb0,mermaid:()=>Nb0,library:()=>Ub0,labels:()=>Db0,imageExportDialog:()=>Wb0,hints:()=>Jb0,helpDialog:()=>qb0,headings:()=>Zb0,fontList:()=>ab0,exportDialog:()=>Lb0,errors:()=>lb0,errorSplash:()=>Kb0,errorDialog:()=>Hb0,encrypted:()=>Yb0,elementLink:()=>Fb0,element:()=>Mb0,default:()=>cO,confirmDialog:()=>Sb0,commandPalette:()=>hb0,colors:()=>Ob0,colorPicker:()=>Pb0,clearCanvasDialog:()=>Xb0,canvasError:()=>wb0,buttons:()=>kb0,alerts:()=>fb0});var mvu=g(()=>{mb0();m4()});var ZSu={};ju(ZSu,{welcomeScreen:()=>fSu,toolBar:()=>_vu,toast:()=>zSu,stats:()=>USu,roomDialog:()=>ovu,publishSuccessDialog:()=>ASu,publishDialog:()=>ESu,overwriteConfirm:()=>bSu,mermaid:()=>MSu,library:()=>$vu,labels:()=>rvu,imageExportDialog:()=>DSu,hints:()=>pvu,helpDialog:()=>uSu,headings:()=>nvu,exportDialog:()=>evu,errors:()=>gvu,errorSplash:()=>svu,errorDialog:()=>tvu,encrypted:()=>FSu,default:()=>oU3,confirmDialog:()=>CSu,colors:()=>kSu,colorPicker:()=>lSu,clearCanvasDialog:()=>BSu,canvasError:()=>dvu,buttons:()=>yvu,alerts:()=>cvu});var rvu,$vu,yvu,cvu,gvu,_vu,nvu,pvu,dvu,svu,ovu,tvu,evu,uSu,BSu,ESu,ASu,CSu,DSu,FSu,USu,zSu,kSu,fSu,lSu,bSu,MSu,oU3;var JSu=g(()=>{m4();rvu={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"},$vu={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í."},yvu={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"},cvu={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!`},gvu={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."},_vu={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"},nvu={canvasActions:"Acciones del lienzo",selectedShapeActions:"Acciones de la forma seleccionada",shapes:"Formas"},pvu={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"},dvu={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."},svu={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:"},ovu={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"},tvu={title:"Error"},evu={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..."},uSu={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"},BSu={title:"Borrar lienzo"},ESu={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."},ASu={title:"Biblioteca enviada",content:"Gracias {{authorName}}. Su biblioteca ha sido enviada para ser revisada. Puede seguir el estado<link>aquí</link>"},CSu={resetLibrary:"Reiniciar biblioteca",removeItemsFromLib:"Eliminar elementos seleccionados de la biblioteca"},DSu={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"}},FSu={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"},USu={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"},zSu={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:""},kSu={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"},fSu={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"}},lSu={mostUsedCustomColors:"Colores personalizados más utilizados",colors:"Colores",shades:"",hexCode:"Código Hexadecimal",noShades:""},bSu={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."}}},MSu={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"},oU3={labels:rvu,library:$vu,buttons:yvu,alerts:cvu,errors:gvu,toolBar:_vu,headings:nvu,hints:pvu,canvasError:dvu,errorSplash:svu,roomDialog:ovu,errorDialog:tvu,exportDialog:evu,helpDialog:uSu,clearCanvasDialog:BSu,publishDialog:ESu,publishSuccessDialog:ASu,confirmDialog:CSu,imageExportDialog:DSu,encrypted:FSu,stats:USu,toast:zSu,colors:kSu,welcomeScreen:fSu,colorPicker:lSu,overwriteConfirm:bSu,mermaid:MSu}});var ySu={};ju(ySu,{welcomeScreen:()=>hSu,toolBar:()=>LSu,toast:()=>aSu,stats:()=>iSu,roomDialog:()=>SSu,publishSuccessDialog:()=>ISu,publishDialog:()=>OSu,overwriteConfirm:()=>rSu,mermaid:()=>$Su,library:()=>KSu,labels:()=>wSu,imageExportDialog:()=>jSu,hints:()=>XSu,helpDialog:()=>RSu,headings:()=>qSu,exportDialog:()=>YSu,errors:()=>HSu,errorSplash:()=>vSu,errorDialog:()=>WSu,encrypted:()=>NSu,default:()=>tU3,confirmDialog:()=>PSu,colors:()=>VSu,colorPicker:()=>mSu,clearCanvasDialog:()=>TSu,canvasError:()=>xSu,buttons:()=>QSu,alerts:()=>GSu});var wSu,KSu,QSu,GSu,HSu,LSu,qSu,XSu,xSu,vSu,SSu,WSu,YSu,RSu,TSu,OSu,ISu,PSu,jSu,NSu,iSu,aSu,VSu,hSu,mSu,rSu,$Su,tU3;var cSu=g(()=>{m4();wSu={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:""},KSu={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."},QSu={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"},GSu={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!`},HSu={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."},LSu={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"},qSu={canvasActions:"Canvas ekintzak",selectedShapeActions:"Hautatutako formaren ekintzak",shapes:"Formak"},XSu={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"},xSu={cannotShowPreview:"Ezin da oihala aurreikusi",canvasTooBig:"Agian oihala handiegia da.",canvasTooBigTip:"Aholkua: saiatu urrunen dauden elementuak pixka bat hurbiltzen."},vSu={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:"},SSu={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"},WSu={title:"Errorea"},YSu={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..."},RSu={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"},TSu={title:"Garbitu oihala"},OSu={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."},ISu={title:"Liburutegia bidali da",content:"Eskerrik asko {{authorName}}. Zure liburutegia bidali da berrikustera. Jarraitu dezakezu haren egoera<link>hemen</link>"},PSu={resetLibrary:"Leheneratu liburutegia",removeItemsFromLib:"Kendu hautatutako elementuak liburutegitik"},jSu={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"}},NSu={tooltip:"Zure marrazkiak muturretik muturrera enkriptatu dira, beraz Excalidraw-ren zerbitzariek ezingo dituzte ikusi.",link:"Excalidraw-ren muturretik muturrerako enkriptatzearen gaineko mezua blogean"},iSu={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"},aSu={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"},VSu={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"},hSu={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"}},mSu={mostUsedCustomColors:"Gehien erabilitako kolore pertsonalizatuak",colors:"Koloreak",shades:"Ñabardurak",hexCode:"Hez kodea",noShades:"Kolore honetarako ez dago ñabardurarik eskuragarri"},rSu={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."}}},$Su={title:"",button:"Txertatu",description:"",syntax:"",preview:"Aurrebista"},tU3={labels:wSu,library:KSu,buttons:QSu,alerts:GSu,errors:HSu,toolBar:LSu,headings:qSu,hints:XSu,canvasError:xSu,errorSplash:vSu,roomDialog:SSu,errorDialog:WSu,exportDialog:YSu,helpDialog:RSu,clearCanvasDialog:TSu,publishDialog:OSu,publishSuccessDialog:ISu,confirmDialog:PSu,imageExportDialog:jSu,encrypted:NSu,stats:iSu,toast:aSu,colors:VSu,welcomeScreen:hSu,colorPicker:mSu,overwriteConfirm:rSu,mermaid:$Su}});var QWu={};ju(QWu,{welcomeScreen:()=>ZWu,toolBar:()=>sSu,toast:()=>bWu,stats:()=>lWu,roomDialog:()=>BWu,publishSuccessDialog:()=>UWu,publishDialog:()=>FWu,overwriteConfirm:()=>wWu,mermaid:()=>KWu,library:()=>_Su,labels:()=>gSu,imageExportDialog:()=>kWu,hints:()=>tSu,helpDialog:()=>CWu,headings:()=>oSu,exportDialog:()=>AWu,errors:()=>dSu,errorSplash:()=>uWu,errorDialog:()=>EWu,encrypted:()=>fWu,default:()=>eU3,confirmDialog:()=>zWu,colors:()=>MWu,colorPicker:()=>JWu,clearCanvasDialog:()=>DWu,canvasError:()=>eSu,buttons:()=>nSu,alerts:()=>pSu});var gSu,_Su,nSu,pSu,dSu,sSu,oSu,tSu,eSu,uWu,BWu,EWu,AWu,CWu,DWu,FWu,UWu,zWu,kWu,fWu,lWu,bWu,MWu,ZWu,JWu,wWu,KWu,eU3;var GWu=g(()=>{m4();gSu={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:""},_Su={noItems:"آیتمی به اینجا اضافه نشده...",hint_emptyLibrary:"یک آیتم روی بوم را برای اضافه شده به اینجا انتخاب کنید، یا یک کتابخانه از مخزن عمومی در بخش پایین را نصب کنید.",hint_emptyPrivateLibrary:"یک آیتم روی بوم را برای اضافه شدن به اینجا انتخاب کنید."},nSu={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:""},pSu={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:`اتصال به اینترنت در دسترس نیست.
تغییرات شما ذخیره نمی شود!`},dSu={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:""},sSu={selection:"گزینش",image:"وارد کردن تصویر",rectangle:"مستطیل",diamond:"لوزی",ellipse:"بیضی",arrow:"پیکان",line:"خط",freedraw:"کشیدن",text:"متن",library:"کتابخانه",lock:"ابزار انتخاب شده را بعد از کشیدن نگه دار",penMode:"حالت قلم - جلوگیری از تماس",link:"افزودن/به‌روزرسانی پیوند برای شکل انتخابی",eraser:"پاک کن",frame:"",magicframe:"",embeddable:"",laser:"",hand:"دست (ابزار پانینگ)",extraTools:"ابزارهای بیشتر",mermaidToExcalidraw:"",magicSettings:""},oSu={canvasActions:"عملیات روی بوم",selectedShapeActions:"عملیات روی شکل انتخاب شده",shapes:"شکل‌ها"},tSu={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:""},eSu={cannotShowPreview:"پیش نمایش نشان داده نمی شود",canvasTooBig:"بوم نقاشی بسیار بزرگ است.",canvasTooBigTip:"نکته: سعی کنید دورترین عناصر را کمی به همدیگر نزدیک کنید."},uWu={headingMain:"",clearCanvasMessage:"اگر بازنشانی صفحه مشکل را حل نکرد این را امتحان کنید ",clearCanvasCaveat:" این باعث میشود کارهای شما ذخیره نشود ",trackedToSentry:"",openIssueMessage:"",sceneContent:"محتوای صحنه:"},BWu={desc_intro:"می توانید افرادی را به صحنه فعلی خود دعوت کنید تا با شما همکاری کنند.",desc_privacy:"نگران نباشید، این جلسه از رمزگذاری دوطرفه استفاده می کند، پس هر چیزی بکشید خصوصی خواهد ماند. حتی سرور ما نمیتواند ببیند چیزی که شما طراحی میکنید.",button_startSession:"شروع جلسه",button_stopSession:"پایان جلسه",desc_inProgressIntro:"جلسه همکاری آنلاین در حال انجام است.",desc_shareLink:"این لینک را با هر کسی که می خواهید با او همکاری کنید به اشتراک بگذارید:",desc_exitSession:"با پایان دادن جلسه، شما از اتاق حذف میکند، اما می توانید به صورت محلی کار خود را با بوم ادامه دهید. توجه داشته باشید که این مورد بر سایر افراد تأثیر نمی گذارد و همچنان می توانند در نسخه خود همکاری کنند.",shareTitle:"به یک جلسه همکاری زنده در Excalidraw بپیوندید"},EWu={title:"خطا"},AWu={disk_title:"ذخیره در دیسک",disk_details:"داده های صحنه را به فایلی که بعداً می توانید از آن وارد کنید صادر کنید.",disk_button:"ذخیره در فایل",link_title:"لینک قابل اشتراک‌گذاری",link_details:"خروجی به عنوان یک پیوند فقط خواندنی.",link_button:"خروجی در فایل",excalidrawplus_description:"صحنه را در فضای کاری Excalidraw+ خود ذخیره کنید.",excalidrawplus_button:"خروجی گرفتن",excalidrawplus_exportError:"در حال حاضر نمی‌توان به Excalidraw+ صادر کرد..."},CWu={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:"حرکت صفحه به چپ/راست"},DWu={title:"پاک کردن بوم"},FWu={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:"توجه: برخی از موارد انتخاب شده به عنوان قبلاً منتشر شده/ارسال شده علامت گذاری شده اند. شما فقط باید هنگام به‌روزرسانی یک کتابخانه موجود یا ارسال، موارد را دوباره ارسال کنید."},UWu={title:"کتابخانه ارسال شد",content:"تشکر از شما {{authorName}}. کتابخانه شما برای بررسی ارسال شده است. می توانید وضعیت را پیگیری کنید"},zWu={resetLibrary:"تنظیم مجدد کتابخانه",removeItemsFromLib:"موارد انتخاب شده از موارد پسندیده حذف شوند"},kWu={header:"",label:{withBackground:"پس زمینه",onlySelected:"",darkMode:"حالت تیره",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"کپی در کلیپ‌بورد"}},fWu={tooltip:"شما در یک محیط رمزگزاری شده دو طرفه در حال طراحی هستید پس Excalidraw هرگز طرح های شما را نمیبند.",link:"پست وبلاگ در مورد رمزگذاری سرتاسر در Excalidraw"},lWu={angle:"زاویه",element:"اِلمان",elements:"اِلمان ها",height:"ارتفاع",scene:"صحنه",selected:"انتخاب شده",storage:"حافظه",title:"آمار برای نردها",total:"مجموع",version:"نسخه",versionCopy:"برای کپی کردن کلیک کنید",versionNotAvailable:"نسخه غیرقابل دسترس",width:"عرض"},bWu={addedToLibrary:"به مجموعه اضافه شد",copyStyles:"کپی سبک.",copyToClipboard:"در کلیپ‌بورد کپی شد.",copyToClipboardAsPng:`کپی {{exportSelection}} در کلیپبورد به عنوان PNG
({{exportColorScheme}})`,fileSaved:"فایل ذخیره شد.",fileSavedToFilename:"ذخیره در {filename}",canvas:"بوم",selection:"انتخاب",pasteAsSingleElement:`از {{shortcut}} برای چسباندن به عنوان یک عنصر استفاده کنید،
یا در یک ویرایشگر متن موجود جایگذاری کنید`,unableToEmbed:"",unrecognizedLinkFormat:""},MWu={transparent:"شفاف",black:"سیاه",white:"سفید",red:"قرمز",pink:"صورتی",grape:"یاقوتی",violet:"بنفش",gray:"خاکستری",blue:"آبی",cyan:"فیروزه‌ای",teal:"سبزآبی",green:"سبز",yellow:"زرد",orange:"نارنجی",bronze:"برنزی"},ZWu={app:{center_heading:"تمام داده های شما به صورت محلی در مرورگر شما ذخیره می شود.",center_heading_plus:"آیا می‌خواهید به جای آن به Excalidraw+ بروید؟",menuHint:"خروجی، ترجیحات، زبان ها، ..."},defaults:{menuHint:"خروجی، ترجیحات، وبیشتر ...",center_heading:"نمودارها .ساخته شده. ساده.",toolbarHint:"ابزاری را انتخاب کنید و نقاشی را شروع کنید!",helpHint:"میانبرها و راهنما"}},JWu={mostUsedCustomColors:"",colors:"رنگ‌ها",shades:"جلوه‌ها",hexCode:"کدِ هگز",noShades:""},wWu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"ذخیره در دیسک",button:"ذخیره در دیسک",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"بارگذاری از فایل",button:"بارگذاری از فایل",description:""},shareableLink:{title:"",button:"",description:""}}},KWu={title:"",button:"",description:"",syntax:"",preview:"پیش‌نمایش"},eU3={labels:gSu,library:_Su,buttons:nSu,alerts:pSu,errors:dSu,toolBar:sSu,headings:oSu,hints:tSu,canvasError:eSu,errorSplash:uWu,roomDialog:BWu,errorDialog:EWu,exportDialog:AWu,helpDialog:CWu,clearCanvasDialog:DWu,publishDialog:FWu,publishSuccessDialog:UWu,confirmDialog:zWu,imageExportDialog:kWu,encrypted:fWu,stats:lWu,toast:bWu,colors:MWu,welcomeScreen:ZWu,colorPicker:JWu,overwriteConfirm:wWu,mermaid:KWu}});var nWu={};ju(nWu,{welcomeScreen:()=>yWu,toolBar:()=>vWu,toast:()=>rWu,stats:()=>mWu,roomDialog:()=>TWu,publishSuccessDialog:()=>iWu,publishDialog:()=>NWu,overwriteConfirm:()=>gWu,mermaid:()=>_Wu,library:()=>LWu,labels:()=>HWu,imageExportDialog:()=>VWu,hints:()=>WWu,helpDialog:()=>PWu,headings:()=>SWu,exportDialog:()=>IWu,errors:()=>xWu,errorSplash:()=>RWu,errorDialog:()=>OWu,encrypted:()=>hWu,default:()=>uz3,confirmDialog:()=>aWu,colors:()=>$Wu,colorPicker:()=>cWu,clearCanvasDialog:()=>jWu,canvasError:()=>YWu,buttons:()=>qWu,alerts:()=>XWu});var HWu,LWu,qWu,XWu,xWu,vWu,SWu,WWu,YWu,RWu,TWu,OWu,IWu,PWu,jWu,NWu,iWu,aWu,VWu,hWu,mWu,rWu,$Wu,yWu,cWu,gWu,_Wu,uz3;var pWu=g(()=>{m4();HWu={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:""},LWu={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."},qWu={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:""},XWu={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!`},xWu={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:""},vWu={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:""},SWu={canvasActions:"Piirtoalueen toiminnot",selectedShapeActions:"Valitun muodon toiminnot",shapes:"Muodot"},WWu={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:""},YWu={cannotShowPreview:"Esikatselua ei voitu näyttää",canvasTooBig:"Piirtoalue saattaa olla liian suuri.",canvasTooBigTip:"Vinkki: yritä siirtää kaukaisimpia elementtejä hieman lähemmäs toisiaan."},RWu={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:"},TWu={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"},OWu={title:"Virhe"},IWu={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ä..."},PWu={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"},jWu={title:"Pyyhi piirtoalue"},NWu={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."},iWu={title:"Kirjasto lähetetty",content:"Kiitos {{authorName}}. Kirjastosi on lähetetty tarkistettavaksi. Voit seurata sen tilaa<link>täällä</link>"},aWu={resetLibrary:"Tyhjennä kirjasto",removeItemsFromLib:"Poista valitut kohteet kirjastosta"},VWu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},hWu={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"},mWu={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"},rWu={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:""},$Wu={transparent:"Läpinäkyvä",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},yWu={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"}},cWu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},gWu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},_Wu={title:"",button:"",description:"",syntax:"",preview:""},uz3={labels:HWu,library:LWu,buttons:qWu,alerts:XWu,errors:xWu,toolBar:vWu,headings:SWu,hints:WWu,canvasError:YWu,errorSplash:RWu,roomDialog:TWu,errorDialog:OWu,exportDialog:IWu,helpDialog:PWu,clearCanvasDialog:jWu,publishDialog:NWu,publishSuccessDialog:iWu,confirmDialog:aWu,imageExportDialog:VWu,encrypted:hWu,stats:mWu,toast:rWu,colors:$Wu,welcomeScreen:yWu,colorPicker:cWu,overwriteConfirm:gWu,mermaid:_Wu}});var qYu={};ju(qYu,{welcomeScreen:()=>QYu,toolBar:()=>uYu,toast:()=>wYu,stats:()=>JYu,roomDialog:()=>DYu,publishSuccessDialog:()=>lYu,publishDialog:()=>fYu,overwriteConfirm:()=>HYu,mermaid:()=>LYu,library:()=>sWu,labels:()=>dWu,imageExportDialog:()=>MYu,hints:()=>EYu,helpDialog:()=>zYu,headings:()=>BYu,exportDialog:()=>UYu,errors:()=>eWu,errorSplash:()=>CYu,errorDialog:()=>FYu,encrypted:()=>ZYu,default:()=>Bz3,confirmDialog:()=>bYu,colors:()=>KYu,colorPicker:()=>GYu,clearCanvasDialog:()=>kYu,canvasError:()=>AYu,buttons:()=>oWu,alerts:()=>tWu});var dWu,sWu,oWu,tWu,eWu,uYu,BYu,EYu,AYu,CYu,DYu,FYu,UYu,zYu,kYu,fYu,lYu,bYu,MYu,ZYu,JYu,wYu,KYu,QYu,GYu,HYu,LYu,Bz3;var XYu=g(()=>{m4();dWu={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"},sWu={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."},oWu={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"},tWu={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 !`},eWu={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."},uYu={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"},BYu={canvasActions:"Actions du canevas",selectedShapeActions:"Actions pour la forme sélectionnée",shapes:"Formes"},EYu={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"},AYu={cannotShowPreview:"Impossible dafficher laperçu",canvasTooBig:"Le canevas est peut-être trop grand.",canvasTooBigTip:"Astuce : essayez de rapprocher un peu les éléments les plus éloignés."},CYu={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 :"},DYu={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"},FYu={title:"Erreur"},UYu={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..."},zYu={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"},kYu={title:"Effacer la zone de dessin"},fYu={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."},lYu={title:"Bibliothèque soumise",content:"Merci {{authorName}}. Votre bibliothèque a été soumise pour examen. Vous pouvez suivre le statut<link>ici</link>"},bYu={resetLibrary:"Réinitialiser la bibliothèque",removeItemsFromLib:"Enlever les éléments sélectionnés de la bibliothèque"},MYu={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"}},ZYu={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"},JYu={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"},wYu={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"},KYu={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"},QYu={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"}},GYu={mostUsedCustomColors:"Couleurs personnalisées les plus fréquemment utilisées",colors:"Couleurs",shades:"Nuances",hexCode:"Code hex",noShades:"Aucune nuance disponible pour cette couleur"},HYu={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."}}},LYu={title:"De Mermaid à Excalidraw",button:"Insérer",description:"",syntax:"Syntaxe Mermaid",preview:"Prévisualisation"},Bz3={labels:dWu,library:sWu,buttons:oWu,alerts:tWu,errors:eWu,toolBar:uYu,headings:BYu,hints:EYu,canvasError:AYu,errorSplash:CYu,roomDialog:DYu,errorDialog:FYu,exportDialog:UYu,helpDialog:zYu,clearCanvasDialog:kYu,publishDialog:fYu,publishSuccessDialog:lYu,confirmDialog:bYu,imageExportDialog:MYu,encrypted:ZYu,stats:JYu,toast:wYu,colors:KYu,welcomeScreen:QYu,colorPicker:GYu,overwriteConfirm:HYu,mermaid:LYu}});var oYu={};ju(oYu,{welcomeScreen:()=>nYu,toolBar:()=>RYu,toast:()=>gYu,stats:()=>cYu,roomDialog:()=>jYu,publishSuccessDialog:()=>mYu,publishDialog:()=>hYu,overwriteConfirm:()=>dYu,mermaid:()=>sYu,library:()=>vYu,labels:()=>xYu,imageExportDialog:()=>$Yu,hints:()=>OYu,helpDialog:()=>aYu,headings:()=>TYu,exportDialog:()=>iYu,errors:()=>YYu,errorSplash:()=>PYu,errorDialog:()=>NYu,encrypted:()=>yYu,default:()=>Ez3,confirmDialog:()=>rYu,colors:()=>_Yu,colorPicker:()=>pYu,clearCanvasDialog:()=>VYu,canvasError:()=>IYu,buttons:()=>SYu,alerts:()=>WYu});var xYu,vYu,SYu,WYu,YYu,RYu,TYu,OYu,IYu,PYu,jYu,NYu,iYu,aYu,VYu,hYu,mYu,rYu,$Yu,yYu,cYu,gYu,_Yu,nYu,pYu,dYu,sYu,Ez3;var tYu=g(()=>{m4();xYu={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:""},vYu={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í."},SYu={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"},WYu={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!`},YYu={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:""},RYu={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:""},TYu={canvasActions:"Accións do lenzo",selectedShapeActions:"Accións da forma seleccionada",shapes:"Formas"},OYu={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:""},IYu={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."},PYu={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:"},jYu={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"},NYu={title:"Erro"},iYu={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..."},aYu={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"},VYu={title:"Limpar lenzo"},hYu={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."},mYu={title:"Biblioteca enviada",content:"Grazas {{authorName}}. A súa biblioteca foi enviada para ser revisada. Pode seguir o estado<link>aquí</link>"},rYu={resetLibrary:"Restablecer biblioteca",removeItemsFromLib:"Eliminar os elementos seleccionados da biblioteca"},$Yu={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"}},yYu={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"},cYu={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"},gYu={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:""},_Yu={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"},nYu={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"}},pYu={mostUsedCustomColors:"",colors:"Cores",shades:"",hexCode:"",noShades:""},dYu={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:""}}},sYu={title:"",button:"",description:"",syntax:"",preview:""},Ez3={labels:xYu,library:vYu,buttons:SYu,alerts:WYu,errors:YYu,toolBar:RYu,headings:TYu,hints:OYu,canvasError:IYu,errorSplash:PYu,roomDialog:jYu,errorDialog:NYu,exportDialog:iYu,helpDialog:aYu,clearCanvasDialog:VYu,publishDialog:hYu,publishSuccessDialog:mYu,confirmDialog:rYu,imageExportDialog:$Yu,encrypted:yYu,stats:cYu,toast:gYu,colors:_Yu,welcomeScreen:nYu,colorPicker:pYu,overwriteConfirm:dYu,mermaid:sYu}});var SRu={};ju(SRu,{welcomeScreen:()=>qRu,toolBar:()=>CRu,toast:()=>HRu,stats:()=>GRu,roomDialog:()=>kRu,publishSuccessDialog:()=>JRu,publishDialog:()=>ZRu,overwriteConfirm:()=>xRu,mermaid:()=>vRu,library:()=>uRu,labels:()=>eYu,imageExportDialog:()=>KRu,hints:()=>FRu,helpDialog:()=>bRu,headings:()=>DRu,exportDialog:()=>lRu,errors:()=>ARu,errorSplash:()=>zRu,errorDialog:()=>fRu,encrypted:()=>QRu,default:()=>Az3,confirmDialog:()=>wRu,colors:()=>LRu,colorPicker:()=>XRu,clearCanvasDialog:()=>MRu,canvasError:()=>URu,buttons:()=>BRu,alerts:()=>ERu});var eYu,uRu,BRu,ERu,ARu,CRu,DRu,FRu,URu,zRu,kRu,fRu,lRu,bRu,MRu,ZRu,JRu,wRu,KRu,QRu,GRu,HRu,LRu,qRu,XRu,xRu,vRu,Az3;var WRu=g(()=>{m4();eYu={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:""},uRu={noItems:"עוד לא הוספת דברים...",hint_emptyLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן, או שתתקין ספריה מהספריה הציבורית מטה.",hint_emptyPrivateLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן."},BRu={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:""},ERu={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:`אין חיבור זמין לאינטרנט.
השינויים שלך לא ישמרו!`},ARu={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:""},CRu={selection:"בחירה",image:"הוספת תמונה",rectangle:"מלבן",diamond:"יהלום",ellipse:"אליפסה",arrow:"חץ",line:"קו",freedraw:"צייר",text:"טקסט",library:"ספריה",lock:"השאר את הכלי הנבחר פעיל גם לאחר סיום הציור",penMode:"מצב עט - מנע נגיעה",link:"הוספה/עדכון קישור של הצורה שנבחרה",eraser:"מחק",frame:"",magicframe:"",embeddable:"",laser:"",hand:"יד (כלי הזזה)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},DRu={canvasActions:"פעולות קנבאס",selectedShapeActions:"פעולות על הצורות שנבחרו",shapes:"צורות"},FRu={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:""},URu={cannotShowPreview:"לא ניתן להראות תצוגה מקדימה",canvasTooBig:"הקנבס עלול להיות גדול מדי.",canvasTooBigTip:"טיפ: נסה להזיז את הרכיבים הרחוקים ביותר מעט קרוב יותר האחד לשני."},zRu={headingMain:"",clearCanvasMessage:"אם טעינה מחדש לא עובדת, נסה ",clearCanvasCaveat:" זה יגרום לאובדן העבודה ",trackedToSentry:"",openIssueMessage:"",sceneContent:"תוכן הקנבאס:"},kRu={desc_intro:"אתה יכול להזמין אנשים לקנבאס הנוכחי שלך לעבודה משותפת.",desc_privacy:"אל דאגה, השיתוף מוצפן מקצה לקצה, כך שכל מה שתצייר ישאר פרטי. אפילו השרתים שלנו לא יוכלו לראות את מה שאתה ממציא.",button_startSession:"התחל שיתוף",button_stopSession:"הפסק שיתוף",desc_inProgressIntro:"שיתוף חי פעיל כרגע.",desc_shareLink:"שתף את הקישור עם כל מי שאתה מעוניין לעבוד אתו:",desc_exitSession:"עצירת השיתוף תנתק אותך מהחדר, אבל עדיין תוכל להמשיך לעבוד על הקנבאס, מקומית. שים לב שזה לא ישפיע על אנשים אחרים, והם עדיין יוכלו לבצע שיתוף עם הגרסה שלהם.",shareTitle:"הצטרף לשיתוף לעבודה משותפת חיה, בזמן אמת, על גבי Excalidraw"},fRu={title:"שגיאה"},lRu={disk_title:"שמור לכונן",disk_details:"ייצא מידע של הקנבאס לקובץ שתוכל לייבא אחר כך.",disk_button:"שמירה לקובץ",link_title:"קבל קישור לשיתוף",link_details:"ייצוא כקישור לקריאה בלבד.",link_button:"ייצוא לקישור",excalidrawplus_description:"שמור את הקנבאס לסביבת העבודה שלך ב- +Excalidraw.",excalidrawplus_button:"ייצוא",excalidrawplus_exportError:"לא הצלחתי לייצא ל- +Excalidraw כרגע..."},bRu={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:"זוז עמוד שמאלה/ימינה"},MRu={title:"ניקוי הקנבס"},ZRu={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:"הערה: חלק מהפריטים שבחרת מסומנים ככאלו שכבר פורסמו/נשלחו. אתה צריך לשלוח פריטים מחדש כאשר אתה מעדכן ספריה או הגשה קיימים."},JRu={title:"הספריה הוגשה",content:"תודה {{authorName}}. הספריה שלך נשלחה לבחינה. תוכל לעקוב אחרי סטטוס הפרסום"},wRu={resetLibrary:"איפוס ספריה",removeItemsFromLib:"הסר את הפריטים הנבחרים מהספריה"},KRu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},QRu={tooltip:"הציורים שלך מוצפנים מקצה לקצה כך שהשרתים של Excalidraw לא יראו אותם לעולם.",link:"פוסט בבלוג על הצפנה מקצה לקצב ב-Excalidraw"},GRu={angle:"זווית",element:"רכיב",elements:"רכיבים",height:"גובה",scene:"תצוגה",selected:"נבחר",storage:"אחסון",title:"סטטיסטיקות לחנונים",total:"סה״כ",version:"גרסה",versionCopy:"לחץ להעתקה",versionNotAvailable:"הגרסה אינה זמינה",width:"רוחב"},HRu={addedToLibrary:"נוסף לספריה",copyStyles:"סגנונות הועתקו.",copyToClipboard:"הועתק ללוח.",copyToClipboardAsPng:`{{exportSelection}} הועתקה ללוח כ-PNG
({{exportColorScheme}})`,fileSaved:"קובץ נשמר.",fileSavedToFilename:"נשמר לקובץ {filename}",canvas:"קנבאס",selection:"בחירה",pasteAsSingleElement:`השתמש ב- {{shortcut}} כדי להדביק כפריט יחיד,
או הדבק לתוך עורך טקסט קיים`,unableToEmbed:"",unrecognizedLinkFormat:""},LRu={transparent:"שקוף",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},qRu={app:{center_heading:"כל המידע שלח נשמר מקומית בדפדפן.",center_heading_plus:"אתה רוצה ללכת אל Excalidraw+ במקום?",menuHint:"ייצוא, העדפות, שפות, ..."},defaults:{menuHint:"ייצוא, העדפות, ועוד...",center_heading:"איורים. נעשים. פשוטים.",toolbarHint:"בחר כלי & והתחל לצייר!",helpHint:"קיצורים & עזרה"}},XRu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},xRu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},vRu={title:"",button:"",description:"",syntax:"",preview:""},Az3={labels:eYu,library:uRu,buttons:BRu,alerts:ERu,errors:ARu,toolBar:CRu,headings:DRu,hints:FRu,canvasError:URu,errorSplash:zRu,roomDialog:kRu,errorDialog:fRu,exportDialog:lRu,helpDialog:bRu,clearCanvasDialog:MRu,publishDialog:ZRu,publishSuccessDialog:JRu,confirmDialog:wRu,imageExportDialog:KRu,encrypted:QRu,stats:GRu,toast:HRu,colors:LRu,welcomeScreen:qRu,colorPicker:XRu,overwriteConfirm:xRu,mermaid:vRu}});var BTu={};ju(BTu,{welcomeScreen:()=>oRu,toolBar:()=>PRu,toast:()=>dRu,stats:()=>pRu,roomDialog:()=>VRu,publishSuccessDialog:()=>cRu,publishDialog:()=>yRu,overwriteConfirm:()=>eRu,mermaid:()=>uTu,library:()=>RRu,labels:()=>YRu,imageExportDialog:()=>_Ru,hints:()=>NRu,helpDialog:()=>rRu,headings:()=>jRu,exportDialog:()=>mRu,errors:()=>IRu,errorSplash:()=>aRu,errorDialog:()=>hRu,encrypted:()=>nRu,default:()=>Cz3,confirmDialog:()=>gRu,colors:()=>sRu,colorPicker:()=>tRu,clearCanvasDialog:()=>$Ru,canvasError:()=>iRu,buttons:()=>TRu,alerts:()=>ORu});var YRu,RRu,TRu,ORu,IRu,PRu,jRu,NRu,iRu,aRu,VRu,hRu,mRu,rRu,$Ru,yRu,cRu,gRu,_Ru,nRu,pRu,dRu,sRu,oRu,tRu,eRu,uTu,Cz3;var ETu=g(()=>{m4();YRu={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:""},RRu={noItems:"अभी तक कोई आइटम जोडा नहीं गया.",hint_emptyLibrary:"यहाँ जोड़ने के लिए पटल से एक वस्तु चुने, अथवा जन कोष से एक संग्रह नीचे स्थापित करें.",hint_emptyPrivateLibrary:"यहाँ जोड़ने के लिए पटल से एक वस्तु चुने."},TRu={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:""},ORu={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:`कोई इंटरनेट कनेक्शन उपलब्ध नहीं है।
आपके बदलाव सहेजे नहीं जाएंगे!`},IRu={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:"क्लिपबोर्ड पर प्रतिलिपि नहीं बनाई जा सकी."},PRu={selection:"चयन",image:"छवि सम्मिलित करें",rectangle:"आयात",diamond:"तिर्यग्वर्ग",ellipse:"दीर्घवृत्त",arrow:"तीर",line:"रेखा",freedraw:"चित्रांतित करे",text:"पाठ",library:"लाइब्रेरी",lock:"ड्राइंग के बाद चयनित टूल को सक्रिय रखें",penMode:"पेन का मोड - स्पर्श टाले",link:"",eraser:"रबड़",frame:"",magicframe:"तारिक ढाँचें को सांकेतिक लिपि में",embeddable:"",laser:"लेसर टॉर्च",hand:"हाथ ( खिसकाने का औज़ार)",extraTools:"",mermaidToExcalidraw:"मर्मेड से एक्सकाली में",magicSettings:"कृतिम बुद्धिमत्ता सेटिंग्स"},jRu={canvasActions:"कैनवास क्रिया",selectedShapeActions:"चयनित आकृति क्रियाएं",shapes:"आकृतियाँ"},NRu={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 दबाए रखें"},iRu={cannotShowPreview:"पूर्वावलोकन नहीं दिखा सकते हैं",canvasTooBig:"कैनवास बहुत बड़ा",canvasTooBigTip:"कैनवास बहुत बड़ा टिप"},aRu={headingMain:"एक त्रुटि का सामना करना पड़ा। प्रयत्न <button>इस पृष्ठ को पुनः लोड करें</button>",clearCanvasMessage:"यदि पुनः लोड करना काम नहीं करता है, तो प्रयास करें <button>कैनवास साफ करना।</button>",clearCanvasCaveat:" इससे काम का नुकसान होगा ",trackedToSentry:"पहचानकर्ता के साथ त्रुटि {{eventId}} हमारे सिस्टम पर नज़र रखी गई थी।",openIssueMessage:"हम बहुत सतर्क थे कि त्रुटि पर आपकी दृश्य जानकारी शामिल न करें। यदि आपका दृश्य निजी नहीं है, तो कृपया हमारे बारे में विचार करें <button>बग ट्रैकर</button> कृपया GitHub मुद्दे को कॉपी और पेस्ट करके नीचे दी गई जानकारी शामिल करें।",sceneContent:"दृश्य सामग्री:"},VRu={desc_intro:"आप अपने वर्तमान दृश्य के लोगों को अपने साथ सहयोग करने के लिए आमंत्रित कर सकते हैं।",desc_privacy:"चिंता न करें, सत्र अंत-से-अंत एन्क्रिप्शन का उपयोग करता है, इसलिए आप जो भी ड्रा करेंगे वह निजी रहेगा। यहां तक कि हमारा सर्वर भी नहीं देख पाएगा कि आप क्या कर रहे हैं।",button_startSession:"सत्र प्रारंभ करें",button_stopSession:"सत्र रुकें",desc_inProgressIntro:"लाइव सहयोग सत्र अब जारी है।",desc_shareLink:"इस लिंक को आप जिस किसी के साथ भी सहयोग करना चाहते हैं, उसके साथ साझा करें",desc_exitSession:"सत्र रोकना आपको रूम से बाहर कर देगा, लेकिन आप स्थानीय स्तर पर दृश्य के साथ काम करना जारी रख पाएंगे। ध्यान दें कि यह अन्य लोगों को प्रभावित नहीं करेगा, और वे अभी भी अपने संस्करण पर सहयोग करने में सक्षम होंगे।",shareTitle:""},hRu={title:"गलती"},mRu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},rRu={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:"पृष्ठ बायी/दायी तरफ करे"},$Ru={title:""},yRu={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:"टिप्पणी: कुछ चुने हुवे आइटम पहले ही प्रकाशित/प्रस्तुत किए जा चुके हैं। किसी प्रकाशित संग्रह को अद्यतन करते समय या पहले से प्रस्तुत आइटम को पुन्हा प्रस्तुत करते समय, आप बस उसे केवल अद्यतन करें ।"},cRu={title:"",content:"{{authorName}} धन्यवाद. आपका संग्रहण समीक्षा के लिए दर्ज हो चुका है. समीक्षा स्थिति <link>यहाँ</link>जान सकते हैं."},gRu={resetLibrary:"",removeItemsFromLib:""},_Ru={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},nRu={tooltip:"आपके चित्र अंत-से-अंत एन्क्रिप्टेड हैं, इसलिए एक्सक्लूसिव्रॉव के सर्वर उन्हें कभी नहीं देखेंगे।",link:""},pRu={angle:"कोण",element:"एलिमेंट",elements:"एलिमेंट",height:"ऊंचाई",scene:"दृश्य",selected:"चयनित",storage:"संग्रह",title:"बेवकूफ के लिए आँकड़े",total:"कुल",version:"संस्करण",versionCopy:"काॅपी करने के लिए क्लिक करें",versionNotAvailable:"संस्करण उपलब्ध नहीं है",width:"चौड़ाई"},dRu={addedToLibrary:"",copyStyles:"काॅपी कीए स्टाइल",copyToClipboard:"क्लिपबोर्ड में कॉपी कीए",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:`एक अवयव के रूप में चिपकाने के लिए {{shortcut}} का उपयोग करें,
या किसी मौजूदा पाठ संपादक में चिपकायें`,unableToEmbed:"",unrecognizedLinkFormat:""},sRu={transparent:"",black:"काला",white:"सफ़ेद",red:"लाल",pink:"गुलाबी",grape:"अंगूरी",violet:"जामुनी",gray:"गहरा",blue:"नीला",cyan:"आसमानी",teal:"हरा-नीला",green:"हरा",yellow:"पीला",orange:"नारंगी",bronze:"कांस्य"},oRu={app:{center_heading:"आपका सर्व डेटा ब्राउज़र के भीतर स्थानिक जगह पे सुरक्षित किया गया.",center_heading_plus:"बजाय आपको Excalidraw+ पर जाना है?",menuHint:"निर्यात, पसंद, भाषायें, ..."},defaults:{menuHint:"निर्यात, पसंद, और भी...",center_heading:"चित्रांकन। बनाया गया। सरल।",toolbarHint:"एक औजार चुने और चित्रकारी प्रारंभ करे!",helpHint:"शॉर्ट्कट और सहाय्य"}},tRu={mostUsedCustomColors:"अधिकांश उपयोगित रंग",colors:"रंग",shades:"छाया",hexCode:"हेक्स कोड",noShades:"इस रंग की कोई छाया उपलब्ध नहीं हैं"},eRu={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>आप आपकी ड्रॉइंग पहले निम्न दर्शित विकल्पो में से एक चुनके और उपयोग करके सम्हाल सकते हों."}}},uTu={title:"मर्मेड से एक्सकाली में",button:"अंदर डाले",description:"",syntax:"मर्मेड संरचना नियम",preview:"पूर्वावलोकन"},Cz3={labels:YRu,library:RRu,buttons:TRu,alerts:ORu,errors:IRu,toolBar:PRu,headings:jRu,hints:NRu,canvasError:iRu,errorSplash:aRu,roomDialog:VRu,errorDialog:hRu,exportDialog:mRu,helpDialog:rRu,clearCanvasDialog:$Ru,publishDialog:yRu,publishSuccessDialog:cRu,confirmDialog:gRu,imageExportDialog:_Ru,encrypted:nRu,stats:pRu,toast:dRu,colors:sRu,welcomeScreen:oRu,colorPicker:tRu,overwriteConfirm:eRu,mermaid:uTu}});var TTu={};ju(TTu,{welcomeScreen:()=>STu,toolBar:()=>zTu,toast:()=>xTu,stats:()=>XTu,roomDialog:()=>MTu,publishSuccessDialog:()=>GTu,publishDialog:()=>QTu,overwriteConfirm:()=>YTu,mermaid:()=>RTu,library:()=>CTu,labels:()=>ATu,imageExportDialog:()=>LTu,hints:()=>fTu,helpDialog:()=>wTu,headings:()=>kTu,exportDialog:()=>JTu,errors:()=>UTu,errorSplash:()=>bTu,errorDialog:()=>ZTu,encrypted:()=>qTu,default:()=>Dz3,confirmDialog:()=>HTu,colors:()=>vTu,colorPicker:()=>WTu,clearCanvasDialog:()=>KTu,canvasError:()=>lTu,buttons:()=>DTu,alerts:()=>FTu});var ATu,CTu,DTu,FTu,UTu,zTu,kTu,fTu,lTu,bTu,MTu,ZTu,JTu,wTu,KTu,QTu,GTu,HTu,LTu,qTu,XTu,xTu,vTu,STu,WTu,YTu,RTu,Dz3;var OTu=g(()=>{m4();ATu={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:""},CTu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},DTu={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:""},FTu={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:""},UTu={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:""},zTu={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:""},kTu={canvasActions:"Vászon műveletek",selectedShapeActions:"Kijelölt forma műveletei",shapes:"Alakzatok"},fTu={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:""},lTu={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."},bTu={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:"},MTu={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"},ZTu={title:"Hiba"},JTu={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..."},wTu={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:""},KTu={title:"Rajzvászon alaphelyzetbe"},QTu={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:""},GTu={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>"},HTu={resetLibrary:"Könyvtár alaphelyzetbe állítása",removeItemsFromLib:"A kiválasztott elemek eltávolítása a könyvtárból"},LTu={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"}},qTu={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"},XTu={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"},xTu={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:""},vTu={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"},STu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},WTu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"Hexadecimális kód",noShades:""},YTu={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:""}}},RTu={title:"",button:"",description:"",syntax:"",preview:""},Dz3={labels:ATu,library:CTu,buttons:DTu,alerts:FTu,errors:UTu,toolBar:zTu,headings:kTu,hints:fTu,canvasError:lTu,errorSplash:bTu,roomDialog:MTu,errorDialog:ZTu,exportDialog:JTu,helpDialog:wTu,clearCanvasDialog:KTu,publishDialog:QTu,publishSuccessDialog:GTu,confirmDialog:HTu,imageExportDialog:LTu,encrypted:qTu,stats:XTu,toast:xTu,colors:vTu,welcomeScreen:STu,colorPicker:WTu,overwriteConfirm:YTu,mermaid:RTu}});var DOu={};ju(DOu,{welcomeScreen:()=>BOu,toolBar:()=>aTu,toast:()=>eTu,stats:()=>tTu,roomDialog:()=>$Tu,publishSuccessDialog:()=>pTu,publishDialog:()=>nTu,overwriteConfirm:()=>AOu,mermaid:()=>COu,library:()=>PTu,labels:()=>ITu,imageExportDialog:()=>sTu,hints:()=>hTu,helpDialog:()=>gTu,headings:()=>VTu,exportDialog:()=>cTu,errors:()=>iTu,errorSplash:()=>rTu,errorDialog:()=>yTu,encrypted:()=>oTu,default:()=>Fz3,confirmDialog:()=>dTu,colors:()=>uOu,colorPicker:()=>EOu,clearCanvasDialog:()=>_Tu,canvasError:()=>mTu,buttons:()=>jTu,alerts:()=>NTu});var ITu,PTu,jTu,NTu,iTu,aTu,VTu,hTu,mTu,rTu,$Tu,yTu,cTu,gTu,_Tu,nTu,pTu,dTu,sTu,oTu,tTu,eTu,uOu,BOu,EOu,AOu,COu,Fz3;var FOu=g(()=>{m4();ITu={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:""},PTu={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."},jTu={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:""},NTu={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!`},iTu={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:""},aTu={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:""},VTu={canvasActions:"Opsi Kanvas",selectedShapeActions:"Opsi bentuk yang dipilih",shapes:"Bentuk"},hTu={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:""},mTu={cannotShowPreview:"Tidak dapat menampilkan pratinjau",canvasTooBig:"Kanvas mungkin terlalu besar.",canvasTooBigTip:"Tip: coba pindahkan elemen-terjauh lebih dekat bersama."},rTu={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:"},$Tu={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"},yTu={title:"Kesalahan"},cTu={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..."},gTu={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"},_Tu={title:"Hapus kanvas"},nTu={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."},pTu={title:"Pustaka telah dikirm",content:"Terima kasih {{authorName}}. pustaka Anda telah diserahkan untuk ditinjau ulang. Anda dapat cek statusnya<link>di sini</link>"},dTu={resetLibrary:"Reset pustaka",removeItemsFromLib:"Hapus item yang dipilih dari pustaka"},sTu={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"}},oTu={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"},tTu={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"},eTu={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:""},uOu={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"},BOu={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"}},EOu={mostUsedCustomColors:"Warna yang sering dipakai",colors:"Warna",shades:"Nuansa",hexCode:"Kode hexa",noShades:"Tidak ada nuansa untuk warna ini"},AOu={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."}}},COu={title:"",button:"",description:"",syntax:"",preview:""},Fz3={labels:ITu,library:PTu,buttons:jTu,alerts:NTu,errors:iTu,toolBar:aTu,headings:VTu,hints:hTu,canvasError:mTu,errorSplash:rTu,roomDialog:$Tu,errorDialog:yTu,exportDialog:cTu,helpDialog:gTu,clearCanvasDialog:_Tu,publishDialog:nTu,publishSuccessDialog:pTu,confirmDialog:dTu,imageExportDialog:sTu,encrypted:oTu,stats:tTu,toast:eTu,colors:uOu,welcomeScreen:BOu,colorPicker:EOu,overwriteConfirm:AOu,mermaid:COu}});var jOu={};ju(jOu,{welcomeScreen:()=>TOu,toolBar:()=>bOu,toast:()=>YOu,stats:()=>WOu,roomDialog:()=>KOu,publishSuccessDialog:()=>XOu,publishDialog:()=>qOu,overwriteConfirm:()=>IOu,mermaid:()=>POu,library:()=>zOu,labels:()=>UOu,imageExportDialog:()=>vOu,hints:()=>ZOu,helpDialog:()=>HOu,headings:()=>MOu,exportDialog:()=>GOu,errors:()=>lOu,errorSplash:()=>wOu,errorDialog:()=>QOu,encrypted:()=>SOu,default:()=>Uz3,confirmDialog:()=>xOu,colors:()=>ROu,colorPicker:()=>OOu,clearCanvasDialog:()=>LOu,canvasError:()=>JOu,buttons:()=>kOu,alerts:()=>fOu});var UOu,zOu,kOu,fOu,lOu,bOu,MOu,ZOu,JOu,wOu,KOu,QOu,GOu,HOu,LOu,qOu,XOu,xOu,vOu,SOu,WOu,YOu,ROu,TOu,OOu,IOu,POu,Uz3;var NOu=g(()=>{m4();UOu={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"},zOu={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."},kOu={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"},fOu={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!`},lOu={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."},bOu={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"},MOu={canvasActions:"Azioni sulla Tela",selectedShapeActions:"Impostazioni della forma selezionata",shapes:"Forme"},ZOu={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"},JOu={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."},wOu={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:"},KOu={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"},QOu={title:"Errore"},GOu={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..."},HOu={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"},LOu={title:"Svuota la tela"},qOu={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."},XOu={title:"Libreria inviata",content:"Grazie {{authorName}}. La tua libreria è stata inviata per la revisione. Puoi monitorarne lo stato<link>qui</link>"},xOu={resetLibrary:"Ripristina la libreria",removeItemsFromLib:"Rimuovi gli elementi selezionati dalla libreria"},vOu={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"}},SOu={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"},WOu={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"},YOu={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"},ROu={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"},TOu={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"}},OOu={mostUsedCustomColors:"Colori personalizzati più utilizzati",colors:"Colori",shades:"Sfumature",hexCode:"Codice esadecimale",noShades:"Nessuna sfumatura disponibile per questo colore"},IOu={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."}}},POu={title:"",button:"Inserisci",description:"",syntax:"",preview:"Anteprima"},Uz3={labels:UOu,library:zOu,buttons:kOu,alerts:fOu,errors:lOu,toolBar:bOu,headings:MOu,hints:ZOu,canvasError:JOu,errorSplash:wOu,roomDialog:KOu,errorDialog:QOu,exportDialog:GOu,helpDialog:HOu,clearCanvasDialog:LOu,publishDialog:qOu,publishSuccessDialog:XOu,confirmDialog:xOu,imageExportDialog:vOu,encrypted:SOu,stats:WOu,toast:YOu,colors:ROu,welcomeScreen:TOu,colorPicker:OOu,overwriteConfirm:IOu,mermaid:POu}});var kIu={};ju(kIu,{welcomeScreen:()=>DIu,toolBar:()=>rOu,toast:()=>AIu,stats:()=>EIu,roomDialog:()=>_Ou,publishSuccessDialog:()=>tOu,publishDialog:()=>oOu,overwriteConfirm:()=>UIu,mermaid:()=>zIu,library:()=>aOu,labels:()=>iOu,imageExportDialog:()=>uIu,hints:()=>yOu,helpDialog:()=>dOu,headings:()=>$Ou,exportDialog:()=>pOu,errors:()=>mOu,errorSplash:()=>gOu,errorDialog:()=>nOu,encrypted:()=>BIu,default:()=>zz3,confirmDialog:()=>eOu,colors:()=>CIu,colorPicker:()=>FIu,clearCanvasDialog:()=>sOu,canvasError:()=>cOu,buttons:()=>VOu,alerts:()=>hOu});var iOu,aOu,VOu,hOu,mOu,rOu,$Ou,yOu,cOu,gOu,_Ou,nOu,pOu,dOu,sOu,oOu,tOu,eOu,uIu,BIu,EIu,AIu,CIu,DIu,FIu,UIu,zIu,zz3;var fIu=g(()=>{m4();iOu={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:""},aOu={noItems:"まだアイテムが追加されていません…",hint_emptyLibrary:"キャンバス上のアイテムを選択してここに追加するか、以下の公開リポジトリからライブラリをインストールしてください。",hint_emptyPrivateLibrary:"キャンバス上のアイテムを選択すると、ここに追加されます。"},VOu={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:""},hOu={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:`インターネットに接続されていません。
変更は保存されません!`},mOu={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:""},rOu={selection:"選択",image:"画像を挿入",rectangle:"矩形",diamond:"ひし形",ellipse:"楕円",arrow:"矢印",line:"直線",freedraw:"描画",text:"テキスト",library:"ライブラリ",lock:"描画後も使用中のツールを選択したままにする",penMode:"ペンモード - タッチ防止",link:"選択した図形のリンクを追加/更新",eraser:"消しゴム",frame:"フレームツール",magicframe:"",embeddable:"Web埋め込み",laser:"",hand:"手 (パンニングツール)",extraTools:"その他のツール",mermaidToExcalidraw:"",magicSettings:""},$Ou={canvasActions:"キャンバス操作",selectedShapeActions:"選択された図形に対する操作",shapes:"図形"},yOu={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:""},cOu={cannotShowPreview:"プレビューを表示できません",canvasTooBig:"キャンバスが大きすぎます。",canvasTooBigTip:"ヒント: 最も遠い要素をもう少し近づけてみてください。"},gOu={headingMain:"エラーが発生しました。もう一度やり直してください。 <button>ページを再読み込みする。</button>",clearCanvasMessage:"再読み込みがうまくいかない場合は、 <button>キャンバスを消去しています</button>",clearCanvasCaveat:" これにより作業が失われます ",trackedToSentry:"識別子のエラー {{eventId}} が我々のシステムで追跡されました。",openIssueMessage:"エラーに関するシーン情報を含めないように非常に慎重に設定しました。もしあなたのシーンがプライベートでない場合は、私たちのフォローアップを検討してください。 <button>バグ報告</button> GitHub のIssueに以下の情報をコピーして貼り付けてください。",sceneContent:"シーンの内容:"},_Ou={desc_intro:"他の人を編集中のあなたの画面に招待して共同編集することができます。",desc_privacy:"このセッションはエンドツーエンド暗号化されており、描画内容は保護されています。運営サーバーからも内容は見えません。",button_startSession:"セッションを開始する",button_stopSession:"セッションを終了する",desc_inProgressIntro:"共同編集セッションが有効になっています。",desc_shareLink:"下記URLを共同編集したい人に共有してください:",desc_exitSession:"セッションを終了するとあなたはルームから切断されますが、ローカルで作業を続けることができます。セッションを終了しても他のメンバには影響はなく、引き続き共同作業を行うことができます。",shareTitle:"Excalidrawの共同編集セッションに参加する"},nOu={title:"エラー"},pOu={disk_title:"ディスクに保存",disk_details:"シーンデータを後からインポートできるファイルにエクスポートします。",disk_button:"ファイルへ保存",link_title:"共有可能なリンク",link_details:"読み取り専用リンクとしてエクスポート",link_button:"リンクとしてエクスポート",excalidrawplus_description:"Excalidraw+ ワークスペースにシーンを保存します。",excalidrawplus_button:"エクスポート",excalidrawplus_exportError:"Excalidraw+ にエクスポートできませんでした..."},dOu={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:"ページを左右に移動"},sOu={title:"キャンバスを消去"},oOu={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:"注意: 選択された項目の中には、すでに公開/投稿済みと表示されているものがあります。既存のライブラリや投稿を更新する場合のみ、アイテムを再投稿してください。"},tOu={title:"ライブラリを送信しました",content:"{{authorName}} さん、ありがとうございます。あなたのライブラリはレビューのために提出されました。状況を追跡できます。<link>こちら</link>"},eOu={resetLibrary:"ライブラリをリセット",removeItemsFromLib:"選択したアイテムをライブラリから削除"},uIu={header:"画像をエクスポート",label:{withBackground:"背景",onlySelected:"",darkMode:"ダークモード",embedScene:"",scale:"スケール",padding:"余白"},tooltip:{embedScene:""},title:{exportToPng:"PNG にエクスポート",exportToSvg:"SVG にエクスポート",copyPngToClipboard:"クリップボードにPNGをコピー"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"クリップボードにコピー"}},BIu={tooltip:"描画内容はエンドツーエンド暗号化が施されており、Excalidrawサーバーが内容を見ることはできません。",link:"Excalidrawのエンドツーエンド暗号化に関するブログ記事"},EIu={angle:"角度",element:"要素",elements:"要素",height:"高さ",scene:"シーン",selected:"選択済み",storage:"ストレージ",title:"詳細統計情報",total:"合計",version:"バージョン",versionCopy:"クリックしてコピー",versionNotAvailable:"利用できないバージョン",width:"幅"},AIu={addedToLibrary:"ライブラリに追加しました",copyStyles:"スタイルをコピーしました。",copyToClipboard:"クリップボードにコピー",copyToClipboardAsPng:`{{exportSelection}} を PNG 形式でクリップボードにコピーしました
({{exportColorScheme}})`,fileSaved:"ファイルを保存しました",fileSavedToFilename:"{filename} に保存しました",canvas:"キャンバス",selection:"選択",pasteAsSingleElement:`{{shortcut}} を使用して単一の要素として貼り付けるか、
既存のテキストエディタに貼り付け`,unableToEmbed:"",unrecognizedLinkFormat:""},CIu={transparent:"透明",black:"黒",white:"白",red:"赤",pink:"ピンク",grape:"グレープ",violet:"バイオレット",gray:"灰色",blue:"青",cyan:"シアン",teal:"ティール",green:"緑",yellow:"黄",orange:"オレンジ",bronze:"ブロンズ"},DIu={app:{center_heading:"すべてのデータはブラウザにローカル保存されます。",center_heading_plus:"代わりにExcalidraw+を開きますか?",menuHint:"エクスポート、設定、言語..."},defaults:{menuHint:"エクスポート、設定、その他...",center_heading:"ダイアグラムを簡単に。",toolbarHint:"ツールを選んで描き始めよう!",helpHint:"ショートカットとヘルプ"}},FIu={mostUsedCustomColors:"最も使用されているカスタム色",colors:"色",shades:"影",hexCode:"Hexコード",noShades:""},UIu={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:""}}},zIu={title:"",button:"",description:"",syntax:"",preview:""},zz3={labels:iOu,library:aOu,buttons:VOu,alerts:hOu,errors:mOu,toolBar:rOu,headings:$Ou,hints:yOu,canvasError:cOu,errorSplash:gOu,roomDialog:_Ou,errorDialog:nOu,exportDialog:pOu,helpDialog:dOu,clearCanvasDialog:sOu,publishDialog:oOu,publishSuccessDialog:tOu,confirmDialog:eOu,imageExportDialog:uIu,encrypted:BIu,stats:EIu,toast:AIu,colors:CIu,welcomeScreen:DIu,colorPicker:FIu,overwriteConfirm:UIu,mermaid:zIu}});var VIu={};ju(VIu,{welcomeScreen:()=>jIu,toolBar:()=>wIu,toast:()=>IIu,stats:()=>OIu,roomDialog:()=>LIu,publishSuccessDialog:()=>WIu,publishDialog:()=>SIu,overwriteConfirm:()=>iIu,mermaid:()=>aIu,library:()=>bIu,labels:()=>lIu,imageExportDialog:()=>RIu,hints:()=>QIu,helpDialog:()=>xIu,headings:()=>KIu,exportDialog:()=>XIu,errors:()=>JIu,errorSplash:()=>HIu,errorDialog:()=>qIu,encrypted:()=>TIu,default:()=>kz3,confirmDialog:()=>YIu,colors:()=>PIu,colorPicker:()=>NIu,clearCanvasDialog:()=>vIu,canvasError:()=>GIu,buttons:()=>MIu,alerts:()=>ZIu});var lIu,bIu,MIu,ZIu,JIu,wIu,KIu,QIu,GIu,HIu,LIu,qIu,XIu,xIu,vIu,SIu,WIu,YIu,RIu,TIu,OIu,IIu,PIu,jIu,NIu,iIu,aIu,kz3;var hIu=g(()=>{m4();lIu={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:""},bIu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},MIu={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:""},ZIu={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:""},JIu={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:""},wIu={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:""},KIu={canvasActions:"",selectedShapeActions:"",shapes:"Figuralar"},QIu={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:""},GIu={cannotShowPreview:"Aldınnan kóriwdi kórsetiw múmkin emes",canvasTooBig:"",canvasTooBigTip:""},HIu={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},LIu={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},qIu={title:"Qátelik"},XIu={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:""},xIu={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:""},vIu={title:""},SIu={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:""},WIu={title:"Kitapxana jiberildi",content:""},YIu={resetLibrary:"Kitapxananı qayta ornatıw",removeItemsFromLib:""},RIu={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"}},TIu={tooltip:"",link:""},OIu={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"},IIu={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:""},PIu={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:""},jIu={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:""}},NIu={mostUsedCustomColors:"Kóp qollanılatuǵın arnawlı reńler",colors:"Reńler",shades:"",hexCode:"",noShades:""},iIu={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:""}}},aIu={title:"",button:"",description:"",syntax:"",preview:""},kz3={labels:lIu,library:bIu,buttons:MIu,alerts:ZIu,errors:JIu,toolBar:wIu,headings:KIu,hints:QIu,canvasError:GIu,errorSplash:HIu,roomDialog:LIu,errorDialog:qIu,exportDialog:XIu,helpDialog:xIu,clearCanvasDialog:vIu,publishDialog:SIu,publishSuccessDialog:WIu,confirmDialog:YIu,imageExportDialog:RIu,encrypted:TIu,stats:OIu,toast:IIu,colors:PIu,welcomeScreen:jIu,colorPicker:NIu,overwriteConfirm:iIu,mermaid:aIu}});var MPu={};ju(MPu,{welcomeScreen:()=>kPu,toolBar:()=>gIu,toast:()=>UPu,stats:()=>FPu,roomDialog:()=>sIu,publishSuccessDialog:()=>EPu,publishDialog:()=>BPu,overwriteConfirm:()=>lPu,mermaid:()=>bPu,library:()=>rIu,labels:()=>mIu,imageExportDialog:()=>CPu,hints:()=>nIu,helpDialog:()=>eIu,headings:()=>_Iu,exportDialog:()=>tIu,errors:()=>cIu,errorSplash:()=>dIu,errorDialog:()=>oIu,encrypted:()=>DPu,default:()=>fz3,confirmDialog:()=>APu,colors:()=>zPu,colorPicker:()=>fPu,clearCanvasDialog:()=>uPu,canvasError:()=>pIu,buttons:()=>$Iu,alerts:()=>yIu});var mIu,rIu,$Iu,yIu,cIu,gIu,_Iu,nIu,pIu,dIu,sIu,oIu,tIu,eIu,uPu,BPu,EPu,APu,CPu,DPu,FPu,UPu,zPu,kPu,fPu,lPu,bPu,fz3;var ZPu=g(()=>{m4();mIu={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:""},rIu={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."},$Iu={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:""},yIu={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!`},cIu={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:""},gIu={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:""},_Iu={canvasActions:"Tigawin n teɣzut n usuneɣ",selectedShapeActions:"Tigawin n talɣa yettwafernen",shapes:"Talɣiwin"},nIu={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:""},pIu={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."},dIu={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:"},sIu={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"},oIu={title:"Tuccḍa"},tIu={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..."},eIu={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"},uPu={title:"Sfeḍ taɣzut n usuneɣ"},BPu={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."},EPu={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>"},APu={resetLibrary:"Ales awennez n temkarḍit",removeItemsFromLib:"Kkes iferdisen yettafernen si temkarḍit"},CPu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},DPu={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"},FPu={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"},UPu={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:""},zPu={transparent:"Afrawan",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},kPu={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"}},fPu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},lPu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},bPu={title:"",button:"",description:"",syntax:"",preview:""},fz3={labels:mIu,library:rIu,buttons:$Iu,alerts:yIu,errors:cIu,toolBar:gIu,headings:_Iu,hints:nIu,canvasError:pIu,errorSplash:dIu,roomDialog:sIu,errorDialog:oIu,exportDialog:tIu,helpDialog:eIu,clearCanvasDialog:uPu,publishDialog:BPu,publishSuccessDialog:EPu,confirmDialog:APu,imageExportDialog:CPu,encrypted:DPu,stats:FPu,toast:UPu,colors:zPu,welcomeScreen:kPu,colorPicker:fPu,overwriteConfirm:lPu,mermaid:bPu}});var $Pu={};ju($Pu,{welcomeScreen:()=>VPu,toolBar:()=>HPu,toast:()=>iPu,stats:()=>NPu,roomDialog:()=>vPu,publishSuccessDialog:()=>OPu,publishDialog:()=>TPu,overwriteConfirm:()=>mPu,mermaid:()=>rPu,library:()=>wPu,labels:()=>JPu,imageExportDialog:()=>PPu,hints:()=>qPu,helpDialog:()=>YPu,headings:()=>LPu,exportDialog:()=>WPu,errors:()=>GPu,errorSplash:()=>xPu,errorDialog:()=>SPu,encrypted:()=>jPu,default:()=>lz3,confirmDialog:()=>IPu,colors:()=>aPu,colorPicker:()=>hPu,clearCanvasDialog:()=>RPu,canvasError:()=>XPu,buttons:()=>KPu,alerts:()=>QPu});var JPu,wPu,KPu,QPu,GPu,HPu,LPu,qPu,XPu,xPu,vPu,SPu,WPu,YPu,RPu,TPu,OPu,IPu,PPu,jPu,NPu,iPu,aPu,VPu,hPu,mPu,rPu,lz3;var yPu=g(()=>{m4();JPu={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:""},wPu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},KPu={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:""},QPu={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},GPu={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:""},HPu={selection:"",image:"Суретті қою",rectangle:"",diamond:"",ellipse:"",arrow:"Нұсқар",line:"",freedraw:"",text:"Мәтін",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},LPu={canvasActions:"",selectedShapeActions:"",shapes:""},qPu={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:""},XPu={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},xPu={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},vPu={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},SPu={title:"Қате"},WPu={disk_title:"",disk_details:"Сахна деректерін кейін қайта импорттауға болатын файлға экспорттаңыз.",disk_button:"Файлға сақтау",link_title:"Ортақ сілтеме",link_details:"Тек оқуға арналған сілтеме ретінде экспорттау.",link_button:"Сілтемеге экспорттау",excalidrawplus_description:"Сахнаны өзіңіздің Excalidraw+ жұмыс кеңістігінде сақтаңыз.",excalidrawplus_button:"Экспорт",excalidrawplus_exportError:"Қазіргі уақытта Excalidraw+ үшін экспорттау мүмкін емес..."},YPu={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:""},RPu={title:""},TPu={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},OPu={title:"",content:""},IPu={resetLibrary:"",removeItemsFromLib:""},PPu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},jPu={tooltip:"Сіздің сызбаларыңыз өтпелі шифрлеу арқылы шифрланған, сондықтан Excalidraw серверлері оларды ешқашан көрмейді.",link:"Excalidraw қолданатын өтпелі шифрлеу туралы блог жазбасы"},NPu={angle:"Бұрыш",element:"Элемент",elements:"Элементтер",height:"Биіктігі",scene:"Сахна",selected:"Таңдалды",storage:"Сақтау көлемі",title:"",total:"Барлығы",version:"Нұсқа",versionCopy:"Көшіру үшін басыңыз",versionNotAvailable:"Бұл нұсқа қолжетімсіз",width:"Ені"},iPu={addedToLibrary:"",copyStyles:"Стильдер көшірілді.",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"Файл сақталды.",fileSavedToFilename:"{filename} сақталды",canvas:"",selection:"таңдау",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},aPu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},VPu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},hPu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},mPu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},rPu={title:"",button:"",description:"",syntax:"",preview:""},lz3={labels:JPu,library:wPu,buttons:KPu,alerts:QPu,errors:GPu,toolBar:HPu,headings:LPu,hints:qPu,canvasError:XPu,errorSplash:xPu,roomDialog:vPu,errorDialog:SPu,exportDialog:WPu,helpDialog:YPu,clearCanvasDialog:RPu,publishDialog:TPu,publishSuccessDialog:OPu,confirmDialog:IPu,imageExportDialog:PPu,encrypted:jPu,stats:NPu,toast:iPu,colors:aPu,welcomeScreen:VPu,colorPicker:hPu,overwriteConfirm:mPu,mermaid:rPu}});var Kju={};ju(Kju,{welcomeScreen:()=>Mju,toolBar:()=>dPu,toast:()=>lju,stats:()=>fju,roomDialog:()=>uju,publishSuccessDialog:()=>Fju,publishDialog:()=>Dju,overwriteConfirm:()=>Jju,mermaid:()=>wju,library:()=>gPu,labels:()=>cPu,imageExportDialog:()=>zju,hints:()=>oPu,helpDialog:()=>Aju,headings:()=>sPu,exportDialog:()=>Eju,errors:()=>pPu,errorSplash:()=>ePu,errorDialog:()=>Bju,encrypted:()=>kju,default:()=>bz3,confirmDialog:()=>Uju,colors:()=>bju,colorPicker:()=>Zju,clearCanvasDialog:()=>Cju,canvasError:()=>tPu,buttons:()=>_Pu,alerts:()=>nPu});var cPu,gPu,_Pu,nPu,pPu,dPu,sPu,oPu,tPu,ePu,uju,Bju,Eju,Aju,Cju,Dju,Fju,Uju,zju,kju,fju,lju,bju,Mju,Zju,Jju,wju,bz3;var Qju=g(()=>{m4();cPu={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:""},gPu={noItems:"មិនទាន់មានធាតុបន្ថែមទេ...",hint_emptyLibrary:"ជ្រើសរើសធាតុនៅលើបាវដើម្បីបន្ថែមវានៅទីនេះ ឬដំឡើងបណ្ណាល័យពីឃ្លាំងសាធារណៈខាងក្រោម។",hint_emptyPrivateLibrary:"ជ្រើសរើសធាតុនៅលើបាវដើម្បីបន្ថែមវានៅទីនេះ"},_Pu={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:""},nPu={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:`គ្មានការតភ្ជាប់អ៊ីនធឺណិត។
ការផ្លាស់ប្តូររបស់អ្នកនឹងមិនត្រូវបានរក្សាទុកទេ!`},pPu={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:""},dPu={selection:"ការជ្រើសរើស",image:"បញ្ចូលរូបភាព",rectangle:"ចតុ​កោណ​កែង​",diamond:"ពេជ្រ",ellipse:"ពងក្រពើ",arrow:"ព្រួញ",line:"បន្ទាត់",freedraw:"គូរ",text:"អត្ថបទ",library:"បណ្ណាល័យ",lock:"រក្សារឧបករណ៍ដែលបានជ្រើសរើសបន្ទាប់ពីគូររួច",penMode:"របៀបប៊ិច - ជៀសវាងការប៉ះ",link:"បន្ថែម/ធ្វើបច្ចុប្បន្នភាពតំណភ្ជាប់សម្រាប់រូបរាងដែលបានជ្រើសរើស",eraser:"ជ័រលុប",frame:"",magicframe:"",embeddable:"",laser:"",hand:"ដៃ (panning tool)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},sPu={canvasActions:"សកម្មភាពបាវ",selectedShapeActions:"សកម្មភាពរបស់រាងដែលបានជ្រើសរើស",shapes:"រាង"},oPu={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:""},tPu={cannotShowPreview:"មិនអាចបង្ហាញការមើលជាមុនបាន",canvasTooBig:"បាវអាចមានទំហំធំពេក។",canvasTooBigTip:"គន្លឹះ៖ ព្យាយាមផ្លាស់ទីធាតុដែលឆ្ងាយបំផុតឱ្យទៅជិតគ្នាបន្តិច។"},ePu={headingMain:"បានជួបប្រទះកំហុសមួយ។ សូមព្យាយាម <button>ផ្ទុកទំព័រឡើងវិញ</button>។",clearCanvasMessage:"ប្រសិនបើការផ្ទុកឡើងវិញមិនអាចដោះស្រាយកំហុសបានទេ សូមសាកល្បង <button>សម្អាតបាវ។</button>",clearCanvasCaveat:" នេះនឹងបណ្តាលឱ្យបាត់បង់ការងារ ",trackedToSentry:"កំហុសជាមួយលេខសម្គាល់ {{eventId}} ត្រូវបានតាមដាននៅលើប្រព័ន្ធរបស់យើង។",openIssueMessage:"យើងមានការប្រុងប្រយ័ត្នខ្លាំងណាស់ក្នុងការមិនបញ្ចូលព័ត៌មានរបស់ស៊ីនរបស់អ្នកទៅលើកំហុស។ ប្រសិនបើស៊ីនរបស់អ្នកមិនមានលក្ខណៈឯកជនទេ សូមពិចារណាបន្តទៅកាន់ <button>កម្មវិធីតាមដានកំហុសរបស់យើង។</button> សូមបញ្ចូលព័ត៌មានខាងក្រោមដោយចម្លង និងបិទភ្ជាប់វាទៅក្នុងបញ្ហារបស់ GitHub។",sceneContent:"មាតិកាបាវ៖"},uju={desc_intro:"អ្នកអាចអញ្ជើញអ្នកដទៃឱ្យសហការជាមួយអ្នកនៅលើស៊ីនបច្ចុប្បន្ន។",desc_privacy:"កុំបារម្ភ វគ្គប្រើការអ៊ិនគ្រីបពីចុងដល់ចប់ ដូច្នេះអ្វីដែលអ្នកគូរនឹងនៅតែជាឯកជន។ សូម្បីតែម៉ាស៊ីនមេរបស់យើងក៏នឹងមិនអាចមើលឃើញអ្វីដែលអ្នកកំពុងធ្វើដែរ។",button_startSession:"ចាប់ផ្តើមវគ្គ",button_stopSession:"បញ្ឈប់វគ្គ",desc_inProgressIntro:"វគ្គសហការផ្ទាល់ឥឡូវនេះកំពុងដំណើរការ។",desc_shareLink:"ចែករំលែកតំណនេះជាមួយអ្នកដែលអ្នកចង់សហការជាមួយ៖",desc_exitSession:"ការបញ្ឈប់វគ្គនេះនឹងផ្តាច់អ្នកចេញពីបន្ទប់ ប៉ុន្តែអ្នកនឹងនៅតែអាចបន្តប្រើបាវនៅលើកុំព្យូទ័ររបស់អ្នក។ សូមចំណាំថាវានឹងមិនប៉ះពាល់ដល់អ្នកប្រើប្រាស់ផ្សេងទៀតទេ​ ហើយពួកគេនឹងនៅតែអាចបន្តសហការលើកំណែរបស់ពួកគេ។",shareTitle:"ចូលរួមវគ្គសហការផ្ទាល់នៅលើ Excalidraw"},Bju={title:"មានកំហុស"},Eju={disk_title:"រក្សាទុកទៅថាស",disk_details:"នាំចេញទិន្នន័យរបស់ស៊ីនជាឯកសារដែលអ្នកអាចនាំចូលនៅពេលក្រោយ។",disk_button:"រក្សាទុកក្នុងឯកសារ",link_title:"តំណដែលអាចចែករំលែកបាន",link_details:"នាំចេញជាតំណបានតែមើលឬអាន។",link_button:"នាំចេញជាតំណ",excalidrawplus_description:"រក្សាទុកស៊ីនទៅកន្លែងធ្វើការ Excalidraw+ របស់អ្នក។",excalidrawplus_button:"នាំចេញ",excalidrawplus_exportError:"មិនអាចនាំចេញទៅ Excalidraw+ បានទេនៅពេលនេះ..."},Aju={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:"ផ្លាស់ទីទំព័រទៅឆ្វេង/ស្ដាំ"},Cju={title:"សម្អាតបាវ"},Dju={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:"ចំណាំ៖ ធាតុដែលត្រូវបានជ្រើសរើសមួយចំនួនត្រូវបានសម្គាល់ថាបានបោះពុម្ព/បញ្ជូនរួចរាល់ហើយ។ អ្នកគួរតែបញ្ជូនធាតុឡើងវិញនៅពេលដែលធ្វើបច្ចុប្បន្នភាពបណ្ណាល័យដែលមានស្រាប់ ឬការបញ្ជូន។"},Fju={title:"បណ្ណាល័យត្រូវបានដាក់ស្នើ",content:"សូមអរគុណ {{authorName}}។ បណ្ណាល័យរបស់អ្នកត្រូវបានបញ្ជូនមកពិនិត្យ។ សូមចុច <link>ទីនេះ</link> ដើម្បីតាមដានស្ថានភាពនៃការដាក់ស្នើនេះ។"},Uju={resetLibrary:"កំណត់បណ្ណាល័យឡើងវិញ",removeItemsFromLib:"លុបធាតុដែលបានជ្រើសរើសចេញពីបណ្ណាល័យ"},zju={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},kju={tooltip:"គំនូររបស់អ្នកត្រូវបានអ៊ិនគ្រីបពីចុងដល់ចប់ ដូច្នេះម៉ាស៊ីនមេរបស់ Excalidraw នឹងមិនឃើញពួកវាទេ។",link:"ប្លក់ផុសលើការអ៊ិនគ្រីបពីចុងដល់ចុងក្នុង Excalidraw"},fju={angle:"មុំ",element:"ធាតុ",elements:"ធាតុច្រើន",height:"កម្ពស់",scene:"ស៊ីន",selected:"បានជ្រើសរើស",storage:"ការផ្ទុក",title:"ស្ថិតិសម្រាប់ nerds",total:"សរុប",version:"ជំនាន់:",versionCopy:"ចុចដើម្បីចម្លង",versionNotAvailable:"កំណែមិនអាចប្រើបាន",width:"ទទឹង​"},lju={addedToLibrary:"បានបន្ថែមទៅបណ្ណាល័យ",copyStyles:"រចនាប័ទ្មត្រូវបានចម្លង។",copyToClipboard:"បានចម្លងទៅក្ដារតម្បៀតខ្ទាស់។",copyToClipboardAsPng:`បានចម្លង {{exportSelection}} ទៅក្ដារតម្បៀតខ្ទាស់ជា PNG
({{exportColorScheme}})`,fileSaved:"ឯកសារត្រូវបានរក្សាទុក។",fileSavedToFilename:"បានរក្សាទុកនៅក្នុង {filename}",canvas:"តំបន់គំនូរ",selection:"ការជ្រើសរើស",pasteAsSingleElement:`ប្រើ {{shortcut}} ដើម្បីបិទភ្ជាប់ជាធាតុតែមួយ,
ឬបិទភ្ជាប់ទៅក្នុងកម្មវិធីនិពន្ធអត្ថបទដែលមានស្រាប់`,unableToEmbed:"",unrecognizedLinkFormat:""},bju={transparent:"ថ្លាមើលធ្លុះ",black:"ពណ៍ខ្មៅ",white:"ពណ៌ស",red:"ពណ៌ក្រហម",pink:"ពណ៌ផ្កាឈូក",grape:"ពណ៌ទំពាំងបាយជូរ",violet:"ពណ៌ស្វាយ",gray:"ពណ៌ប្រផេះ",blue:"ពណ៌ខៀវ",cyan:"ពណ៌ផ្ទៃមេឃ",teal:"ពណ៌​ខៀវបៃតង",green:"ពណ៌បៃតង",yellow:"ពណ៌លឿង",orange:"ពណ៌ទឹកក្រូច",bronze:"ពណ៌សំរិទ្ធ"},Mju={app:{center_heading:"ទិន្នន័យទាំងអស់របស់អ្នក ត្រូវបានរក្សាទុកនៅក្នុង browser របស់អ្នក ។",center_heading_plus:"តើ​អ្នក​ចង់​ទៅ Excalidraw+ ​វិញ ឬ មែន?",menuHint:"នាំចេញ ចំណូលចិត្ត ភាសា ..."},defaults:{menuHint:"ការនាំចេញ ចំណូលចិត្ត និង ច្រើនទៀត...",center_heading:"ងាយស្រួល ។ ធ្វើ ។​ ដ្យាក្រាម ។",toolbarHint:"ជ្រើសរើសឧបករណ៍មួយ និង ចាប់ផ្តើមគូរ!",helpHint:"ផ្លូវកាត់ & ជំនួយ"}},Zju={mostUsedCustomColors:"ពណ៌ផ្ទាល់ខ្លួនដែលប្រើច្រើនបំផុត",colors:"ពណ៌",shades:"ស្រមោល",hexCode:"លេខកូដ hex",noShades:"មិនមានស្រមោលសម្រាប់ពណ៌នេះទេ"},Jju={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},wju={title:"",button:"",description:"",syntax:"",preview:""},bz3={labels:cPu,library:gPu,buttons:_Pu,alerts:nPu,errors:pPu,toolBar:dPu,headings:sPu,hints:oPu,canvasError:tPu,errorSplash:ePu,roomDialog:uju,errorDialog:Bju,exportDialog:Eju,helpDialog:Aju,clearCanvasDialog:Cju,publishDialog:Dju,publishSuccessDialog:Fju,confirmDialog:Uju,imageExportDialog:zju,encrypted:kju,stats:fju,toast:lju,colors:bju,welcomeScreen:Mju,colorPicker:Zju,overwriteConfirm:Jju,mermaid:wju}});var _ju={};ju(_ju,{welcomeScreen:()=>$ju,toolBar:()=>xju,toast:()=>mju,stats:()=>hju,roomDialog:()=>Rju,publishSuccessDialog:()=>Nju,publishDialog:()=>jju,overwriteConfirm:()=>cju,mermaid:()=>gju,library:()=>Hju,labels:()=>Gju,imageExportDialog:()=>aju,hints:()=>Sju,helpDialog:()=>Iju,headings:()=>vju,exportDialog:()=>Oju,errors:()=>Xju,errorSplash:()=>Yju,errorDialog:()=>Tju,encrypted:()=>Vju,default:()=>Mz3,confirmDialog:()=>iju,colors:()=>rju,colorPicker:()=>yju,clearCanvasDialog:()=>Pju,canvasError:()=>Wju,buttons:()=>Lju,alerts:()=>qju});var Gju,Hju,Lju,qju,Xju,xju,vju,Sju,Wju,Yju,Rju,Tju,Oju,Iju,Pju,jju,Nju,iju,aju,Vju,hju,mju,rju,$ju,yju,cju,gju,Mz3;var nju=g(()=>{m4();Gju={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:"프롬프트"},Hju={noItems:"추가된 아이템 없음",hint_emptyLibrary:"캔버스 위에서 아이템을 선택하여 여기에 추가를 하거나, 아래의 공용 저장소에서 라이브러리를 설치하세요.",hint_emptyPrivateLibrary:"캔버스 위에서 아이템을 선택하여 여기 추가하세요."},Lju={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:"클릭하여 상호작용"},qju={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:`인터넷에 연결되어 있지 않습니다.
변경 사항들이 저장되지 않습니다!`},Xju={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:"클립보드로 복사하는데 실패했습니다."},xju={selection:"선택",image:"이미지 삽입",rectangle:"사각형",diamond:"다이아몬드",ellipse:"타원",arrow:"화살표",line:"선",freedraw:"그리기",text:"텍스트",library:"라이브러리",lock:"선택된 도구 유지하기",penMode:"펜 모드 - 터치 방지",link:"선택한 도형에 대해서 링크를 추가/업데이트",eraser:"지우개",frame:"프레임 도구",magicframe:"와이어프레임을 코드로",embeddable:"웹 임베드",laser:"레이저 포인터",hand:"손 (패닝 도구)",extraTools:"다른 도구",mermaidToExcalidraw:"Mermaid에서 불러오기",magicSettings:"AI 설정"},vju={canvasActions:"캔버스 동작",selectedShapeActions:"선택된 모양 동작",shapes:"모양"},Sju={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 키를 눌러서 다른 요소와의 정렬 무시하기"},Wju={cannotShowPreview:"미리보기를 볼 수 없습니다",canvasTooBig:"캔버스가 너무 큽니다.",canvasTooBigTip:"팁: 멀리 있는 요소들을 좀 더 가까이로 붙여 보세요."},Yju={headingMain:"오류가 발생했습니다. <button>페이지 새로고침</button>",clearCanvasMessage:"새로고침으로 해결되지 않을 경우, <button>캔버스 비우기</button>",clearCanvasCaveat:" 작업 내용을 잃게 됩니다 ",trackedToSentry:"오류 {{eventId}} 가 시스템에서 발견되었습니다.",openIssueMessage:"저희는 화면 정보를 오류에 포함하지 않도록 매우 주의하고 있습니다. 혹시 화면에 민감한 내용이 없다면 이곳에 업로드를 고려해주세요.<button>버그 트래커</button> 아래 정보를 GitHub 이슈에 복사 및 붙여넣기해 주세요.",sceneContent:"화면 내용:"},Rju={desc_intro:"현재 화면에 공동 작업자를 초대해 협업할 수 있습니다.",desc_privacy:"안심하세요, 세션은 종단 간 암호화를 사용하므로 당신의 작업은 비공개로 유지되며 서버조차도 작업 내용을 알 수 없습니다.",button_startSession:"세션 시작",button_stopSession:"세션 중단",desc_inProgressIntro:"실시간 협업 세션이 진행 중입니다.",desc_shareLink:"공동 작업자에게 이 링크를 공유하세요.",desc_exitSession:"세션을 중단하면 연결은 끊어지나 작업을 이어갈 수 있습니다. 이 작업은 다른 작업자에게 영향을 미치지 않으며 각자의 공동 작업은 계속 유지됩니다.",shareTitle:"Excalidraw의 실시간 협업 세션에 참가하기"},Tju={title:"오류"},Oju={disk_title:"디스크에 저장",disk_details:"나중에 다시 불러올 수 있도록 화면 데이터를 내보냅니다.",disk_button:"파일로 저장",link_title:"공유 가능한 링크 생성",link_details:"읽기 전용 링크로 내보냅니다.",link_button:"링크로 내보내기",excalidrawplus_description:"화면을 당신의 Excalidraw+ 작업 공간으로 저장합니다.",excalidrawplus_button:"내보내기",excalidrawplus_exportError:"지금은 Excalidraw+로 내보낼 수 없습니다..."},Iju={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:"페이지 움직이기 좌/우"},Pju={title:"캔버스 지우기"},jju={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:"참고: 선택된 항목의 일부는 이미 제출/게시되었습니다. 기존의 라이브러리나 제출물을 업데이트하는 경우에만 제출하세요."},Nju={title:"라이브러리 제출됨",content:"{{authorName}}님 감사합니다. 당신의 라이브러리가 심사를 위해 제출되었습니다. 진행 상황을<link>여기에서 확인하실 수 있습니다.</link>"},iju={resetLibrary:"라이브러리 리셋",removeItemsFromLib:"선택한 항목을 라이브러리에서 제거"},aju={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:"클립보드로 복사"}},Vju={tooltip:"그림은 종단 간 암호화되므로 Excalidraw의 서버는 절대로 내용을 알 수 없습니다.",link:"Excalidraw의 종단 간 암호화에 대한 블로그 포스트"},hju={angle:"각도",element:"요소",elements:"요소",height:"높이",scene:"화면",selected:"선택됨",storage:"저장공간",title:"덕후들을 위한 통계",total:"합계",version:"버전",versionCopy:"복사하려면 클릭",versionNotAvailable:"해당 버전 사용 불가능",width:"너비"},mju={addedToLibrary:"라이브러리에 추가되었습니다",copyStyles:"스타일 복사.",copyToClipboard:"클립보드로 복사.",copyToClipboardAsPng:`{{exportSelection}}를 클립보드에 PNG로 복사했습니다
({{exportColorScheme}})`,fileSaved:"파일이 저장되었습니다.",fileSavedToFilename:"{filename} 로 저장되었습니다",canvas:"캔버스",selection:"선택한 요소",pasteAsSingleElement:"단일 요소로 붙여넣거나, 기존 텍스트 에디터에 붙여넣으려면 {{shortcut}} 을 사용하세요.",unableToEmbed:"이 URL의 임베딩이 허용되지 않았습니다. GitHub에 이슈를 남겨서 이 URL이 화이트리스트에 등재될 수 있도록 요청하세요",unrecognizedLinkFormat:'임베딩하려는 링크의 형식이 잘못된 것 같습니다. 원본 사이트에서 제공하는 "임베딩" 텍스트를 그대로 붙여 넣어 주세요'},rju={transparent:"투명",black:"블랙",white:"화이트",red:"레드",pink:"핑크",grape:"그레이프",violet:"바이올렛",gray:"그레이",blue:"블루",cyan:"시안",teal:"틸",green:"그린",yellow:"옐로우",orange:"오렌지",bronze:"브론즈"},$ju={app:{center_heading:"모든 데이터는 브라우저에 안전하게 저장됩니다.",center_heading_plus:"대신 Excalidraw+로 이동하시겠습니까?",menuHint:"내보내기, 설정, 언어, ..."},defaults:{menuHint:"내보내기, 설정, 등등...",center_heading:"간단하게 만드는 다이어그램.",toolbarHint:"도구를 선택하고, 그리세요!",helpHint:"단축키 & 도움말"}},yju={mostUsedCustomColors:"가장 많이 사용된 색상들",colors:"색상",shades:"색조",hexCode:"Hex 코드",noShades:"사용할 수 있는 색조가 없음"},cju={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>다음 옵션 중 하나를 선택하여 작업물을 백업해 둘 수 있습니다."}}},gju={title:"Mermaid에서 불러오기",button:"삽입하기",description:"지금은 <flowchartLink>순서도</flowchartLink>,<sequenceLink> 시퀀스</sequenceLink>, <classLink>클래스 </classLink>다이어그램만 지원합니다. 다른 형식들은 Excalidraw에서는 이미지로 표시됩니다.",syntax:"Mermaid 구문",preview:"미리보기"},Mz3={labels:Gju,library:Hju,buttons:Lju,alerts:qju,errors:Xju,toolBar:xju,headings:vju,hints:Sju,canvasError:Wju,errorSplash:Yju,roomDialog:Rju,errorDialog:Tju,exportDialog:Oju,helpDialog:Iju,clearCanvasDialog:Pju,publishDialog:jju,publishSuccessDialog:Nju,confirmDialog:iju,imageExportDialog:aju,encrypted:Vju,stats:hju,toast:mju,colors:rju,welcomeScreen:$ju,colorPicker:yju,overwriteConfirm:cju,mermaid:gju}});var LNu={};ju(LNu,{welcomeScreen:()=>KNu,toolBar:()=>eju,toast:()=>JNu,stats:()=>ZNu,roomDialog:()=>CNu,publishSuccessDialog:()=>fNu,publishDialog:()=>kNu,overwriteConfirm:()=>GNu,mermaid:()=>HNu,library:()=>dju,labels:()=>pju,imageExportDialog:()=>bNu,hints:()=>BNu,helpDialog:()=>UNu,headings:()=>uNu,exportDialog:()=>FNu,errors:()=>tju,errorSplash:()=>ANu,errorDialog:()=>DNu,encrypted:()=>MNu,default:()=>Zz3,confirmDialog:()=>lNu,colors:()=>wNu,colorPicker:()=>QNu,clearCanvasDialog:()=>zNu,canvasError:()=>ENu,buttons:()=>sju,alerts:()=>oju});var pju,dju,sju,oju,tju,eju,uNu,BNu,ENu,ANu,CNu,DNu,FNu,UNu,zNu,kNu,fNu,lNu,bNu,MNu,ZNu,JNu,wNu,KNu,QNu,GNu,HNu,Zz3;var qNu=g(()=>{m4();pju={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:""},dju={noItems:"هێشتا هیچ بڕگەیەک زیاد نەکراوە...",hint_emptyLibrary:"شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت، یان کتێبخانەیەک لە کۆگا گشتیەکەوە دابمەزرێنە، لە خوارەوە.",hint_emptyPrivateLibrary:"شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت."},sju={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:""},oju={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:`هێڵی ئینتەرنێت بەردەست نییە.
گۆڕانکارییەکانت سەیڤ ناکرێن!`},tju={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:""},eju={selection:"دەستنیشانکردن",image:"داخڵکردنی وێنە",rectangle:"لاکێشە",diamond:"ئەڵماس",ellipse:"هێلکەیی",arrow:"تیر",line:"هێڵ",freedraw:"کێشان",text:"دەق",library:"کتێبخانە",lock:"ئامێرە دیاریکراوەکان چالاک بهێڵەوە دوای وێنەکێشان",penMode:"شێوازی قەڵەم - دەست لێدان ڕابگرە",link:"زیادکردن/ نوێکردنەوەی لینک بۆ شێوەی دیاریکراو",eraser:"سڕەر",frame:"ئامرازی چوارچێوە",magicframe:"",embeddable:"",laser:"",hand:"دەست (ئامرازی پانکردن)",extraTools:"ئامرازی زیاتر",mermaidToExcalidraw:"",magicSettings:""},uNu={canvasActions:"کردارەکانی تابلۆ",selectedShapeActions:"کردارەکانی شێوەی دەستنیشانکراو",shapes:"شێوەکان"},BNu={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:""},ENu={cannotShowPreview:"ناتوانرێ پێشبینین پیشان بدرێت",canvasTooBig:"تابلۆکە لەوانەیە زۆر گەورەبێت.",canvasTooBigTip:"زانیاری: هەوڵ بدە دوورترین توخمەکان کەمێک لە یەکتر نزیک بکەوە."},ANu={headingMain:"تووشی هەڵەیەک بوو. هەوڵ بدە <button>دووبارە بارکردنی لاپەڕەکە.</button>",clearCanvasMessage:"ئەگەر دووبارە بارکردنەوە کار ناکات، هەوڵبدە <button>خاوێنکردنەوەی تابلۆکە.</button>",clearCanvasCaveat:" ئەمە دەبێتە هۆی لەدەستدانی ئەوەی کە کردوتە ",trackedToSentry:"هەڵەکە لەگەڵ ناسێنەری {{eventId}} لەسەر سیستەمەکەمان بەدواداچوونی بۆ کرا.",openIssueMessage:"ئێمە زۆر وریا بووین کە زانیارییەکانی دیمەنەکەت لەسەر هەڵەکە نەخەینەڕوو. ئەگەر دیمەنەکەت تایبەت نییە، تکایە بیر لە بەدواداچوون بکەنەوە بۆ ئێمە <button>شوێنپێهەڵگری هەڵە.</button> تکایە ئەم زانیارییانەی خوارەوە کۆپی بکە و لە بەشی کێشەکانی Github دایبنێ.",sceneContent:"پێکهاتەی ناو دیمەنەکە:"},CNu={desc_intro:"دەتوانیت خەڵک بانگهێشت بکەیت بۆ دیمەنی ئێستات بۆ هاوکاری کردن لەگەڵت.",desc_privacy:"نیگەران مەبە، دانیشتنەکە کۆدکردنی کۆتایی بە کۆتایی بەکاردەهێنێت، بۆیە هەرچییەک بکێشیت بە تایبەتی دەمێنێتەوە. تەنانەت سێرڤەرەکەمان ناتوانێت بزانێت کە تۆ چیت دروستکردووە.",button_startSession:"دەستپێکردنی دانیشتن",button_stopSession:"وەستاندنی دانیشتن",desc_inProgressIntro:"دانیشتنی هاوکاری ڕاستەوخۆ ئێستا لە ئارادایە.",desc_shareLink:"هاوبەشکردنی ئەم لینکە لەگەڵ هەر کەسێک کە دەتەوێت هاوکاری بکەیت لەگەڵ:",desc_exitSession:"وەستاندنی دانیشتنەکە پەیوەندیت لەگەڵ ژوورەکە دەپچڕێنێت، بەڵام تۆ دەتوانیت بەردەوام بیت لە کارکردن لەگەڵ دیمەنەکە، لە ناوخۆدا. تێبینی بکە کە ئەمە کاریگەری لەسەر کەسانی تر نابێت، وە ئەوان هێشتا دەتوانن هاوکاری بکەن لەسەر وەشانەکەیان.",shareTitle:"بەشداری بکە لە دانیشتنی هاریکاری ڕاستەوخۆ لە ئێکسکالیدراو"},DNu={title:"هه‌ڵه‌ ڕوویدا"},FNu={disk_title:"پاشەکەوت بکە لە دیسک",disk_details:"هەناردەکردنی داتای دیمەنەکە بۆ فایلێک کە دواتر دەتوانیت لێی هاوردە بکەیت.",disk_button:"پاشەکەوت بکە بۆ فایل",link_title:"بەستەری هاوبەشیپێکردن",link_details:"ناردن وەک بەستەری تەنها-خوێندنەوە.",link_button:"هەناردەکردن بۆ بەستەر",excalidrawplus_description:"دیمەنەکە لە شوێنی کارکردنی Excalidraw+ هەڵبگرە.",excalidrawplus_button:"هەناردەکردن",excalidrawplus_exportError:"لەم ساتەدا نەتوانرا هەناردە بکرێت بۆ Excalidrow+..."},UNu={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:"لاپەڕەکە بجوڵێنە بۆ چەپ/ڕاست"},zNu={title:"تابلۆکە خاوێن بکەرەوە"},kNu={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:"تێبینی: هەندێک لە ئایتمە دیاریکراوەکان نیشانکراون وەک ئەوەی پێشتر بڵاوکراونەتەوە/نێردراون. تەنها پێویستە شتەکان دووبارە پێشکەش بکەیتەوە لە کاتی نوێکردنەوەی کتێبخانەیەکی هەبوو یان پێشکەشکردن."},fNu={title:"کتێبخانە پێشکەش کرا",content:"سوپاس {{authorName}}. کتێبخانەکەت پێشکەش کراوە بۆ پێداچوونەوە. دەتوانیت بەدواداچوون بۆ دۆخەکە بکەیت<link>لێرە</link>"},lNu={resetLibrary:"ڕێکخستنەوەی کتێبخانە",removeItemsFromLib:"لابردنی ئایتمە دیاریکراوەکان لە کتێبخانە"},bNu={header:"وێنە هەناردە بکە",label:{withBackground:"پاشبنەما",onlySelected:"تەنها دیاریکراوەکان",darkMode:"دۆخی تاریک",embedScene:"دیمەنەکە بەکاربهێنەرەوە",scale:"قەبارە",padding:"بۆشایی"},tooltip:{embedScene:`داتاکانی دیمەنەکە لە فایلە هەناردەکراوەکەی PNG/SVG هەڵدەگیرێن بۆ ئەوەی دیمەنەکە لێیەوە بگەڕێتەوە.
قەبارەی پەڕگەی هەناردەکراو زیاد دەکات.`},title:{exportToPng:"هەناردە بکە وەک PNG",exportToSvg:"هەناردە بکە وەک SVG",copyPngToClipboard:"لەبەربگرەوە بۆ سەر تەختەنوس"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"له‌به‌ری بگره‌وه‌ بۆ ته‌خته‌نووس"}},MNu={tooltip:"وێنەکێشانەکانت لە کۆتاییەوە بۆ کۆتایی کۆد کراون بۆیە سێرڤەرەکانی ئێکسکالیدرا هەرگیز نایانبینن.",link:"بلۆگ پۆست لەسەر کۆدکردنی کۆتای بۆ کۆتای لە ئێکسکالیدرەو"},ZNu={angle:"گۆشە",element:"توخم",elements:"توخمەکان",height:"بەرزی",scene:"دیمەنەکە",selected:"دەستنیشانکراوەکان",storage:"بیرگە",title:"ئامار بۆ نێردەکان",total:"گشتی",version:"وەشان",versionCopy:"کلیک بۆ لەبەرگرتنەوە",versionNotAvailable:"وەشان بەردەست نییە",width:"پانی"},JNu={addedToLibrary:"زیادکرا بۆ کتێبخانە",copyStyles:"ستایلی کۆپیکراو.",copyToClipboard:"لەبەرگیرایەوە بۆ تەختەنوس.",copyToClipboardAsPng:`کۆپی کراوە {{exportSelection}} بۆ کلیپبۆرد وەک PNG
({{exportColorScheme}})`,fileSaved:"فایل هەڵگیرا.",fileSavedToFilename:"هەڵگیراوە بۆ {filename}",canvas:"تابلۆ",selection:"دەستنیشانکراوەکان",pasteAsSingleElement:"بۆ دانانەوە وەکو یەک توخم یان دانانەوە بۆ نێو دەسکاریکەرێکی دەق کە بوونی هەیە {{shortcut}} بەکاربهێنە",unableToEmbed:"",unrecognizedLinkFormat:""},wNu={transparent:"ڕوون",black:"ڕەش",white:"سپی",red:"سور",pink:"پەمەیی",grape:"مێوژی",violet:"مۆری کاڵ",gray:"خۆڵەمێشی",blue:"شین",cyan:"شینی ئاسمانی",teal:"شەدری",green:"سه‌وز",yellow:"زەرد",orange:"پرتەقاڵی",bronze:"برۆنزی"},KNu={app:{center_heading:"هەموو داتاکانت لە ناوخۆی وێنگەڕەکەتدا پاشەکەوت کراوە.",center_heading_plus:"ویستت بڕۆیت بۆ Excalidraw+?",menuHint:"هەناردەکردن، ڕێکخستنەکان، زمانەکان، ..."},defaults:{menuHint:"هەناردەکردن، ڕێکخستنەکان، و زیاتر...",center_heading:"دایاگرامەکان. ئاسان. کراون.",toolbarHint:"ئامرازێک هەڵبگرە و دەستبکە بە کێشان!",helpHint:"قەدبڕەکان و یارمەتی"}},QNu={mostUsedCustomColors:"زۆرترین ڕەنگە باوە بەکارهاتووەکان",colors:"ڕەنگەکان",shades:"سێبەرەکان",hexCode:"کۆدی هێکس",noShades:"هیچ سێبەرێک بۆ ئەم ڕەنگە بەردەست نییە"},GNu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},HNu={title:"",button:"",description:"",syntax:"",preview:""},Zz3={labels:pju,library:dju,buttons:sju,alerts:oju,errors:tju,toolBar:eju,headings:uNu,hints:BNu,canvasError:ENu,errorSplash:ANu,roomDialog:CNu,errorDialog:DNu,exportDialog:FNu,helpDialog:UNu,clearCanvasDialog:zNu,publishDialog:kNu,publishSuccessDialog:fNu,confirmDialog:lNu,imageExportDialog:bNu,encrypted:MNu,stats:ZNu,toast:JNu,colors:wNu,welcomeScreen:KNu,colorPicker:QNu,overwriteConfirm:GNu,mermaid:HNu}});var sNu={};ju(sNu,{welcomeScreen:()=>_Nu,toolBar:()=>YNu,toast:()=>cNu,stats:()=>yNu,roomDialog:()=>PNu,publishSuccessDialog:()=>hNu,publishDialog:()=>VNu,overwriteConfirm:()=>pNu,mermaid:()=>dNu,library:()=>xNu,labels:()=>XNu,imageExportDialog:()=>rNu,hints:()=>TNu,helpDialog:()=>iNu,headings:()=>RNu,exportDialog:()=>NNu,errors:()=>WNu,errorSplash:()=>INu,errorDialog:()=>jNu,encrypted:()=>$Nu,default:()=>Jz3,confirmDialog:()=>mNu,colors:()=>gNu,colorPicker:()=>nNu,clearCanvasDialog:()=>aNu,canvasError:()=>ONu,buttons:()=>vNu,alerts:()=>SNu});var XNu,xNu,vNu,SNu,WNu,YNu,RNu,TNu,ONu,INu,PNu,jNu,NNu,iNu,aNu,VNu,hNu,mNu,rNu,$Nu,yNu,cNu,gNu,_Nu,nNu,pNu,dNu,Jz3;var oNu=g(()=>{m4();XNu={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:""},xNu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},vNu={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:""},SNu={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:""},WNu={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:""},YNu={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:""},RNu={canvasActions:"Veiksmai su drobe",selectedShapeActions:"Veiksmai su pasirinkta figūra",shapes:"Figūros"},TNu={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:""},ONu={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},INu={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},PNu={desc_intro:"",desc_privacy:"",button_startSession:"Pradėti seansą",button_stopSession:"Sustabdyti seansą",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},jNu={title:"Klaida"},NNu={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:""},iNu={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"},aNu={title:"Išvalyti drobę"},VNu={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:""},hNu={title:"Biblioteka pateikta",content:"Ačiū {{authorName}}. Tavo biblioteka buvo pateikta peržiūrai. Gali sekti būseną<link>čia</link>"},mNu={resetLibrary:"Atstatyti biblioteką",removeItemsFromLib:"Pašalinti pasirinktus elementus iš bibliotekos"},rNu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},$Nu={tooltip:"",link:""},yNu={angle:"",element:"Elementas",elements:"Elementai",height:"Aukštis",scene:"Scena",selected:"Pasirinkta",storage:"Saugykla",title:"Informacija moksliukams",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:"Plotis"},cNu={addedToLibrary:"Pridėta į biblioteką",copyStyles:"",copyToClipboard:"Nukopijuota į iškarpinę.",copyToClipboardAsPng:"",fileSaved:"Failas išsaugotas.",fileSavedToFilename:"Išsaugota į {filename}",canvas:"drobė",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},gNu={transparent:"Permatoma",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},_Nu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},nNu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},pNu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},dNu={title:"",button:"",description:"",syntax:"",preview:""},Jz3={labels:XNu,library:xNu,buttons:vNu,alerts:SNu,errors:WNu,toolBar:YNu,headings:RNu,hints:TNu,canvasError:ONu,errorSplash:INu,roomDialog:PNu,errorDialog:jNu,exportDialog:NNu,helpDialog:iNu,clearCanvasDialog:aNu,publishDialog:VNu,publishSuccessDialog:hNu,confirmDialog:mNu,imageExportDialog:rNu,encrypted:$Nu,stats:yNu,toast:cNu,colors:gNu,welcomeScreen:_Nu,colorPicker:nNu,overwriteConfirm:pNu,mermaid:dNu}});var viu={};ju(viu,{welcomeScreen:()=>Liu,toolBar:()=>Aiu,toast:()=>Giu,stats:()=>Qiu,roomDialog:()=>ziu,publishSuccessDialog:()=>Ziu,publishDialog:()=>Miu,overwriteConfirm:()=>Xiu,mermaid:()=>xiu,library:()=>eNu,labels:()=>tNu,imageExportDialog:()=>wiu,hints:()=>Diu,helpDialog:()=>liu,headings:()=>Ciu,exportDialog:()=>fiu,errors:()=>Eiu,errorSplash:()=>Uiu,errorDialog:()=>kiu,encrypted:()=>Kiu,default:()=>wz3,confirmDialog:()=>Jiu,colors:()=>Hiu,colorPicker:()=>qiu,clearCanvasDialog:()=>biu,canvasError:()=>Fiu,buttons:()=>uiu,alerts:()=>Biu});var tNu,eNu,uiu,Biu,Eiu,Aiu,Ciu,Diu,Fiu,Uiu,ziu,kiu,fiu,liu,biu,Miu,Ziu,Jiu,wiu,Kiu,Qiu,Giu,Hiu,Liu,qiu,Xiu,xiu,wz3;var Siu=g(()=>{m4();tNu={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:""},eNu={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."},uiu={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:""},Biu={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!`},Eiu={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:""},Aiu={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:""},Ciu={canvasActions:"Tāfeles darbības",selectedShapeActions:"Izvēlētās formas darbības",shapes:"Formas"},Diu={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:""},Fiu={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."},Uiu={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:"},ziu={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"},kiu={title:"Kļūda"},fiu={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+..."},liu={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"},biu={title:"Notīrīt tāfeli"},Miu={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."},Ziu={title:"Bibliotēka iesniegta",content:"Paldies, {{authorName}}! Jūsu bibliotēka iesniegta izskatīšanai. Jūs varat izsekot iesnieguma statusam<link>šeit</link>"},Jiu={resetLibrary:"Atiestatīt bibliotēku",removeItemsFromLib:"Noņemt atlasītos vienumus no bibliotēkas"},wiu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Kiu={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ā"},Qiu={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"},Giu={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:""},Hiu={transparent:"Caurspīdīgs",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Liu={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"}},qiu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Xiu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},xiu={title:"",button:"",description:"",syntax:"",preview:""},wz3={labels:tNu,library:eNu,buttons:uiu,alerts:Biu,errors:Eiu,toolBar:Aiu,headings:Ciu,hints:Diu,canvasError:Fiu,errorSplash:Uiu,roomDialog:ziu,errorDialog:kiu,exportDialog:fiu,helpDialog:liu,clearCanvasDialog:biu,publishDialog:Miu,publishSuccessDialog:Ziu,confirmDialog:Jiu,imageExportDialog:wiu,encrypted:Kiu,stats:Qiu,toast:Giu,colors:Hiu,welcomeScreen:Liu,colorPicker:qiu,overwriteConfirm:Xiu,mermaid:xiu}});var uau={};ju(uau,{welcomeScreen:()=>siu,toolBar:()=>Iiu,toast:()=>piu,stats:()=>niu,roomDialog:()=>aiu,publishSuccessDialog:()=>yiu,publishDialog:()=>$iu,overwriteConfirm:()=>tiu,mermaid:()=>eiu,library:()=>Yiu,labels:()=>Wiu,imageExportDialog:()=>giu,hints:()=>jiu,helpDialog:()=>miu,headings:()=>Piu,exportDialog:()=>hiu,errors:()=>Oiu,errorSplash:()=>iiu,errorDialog:()=>Viu,encrypted:()=>_iu,default:()=>Kz3,confirmDialog:()=>ciu,colors:()=>diu,colorPicker:()=>oiu,clearCanvasDialog:()=>riu,canvasError:()=>Niu,buttons:()=>Riu,alerts:()=>Tiu});var Wiu,Yiu,Riu,Tiu,Oiu,Iiu,Piu,jiu,Niu,iiu,aiu,Viu,hiu,miu,riu,$iu,yiu,ciu,giu,_iu,niu,piu,diu,siu,oiu,tiu,eiu,Kz3;var Bau=g(()=>{m4();Wiu={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:""},Yiu={noItems:"अजून कोणतेही आइटम जोडलेले नाही...",hint_emptyLibrary:"पटल वर एक वस्तु निवडुन एथे जोडा, किव्हा एक संग्रह जन कोष कडुन खाली स्थापित करा.",hint_emptyPrivateLibrary:"ईथे जोडण्या साठी पटल वरून एक वस्तु निवडा."},Riu={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:"संवादा साठी क्लिक करा"},Tiu={clearReset:"पटल स्वच्छ होणार, तुम्हाला खात्री आहे का?",couldNotCreateShareableLink:"सामायी करण करण्या योग्य दुवा नाही बनवता आला.",couldNotCreateShareableLinkTooBig:"सामायी करण करण्या योग्य दुवा नाही बनवता आला: दृश्य फार मोठं आहे",couldNotLoadInvalidFile:"अवैध फ़ाइल लोड करता आली नाही",importBackendFailed:"बैकएंड हून मागवणे विफल झाले.",cannotExportEmptyCanvas:"रिकामा पटल जतन करता येत नाही.",couldNotCopyToClipboard:"पटल वर कॉपी नाही झाली.",decryptFailed:"डीक्रिप्ट करता आले नाही.",uploadedSecurly:"अपलोड या टोकापासून त्या टोकापर्यंत कूटबद्धित करून सुरक्षित केले गेले आहे, हयाचा अर्थ असा की एक्सकेलीड्रॉ सर्व्हर आणि तृतीय पक्ष मजकूर वाचू शकत नाहीत.",loadSceneOverridePrompt:"बाह्य रेखाचित्र लोड केल्याने तुमची तुमचा विद्यमान मजकूर बदलेल. हे काम तुम्हाला चालू ठेवायचे आहे का?",collabStopOverridePrompt:`सत्र थांबवल्याने तुमचे पूर्वीचे, स्थानिकरित्या संग्रहित रेखाचित्र अधिलिखित होईल. तुला खात्री आहे?
(तुम्हाला तुमचे स्थानिक रेखाचित्र ठेवायचे असल्यास, त्याऐवजी फक्त ब्राउझर टॅब बंद करा.)`,errorAddingToLibrary:"संग्रहात तत्व जोडू शकलो नाही",errorRemovingFromLibrary:"संग्रहातून तत्व काढू शकलो नाही",confirmAddLibrary:"हे तुमच्या संग्राहात {{numShapes}} आकार (एक किव्हा अनेक) जोडेल. तुला खात्री आहे?",imageDoesNotContainScene:"या प्रतिमेमध्ये कोणताही दृश्य डेटा असल्याचे दिसत नाही. बाहेर जतन करताना तुम्ही दृश्य रुतवले होते का?",cannotRestoreFromImage:"प्रतिमा फ़ाइल पासून दृश्य पुनः रचित नाही झाला",invalidSceneUrl:"दिलेल्या यू-आर-एल पासून दृश्य आणू शकलो नाही. तो एकतर बरोबार नाही आहे किंवा त्यात वैध एक्सकेलीड्रॉ जेसन डेटा नाही.",resetLibrary:"पटल स्वच्छ होणार, तुम्हाला खात्री आहे का?",removeItemsFromsLibrary:"संग्रहातून {{count}} तत्व (एक किव्हा अनेक) काढू?",invalidEncryptionKey:"कूटबद्धन कुंजी 22 अक्षरांची असणे आवश्यक आहे. थेट सहयोग अक्षम केले आहे.",collabOfflineWarning:`इंटरनेट कनेक्शन उपलब्ध नाही.
तुमचे बदल जतन केले जाणार नाहीत!`},Oiu={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:"क्लिपबोर्ड वर प्रतिलिपि करणे नाही जमले."},Iiu={selection:"निवड",image:"प्रतिमा आत घाला",rectangle:"आयत",diamond:"चौकोन आकाराचा",ellipse:"अंडाकार",arrow:"बाण",line:"रेखा",freedraw:"रेखांकित करा",text:"टेक्स्ट",library:"संग्रह",lock:"निवडलेले यंत्र चित्रकरण झाल्या नंतर ही सक्रिय ठेवा",penMode:"पेन चा मोड - स्पर्श टाळा",link:"निवडलेल्या आकारासाठी दुवा जोडा/बदल करा",eraser:"खोड रबर",frame:"चौकट यंत्र",magicframe:"वायरफ़्रेम पासून सांकेतिक लिपि",embeddable:"वेब रुतवा",laser:"लेसर टॉर्च",hand:"हात ( सरकवण्या चे उपकरण)",extraTools:"आणिक यंत्रे",mermaidToExcalidraw:"मर्मेड पासून एक्सकाली मधे",magicSettings:"कृतिम बुद्दिवत्ता सेटिंग्स"},Piu={canvasActions:"पटल क्रिया",selectedShapeActions:"निवडित आकार क्रिया",shapes:"आकार"},jiu={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 दाबून ठेवा"},Niu={cannotShowPreview:"पूर्वावलोकन दाखवू शकत नाही",canvasTooBig:"पटल खूप जास्त मोठा असू शकतो.",canvasTooBigTip:"टीप: दूर चा तत्व थोडं जवळ आणण्याचा प्रयत्न करावा."},iiu={headingMain:"त्रुटि आली. परत प्रयत्न करा <button>ह्या पानाला पुनः लोड करा.</button>",clearCanvasMessage:"रीलोडिंग होत नसल्यास, परत प्रयत्न करा <button>पटल स्वच्छ करित आहे.</button>",clearCanvasCaveat:" त्यामुळे केलेल्या कामाचे नुकसान होईल ",trackedToSentry:"त्रुटि क्रमांक के साथ त्रुटि {{eventId}} आमच्या प्रणाली नी निरीक्षण केले होते.",openIssueMessage:"त्रुटीत तुमची दृश्य माहिती समाविष्ट न करण्यासाठी आम्ही खूप सावध होतो. तुमचा सीन खाजगी नसल्यास, कृपया आम्हाला पुढ च्या कारवाई साठी सम्पर्क साधा <button>त्रुटि व्यवस्थापन.</button> कृपया गिटहब समस्येमध्ये कॉपी आणि पेस्ट करून खालिल माहिती समाविष्ट करा.",sceneContent:"दृश्य विषय:"},aiu={desc_intro:"तुम्‍ही तुमच्‍या सध्‍याच्‍या दृश्यासाठी लोकांना आपल्‍यासह सहयोग करण्‍यासाठी आमंत्रित करू शकता.",desc_privacy:"काळजी करू नका, सत्र या टोकापासून त्या टोकापर्यंत कूटबद्धता वापरते, त्यामुळे तुम्ही जे काही काढाल ते खाजगी राहील. तुम्ही काय घेऊन आला आहात हे आमचा सर्व्हर ही देखील पाहू शकत नाही.",button_startSession:"सत्र सुरु करा",button_stopSession:"सत्र थाम्बवा",desc_inProgressIntro:"थेट सहयोग सत्र चालू आहे.",desc_shareLink:"तुम्ही ज्यांच्याशी सहयोग करू इच्छिता त्यांच्याशी ही दुवा सामायिक करा:",desc_exitSession:"सत्र थांबवल्याने तुम्हीं खोली तून बाहेर याल, तरिही तुम्ही स्थानिक पातळीवर दृश्यासह काम करु शकाल. लक्षात ठेवा की याचा इतर लोकांवर परिणाम होणार नाही आणि ते त्यांच्या आवृत्तीवर सहयोग करित राहातील.",shareTitle:"एक्सकेलीड्रॉ वर थेट सहयोग सत्रात सामील व्हा"},Viu={title:"त्रुटि"},hiu={disk_title:"डिस्क मधे जतन करा",disk_details:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुम तो डेटा नंतर परत आणु शकता.",disk_button:"फ़ाइल मधे जतन करा",link_title:"सामायिके साठी दुवा",link_details:"नुसतं वाचु देणारा दुवा चा स्वरूपे बाहेर ठेवा.",link_button:"दुवा स्वरूपे बाहेर ठेवा",excalidrawplus_description:"दृश्य तुमच्या एक्सकेलीड्रॉ कार्यक्षेत्र मधे जतन करा.",excalidrawplus_button:"बाहेर ठेवा",excalidrawplus_exportError:"एक्सकेलीड्रॉ मधे बाहेर ठेवता नाही येत..."},miu={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:"पान डावी/उजवी कडे करा"},riu={title:"पटल स्वच्छ करा"},$iu={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:"टीप: काही निवडक आयटम आधीच प्रकाशित/प्रस्तुत केलेले आहेत. विद्यमान लायब्ररी किंवा प्रस्तुतित आयटम अद्यावित करताना तुम्ही फक्त तो पुन्हा प्रस्तुत करा."},yiu={title:"संग्रह जमा केला",content:"धन्यवाद {{authorName}}. आपला संग्रह पुनरावलोकना साठी जमा झाला आहे. तुम्हीं स्थिति सारखी तपासू सकता<link>इकडे</link>"},ciu={resetLibrary:"संग्रह पुनर्स्थित करा",removeItemsFromLib:"निवडलेले आयटम्स संग्रहातून काढा"},giu={header:"प्रतिमा निर्यात करा",label:{withBackground:"पार्श्वभूमि",onlySelected:"फक्त चयन केलेले",darkMode:"अंधारमय स्थिति",embedScene:"दृश्य रुतवा",scale:"क़िती पट",padding:"ग़ादी"},tooltip:{embedScene:"दृश्य डेटा निर्यात केलेल्या पी-एन-जी किव्हा एस-वी-जी फ़ाईल मधे सुरक्षीत केला जाईल, त्याने दृश्य पुनः परत आणता येईल. निर्यात केलेली फ़ाईल चा आकार त्याने वाढेल."},title:{exportToPng:"पी-एन-जी स्वरूपात बाहेर ठेवा",exportToSvg:"एस-वी-जी स्वरूपात बाहेर ठेवा",copyPngToClipboard:"पी-एन-जी रूपे फळी वर कॉपी करा"},button:{exportToPng:"पीएनजी",exportToSvg:"एसविज़ी",copyPngToClipboard:"फळी वर कॉपी करा"}},_iu={tooltip:"तुमचे चित्रे या टोकापासून त्या टोकापर्यंत कूटबद्धतित आहेत, त्या कारणांनी ऐक्सकैलिड्रॉ सर्वर्स ह्यानां ते पहाणं कधीच जमणार नाही.",link:"ब्लॉग पोस्ट ऐक्सकैलिड्रॉ मधे या टोकापासून त्या टोकापर्यंत कूटबद्धतित आहेत"},niu={angle:"कोण",element:"वस्तु",elements:"वस्तु",height:"उंची",scene:"दृश्य",selected:"निवडलेले",storage:"साठवण",title:"अभ्यासू लोगो के लिये आंकडे",total:"योग",version:"आवृत्ती",versionCopy:"कॉपी करायला क्लिक करा",versionNotAvailable:"आवृति उपलब्ध नाही",width:"रुंदी"},piu={addedToLibrary:"संग्रह मधे सम्मिलित",copyStyles:"कॉपी केलेली शैली.",copyToClipboard:"फळी वर कॉपी झाली.",copyToClipboardAsPng:`{{exportSelection}} फळी वर पी-एन-जी स्वरूपात कॉपी झाली
({{exportColorScheme}})`,fileSaved:"फ़ाइल जतन झाली.",fileSavedToFilename:"{filename} मधे जतन झाली",canvas:"पटल",selection:"निवड",pasteAsSingleElement:`एक घटक म्हणून चिपकावण्या साठी {{shortcut}} वापरा,
किंवा विद्यमान मजकूर संपादकात चिपकवा`,unableToEmbed:"युआरेल रूतवणे प्रतिबंधित आहेत. आपली युआरेल श्वेतसूचित आणण्या साठी कृपया एक मुद्दा ग़िटहब वर उठवा",unrecognizedLinkFormat:"जी युआरेल तुम्हीं रतवली आहे, ती आपेक्षित प्रकारे नाही आहे. कृपया स्त्रोत साइट नी 'रूतवण्या साठी दिलेलि लिपि' चिपकावण्याचा प्रयास करा"},diu={transparent:"पारदर्शक",black:"काळा",white:"पांढरा",red:"लाल",pink:"गुलाबी",grape:"अंगूरी",violet:"जांभळा",gray:"राखाडी",blue:"निळा",cyan:"आकाशी",teal:"हिरवट निळा",green:"हिरवा",yellow:"पिवळा",orange:"केशरी",bronze:"कांस्य"},siu={app:{center_heading:"तुमचा सर्व डेटा तुमच्या ब्राउझरमध्ये स्थानिक पातळीवर जतन केला जातो.",center_heading_plus:"त्याऐवजी तुम्हाला Excalidraw+ वर जायचे आहे का?",menuHint:"निर्यात, आवड़ी-निवडी, भाषा, ..."},defaults:{menuHint:"निर्यात, आवड़ी निवडी आणि आणकिही...",center_heading:"आकृत्या. काढणे. सोपे.",toolbarHint:"एक साधन निवडा आणि चित्रीकरण सुरु करा!",helpHint:"शॉर्टकट आणि सहाय्य"}},oiu={mostUsedCustomColors:"सर्वात जास्त वापरणीस रंग",colors:"रंग",shades:"रंगछटा",hexCode:"हेक्स कोड",noShades:"ह्या रंगाच्या छटा उपलब्ध नाहित"},tiu={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> तुम्हीं तुमचं चित्र एकाधं खाली दिलेलं विकल्प निवडुन पहले सुरक्षीत करु शकता."}}},eiu={title:"मर्मेड पासून एक्सकाली मधे",button:"शिरवा",description:"",syntax:"मर्मेड संरचना नियम",preview:"पूर्वावलोकन"},Kz3={labels:Wiu,library:Yiu,buttons:Riu,alerts:Tiu,errors:Oiu,toolBar:Iiu,headings:Piu,hints:jiu,canvasError:Niu,errorSplash:iiu,roomDialog:aiu,errorDialog:Viu,exportDialog:hiu,helpDialog:miu,clearCanvasDialog:riu,publishDialog:$iu,publishSuccessDialog:yiu,confirmDialog:ciu,imageExportDialog:giu,encrypted:_iu,stats:niu,toast:piu,colors:diu,welcomeScreen:siu,colorPicker:oiu,overwriteConfirm:tiu,mermaid:eiu}});var Rau={};ju(Rau,{welcomeScreen:()=>vau,toolBar:()=>Uau,toast:()=>Xau,stats:()=>qau,roomDialog:()=>bau,publishSuccessDialog:()=>Qau,publishDialog:()=>Kau,overwriteConfirm:()=>Wau,mermaid:()=>Yau,library:()=>Aau,labels:()=>Eau,imageExportDialog:()=>Hau,hints:()=>kau,helpDialog:()=>Jau,headings:()=>zau,exportDialog:()=>Zau,errors:()=>Fau,errorSplash:()=>lau,errorDialog:()=>Mau,encrypted:()=>Lau,default:()=>Qz3,confirmDialog:()=>Gau,colors:()=>xau,colorPicker:()=>Sau,clearCanvasDialog:()=>wau,canvasError:()=>fau,buttons:()=>Cau,alerts:()=>Dau});var Eau,Aau,Cau,Dau,Fau,Uau,zau,kau,fau,lau,bau,Mau,Zau,Jau,wau,Kau,Qau,Gau,Hau,Lau,qau,Xau,xau,vau,Sau,Wau,Yau,Qz3;var Tau=g(()=>{m4();Eau={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:""},Aau={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},Cau={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:""},Dau={clearReset:"ကားချပ်တစ်ခုလုံးရှင်းလင်းပါတော့မည်။ အတည်ပြုပါ။",couldNotCreateShareableLink:"မျှဝေရန် လင့်ခ်မရယူနိုင်သေးပါ။",couldNotCreateShareableLinkTooBig:"မြင်ကွင်းအရမ်းကြီးနေသဖြင့် မျှဝေရန် လင့်ခ်မရယူနိုင်သေးပါ။",couldNotLoadInvalidFile:"လွဲမှားနေသောဖိုင်အား တင်၍မရပါ။",importBackendFailed:"Backend မှမလုပ်ဆောင်နိုင်သေးပါ။",cannotExportEmptyCanvas:"ကားချပ်အလွတ်အားထုတ်ယူ၍မရပါ။",couldNotCopyToClipboard:"",decryptFailed:"အချက်အလက်ဖော်ယူ၍မရပါ။",uploadedSecurly:"တင်သွင်းအချက်အလက်များအား နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်စနစ်အသုံးပြု၍လုံခြုံစွာထိန်းသိမ်းထားပါသဖြင့် Excalidraw ဆာဗာနှင့်ဆက်စပ်အဖွဲ့အစည်းများပင်လျှင်မဖတ်ရှုနိုင်ပါ။",loadSceneOverridePrompt:"လက်ရှိရေးဆွဲထားသမျှအား ပြင်ပမှတင်သွင်းသောပုံနှင့်အစားထိုးပါမည်။ ဆက်လက်ဆောင်ရွက်လိုပါသလား။",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"{{numShapes}} ခုသောပုံသဏ္ဌာန်အားမှတ်တမ်းတင်ပါမည်။ အတည်ပြုပါ။",imageDoesNotContainScene:"",cannotRestoreFromImage:"ဤပုံဖြင့်မြင်ကွင်းပြန်လည်မရယူနိုင်ပါ။",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},Fau={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:""},Uau={selection:"ရွေးချယ်",image:"",rectangle:"စတုဂံ",diamond:"စိန်",ellipse:"အဝိုင်း",arrow:"မြှား",line:"မျဉ်း",freedraw:"",text:"စာသား",library:"မှတ်တမ်း",lock:"ရွေးချယ်ထားသောကိရိယာကိုသာဆက်သုံး",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},zau={canvasActions:"ကားချပ်လုပ်ဆောင်ချက်",selectedShapeActions:"ပုံသဏ္ဌာန်လုပ်ဆောင်ချက်",shapes:"ပုံသဏ္ဌာန်များ"},kau={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:""},fau={cannotShowPreview:"နမူနာမပြသနိုင်ပါ",canvasTooBig:"ကားချပ်အလွန်ကြီးကောင်းကြီးနေနိုင်သည်။",canvasTooBigTip:"မှတ်ချက်။ ။ဝေးကွာနေသော ပုံများ၊ စာများအား ပိုမိုနီးကပ်အောင်ရွှေ့ကြည့်ပါ။"},lau={headingMain:"ချို့ယွင်းမှုဖြစ်ပေါ်ခဲ့သဖြင့် ထပ်မံကြိုးစားကြည့်ရန် <button>စာမျက်နှာအား အသစ်ပြန်လည်ရယူပါ။</button>",clearCanvasMessage:"အသစ်ပြန်လည်မရယူနိုင်ပါက ထပ်မံကြိုးစားကြည့်ရန်<button>ကားချပ်အား ရှင်းလင်းပါ။</button>",clearCanvasCaveat:" ရေးဆွဲထားသည်များ ဆုံးရှုံးနိုင်သည် ",trackedToSentry:"ချို့ယွင်းမှုသတ်မှတ်ချက် {{eventId}} အားစနစ်အတွင်းခြေရာကောက်ပြီးပါပြီ။",openIssueMessage:"ချို့ယွင်းမှုမှတ်တမ်းတွင် အရေးကြီးအချက်အလက်များပါဝင်မှုမရှိစေရန်အထူးသတိပြုပါသည်။ မပါဝင်ပါက ဆက်လက်ဆောင်ရွက်ရန် <button>ချို့ယွင်းမှုအားခြေရာကောက်ပါ။</button> အောက်ပါအချက်အလက်များအား Github တွင် Issue အနေဖြင့်ဖြည့်သွင်းဖော်ပြပေးပါ။",sceneContent:"မြင်ကွင်းပါအချက်အလက်။ ။"},bau={desc_intro:"လက်ရှိမြင်ကွင်းတွင်ပူးပေါင်းရေးဆွဲရန် အခြားသူများအား ဖိတ်ကြားနိုင်သည်။",desc_privacy:"နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်ထားသဖြင့်ရေးဆွဲသမျှအား ဆာဗာပေါ်မှပင်လျှင်ကြည့်ရှုနိုင်မည်မဟုတ်ပါ။ မစိုးရိမ်ပါနှင့်။",button_startSession:"ပူးပေါင်းမှုစတင်",button_stopSession:"ပူးပေါင်းမှုအဆုံးသတ်",desc_inProgressIntro:"တိုက်ရိုက်ပူးပေါင်းရေးဆွဲမှုများပြုလုပ်နေပါသည်။",desc_shareLink:"ဤလင့်ခ်အား ပူးပေါင်းရေးဆွဲလိုသူများထံပေးပို့ပါ။ ။ ",desc_exitSession:"ပူးပေါင်းမှုရပ်တန့်ပါက အဖွဲ့အတွင်းမှထွက်ခွာသွားမည်ဖြစ်သော်လည်း မိမိမြင်ကွင်းတွင်ဆက်လက်ရေးဆွဲနိုင်ပါမည်။ အဖွဲ့အတွင်းကျန်ရှိနေခဲ့သောအခြားပါဝင်သူများသည်လည်း ဆက်လက်ပူးပေါင်းရေးဆွဲနေနိုင်ပါလိမ့်မည်။",shareTitle:""},Mau={title:"ချို့ယွင်းချက်"},Zau={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},Jau={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:""},wau={title:""},Kau={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},Qau={title:"",content:""},Gau={resetLibrary:"",removeItemsFromLib:""},Hau={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Lau={tooltip:"ရေးဆွဲထားသောပုံများအား နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်ထားသဖြင့် Excalidraw ၏ဆာဗာများပင်လျှင်မြင်တွေ့ရမည်မဟုတ်ပါ။",link:""},qau={angle:"ထောင့်",element:"",elements:"",height:"အမြင့်",scene:"မြင်ကွင်း",selected:"ရွေးချယ်သည်",storage:"သိုလှောင်ခန်း",title:"အက္ခရာများအတွက်အချက်အလက်များ",total:"စုစုပေါင်း",version:"",versionCopy:"",versionNotAvailable:"",width:"အကျယ်"},Xau={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},xau={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},vau={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},Sau={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Wau={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Yau={title:"",button:"",description:"",syntax:"",preview:""},Qz3={labels:Eau,library:Aau,buttons:Cau,alerts:Dau,errors:Fau,toolBar:Uau,headings:zau,hints:kau,canvasError:fau,errorSplash:lau,roomDialog:bau,errorDialog:Mau,exportDialog:Zau,helpDialog:Jau,clearCanvasDialog:wau,publishDialog:Kau,publishSuccessDialog:Qau,confirmDialog:Gau,imageExportDialog:Hau,encrypted:Lau,stats:qau,toast:Xau,colors:xau,welcomeScreen:vau,colorPicker:Sau,overwriteConfirm:Wau,mermaid:Yau}});var CVu={};ju(CVu,{welcomeScreen:()=>uVu,toolBar:()=>iau,toast:()=>tau,stats:()=>oau,roomDialog:()=>rau,publishSuccessDialog:()=>nau,publishDialog:()=>_au,overwriteConfirm:()=>EVu,mermaid:()=>AVu,library:()=>Iau,labels:()=>Oau,imageExportDialog:()=>dau,hints:()=>Vau,helpDialog:()=>cau,headings:()=>aau,exportDialog:()=>yau,errors:()=>Nau,errorSplash:()=>mau,errorDialog:()=>$au,encrypted:()=>sau,default:()=>Gz3,confirmDialog:()=>pau,colors:()=>eau,colorPicker:()=>BVu,clearCanvasDialog:()=>gau,canvasError:()=>hau,buttons:()=>Pau,alerts:()=>jau});var Oau,Iau,Pau,jau,Nau,iau,aau,Vau,hau,mau,rau,$au,yau,cau,gau,_au,nau,pau,dau,sau,oau,tau,eau,uVu,BVu,EVu,AVu,Gz3;var DVu=g(()=>{m4();Oau={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:""},Iau={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."},Pau={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"},jau={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!`},Nau={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:""},iau={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:""},aau={canvasActions:"Handlinger: lerret",selectedShapeActions:"Handlinger: valgt objekt",shapes:"Former"},Vau={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:""},hau={cannotShowPreview:"Kan ikke vise forhåndsvisning",canvasTooBig:"Lerretet kan være for stort.",canvasTooBigTip:"Tips: Prøv å flytte de ytterste elementene litt tettere sammen."},mau={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:"},rau={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"},$au={title:"Feil"},yau={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..."},cau={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"},gau={title:"Tøm lerret"},_au={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."},nau={title:"Bibliotek innsendt",content:"Takk {{authorName}}. Ditt bibliotek har blitt sendt inn for gjennomgang. Du kan spore statusen<link>her</link>"},pau={resetLibrary:"Nullstill bibliotek",removeItemsFromLib:"Fjern valgte elementer fra bibliotek"},dau={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"}},sau={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"},oau={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"},tau={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'},eau={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"},uVu={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"}},BVu={mostUsedCustomColors:"Mest brukte egendefinerte farger",colors:"Farger",shades:"Toner",hexCode:"Heksadesimal kode",noShades:"Ingen toner tilgjengelig for denne fargen"},EVu={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."}}},AVu={title:"",button:"",description:"",syntax:"",preview:""},Gz3={labels:Oau,library:Iau,buttons:Pau,alerts:jau,errors:Nau,toolBar:iau,headings:aau,hints:Vau,canvasError:hau,errorSplash:mau,roomDialog:rau,errorDialog:$au,exportDialog:yau,helpDialog:cau,clearCanvasDialog:gau,publishDialog:_au,publishSuccessDialog:nau,confirmDialog:pau,imageExportDialog:dau,encrypted:sau,stats:oau,toast:tau,colors:eau,welcomeScreen:uVu,colorPicker:BVu,overwriteConfirm:EVu,mermaid:AVu}});var PVu={};ju(PVu,{welcomeScreen:()=>RVu,toolBar:()=>lVu,toast:()=>WVu,stats:()=>SVu,roomDialog:()=>wVu,publishSuccessDialog:()=>qVu,publishDialog:()=>LVu,overwriteConfirm:()=>OVu,mermaid:()=>IVu,library:()=>UVu,labels:()=>FVu,imageExportDialog:()=>xVu,hints:()=>MVu,helpDialog:()=>GVu,headings:()=>bVu,exportDialog:()=>QVu,errors:()=>fVu,errorSplash:()=>JVu,errorDialog:()=>KVu,encrypted:()=>vVu,default:()=>Hz3,confirmDialog:()=>XVu,colors:()=>YVu,colorPicker:()=>TVu,clearCanvasDialog:()=>HVu,canvasError:()=>ZVu,buttons:()=>zVu,alerts:()=>kVu});var FVu,UVu,zVu,kVu,fVu,lVu,bVu,MVu,ZVu,JVu,wVu,KVu,QVu,GVu,HVu,LVu,qVu,XVu,xVu,vVu,SVu,WVu,YVu,RVu,TVu,OVu,IVu,Hz3;var jVu=g(()=>{m4();FVu={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:""},UVu={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."},zVu={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"},kVu={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!`},fVu={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:""},lVu={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:""},bVu={canvasActions:"Canvasacties",selectedShapeActions:"Acties van geselecteerde vorm",shapes:"Vormen"},MVu={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:""},ZVu={cannotShowPreview:"Kan voorbeeld niet tonen",canvasTooBig:"Het canvas is mogelijk te groot.",canvasTooBigTip:"Tip: beweeg de verste elementen iets dichter bij elkaar."},JVu={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:"},wVu={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"},KVu={title:"Fout"},QVu={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+..."},GVu={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"},HVu={title:"Wis canvas"},LVu={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:""},qVu={title:"Bibliotheek ingediend",content:"<link>Hier</link>"},XVu={resetLibrary:"Reset bibliotheek",removeItemsFromLib:"Verwijder geselecteerde items uit bibliotheek"},xVu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},vVu={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"},SVu={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"},WVu={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"},YVu={transparent:"Transparant",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},RVu={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"}},TVu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},OVu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},IVu={title:"",button:"",description:"",syntax:"",preview:""},Hz3={labels:FVu,library:UVu,buttons:zVu,alerts:kVu,errors:fVu,toolBar:lVu,headings:bVu,hints:MVu,canvasError:ZVu,errorSplash:JVu,roomDialog:wVu,errorDialog:KVu,exportDialog:QVu,helpDialog:GVu,clearCanvasDialog:HVu,publishDialog:LVu,publishSuccessDialog:qVu,confirmDialog:XVu,imageExportDialog:xVu,encrypted:vVu,stats:SVu,toast:WVu,colors:YVu,welcomeScreen:RVu,colorPicker:TVu,overwriteConfirm:OVu,mermaid:IVu}});var zhu={};ju(zhu,{welcomeScreen:()=>Chu,toolBar:()=>mVu,toast:()=>Ehu,stats:()=>Bhu,roomDialog:()=>gVu,publishSuccessDialog:()=>oVu,publishDialog:()=>sVu,overwriteConfirm:()=>Fhu,mermaid:()=>Uhu,library:()=>iVu,labels:()=>NVu,imageExportDialog:()=>eVu,hints:()=>$Vu,helpDialog:()=>pVu,headings:()=>rVu,exportDialog:()=>nVu,errors:()=>hVu,errorSplash:()=>cVu,errorDialog:()=>_Vu,encrypted:()=>uhu,default:()=>Lz3,confirmDialog:()=>tVu,colors:()=>Ahu,colorPicker:()=>Dhu,clearCanvasDialog:()=>dVu,canvasError:()=>yVu,buttons:()=>aVu,alerts:()=>VVu});var NVu,iVu,aVu,VVu,hVu,mVu,rVu,$Vu,yVu,cVu,gVu,_Vu,nVu,pVu,dVu,sVu,oVu,tVu,eVu,uhu,Bhu,Ehu,Ahu,Chu,Dhu,Fhu,Uhu,Lz3;var khu=g(()=>{m4();NVu={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:""},iVu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},aVu={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:""},VVu={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:""},hVu={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:""},mVu={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:""},rVu={canvasActions:"Handlingar: lerret",selectedShapeActions:"Handlingar: valt objekt",shapes:"Formar"},$Vu={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:""},yVu={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."},cVu={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:"},gVu={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"},_Vu={title:"Feil"},nVu={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..."},pVu={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:""},dVu={title:"Tøm lerretet"},sVu={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:""},oVu={title:"Bibliotek innsendt",content:"Tusen takk {{authorName}}! Biblioteket ditt har blitt sendt inn til gjennomgang. Du kan halde styr på status<link>her</link>"},tVu={resetLibrary:"Tilbakestill bibliotek",removeItemsFromLib:"Fjern valde element frå biblioteket"},eVu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},uhu={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"},Bhu={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"},Ehu={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:""},Ahu={transparent:"Gjennomsiktig",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Chu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},Dhu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Fhu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Uhu={title:"",button:"",description:"",syntax:"",preview:""},Lz3={labels:NVu,library:iVu,buttons:aVu,alerts:VVu,errors:hVu,toolBar:mVu,headings:rVu,hints:$Vu,canvasError:yVu,errorSplash:cVu,roomDialog:gVu,errorDialog:_Vu,exportDialog:nVu,helpDialog:pVu,clearCanvasDialog:dVu,publishDialog:sVu,publishSuccessDialog:oVu,confirmDialog:tVu,imageExportDialog:eVu,encrypted:uhu,stats:Bhu,toast:Ehu,colors:Ahu,welcomeScreen:Chu,colorPicker:Dhu,overwriteConfirm:Fhu,mermaid:Uhu}});var ahu={};ju(ahu,{welcomeScreen:()=>Phu,toolBar:()=>Jhu,toast:()=>Ohu,stats:()=>Thu,roomDialog:()=>Hhu,publishSuccessDialog:()=>Shu,publishDialog:()=>vhu,overwriteConfirm:()=>Nhu,mermaid:()=>ihu,library:()=>lhu,labels:()=>fhu,imageExportDialog:()=>Yhu,hints:()=>Khu,helpDialog:()=>Xhu,headings:()=>whu,exportDialog:()=>qhu,errors:()=>Zhu,errorSplash:()=>Ghu,errorDialog:()=>Lhu,encrypted:()=>Rhu,default:()=>qz3,confirmDialog:()=>Whu,colors:()=>Ihu,colorPicker:()=>jhu,clearCanvasDialog:()=>xhu,canvasError:()=>Qhu,buttons:()=>bhu,alerts:()=>Mhu});var fhu,lhu,bhu,Mhu,Zhu,Jhu,whu,Khu,Qhu,Ghu,Hhu,Lhu,qhu,Xhu,xhu,vhu,Shu,Whu,Yhu,Rhu,Thu,Ohu,Ihu,Phu,jhu,Nhu,ihu,qz3;var Vhu=g(()=>{m4();fhu={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 lendavant",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 lintegracion",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 leditor 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 dal quadre",eyeDropper:"Prendre la color a partir dun canabàs",textToDiagram:"",prompt:""},lhu={noItems:"Cap delement pas encara apondut...",hint_emptyLibrary:"Seleccionatz un element dapondre aquí, o installatz una bibliotèca del depaus public, çai-jos.",hint_emptyPrivateLibrary:"Seleccionatz un element dapondre aquí pel canabàs."},bhu={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 lintegracion",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Clicar per interagir"},Mhu={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 dun fichièr invalid",importBackendFailed:"Importacion fracassada.",cannotExportEmptyCanvas:"Impossible dexportar 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 dExcalidraw 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 longlet del navegador a la plaça)`,errorAddingToLibrary:"Apondon impossible de lelement a la bibliotèca",errorRemovingFromLibrary:"Supression impossibla de lelement 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 lintegracion de scèna pendent lexportacion?",cannotRestoreFromImage:"Restauracion impossibla de la scèna a partir del fichièr imatge",invalidSceneUrl:"Importacion impossibla de la scèna a partir de lURL 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 !`},Zhu={unsupportedFileType:"Tipe de fichièr pas pres en carga.",imageInsertError:"Insercion dimatge impossibla. Tornatz ensajar mai tard...",fileTooBig:"Fichièr tròp pesuc. La talha maximala autorizada es {{maxSize}}.",svgImageInsertError:"Insercion dimatge SVG impossibla. Las balisas SVG semblan invalidas.",failedToFetchImage:"Fracàs de la recuperacion de limatge.",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."},Jhu={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 laisina 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 daisinas",mermaidToExcalidraw:"De Mermaid cap a Excalidraw",magicSettings:""},whu={canvasActions:"Accions del canabàs",selectedShapeActions:"Accions per la forma seleccionada",shapes:"Formas"},Khu={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 laisina 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 langle 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 deditar (manténer Maj. per ne seleccionar mantun),
o manténer Alt e clicar per napondre de novèls`,placeImage:"Clicatz per plaçar limatge, 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:""},Qhu={cannotShowPreview:"Afichatge impossible de lapercebut",canvasTooBig:"Lo canabàs pòt èsser tròp grand.",canvasTooBigTip:"Astúcia: ensajatz de sarrar los elements mai alonhats."},Ghu={headingMain:"Una error ses producha. Ensajatz <button>recargament de la pagina.</button>",clearCanvasMessage:"Se recargar fonciona pas, ensajatz <button>descafar los canabasses.</button>",clearCanvasCaveat:" Menarà a una pèrda del trabalh ",trackedToSentry:"Error amb lidentificant {{eventId}} es estada enregistrada sus nòstre sistèma.",openIssueMessage:"Èrem plan prudents per inclure pas dinformacions de la scèna vòstra sus lerror. Se vòstra scèna es pas privada, volgatz considerar de perseguir sus nòstre <button>traçadors davarias.</button> Volgatz inclure las informacions çai-jos en las copiant e pegant a lissue GitHub.",sceneContent:"Contengut de la scèna:"},Hhu={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 quaquò afectarà pas los autres, e poiràn collaborar a lor version.",shareTitle:"Rejonhètz una session collaborativa sus Excalidraw"},Lhu={title:"Error"},qhu={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..."},Xhu={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 ledicion (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"},xhu={title:"Escafar canabàs"},vhu={title:"Publicar la bibliotèca",itemName:"Nom de lelement",authorName:"Nom de lautor",githubUsername:"Nom dutilizaire GitHub",twitterUsername:"Nom dutilizaire Twitter",libraryName:"Nom de la bibliotèca",libraryDesc:"Descripcion de la bibliotèca",website:"Site web",placeholder:{authorName:"Vòstre nom o nom dutilizaire",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 dutilizaire 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 lutilizen dins lor dessenhs.",noteGuidelines:"Qualquun 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 lutilizar 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: dunes elements seleccionats son marcats ja coma publicats/enviats. Deuriatz sonque tornar enviar los elements pendent lactualizacion duna bibliotèca existenta o un mandadís."},Shu={title:"Bibliotèca somesa",content:"Mercés {{authorName}}. Vòstre bibliotèca es estada somesa per repassa. Podètz seguir lavançament<link>aquí</link>"},Whu={resetLibrary:"Reïnicializar la bibliotèca",removeItemsFromLib:"Tirar los elements seleccionats de la bibliotèca"},Yhu={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"}},Rhu={tooltip:"Vòstres dessenhs son chifrats del cap a la fin en consequéncia los servidors dExcalidraw los veiràn pas jamai.",link:"Article de blòg sul chiframent del cap a la fin dins Excalidraw"},Thu={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"},Ohu={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:""},Ihu={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"},Phu={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"}},jhu={mostUsedCustomColors:"Colors personalizadas mai utilizadas",colors:"Colors",shades:"Nuanças",hexCode:"Còdi exadecimal",noShades:"Cap de nuança pas disponibla per aquesta color"},Nhu={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 dun fichièr",button:"Cargar dun fichièr",description:""},shareableLink:{title:"Cargar dun ligam",button:"Remplaçar mon contengut",description:""}}},ihu={title:"De Mermaid cap a Excalidraw",button:"Inserir",description:"",syntax:"Sintaxi Mermaid",preview:"Apercebut"},qz3={labels:fhu,library:lhu,buttons:bhu,alerts:Mhu,errors:Zhu,toolBar:Jhu,headings:whu,hints:Khu,canvasError:Qhu,errorSplash:Ghu,roomDialog:Hhu,errorDialog:Lhu,exportDialog:qhu,helpDialog:Xhu,clearCanvasDialog:xhu,publishDialog:vhu,publishSuccessDialog:Shu,confirmDialog:Whu,imageExportDialog:Yhu,encrypted:Rhu,stats:Thu,toast:Ohu,colors:Ihu,welcomeScreen:Phu,colorPicker:jhu,overwriteConfirm:Nhu,mermaid:ihu}});var bmu={};ju(bmu,{welcomeScreen:()=>zmu,toolBar:()=>chu,toast:()=>Fmu,stats:()=>Dmu,roomDialog:()=>dhu,publishSuccessDialog:()=>Bmu,publishDialog:()=>umu,overwriteConfirm:()=>fmu,mermaid:()=>lmu,library:()=>mhu,labels:()=>hhu,imageExportDialog:()=>Amu,hints:()=>_hu,helpDialog:()=>thu,headings:()=>ghu,exportDialog:()=>ohu,errors:()=>yhu,errorSplash:()=>phu,errorDialog:()=>shu,encrypted:()=>Cmu,default:()=>Xz3,confirmDialog:()=>Emu,colors:()=>Umu,colorPicker:()=>kmu,clearCanvasDialog:()=>ehu,canvasError:()=>nhu,buttons:()=>rhu,alerts:()=>$hu});var hhu,mhu,rhu,$hu,yhu,chu,ghu,_hu,nhu,phu,dhu,shu,ohu,thu,ehu,umu,Bmu,Emu,Amu,Cmu,Dmu,Fmu,Umu,zmu,kmu,fmu,lmu,Xz3;var Mmu=g(()=>{m4();hhu={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:""},mhu={noItems:"ਹਾਲੇ ਤੱਕ ਕੋਈ ਚੀਜ ਜੋੜੀ ਨਹੀਂ ਗਈ...",hint_emptyLibrary:"ਇੱਥੇ ਆਈਟਮ ਜੋੜਨ ਲਈ ਉਸਨੂੰ ਕੈਨਵਸ ‘ਤੇ ਚੁਣੋ, ਜਾਂ ਹੇਠਾਂ ਪਬਲਿਕ ਰਿਪਾਜ਼ੀਟਰੀ ‘ਚੋਂ ਲਾਇਬ੍ਰੇਰੀ ਸਥਾਪਤ ਕਰੋ।",hint_emptyPrivateLibrary:"ਇੱਥੇ ਆਈਟਮ ਜੋੜਨ ਲਈ ਉਸਨੂੰ ਕੈਨਵਸ ‘ਤੇ ਚੁਣੋ।"},rhu={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:""},$hu={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:`ਕੋਈ ਇੰਟਰਨੈੱਟ ਕਨੈਕਸ਼ਨ ਨਹੀਂ ਹੈ
ਤੁਹਾਡੀਆਂ ਤਬਦੀਲੀਆਂ ਸਾਂਭੀਆਂ ਨਹੀਂ ਜਾਣਗੀਆਂ।`},yhu={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:""},chu={selection:"ਚੋਣਕਾਰ",image:"ਤਸਵੀਰ ਸ਼ਾਮਲ ਕਰੋ",rectangle:"ਆਇਤ",diamond:"ਹੀਰਾ",ellipse:"ਅੰਡਾਕਾਰ",arrow:"ਤੀਰ",line:"ਲਕੀਰ",freedraw:"ਵਾਹੋ",text:"ਪਾਠ",library:"ਲਾਇਬ੍ਰੇਰੀ",lock:"ਡਰਾਇੰਗ ਤੋਂ ਬਾਅਦ ਵੀ ਚੁਣੇ ਹੋਏ ਸੰਦ ਨੂੰ ਸਰਗਰਮ ਰੱਖੋ ",penMode:"ਪੈੱਨ ਮੋਡ - ਟੱਚ ਤੋਂ ਬਚਾਉਂਦਾ ਹੈ",link:"",eraser:"ਰਬੜ",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},ghu={canvasActions:"ਕੈਨਵਸ ਦੀਆਂ ਕਾਰਵਾਈਆਂ",selectedShapeActions:"ਚੁਣੀ ਆਕ੍ਰਿਤੀ ਦੀਆਂ ਕਾਰਵਾਈਆਂ",shapes:"ਆਕ੍ਰਿਤੀਆਂ"},_hu={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:""},nhu={cannotShowPreview:"ਝਲਕ ਨਹੀਂ ਦਿਖਾ ਸਕਦੇ",canvasTooBig:"ਸ਼ਾਇਦ ਕੈਨਵਸ ਬਹੁਤ ਜ਼ਿਆਦਾ ਵੱਡਾ ਹੈ।",canvasTooBigTip:"ਨੁਸਖਾ: ਸਭ ਤੋਂ ਦੂਰ ਸਥਿੱਤ ਐਲੀਮੈਂਟਾਂ ਨੂੰ ਥੋੜ੍ਹਾ ਜਿਹਾ ਨੇੜੇ ਲਿਆ ਕੇ ਦੇਖੋ।"},phu={headingMain:"ਕੋਈ ਸਮੱਸਿਆ ਖੜ੍ਹੀ ਹੋਈ। <button>ਪੰਨਾ ਮੁੜ-ਲੋਡ</button> ਕਰਕੇ ਦੇਖੋ।",clearCanvasMessage:"ਜੇ ਮੁੜ-ਲੋਡ ਕਰਨਾ ਕੰਮ ਨਾ ਕਰੇ, ਤਾਂ ਇਹ ਕਰਕੇ ਦੇਖੋ <button>ਕੈਨਵਸ ਸਾਫ ਕਰੋ।</button>",clearCanvasCaveat:" ਇਹ ਸਾਰਾ ਕੰਮ ਗਵਾ ਦੇਵੇਗਾ ",trackedToSentry:"ਸੂਚਕ {{eventId}} ਵਾਲੀ ਸਮੱਸਿਆ ਸਾਡੇ ਸਿਸਟਮ 'ਤੇ ਟਰੈਕ ਕੀਤੀ ਗਈ ਸੀ।",openIssueMessage:"ਅਸੀਂ ਬੜੇ ਸਾਵਧਾਨ ਸੀ ਕਿ ਗਲਤੀ ਵਿੱਚ ਤੁਹਾਡੇ ਦ੍ਰਿਸ਼ ਦੀ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਨਾ ਕਰੀਏ। ਜੇ ਤੁਹਾਡਾ ਦ੍ਰਿਸ਼ ਨਿੱਜੀ ਨਹੀਂ ਹੈ ਤਾਂ ਇਸ 'ਤੇ ਸਾਡੇ ਨਾਲ ਸੰਪਰਕ ਕਰੋ ਜੀ <button>ਬੱਗ ਟਰੈਕਰ।</button>ਹੇਠਾਂ ਦਿੱਤੀ ਜਾਣਕਾਰੀ ਨੂੰ ਕਾਪੀ ਕਰਕੇ ਗਿੱਟਹੱਬ ਮੁੱਦੇ ਵਿੱਚ ਪੇਸਟ ਕਰਕੇ ਸ਼ਾਮਲ ਕਰੋ ਜੀ।",sceneContent:"ਦ੍ਰਿਸ਼ ਦੀ ਸਮੱਗਰੀ:"},dhu={desc_intro:"ਤੁਸੀਂ ਲੋਕਾਂ ਨੂੰ ਆਪਣੇ ਨਾਲ ਮੌਜੂਦਾ ਦ੍ਰਿਸ਼ 'ਤੇ ਸਹਿਯੋਗ ਕਰਨ ਲਈ ਸੱਦਾ ਭੇਜ ਸਕਦੇ ਹੋ।",desc_privacy:"ਫਿਕਰ ਨਾ ਕਰੋ, ਇਜਲਾਸ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਸ਼ਨ ਵਰਤਦਾ ਹੈ, ਸੋ ਜੋ ਕੁਝ ਵੀ ਤੁਸੀਂ ਵਾਹੁੰਦੇ ਹੋ ਉਹ ਨਿੱਜੀ ਹੀ ਰਹਿੰਦਾ ਹੈ। ਇੱਥੋਂ ਤੱਕ ਕਿ ਸਾਡੇ ਸਰਵਰ ਵੀ ਨਹੀਂ ਜਾਣ ਸਕਣਗੇ ਕਿ ਤੁਸੀਂ ਕੀ ਬਣਾਇਆ ਹੈ।",button_startSession:"ਇਜਲਾਸ ਸ਼ੁਰੂ ਕਰੋ",button_stopSession:"ਇਜਲਾਸ ਰੋਕੋ",desc_inProgressIntro:"ਲਾਇਵ ਸਹਿਯੋਗ ਇਜਲਾਸ ਹੁਣ ਚੱਲ ਰਿਹਾ ਹੈ।",desc_shareLink:"ਇਸ ਲਿੰਕ ਨੂੰ ਉਹਨਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰੋ ਜਿਹਨਾਂ ਨਾਲ ਤੁਸੀਂ ਸਹਿਯੋਗ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ:",desc_exitSession:"ਇਜਲਾਸ ਨੂੰ ਰੋਕਣਾ ਤੁਹਾਡਾ ਕਮਰੇ ਨਾਲੋਂ ਨਾਤਾ ਤੋੜ ਦੇਵੇਗਾ, ਪਰ ਤੁਸੀਂ ਸਥਾਨਕ ਪੱਧਰ 'ਤੇ ਦ੍ਰਿਸ਼ ਨਾਲ ਕੰਮ ਕਰਨਾ ਜਾਰੀ ਰੱਖ ਸਕੋਗੇ। ਇਹ ਧਿਆਨ 'ਚ ਰੱਖੋ ਕਿ ਇਹ ਬਾਕੀ ਲੋਕਾਂ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਕਰੇਗਾ , ਅਤੇ ਉਹ ਹਾਲੇ ਵੀ ਆਪਣੇ ਸੰਸਕਰਨ 'ਤੇ ਸਹਿਯੋਗ ਕਰਨ ਦੇ ਕਾਬਲ ਹੋਣਗੇ।",shareTitle:"Excalidraw 'ਤੇ ਲਾਈਵ ਇਜਲਾਸ ਦਾ ਹਿੱਸਾ ਬਣੋ"},shu={title:"ਗਲਤੀ"},ohu={disk_title:"ਡਿਸਕ ਵਿੱਚ ਸਾਂਭੋ",disk_details:"ਦ੍ਰਿਸ਼ ਦਾ ਡਾਟਾ ਫਾਈਲ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ ਜਿੱਥੋਂ ਤੁਸੀਂ ਇਸਨੂੰ ਬਾਅਦ ਵਿੱਚ ਆਯਾਤ ਕਰ ਸਕਦੇ ਹੋ।",disk_button:"ਫਾਈਲ ਵਿੱਚ ਸਾਂਭੋ",link_title:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ",link_details:"ਸਿਰਫ ਦੇਖੇ-ਜਾਣ ਵਾਲੀ ਲਿੰਕ ਵਜੋਂ ਨਿਰਯਾਤ ਕਰੋ।",link_button:"ਲਿੰਕ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",excalidrawplus_description:"ਆਪਣੇ ਦ੍ਰਿਸ਼ ਦੇ ਡਾਟੇ ਨੂੰ Excalidraw+ ਵਰਕਸਪੇਸ ਵਿੱਚ ਸਾਂਭੋ।",excalidrawplus_button:"ਨਿਰਯਾਤ ਕਰੋ",excalidrawplus_exportError:"ਇਸ ਸਮੇਂ Excalidraw+ ਵਿੱਚ ਨਿਰਯਾਤ ਨਹੀਂ ਕਰ ਸਕੇ..."},thu={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:""},ehu={title:"ਕੈਨਵਸ ਨੂੰ ਸਾਫ਼ ਕਰੋ"},umu={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:""},Bmu={title:"ਲਾਇਬ੍ਰੇਰੀ ਜਮ੍ਹਾਂ ਕਰਵਾਈ",content:"ਧੰਨਵਾਦ {{authorName}} ਜੀਉ। ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਮੀਖਿਆ ਲਈ ਭੇਜ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਤੁਸੀਂ ਉਸਦੀ ਸਥਿਤੀ <link>ਇੱਥੇ</link> ਦੇਖ ਸਕਦੇ ਹੋ।"},Emu={resetLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਰੀਸੈੱਟ ਕਰੋ",removeItemsFromLib:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ ਚੁਣੀਆਂ ਹੋਈਆਂ ਆਈਟਮਾਂ ਹਟਾਓ"},Amu={header:"ਤਸਵੀਰ ਨਿਰਯਾਤ ਕਰੋ",label:{withBackground:"ਪਿਛੋਕੜ",onlySelected:"ਸਿਰਫ ਚੁਣੇ ਹੋਏ",darkMode:"ਡਾਰਕ ਮੋਡ",embedScene:"ਦ੍ਰਿਸ਼ ਮੜ੍ਹੋ",scale:"ਸਕੇਲ",padding:"ਪੈਡਿੰਗ"},tooltip:{embedScene:""},title:{exportToPng:"PNG ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",exportToSvg:"SVG ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",copyPngToClipboard:"PNG ਨੂੰ ਕਲਿੱਪੋਬਰਡ ‘ਤੇ ਕਾਪੀ ਕਰੋ"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"ਗੱਤੇ 'ਤੇ ਕਾਪੀ ਕਰੋ"}},Cmu={tooltip:"ਤੁਹਾਡੀ ਡਰਾਇੰਗਾਂ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਟ ਕੀਤੀਆਂ ਹੋਈਆਂ ਹਨ, ਇਸ ਲਈ Excalidraw ਦੇ ਸਰਵਰ ਉਹਨਾਂ ਨੂੰ ਕਦੇ ਵੀ ਨਹੀਂ ਦੇਖਣਗੇ।",link:"Excalidraw ਵਿੱਚ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕ੍ਰਿਪਸ਼ਨ 'ਤੇ ਬਲੌਗ ਸੰਪਾਦਨਾ"},Dmu={angle:"ਕੋਣ",element:"ਐਲੀਮੈਂਟ",elements:"ਐਲੀਮੈਂਟ",height:"ਉਚਾਈ",scene:"ਦ੍ਰਿਸ਼",selected:"ਚੁਣੇ",storage:"ਸਟੋਰੇਜ",title:"ਪੜਾਕੂਆਂ ਲਈ ਅੰਕੜੇ",total:"ਕੁੱਲ",version:"ਸੰਸਕਰਨ",versionCopy:"ਕਾਪੀ ਕਰਨ ਲਈ ਕਲਿੱਕ ਕਰੋ",versionNotAvailable:"ਸੰਸਕਰਨ ਉਪਲਬਧ ਨਹੀਂ ਹੈ",width:"ਚੌੜਾਈ"},Fmu={addedToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਜੋੜਿਆ",copyStyles:"ਕਾਪੀ ਕੀਤੇ ਸਟਾਇਲ।",copyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕੀਤਾ।",copyToClipboardAsPng:"{{exportSelection}} ਨੂੰ ਕਲਿੱਪਬੋਰਡ 'ਤੇ PNG ਵਜੋਂ ਕਾਪੀ ਕੀਤਾ ({{exportColorScheme}})",fileSaved:"ਫਾਈਲ ਸਾਂਭੀ ਗਈ।",fileSavedToFilename:"{filename} ਵਿੱਚ ਸਾਂਭੀ",canvas:"ਕੈਨਵਸ",selection:"ਚੋਣ",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Umu={transparent:"ਪਾਰਦਰਸ਼ੀ",black:"ਕਾਲੀ",white:"ਸਫ਼ੈਦ",red:"ਲਾਲ",pink:"ਗੁਲਾਬੀ",grape:"ਅੰਗੂਰੀ",violet:"ਜਾਮਣੀ",gray:"ਸੁਰਮਈ",blue:"ਨੀਲਾ",cyan:"ਫਿਰੋਜੀ",teal:"ਟੀਲ",green:"ਹਰਾ",yellow:"ਪੀਲਾ",orange:"ਸੰਤਰੀ",bronze:"ਕਾਂਸੇਰੰਗਾ"},zmu={app:{center_heading:"ਤੁਹਾਡਾ ਸਾਰਾ ਡਾਟਾ ਤੁਹਾਡੇ ਲੋਕਲ ਬਰਾਉਜ਼ਰ ਵਿੱਚ ਸਾਂਭਿਆ ਹੋਇਆ ਹੈ।",center_heading_plus:"",menuHint:"ਨਿਰਯਾਤ, ਤਰਜੀਹਾਂ, ਭਾਸ਼ਾਵਾਂ, …"},defaults:{menuHint:"ਨਿਰਯਾਤ, ਤਰਜੀਹਾਂ, ਅਤੇ ਹੋਰ ਵੀ ਬਹੁਤ ਕੁਝ…",center_heading:"ਡਾਇਆਗ੍ਰਾਮਾਂ। ਕੀਤੀਆਂ। ਸੁਖਾਲੀਆਂ।",toolbarHint:"",helpHint:"ਸ਼ਾਰਟਕੱਟ ਤੇ ਮਦਦ"}},kmu={mostUsedCustomColors:"ਸਭ ਤੋਂ ਵੱਧ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਕਸਟਮ ਰੰਗ",colors:"ਰੰਗ",shades:"ਸ਼ੇਡਾਂ",hexCode:"ਹੈਕਸ ਕੋਡ",noShades:"ਇਸ ਰੰਗ ਦੀ ਕੋਈ ਸ਼ੇਡ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"},fmu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},lmu={title:"",button:"",description:"",syntax:"",preview:""},Xz3={labels:hhu,library:mhu,buttons:rhu,alerts:$hu,errors:yhu,toolBar:chu,headings:ghu,hints:_hu,canvasError:nhu,errorSplash:phu,roomDialog:dhu,errorDialog:shu,exportDialog:ohu,helpDialog:thu,clearCanvasDialog:ehu,publishDialog:umu,publishSuccessDialog:Bmu,confirmDialog:Emu,imageExportDialog:Amu,encrypted:Cmu,stats:Dmu,toast:Fmu,colors:Umu,welcomeScreen:zmu,colorPicker:kmu,overwriteConfirm:fmu,mermaid:lmu}});var Zmu={};ju(Zmu,{kaa:()=>$b0,en:()=>rb0,default:()=>Cp});var Jmu=g(()=>{yb0();m4()});var ymu={};ju(ymu,{welcomeScreen:()=>hmu,toolBar:()=>Lmu,toast:()=>amu,stats:()=>imu,roomDialog:()=>Smu,publishSuccessDialog:()=>Imu,publishDialog:()=>Omu,overwriteConfirm:()=>rmu,mermaid:()=>$mu,library:()=>Kmu,labels:()=>wmu,imageExportDialog:()=>jmu,hints:()=>Xmu,helpDialog:()=>Rmu,headings:()=>qmu,exportDialog:()=>Ymu,errors:()=>Hmu,errorSplash:()=>vmu,errorDialog:()=>Wmu,encrypted:()=>Nmu,default:()=>xz3,confirmDialog:()=>Pmu,colors:()=>Vmu,colorPicker:()=>mmu,clearCanvasDialog:()=>Tmu,canvasError:()=>xmu,buttons:()=>Qmu,alerts:()=>Gmu});var wmu,Kmu,Qmu,Gmu,Hmu,Lmu,qmu,Xmu,xmu,vmu,Smu,Wmu,Ymu,Rmu,Tmu,Omu,Imu,Pmu,jmu,Nmu,imu,amu,Vmu,hmu,mmu,rmu,$mu,xz3;var cmu=g(()=>{m4();wmu={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:""},Kmu={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."},Qmu={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ę"},Gmu={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!`},Hmu={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."},Lmu={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"},qmu={canvasActions:"Narzędzia",selectedShapeActions:"Wybrane narzędzie",shapes:"Kształty"},Xmu={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"},xmu={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."},vmu={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:"},Smu={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"},Wmu={title:"Wystąpił błąd"},Ymu={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+..."},Rmu={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"},Tmu={title:"Wyczyść płótno"},Omu={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."},Imu={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>"},Pmu={resetLibrary:"Zresetuj Bibliotekę",removeItemsFromLib:"Usuń wybrane elementy z biblioteki"},jmu={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"}},Nmu={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"},imu={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ść"},amu={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.'},Vmu={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"},hmu={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"}},mmu={mostUsedCustomColors:"Najczęściej używane kolory",colors:"Kolory",shades:"Odcienie",hexCode:"Kod HEX",noShades:"Brak dostępnych odcieni dla tego koloru"},rmu={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."}}},$mu={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"},xz3={labels:wmu,library:Kmu,buttons:Qmu,alerts:Gmu,errors:Hmu,toolBar:Lmu,headings:qmu,hints:Xmu,canvasError:xmu,errorSplash:vmu,roomDialog:Smu,errorDialog:Wmu,exportDialog:Ymu,helpDialog:Rmu,clearCanvasDialog:Tmu,publishDialog:Omu,publishSuccessDialog:Imu,confirmDialog:Pmu,imageExportDialog:jmu,encrypted:Nmu,stats:imu,toast:amu,colors:Vmu,welcomeScreen:hmu,colorPicker:mmu,overwriteConfirm:rmu,mermaid:$mu}});var Qru={};ju(Qru,{welcomeScreen:()=>Zru,toolBar:()=>smu,toast:()=>bru,stats:()=>lru,roomDialog:()=>Bru,publishSuccessDialog:()=>Uru,publishDialog:()=>Fru,overwriteConfirm:()=>wru,mermaid:()=>Kru,library:()=>_mu,labels:()=>gmu,imageExportDialog:()=>kru,hints:()=>tmu,helpDialog:()=>Cru,headings:()=>omu,exportDialog:()=>Aru,errors:()=>dmu,errorSplash:()=>uru,errorDialog:()=>Eru,encrypted:()=>fru,default:()=>vz3,confirmDialog:()=>zru,colors:()=>Mru,colorPicker:()=>Jru,clearCanvasDialog:()=>Dru,canvasError:()=>emu,buttons:()=>nmu,alerts:()=>pmu});var gmu,_mu,nmu,pmu,dmu,smu,omu,tmu,emu,uru,Bru,Eru,Aru,Cru,Dru,Fru,Uru,zru,kru,fru,lru,bru,Mru,Zru,Jru,wru,Kru,vz3;var Gru=g(()=>{m4();gmu={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:""},_mu={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."},nmu={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:""},pmu={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!`},dmu={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:""},smu={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:""},omu={canvasActions:"Ações da tela",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},tmu={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:""},emu={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."},uru={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:"},Bru={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"},Eru={title:"Erro"},Aru={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..."},Cru={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"},Dru={title:"Limpar a tela"},Fru={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."},Uru={title:"Biblioteca enviada",content:"Obrigado {{authorName}}. Sua biblioteca foi enviada para análise. Você pode acompanhar o status<link>aqui</link>"},zru={resetLibrary:"Redefinir biblioteca",removeItemsFromLib:"Remover itens selecionados da biblioteca"},kru={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"}},fru={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"},lru={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"},bru={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:""},Mru={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"},Zru={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"}},Jru={mostUsedCustomColors:"Cores personalizadas mais usadas",colors:"Cores",shades:"Tons",hexCode:"Código hexadecimal",noShades:"Sem tons disponíveis para essa cor"},wru={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."}}},Kru={title:"",button:"",description:"",syntax:"",preview:""},vz3={labels:gmu,library:_mu,buttons:nmu,alerts:pmu,errors:dmu,toolBar:smu,headings:omu,hints:tmu,canvasError:emu,errorSplash:uru,roomDialog:Bru,errorDialog:Eru,exportDialog:Aru,helpDialog:Cru,clearCanvasDialog:Dru,publishDialog:Fru,publishSuccessDialog:Uru,confirmDialog:zru,imageExportDialog:kru,encrypted:fru,stats:lru,toast:bru,colors:Mru,welcomeScreen:Zru,colorPicker:Jru,overwriteConfirm:wru,mermaid:Kru}});var nru={};ju(nru,{welcomeScreen:()=>yru,toolBar:()=>vru,toast:()=>rru,stats:()=>mru,roomDialog:()=>Tru,publishSuccessDialog:()=>iru,publishDialog:()=>Nru,overwriteConfirm:()=>gru,mermaid:()=>_ru,library:()=>Lru,labels:()=>Hru,imageExportDialog:()=>Vru,hints:()=>Wru,helpDialog:()=>Pru,headings:()=>Sru,exportDialog:()=>Iru,errors:()=>xru,errorSplash:()=>Rru,errorDialog:()=>Oru,encrypted:()=>hru,default:()=>Sz3,confirmDialog:()=>aru,colors:()=>$ru,colorPicker:()=>cru,clearCanvasDialog:()=>jru,canvasError:()=>Yru,buttons:()=>qru,alerts:()=>Xru});var Hru,Lru,qru,Xru,xru,vru,Sru,Wru,Yru,Rru,Tru,Oru,Iru,Pru,jru,Nru,iru,aru,Vru,hru,mru,rru,$ru,yru,cru,gru,_ru,Sz3;var pru=g(()=>{m4();Hru={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:""},Lru={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."},qru={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:""},Xru={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!`},xru={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:""},vru={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:""},Sru={canvasActions:"Ações da área de desenho",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},Wru={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:""},Yru={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."},Rru={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:"},Tru={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"},Oru={title:"Erro"},Iru={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..."},Pru={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"},jru={title:"Apagar tela"},Nru={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."},iru={title:"Biblioteca enviada",content:"Obrigado {{authorName}}. A sua biblioteca foi enviada para análise. Pode acompanhar o status<link>aqui</link>"},aru={resetLibrary:"Repor a biblioteca",removeItemsFromLib:"Remover os itens seleccionados da biblioteca"},Vru={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:""}},hru={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"},mru={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"},rru={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:""},$ru={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"},yru={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"}},cru={mostUsedCustomColors:"",colors:"Cores",shades:"Tons",hexCode:"",noShades:""},gru={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:""}}},_ru={title:"",button:"",description:"",syntax:"",preview:""},Sz3={labels:Hru,library:Lru,buttons:qru,alerts:Xru,errors:xru,toolBar:vru,headings:Sru,hints:Wru,canvasError:Yru,errorSplash:Rru,roomDialog:Tru,errorDialog:Oru,exportDialog:Iru,helpDialog:Pru,clearCanvasDialog:jru,publishDialog:Nru,publishSuccessDialog:iru,confirmDialog:aru,imageExportDialog:Vru,encrypted:hru,stats:mru,toast:rru,colors:$ru,welcomeScreen:yru,colorPicker:cru,overwriteConfirm:gru,mermaid:_ru}});var q$u={};ju(q$u,{welcomeScreen:()=>Q$u,toolBar:()=>u$u,toast:()=>w$u,stats:()=>J$u,roomDialog:()=>D$u,publishSuccessDialog:()=>l$u,publishDialog:()=>f$u,overwriteConfirm:()=>H$u,mermaid:()=>L$u,library:()=>sru,labels:()=>dru,imageExportDialog:()=>M$u,hints:()=>E$u,helpDialog:()=>z$u,headings:()=>B$u,exportDialog:()=>U$u,errors:()=>eru,errorSplash:()=>C$u,errorDialog:()=>F$u,encrypted:()=>Z$u,default:()=>Wz3,confirmDialog:()=>b$u,colors:()=>K$u,colorPicker:()=>G$u,clearCanvasDialog:()=>k$u,canvasError:()=>A$u,buttons:()=>oru,alerts:()=>tru});var dru,sru,oru,tru,eru,u$u,B$u,E$u,A$u,C$u,D$u,F$u,U$u,z$u,k$u,f$u,l$u,b$u,M$u,Z$u,J$u,w$u,K$u,Q$u,G$u,H$u,L$u,Wz3;var X$u=g(()=>{m4();dru={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"},sru={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."},oru={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"},tru={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!`},eru={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ă."},u$u={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"},B$u={canvasActions:"Acțiuni pentru pânză",selectedShapeActions:"Acțiuni pentru forma selectată",shapes:"Forme"},E$u={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"},A$u={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."},C$u={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:"},D$u={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"},F$u={title:"Eroare"},U$u={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..."},z$u={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"},k$u={title:"Ștergere pânză"},f$u={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ă."},l$u={title:"Bibliotecă trimisă",content:"Îți mulțumim, {{authorName}}. Biblioteca a fost trimisă spre revizuire. Poți urmări starea <link>aici</link>"},b$u={resetLibrary:"Resetare bibliotecă",removeItemsFromLib:"Elimină elementele selectate din bibliotecă"},M$u={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ă"}},Z$u={tooltip:"Desenele tale sunt criptate integral, astfel că serverele Excalidraw nu le vor vedea niciodată.",link:"Articol de blog pe criptarea integrală din Excalidraw"},J$u={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"},w$u={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ă"},K$u={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"},Q$u={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"}},G$u={mostUsedCustomColors:"Cele mai utilizate culori personalizate",colors:"Culori",shades:"Nuanțe",hexCode:"Cod hexa",noShades:"Nu este disponibilă nicio nuanță pentru această culoare"},H$u={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."}}},L$u={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"},Wz3={labels:dru,library:sru,buttons:oru,alerts:tru,errors:eru,toolBar:u$u,headings:B$u,hints:E$u,canvasError:A$u,errorSplash:C$u,roomDialog:D$u,errorDialog:F$u,exportDialog:U$u,helpDialog:z$u,clearCanvasDialog:k$u,publishDialog:f$u,publishSuccessDialog:l$u,confirmDialog:b$u,imageExportDialog:M$u,encrypted:Z$u,stats:J$u,toast:w$u,colors:K$u,welcomeScreen:Q$u,colorPicker:G$u,overwriteConfirm:H$u,mermaid:L$u}});var o$u={};ju(o$u,{welcomeScreen:()=>n$u,toolBar:()=>R$u,toast:()=>g$u,stats:()=>c$u,roomDialog:()=>j$u,publishSuccessDialog:()=>m$u,publishDialog:()=>h$u,overwriteConfirm:()=>d$u,mermaid:()=>s$u,library:()=>v$u,labels:()=>x$u,imageExportDialog:()=>$$u,hints:()=>O$u,helpDialog:()=>a$u,headings:()=>T$u,exportDialog:()=>i$u,errors:()=>Y$u,errorSplash:()=>P$u,errorDialog:()=>N$u,encrypted:()=>y$u,default:()=>Yz3,confirmDialog:()=>r$u,colors:()=>_$u,colorPicker:()=>p$u,clearCanvasDialog:()=>V$u,canvasError:()=>I$u,buttons:()=>S$u,alerts:()=>W$u});var x$u,v$u,S$u,W$u,Y$u,R$u,T$u,O$u,I$u,P$u,j$u,N$u,i$u,a$u,V$u,h$u,m$u,r$u,$$u,y$u,c$u,g$u,_$u,n$u,p$u,d$u,s$u,Yz3;var t$u=g(()=>{m4();x$u={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:""},v$u={noItems:"Пока ничего не добавлено...",hint_emptyLibrary:"Выберите объект на холсте, чтобы добавить его сюда, или установите библиотеку из публичного репозитория ниже.",hint_emptyPrivateLibrary:"Выберите объект на холсте, чтобы добавить его сюда."},S$u={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:""},W$u={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:`Отсутствует интернет-соединение.
Ваши изменения не будут сохранены!`},Y$u={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:"Не удалось скопировать в буфер обмена."},R$u={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"},T$u={canvasActions:"Операции холста",selectedShapeActions:"Операции выбранной фигуры",shapes:"Фигуры"},O$u={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:""},I$u={cannotShowPreview:"Не удается отобразить предпросмотр",canvasTooBig:"Сцена слишком большая.",canvasTooBigTip:"Совет: попробуйте сблизить элементы рисунка."},P$u={headingMain:"Возникла ошибка. Попробуйте <button>перезагрузить страницу.</button>",clearCanvasMessage:"Если перезагрузка страницы не помогла, попробуйте <button>очистить холст.</button>",clearCanvasCaveat:" Текущая работа будет утеряна ",trackedToSentry:"Ошибка с идентификатором {{eventId}} отслеживается в нашей системе.",openIssueMessage:"Для безопасности информация о вашей сцене не включена в ошибку. Если в сцене нет ничего конфиденциального, пожалуйста следуйте нашим <button>баг трекере.</button> Пожалуйста, приложите информацию ниже, скопировав и вставив её, в issue GitHub.",sceneContent:"Содержание сцены:"},j$u={desc_intro:"Вы можете пригласить людей в текущую сцену для совместной работы.",desc_privacy:"Не беспокойтесь — во время сеанса используется сквозное шифрование. Всё, что вы нарисуете, останется конфиденциальным и не будет доступно даже нашему серверу.",button_startSession:"Начать сеанс",button_stopSession:"Завершить сеанс",desc_inProgressIntro:"Сеанс совместной работы запущен.",desc_shareLink:"Поделитесь этой ссылкой со всеми участниками:",desc_exitSession:"Завершив сеанс, вы выйдете из комнаты, но сможете продолжить работать с документом локально. Это не повлияет на работу других пользователей — они смогут продолжить совместную работу с их версией документа.",shareTitle:"Присоединиться к активной совместной сессии на Excalidraw"},N$u={title:"Ошибка"},i$u={disk_title:"Сохранить на диск",disk_details:"Экспортировать данные сцены в файл, из которого можно импортировать позже.",disk_button:"Сохранить в файл",link_title:"Поделитесь ссылкой",link_details:"Экспорт ссылки только для чтения.",link_button:"Экспорт в ссылку",excalidrawplus_description:"Сохраните сцену в ваше рабочее пространство Excalidraw+.",excalidrawplus_button:"Экспорт",excalidrawplus_exportError:"Не удалось экспортировать в Excalidraw+ на данный момент..."},a$u={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:"Сдвинуть страницу вправо/влево"},V$u={title:"Очистить холст"},h$u={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:"Примечание: некоторые из выбранных элементов помечены как уже опубликованные/отправленные. Вы должны повторно отправить элементы только при обновлении существующей библиотеки или сдаче работы."},m$u={title:"Библиотека отправлена",content:"Благодарим вас, {{authorName}}. Ваша библиотека была отправлена на проверку. Вы можете отслеживать статус<link>здесь</link>"},r$u={resetLibrary:"Сброс библиотеки",removeItemsFromLib:"Удалить выбранные объекты из библиотеки"},$$u={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:"Скопировать в буфер обмена"}},y$u={tooltip:"Ваши данные защищены сквозным (End-to-end) шифрованием. Серверы Excalidraw никогда не получат доступ к ним.",link:"Запись блога о сквозном шифровании в Excalidraw"},c$u={angle:"Угол",element:"Элемент",elements:"Элементы",height:"Высота",scene:"Сцены",selected:"Выбран",storage:"Хранилище",title:"Статистика для ботаников",total:"Всего",version:"Версия",versionCopy:"Копировать",versionNotAvailable:"Версия не доступна",width:"Ширина"},g$u={addedToLibrary:"Добавлено в библиотеку",copyStyles:"Скопированы стили.",copyToClipboard:"Скопировано в буфер обмена.",copyToClipboardAsPng:"{{exportSelection}} скопировано как PNG ({{exportColorScheme}})",fileSaved:"Файл сохранён.",fileSavedToFilename:"Сохранено в {filename}",canvas:"холст",selection:"выделение",pasteAsSingleElement:`Используйте {{shortcut}}, чтобы вставить один объект,
или вставьте в существующий текстовый редактор`,unableToEmbed:"",unrecognizedLinkFormat:""},_$u={transparent:"Прозрачный",black:"Чёрный",white:"Белый",red:"Красный",pink:"Розовый",grape:"Виноградный",violet:"Фиолетовый",gray:"Серый",blue:"Синий",cyan:"Голубой",teal:"Бирюзовый",green:"Зелёный",yellow:"Жёлтый",orange:"Оранжевый",bronze:"Бронзовый"},n$u={app:{center_heading:"Все ваши данные сохраняются локально в вашем браузере.",center_heading_plus:"Хотите перейти на Excalidraw+?",menuHint:"Экспорт, настройки, языки, ..."},defaults:{menuHint:"Экспорт, настройки и другое...",center_heading:"Диаграммы. Просто.",toolbarHint:"Выберите инструмент и начните рисовать!",helpHint:"Сочетания клавиш и помощь"}},p$u={mostUsedCustomColors:"Часто используемые пользовательские цвета",colors:"Цвета",shades:"Оттенки",hexCode:"Шестнадцатеричный код",noShades:"Нет доступных оттенков для этого цвета"},d$u={action:{exportToImage:{title:"Экспортировать как изображение",button:"Экспортировать как изображение",description:""},saveToDisk:{title:"Сохранить на диск",button:"Сохранить на диск",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Экспорт в Excalidraw+",description:""}},modal:{loadFromFile:{title:"Загрузить из файла",button:"Загрузить из файла",description:""},shareableLink:{title:"Загрузить по ссылке",button:"",description:""}}},s$u={title:"Из Mermaid в Excalidraw",button:"Вставить",description:"",syntax:"Синтаксис Mermaid",preview:"Предпросмотр"},Yz3={labels:x$u,library:v$u,buttons:S$u,alerts:W$u,errors:Y$u,toolBar:R$u,headings:T$u,hints:O$u,canvasError:I$u,errorSplash:P$u,roomDialog:j$u,errorDialog:N$u,exportDialog:i$u,helpDialog:a$u,clearCanvasDialog:V$u,publishDialog:h$u,publishSuccessDialog:m$u,confirmDialog:r$u,imageExportDialog:$$u,encrypted:y$u,stats:c$u,toast:g$u,colors:_$u,welcomeScreen:n$u,colorPicker:p$u,overwriteConfirm:d$u,mermaid:s$u}});var Syu={};ju(Syu,{welcomeScreen:()=>qyu,toolBar:()=>Cyu,toast:()=>Hyu,stats:()=>Gyu,roomDialog:()=>kyu,publishSuccessDialog:()=>Jyu,publishDialog:()=>Zyu,overwriteConfirm:()=>xyu,mermaid:()=>vyu,library:()=>uyu,labels:()=>e$u,imageExportDialog:()=>Kyu,hints:()=>Fyu,helpDialog:()=>byu,headings:()=>Dyu,exportDialog:()=>lyu,errors:()=>Ayu,errorSplash:()=>zyu,errorDialog:()=>fyu,encrypted:()=>Qyu,default:()=>Rz3,confirmDialog:()=>wyu,colors:()=>Lyu,colorPicker:()=>Xyu,clearCanvasDialog:()=>Myu,canvasError:()=>Uyu,buttons:()=>Byu,alerts:()=>Eyu});var e$u,uyu,Byu,Eyu,Ayu,Cyu,Dyu,Fyu,Uyu,zyu,kyu,fyu,lyu,byu,Myu,Zyu,Jyu,wyu,Kyu,Qyu,Gyu,Hyu,Lyu,qyu,Xyu,xyu,vyu,Rz3;var Wyu=g(()=>{m4();e$u={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:""},uyu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},Byu={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:""},Eyu={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},Ayu={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:""},Cyu={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},Dyu={canvasActions:"",selectedShapeActions:"",shapes:""},Fyu={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:""},Uyu={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},zyu={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},kyu={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},fyu={title:""},lyu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},byu={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:""},Myu={title:""},Zyu={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},Jyu={title:"",content:""},wyu={resetLibrary:"",removeItemsFromLib:""},Kyu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Qyu={tooltip:"",link:""},Gyu={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},Hyu={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Lyu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},qyu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},Xyu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},xyu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},vyu={title:"",button:"",description:"",syntax:"",preview:""},Rz3={labels:e$u,library:uyu,buttons:Byu,alerts:Eyu,errors:Ayu,toolBar:Cyu,headings:Dyu,hints:Fyu,canvasError:Uyu,errorSplash:zyu,roomDialog:kyu,errorDialog:fyu,exportDialog:lyu,helpDialog:byu,clearCanvasDialog:Myu,publishDialog:Zyu,publishSuccessDialog:Jyu,confirmDialog:wyu,imageExportDialog:Kyu,encrypted:Qyu,stats:Gyu,toast:Hyu,colors:Lyu,welcomeScreen:qyu,colorPicker:Xyu,overwriteConfirm:xyu,mermaid:vyu}});var Bcu={};ju(Bcu,{welcomeScreen:()=>oyu,toolBar:()=>Pyu,toast:()=>dyu,stats:()=>pyu,roomDialog:()=>Vyu,publishSuccessDialog:()=>cyu,publishDialog:()=>yyu,overwriteConfirm:()=>eyu,mermaid:()=>ucu,library:()=>Ryu,labels:()=>Yyu,imageExportDialog:()=>_yu,hints:()=>Nyu,helpDialog:()=>ryu,headings:()=>jyu,exportDialog:()=>myu,errors:()=>Iyu,errorSplash:()=>ayu,errorDialog:()=>hyu,encrypted:()=>nyu,default:()=>Tz3,confirmDialog:()=>gyu,colors:()=>syu,colorPicker:()=>tyu,clearCanvasDialog:()=>$yu,canvasError:()=>iyu,buttons:()=>Tyu,alerts:()=>Oyu});var Yyu,Ryu,Tyu,Oyu,Iyu,Pyu,jyu,Nyu,iyu,ayu,Vyu,hyu,myu,ryu,$yu,yyu,cyu,gyu,_yu,nyu,pyu,dyu,syu,oyu,tyu,eyu,ucu,Tz3;var Ecu=g(()=>{m4();Yyu={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"},Ryu={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."},Tyu={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"},Oyu={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é!`},Iyu={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."},Pyu={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"},jyu={canvasActions:"Akcie plátna",selectedShapeActions:"Akcie tvarov z výberu",shapes:"Tvary"},Nyu={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"},iyu={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."},ayu={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:"},Vyu={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"},hyu={title:"Chyba"},myu={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+..."},ryu={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"},$yu={title:"Vyčistiť plátno"},yyu={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."},cyu={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>"},gyu={resetLibrary:"Obnoviť knižnicu",removeItemsFromLib:"Odstrániť zvolené položky z knižnice"},_yu={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"}},nyu={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"},pyu={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"},dyu={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"},syu={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á"},oyu={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"}},tyu={mostUsedCustomColors:"Najpoužívanejšie vlastné farby",colors:"Farby",shades:"Odtiene",hexCode:"Hex kód",noShades:"Pre túto farbu nie sú dostupné žiadne odtiene"},eyu={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í."}}},ucu={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"},Tz3={labels:Yyu,library:Ryu,buttons:Tyu,alerts:Oyu,errors:Iyu,toolBar:Pyu,headings:jyu,hints:Nyu,canvasError:iyu,errorSplash:ayu,roomDialog:Vyu,errorDialog:hyu,exportDialog:myu,helpDialog:ryu,clearCanvasDialog:$yu,publishDialog:yyu,publishSuccessDialog:cyu,confirmDialog:gyu,imageExportDialog:_yu,encrypted:nyu,stats:pyu,toast:dyu,colors:syu,welcomeScreen:oyu,colorPicker:tyu,overwriteConfirm:eyu,mermaid:ucu}});var Tcu={};ju(Tcu,{welcomeScreen:()=>Scu,toolBar:()=>zcu,toast:()=>xcu,stats:()=>Xcu,roomDialog:()=>Mcu,publishSuccessDialog:()=>Gcu,publishDialog:()=>Qcu,overwriteConfirm:()=>Ycu,mermaid:()=>Rcu,library:()=>Ccu,labels:()=>Acu,imageExportDialog:()=>Lcu,hints:()=>fcu,helpDialog:()=>wcu,headings:()=>kcu,exportDialog:()=>Jcu,errors:()=>Ucu,errorSplash:()=>bcu,errorDialog:()=>Zcu,encrypted:()=>qcu,default:()=>Oz3,confirmDialog:()=>Hcu,colors:()=>vcu,colorPicker:()=>Wcu,clearCanvasDialog:()=>Kcu,canvasError:()=>lcu,buttons:()=>Dcu,alerts:()=>Fcu});var Acu,Ccu,Dcu,Fcu,Ucu,zcu,kcu,fcu,lcu,bcu,Mcu,Zcu,Jcu,wcu,Kcu,Qcu,Gcu,Hcu,Lcu,qcu,Xcu,xcu,vcu,Scu,Wcu,Ycu,Rcu,Oz3;var Ocu=g(()=>{m4();Acu={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"},Ccu={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."},Dcu={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"},Fcu={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!`},Ucu={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."},zcu={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"},kcu={canvasActions:"Dejanja za platno",selectedShapeActions:"Dejanja za izbrane oblike",shapes:"Oblike"},fcu={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"},lcu={cannotShowPreview:"Predogleda ni bilo mogoče prikazati",canvasTooBig:"Morda je platno preveliko.",canvasTooBigTip:"Nasvet: poskusite premakniti najbolj oddaljene elemente nekoliko bližje skupaj."},bcu={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:"},Mcu={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"},Zcu={title:"Napaka"},Jcu={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+..."},wcu={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"},Kcu={title:"Počisti platno"},Qcu={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."},Gcu={title:"Knjižnica oddana",content:"{{authorName}}, hvala. Vaša knjižnica je bila poslana v pregled. Stanje lahko spremljate<link>tukaj</link>"},Hcu={resetLibrary:"Ponastavi knjižnico",removeItemsFromLib:"Odstran izbrane elemente iz knjižnice"},Lcu={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"}},qcu={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"},Xcu={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"},xcu={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"},vcu={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"},Scu={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č"}},Wcu={mostUsedCustomColors:"Najpogosteje uporabljene barve po meri",colors:"Barve",shades:"Odtenki",hexCode:"Hex koda",noShades:"Odtenki za to barvo niso na voljo"},Ycu={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."}}},Rcu={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"},Oz3={labels:Acu,library:Ccu,buttons:Dcu,alerts:Fcu,errors:Ucu,toolBar:zcu,headings:kcu,hints:fcu,canvasError:lcu,errorSplash:bcu,roomDialog:Mcu,errorDialog:Zcu,exportDialog:Jcu,helpDialog:wcu,clearCanvasDialog:Kcu,publishDialog:Qcu,publishSuccessDialog:Gcu,confirmDialog:Hcu,imageExportDialog:Lcu,encrypted:qcu,stats:Xcu,toast:xcu,colors:vcu,welcomeScreen:Scu,colorPicker:Wcu,overwriteConfirm:Ycu,mermaid:Rcu}});var Dgu={};ju(Dgu,{welcomeScreen:()=>Bgu,toolBar:()=>acu,toast:()=>ecu,stats:()=>tcu,roomDialog:()=>$cu,publishSuccessDialog:()=>pcu,publishDialog:()=>ncu,overwriteConfirm:()=>Agu,mermaid:()=>Cgu,library:()=>Pcu,labels:()=>Icu,imageExportDialog:()=>scu,hints:()=>hcu,helpDialog:()=>gcu,headings:()=>Vcu,exportDialog:()=>ccu,errors:()=>icu,errorSplash:()=>rcu,errorDialog:()=>ycu,encrypted:()=>ocu,default:()=>Iz3,confirmDialog:()=>dcu,colors:()=>ugu,colorPicker:()=>Egu,clearCanvasDialog:()=>_cu,canvasError:()=>mcu,buttons:()=>jcu,alerts:()=>Ncu});var Icu,Pcu,jcu,Ncu,icu,acu,Vcu,hcu,mcu,rcu,$cu,ycu,ccu,gcu,_cu,ncu,pcu,dcu,scu,ocu,tcu,ecu,ugu,Bgu,Egu,Agu,Cgu,Iz3;var Fgu=g(()=>{m4();Icu={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"},Pcu={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."},jcu={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"},Ncu={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!`},icu={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."},acu={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"},Vcu={canvasActions:"Canvas-åtgärder",selectedShapeActions:"Valda formåtgärder",shapes:"Former"},hcu={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"},mcu={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."},rcu={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:"},$cu={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"},ycu={title:"Fel"},ccu={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..."},gcu={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"},_cu={title:"Rensa canvas"},ncu={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."},pcu={title:"Bibliotek inskickat",content:"Tack {{authorName}}. Ditt bibliotek har skickats för granskning. Du kan följa status<link>här</link>"},dcu={resetLibrary:"Återställ bibliotek",removeItemsFromLib:"Ta bort markerade objekt från biblioteket"},scu={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"}},ocu={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"},tcu={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"},ecu={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"},ugu={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"},Bgu={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"}},Egu={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"},Agu={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."}}},Cgu={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"},Iz3={labels:Icu,library:Pcu,buttons:jcu,alerts:Ncu,errors:icu,toolBar:acu,headings:Vcu,hints:hcu,canvasError:mcu,errorSplash:rcu,roomDialog:$cu,errorDialog:ycu,exportDialog:ccu,helpDialog:gcu,clearCanvasDialog:_cu,publishDialog:ncu,publishSuccessDialog:pcu,confirmDialog:dcu,imageExportDialog:scu,encrypted:ocu,stats:tcu,toast:ecu,colors:ugu,welcomeScreen:Bgu,colorPicker:Egu,overwriteConfirm:Agu,mermaid:Cgu}});var jgu={};ju(jgu,{welcomeScreen:()=>Tgu,toolBar:()=>bgu,toast:()=>Ygu,stats:()=>Wgu,roomDialog:()=>Kgu,publishSuccessDialog:()=>Xgu,publishDialog:()=>qgu,overwriteConfirm:()=>Igu,mermaid:()=>Pgu,library:()=>zgu,labels:()=>Ugu,imageExportDialog:()=>vgu,hints:()=>Zgu,helpDialog:()=>Hgu,headings:()=>Mgu,exportDialog:()=>Ggu,errors:()=>lgu,errorSplash:()=>wgu,errorDialog:()=>Qgu,encrypted:()=>Sgu,default:()=>Pz3,confirmDialog:()=>xgu,colors:()=>Rgu,colorPicker:()=>Ogu,clearCanvasDialog:()=>Lgu,canvasError:()=>Jgu,buttons:()=>kgu,alerts:()=>fgu});var Ugu,zgu,kgu,fgu,lgu,bgu,Mgu,Zgu,Jgu,wgu,Kgu,Qgu,Ggu,Hgu,Lgu,qgu,Xgu,xgu,vgu,Sgu,Wgu,Ygu,Rgu,Tgu,Ogu,Igu,Pgu,Pz3;var Ngu=g(()=>{m4();Ugu={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:""},zgu={noItems:"இதுவரை உருப்படிகள் சேரக்கப்படவில்லை...",hint_emptyLibrary:"கித்தானிலுள்ள உருப்படியை இங்குச் சேர்க்க தேர்ந்தெடு, அல்லது கீழுள்ள பொது களஞ்சியத்திலிருந்து நூலகத்தை நிறுவு.",hint_emptyPrivateLibrary:"கித்தானிலுள்ள உருப்படியை இங்குச் சேர்க்க தேர்ந்தெடு."},kgu={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:""},fgu={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:`இணைய இணைப்பு இல்லை.
உமது மாற்றங்கள் சேமிக்கப்படா!`},lgu={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:""},bgu={selection:"தெரிவு",image:"படத்தைப் புகுத்து",rectangle:"செவ்வகம்",diamond:"வைரம்",ellipse:"நீள்வட்டம்",arrow:"அம்பு",line:"வரி",freedraw:"வரை",text:"உரை",library:"நூலகம்",lock:"தேர்ந்த கருவியை வரைந்த பின்பும் வைத்திரு",penMode:"பேனா - தடுப்பு தொடுதல்",link:"தேர்தெடுத்த வடிவத்திற்குத் தொடுப்பைச் சேர்/ புதுப்பி",eraser:"அழிப்பி",frame:"சட்டகம் கருவி",magicframe:"",embeddable:"",laser:"",hand:"கை (பார்வை நகர்கும் கருவி)",extraTools:"மற்ற கருவிகள்",mermaidToExcalidraw:"",magicSettings:""},Mgu={canvasActions:"கித்தான் செயல்கள்",selectedShapeActions:"தேர்ந்த வடிவம் செயல்கள்",shapes:"வடிவங்கள்"},Zgu={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:""},Jgu={cannotShowPreview:"முன்னோட்டம் காட்ட இயலவில்லை",canvasTooBig:"கித்தான் மிகப்பெரிதாக இருக்கலாம்.",canvasTooBigTip:"துணுக்குதவி: தூரத்திலுள்ள உறுப்புகளைப் நெருக்கமாக நகர்த்தப்பார்."},wgu={headingMain:"பிழையைச் சந்தித்தீரா. முயலவும் <button>பக்கத்தை மீண்டுமேற்றுகிறது.</button>",clearCanvasMessage:"மீண்டுமேற்றல் வேலைசெய்யவிட்டால், முயற்சி <button>கித்தானைத் துடைக்கிறது.</button>",clearCanvasCaveat:" இது வேலையை இழக்கக்கூடும் ",trackedToSentry:"இனங்காணியில் பிழை {{eventId}} எங்கள் இயங்குதளத்தில் தடமறியப்பட்டது.",openIssueMessage:"பிழையில் உம் காட்சி தகவலை உள்ளடக்காமலிருக்க நாங்கள் மிக எச்சரிக்கையாக இருந்தோம். உம் காட்சி தனிப்பட்டதில்லையெனில், பின்தொடர்வதற்கு பரிசீலிக்கவும் எங்கள் <button>பிழை தடமி.</button> கீழுள்ள தகவலை நகலெடுத்து ஒட்டி GitHub சிக்கலுள் உள்ளடக்கவும்.",sceneContent:"காட்சி உள்ளடக்கம்:"},Kgu={desc_intro:"உம்முடன் கூட்டுப்பணிசெய்ய மக்களை தற்போதைய காட்சிக்கு அழைப்பிடலாம்.",desc_privacy:"வருந்தாதீர், அமர்வு இருமுனை மறையகத்தைப் பயன்படுத்துகிறது, ஆக நீங்கள் வரைவது எதுவும் தனிப்பட்டதாக இருக்கும். எங்கள் சேவையகத்தால் கூட நீங்கள் என்ன செய்ததைப் பார்க்கவியலாது.",button_startSession:"அமர்வைத் துவக்கு",button_stopSession:"அமர்வை நிறுத்து",desc_inProgressIntro:"நேரடி-கூட்டுப்பணி அமர்வு தற்போது செயலிலுள்ளது.",desc_shareLink:"கூட்டுப்பணிபுரிய விரும்பும் எவருனும் இத்தொடுப்பைப் பகிர்க:",desc_exitSession:"அமர்வை நிறுத்தல் உம்மை அறையிலிருந்து துண்டிக்கும், ஆனால் காட்சியுடன் தொடர்ந்து பணிபுரிய உம்மாலியலும், அகமாக. இது பிற மக்களைப் பாதிக்காதென்பதைக் குறி, மற்றும் அவர்களாலவர்களுடைய பதிப்பில் இன்னும் கூட்டுப்பணிபுரியவியலும்.",shareTitle:"எக்ஸ்கேலிட்ராவில் நேரடி கூட்டுப்பணி அமர்வில் சேர்"},Qgu={title:"பிழை"},Ggu={disk_title:"வட்டில் சேமி",disk_details:"காட்சித் தரவை நீங்கள் பின்னர் இறக்குமதி செய்யக்கூடிய ஒரு கோப்பிற்கு ஏற்றுமதிசெய்க.",disk_button:"கோப்பில் சேமி",link_title:"பகிரக்கூடிய தொடுப்பு",link_details:"வாசிக்க-மட்டும் தொடுப்பாக ஏற்றுமதிசெய்.",link_button:"தொடுப்புக்கு ஏற்றுமதிசெய்",excalidrawplus_description:"காட்சியை உன் எக்ஸ்கேலிட்ரா பணியிடத்தில் சேமி.",excalidrawplus_button:"ஏற்றுமதி",excalidrawplus_exportError:"இத்தருணத்தில் எக்ஸ்கேலிட்ரா+ க்கு ஏற்றுமதிசெய்ய முடியவில்லை..."},Hgu={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:"இடது/வலது பக்கம் நகர்த்தவும்"},Lgu={title:"கித்தானைத் துடை"},qgu={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:""},Xgu={title:"நூலகம் சமர்ப்பிக்கப்பட்டது",content:"நன்றி {{authorName}}. உமது நூலகம் மதிப்பாய்விற்காக சமர்ப்பிக்கப்பட்டது. நிலையை நீங்கள் தடமறியலாம்<link>இங்கே</link>"},xgu={resetLibrary:"நூலகத்தை அகரமாக்கு",removeItemsFromLib:"நூலகத்திலிருந்து தேர்ந்தெடுத்த உருப்படிகளை நீக்கு"},vgu={header:"படத்தை ஏற்றுமதிதல",label:{withBackground:"பின்னணி",onlySelected:"தேர்ந்ததை மட்டும்",darkMode:"இருள் பயன்முறை",embedScene:"காட்சியை உட்பொதி",scale:"அளவுகோல்",padding:""},tooltip:{embedScene:""},title:{exportToPng:"PNGக்கு ஏற்றுமதிசெய்",exportToSvg:"SVGக்கு ஏற்றுமதிசெய்",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:""}},Sgu={tooltip:"உம் சித்திரங்கள் இருமுனை மறையாக்கம் செய்யப்பட்டவையாதலால் எக்ஸ்கேலிட்ராவின் சேவையகங்கள் அவற்றை ஒருபோதும் பார்க்கா.",link:"எக்ஸ்கேலிட்ராவில் இருமுனை மறையாக்கம் மீதான வலைப்பூ இடுகை"},Wgu={angle:"கோணம்",element:"உறுப்பு",elements:"உறுப்புகள்",height:"உயரம்",scene:"காட்சி",selected:"தேர்ந்தவை",storage:"சேமிப்பகம்",title:"மேதாவிகளுக்கான புள்ளிவிவரங்கள்",total:"மொத்தம்",version:"பதிப்பு",versionCopy:"நகலெடுக்க சொடுக்கு",versionNotAvailable:"பதிப்பு கிடைக்கவில்லை",width:"அகலம்"},Ygu={addedToLibrary:"நூலகத்தில் சேர்க்கப்பட்டது",copyStyles:"ஒயில்கள் நகலெடுக்கப்பட்டன.",copyToClipboard:"நகலகத்திற்கு நகலெடுக்கப்பட்டது.",copyToClipboardAsPng:`{{exportSelection}}-ஐ நகலகத்திற்கு PNG ஆக நகலெடுத்தது
({{exportColorScheme}})`,fileSaved:"கோப்பு சேமிக்கப்பட்டது.",fileSavedToFilename:"{filename}-க்கு சேமிக்கப்பட்டது",canvas:"கித்தான்",selection:"தெரிவு",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Rgu={transparent:"ஒளிபுகுத்தன்மை",black:"கருப்பு",white:"வெள்ளை",red:"சிவப்பு",pink:"இளஞ்சிவப்பு",grape:"திராட்சை",violet:"ஊதா",gray:"சாம்பல்",blue:"நீலம்",cyan:"மயில்நிறம்",teal:"டீல்",green:"பச்சை",yellow:"மஞ்சள்",orange:"ஆரஞ்சு",bronze:"வெண்கலம்"},Tgu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"எளிமையாக வரைபடங்கள் உருவாக்க!",toolbarHint:"கருவியைத் தேர்ந்தெடு & வரை!",helpHint:"குறுக்குவழிகள் & உதவி"}},Ogu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Igu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Pgu={title:"",button:"",description:"",syntax:"",preview:""},Pz3={labels:Ugu,library:zgu,buttons:kgu,alerts:fgu,errors:lgu,toolBar:bgu,headings:Mgu,hints:Zgu,canvasError:Jgu,errorSplash:wgu,roomDialog:Kgu,errorDialog:Qgu,exportDialog:Ggu,helpDialog:Hgu,clearCanvasDialog:Lgu,publishDialog:qgu,publishSuccessDialog:Xgu,confirmDialog:xgu,imageExportDialog:vgu,encrypted:Sgu,stats:Wgu,toast:Ygu,colors:Rgu,welcomeScreen:Tgu,colorPicker:Ogu,overwriteConfirm:Igu,mermaid:Pgu}});var k_u={};ju(k_u,{welcomeScreen:()=>D_u,toolBar:()=>rgu,toast:()=>A_u,stats:()=>E_u,roomDialog:()=>_gu,publishSuccessDialog:()=>tgu,publishDialog:()=>ogu,overwriteConfirm:()=>U_u,mermaid:()=>z_u,library:()=>agu,labels:()=>igu,imageExportDialog:()=>u_u,hints:()=>ygu,helpDialog:()=>dgu,headings:()=>$gu,exportDialog:()=>pgu,errors:()=>mgu,errorSplash:()=>ggu,errorDialog:()=>ngu,encrypted:()=>B_u,default:()=>jz3,confirmDialog:()=>egu,colors:()=>C_u,colorPicker:()=>F_u,clearCanvasDialog:()=>sgu,canvasError:()=>cgu,buttons:()=>Vgu,alerts:()=>hgu});var igu,agu,Vgu,hgu,mgu,rgu,$gu,ygu,cgu,ggu,_gu,ngu,pgu,dgu,sgu,ogu,tgu,egu,u_u,B_u,E_u,A_u,C_u,D_u,F_u,U_u,z_u,jz3;var f_u=g(()=>{m4();igu={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:""},agu={noItems:"ยังไม่มีรายการที่เพิ่มเข้าไปได้",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},Vgu={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:"คลิกเพื่อปฏิสัมพันธ์"},hgu={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:""},mgu={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:""},rgu={selection:"",image:"",rectangle:"สี่เหลี่ยมผืนผ้า",diamond:"",ellipse:"วงรี",arrow:"ลูกศร",line:"",freedraw:"",text:"ข้อความ",library:"คลัง",lock:"",penMode:"",link:"",eraser:"ยางลบ",frame:"",magicframe:"",embeddable:"ฝังเว็บ",laser:"",hand:"",extraTools:"เครื่องมืออื่นๆ",mermaidToExcalidraw:"",magicSettings:""},$gu={canvasActions:"",selectedShapeActions:"",shapes:"รูปร่าง"},ygu={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:""},cgu={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},ggu={headingMain:"<button>กำลังรีโหลดหน้า</button>",clearCanvasMessage:"ถ้าโหลดไม่ได้ ให้ลอง <button>เคลียร์ผืนผ้าใบ</button>",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},_gu={desc_intro:"",desc_privacy:"",button_startSession:"เริ่มเซสชัน",button_stopSession:"หยุดเซสชัน",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},ngu={title:""},pgu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:"ไม่สามารถส่งออกไปที่ Excalidraw+ ได้ในขณะนี้"},dgu={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:"ย้ายหน้าไปด้าน ซ้าย/ขวา"},sgu={title:""},ogu={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:""},tgu={title:"",content:""},egu={resetLibrary:"",removeItemsFromLib:""},u_u={header:"",label:{withBackground:"",onlySelected:"",darkMode:"โหมดกลางคืน",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"ส่งออกไปเป็น SVG",exportToSvg:"ส่งออกไปเป็น SVG",copyPngToClipboard:"คัดลอก PNG ไปยังคลิปบอร์ด"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"คัดลอกไปยังคลิปบอร์ด"}},B_u={tooltip:"",link:""},E_u={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},A_u={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},C_u={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"ฟ้าน้ำทะเล",green:"เขียว",yellow:"เหลือง",orange:"ส้ม",bronze:"ทองแดง"},D_u={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},F_u={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},U_u={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},z_u={title:"",button:"",description:"",syntax:"",preview:""},jz3={labels:igu,library:agu,buttons:Vgu,alerts:hgu,errors:mgu,toolBar:rgu,headings:$gu,hints:ygu,canvasError:cgu,errorSplash:ggu,roomDialog:_gu,errorDialog:ngu,exportDialog:pgu,helpDialog:dgu,clearCanvasDialog:sgu,publishDialog:ogu,publishSuccessDialog:tgu,confirmDialog:egu,imageExportDialog:u_u,encrypted:B_u,stats:E_u,toast:A_u,colors:C_u,welcomeScreen:D_u,colorPicker:F_u,overwriteConfirm:U_u,mermaid:z_u}});var V_u={};ju(V_u,{welcomeScreen:()=>j_u,toolBar:()=>w_u,toast:()=>I_u,stats:()=>O_u,roomDialog:()=>L_u,publishSuccessDialog:()=>W_u,publishDialog:()=>S_u,overwriteConfirm:()=>i_u,mermaid:()=>a_u,library:()=>b_u,labels:()=>l_u,imageExportDialog:()=>R_u,hints:()=>Q_u,helpDialog:()=>x_u,headings:()=>K_u,exportDialog:()=>X_u,errors:()=>J_u,errorSplash:()=>H_u,errorDialog:()=>q_u,encrypted:()=>T_u,default:()=>Nz3,confirmDialog:()=>Y_u,colors:()=>P_u,colorPicker:()=>N_u,clearCanvasDialog:()=>v_u,canvasError:()=>G_u,buttons:()=>M_u,alerts:()=>Z_u});var l_u,b_u,M_u,Z_u,J_u,w_u,K_u,Q_u,G_u,H_u,L_u,q_u,X_u,x_u,v_u,S_u,W_u,Y_u,R_u,T_u,O_u,I_u,P_u,j_u,N_u,i_u,a_u,Nz3;var h_u=g(()=>{m4();l_u={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:""},b_u={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."},M_u={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"},Z_u={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!"},J_u={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:""},w_u={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:""},K_u={canvasActions:"Tuval eylemleri",selectedShapeActions:"Seçilen şekil aksiyonları",shapes:"Şekiller"},Q_u={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:""},G_u={cannotShowPreview:"Önizleme gösterilemiyor",canvasTooBig:"Kanvas çok büyük olabilir.",canvasTooBigTip:"İpucu: En uzaktaki elemanları birbirine yakınlaştırmayı deneyin."},H_u={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:"},L_u={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"},q_u={title:"Hata"},X_u={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ı..."},x_u={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"},v_u={title:"Tuvali temizle"},S_u={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."},W_u={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>"},Y_u={resetLibrary:"Kütüphaneyi sıfırla",removeItemsFromLib:"Seçilen ögeleri kütüphaneden kaldır"},R_u={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"}},T_u={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ı"},O_u={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"},I_u={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:""},P_u={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:""},j_u={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"}},N_u={mostUsedCustomColors:"En çok kullanılan özel renkler",colors:"Renkler",shades:"",hexCode:"Hex kodu",noShades:""},i_u={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"Diske Kaydet",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},a_u={title:"",button:"",description:"",syntax:"",preview:""},Nz3={labels:l_u,library:b_u,buttons:M_u,alerts:Z_u,errors:J_u,toolBar:w_u,headings:K_u,hints:Q_u,canvasError:G_u,errorSplash:H_u,roomDialog:L_u,errorDialog:q_u,exportDialog:X_u,helpDialog:x_u,clearCanvasDialog:v_u,publishDialog:S_u,publishSuccessDialog:W_u,confirmDialog:Y_u,imageExportDialog:R_u,encrypted:T_u,stats:O_u,toast:I_u,colors:P_u,welcomeScreen:j_u,colorPicker:N_u,overwriteConfirm:i_u,mermaid:a_u}});var Mnu={};ju(Mnu,{welcomeScreen:()=>knu,toolBar:()=>g_u,toast:()=>Unu,stats:()=>Fnu,roomDialog:()=>s_u,publishSuccessDialog:()=>Enu,publishDialog:()=>Bnu,overwriteConfirm:()=>lnu,mermaid:()=>bnu,library:()=>r_u,labels:()=>m_u,imageExportDialog:()=>Cnu,hints:()=>n_u,helpDialog:()=>e_u,headings:()=>__u,exportDialog:()=>t_u,errors:()=>c_u,errorSplash:()=>d_u,errorDialog:()=>o_u,encrypted:()=>Dnu,default:()=>iz3,confirmDialog:()=>Anu,colors:()=>znu,colorPicker:()=>fnu,clearCanvasDialog:()=>unu,canvasError:()=>p_u,buttons:()=>$_u,alerts:()=>y_u});var m_u,r_u,$_u,y_u,c_u,g_u,__u,n_u,p_u,d_u,s_u,o_u,t_u,e_u,unu,Bnu,Enu,Anu,Cnu,Dnu,Fnu,Unu,znu,knu,fnu,lnu,bnu,iz3;var Znu=g(()=>{m4();m_u={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:""},r_u={noItems:"Тут поки пусто...",hint_emptyLibrary:"Виберіть об'єкт на полотні, щоб додати його сюди або встановіть бібліотеку з публічного репозиторію, що нижче.",hint_emptyPrivateLibrary:"Виберіть елемент на полотні, щоб додати його сюди."},$_u={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:"Натисніть для взаємодії"},y_u={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:`Немає підключення до Інтернету.
Ваші зміни не будуть збережені!`},c_u={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:""},g_u={selection:"Виділення",image:"Вставити зображення",rectangle:"Прямокутник",diamond:"Ромб",ellipse:"Еліпс",arrow:"Стрілка",line:"Лінія",freedraw:"Малювати",text:"Текст",library:"Бібліотека",lock:"Залишити обраний інструмент після креслення",penMode:"Режим пера - запобігання дотику",link:"Додати/Оновити посилання для вибраної форми",eraser:"Очищувач",frame:"Інструмент фрейму",magicframe:"",embeddable:"Веб вкладення",laser:"",hand:"Рука (інструмент для панорамування)",extraTools:"Інші інструменти",mermaidToExcalidraw:"",magicSettings:""},__u={canvasActions:"Дії з полотном",selectedShapeActions:"Вибрані дії з фігурою",shapes:"Фігури"},n_u={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:""},p_u={cannotShowPreview:"Не вдається показати попередній перегляд",canvasTooBig:"Полотно може бути завеликим.",canvasTooBigTip:"Порада: спробуйте підсунути найвіддаленіші елементи ближче один до одного."},d_u={headingMain:"Сталася помилка. Спробуйте <button>перезавантажити сторінку.</button>",clearCanvasMessage:"Якщо перезавантаження не допоможе, спробуйте <button>очистити полотно.</button>",clearCanvasCaveat:" Це призведе до втрати роботи ",trackedToSentry:"Помилка з ідентифікатором {{eventId}} було відслідковано в нашій системі.",openIssueMessage:"Ми були дуже обережні, щоб не включати інформацію про ваші сцени в текст помилки. Якщо ваша сцена не була приватна, будь ласка, розгляньте можливість продовження на нашому <button>трекер помилок.</button> Будь ласка, додайте інформацію нижче, скопіюючи і вставляючи у GitHub issue.",sceneContent:"Вміст сцени:"},s_u={desc_intro:"Ви можете запросити людей для спільної роботи.",desc_privacy:"Не хвилюйтеся, сесія захищена наскрізним шифруванням, тому ваше креслення залишиться приватним. Навіть наш сервер не побачить вашу роботу.",button_startSession:"Почати сесію",button_stopSession:"Закрити сесію",desc_inProgressIntro:"Сесія спільної роботи над кресленням триває.",desc_shareLink:"Поділіться цим посиланням з будь-ким для спільної роботи:",desc_exitSession:"Зупинка сесії відключить вас від кімнати, але ви зможете продовжити роботу з полотном локально. Зверніть увагу, що це не вплине на інших людей, і вони все одно зможуть працювати над їх версією.",shareTitle:"Приєднатися до сеансу спільної роботи на Excalidraw"},o_u={title:"Помилка"},t_u={disk_title:"Зберегти на диск",disk_details:"Експорт даних сцени в файл, з якого можна імпортувати пізніше.",disk_button:"Зберегти до файлу",link_title:"Доступ за посиланням",link_details:"Експортувати як посилання тільки для читання.",link_button:"Експортувати у посилання",excalidrawplus_description:"Збережіть сцену у вашому обліковому записі Excalidraw+.",excalidrawplus_button:"Експортувати",excalidrawplus_exportError:"Не вдалося експортувати у Excalidraw+..."},e_u={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:"Пересунути сторінку вліво/вправо"},unu={title:"Очистити полотно"},Bnu={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:"Зауважте, деякі з вибраних елементів позначені як вже опубліковані/надіслані. Ви повинні повторно надсилати елементи тільки при оновленні вже опублікованої бібліотеки чи при публікації бібліотеки."},Enu={title:"Бібліотека відправлена",content:"Дякуємо, {{authorName}}. Ваша бібліотека була відправлена для розгляду. Ви можете відстежувати статус<link>тут</link>"},Anu={resetLibrary:"Очистити бібліотеку",removeItemsFromLib:"Видалити вибрані елементи з бібліотеки"},Cnu={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:"Копіювати в буфер обміну"}},Dnu={tooltip:"Ваші креслення захищені наскрізним шифруванням — сервери Excalidraw ніколи їх не побачать.",link:"Допис у блозі на наскрізному шифруванні в Excalidraw"},Fnu={angle:"Кут",element:"Елемент",elements:"Елементи",height:"Висота",scene:"Сцена",selected:"Обрано",storage:"Сховище",title:"Статистика",total:"Всього",version:"Версія",versionCopy:"Натисніть, щоб скопіювати",versionNotAvailable:"Версія недоступна",width:"Ширина"},Unu={addedToLibrary:"Додано до бібліотеки",copyStyles:"Скопійовані стилі.",copyToClipboard:"Скопіювати до буферу обміну.",copyToClipboardAsPng:`Скопійовано {{exportSelection}} до буфера обміну як PNG
({{exportColorScheme}})`,fileSaved:"Файл збережено.",fileSavedToFilename:"Збережено в {filename}",canvas:"полотно",selection:"виділення",pasteAsSingleElement:"Використайте {{shortcut}} для вставки самостійного зразка або використайте в текстовому редакторі",unableToEmbed:"Вбудування цієї url на даний час не допускається. Підніміть питання на GitHub, щоб попросити внести URL-адресу до білого списку",unrecognizedLinkFormat:'Посилання, яке ви вставили, не відповідає очікуваному формату. Будь ласка, спробуйте вставити рядок "embed", наданий сайтом-джерелом'},znu={transparent:"Прозорий",black:"Чорний",white:"Білий",red:"Червоний",pink:"Рожевий",grape:"Виноградний",violet:"Фіолетовий",gray:"Сірий",blue:"Синій",cyan:"Ціан",teal:"Бірюзовий",green:"Зелений",yellow:"Жовтий",orange:"Помаранчевий",bronze:"Бронзовий"},knu={app:{center_heading:"Всі ваші дані збережено локально у Вашому браузері.",center_heading_plus:"Чи бажаєте перейти до Excalidraw+?",menuHint:"Експорт, налаштування, мови, ..."},defaults:{menuHint:"Експорт, налаштування та багато іншого...",center_heading:"Діаграми. Робити. Просто.",toolbarHint:"Оберіть інструмент і почніть малювати!",helpHint:"Гарячі клавіші і допомога"}},fnu={mostUsedCustomColors:"Найбільш використовувані користувацькі кольори",colors:"Кольори",shades:"Тіні",hexCode:"Hex-код",noShades:"Немає доступних відтінків цього кольору"},lnu={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>Ви можете спочатку створити резервну копію малюнка, скориставшись одним із наведених нижче способів."}}},bnu={title:"",button:"",description:"",syntax:"",preview:""},iz3={labels:m_u,library:r_u,buttons:$_u,alerts:y_u,errors:c_u,toolBar:g_u,headings:__u,hints:n_u,canvasError:p_u,errorSplash:d_u,roomDialog:s_u,errorDialog:o_u,exportDialog:t_u,helpDialog:e_u,clearCanvasDialog:unu,publishDialog:Bnu,publishSuccessDialog:Enu,confirmDialog:Anu,imageExportDialog:Cnu,encrypted:Dnu,stats:Fnu,toast:Unu,colors:znu,welcomeScreen:knu,colorPicker:fnu,overwriteConfirm:lnu,mermaid:bnu}});var $nu={};ju($nu,{welcomeScreen:()=>Vnu,toolBar:()=>Hnu,toast:()=>inu,stats:()=>Nnu,roomDialog:()=>vnu,publishSuccessDialog:()=>Onu,publishDialog:()=>Tnu,overwriteConfirm:()=>mnu,mermaid:()=>rnu,library:()=>wnu,labels:()=>Jnu,imageExportDialog:()=>Pnu,hints:()=>qnu,helpDialog:()=>Ynu,headings:()=>Lnu,exportDialog:()=>Wnu,errors:()=>Gnu,errorSplash:()=>xnu,errorDialog:()=>Snu,encrypted:()=>jnu,default:()=>az3,confirmDialog:()=>Inu,colors:()=>anu,colorPicker:()=>hnu,clearCanvasDialog:()=>Rnu,canvasError:()=>Xnu,buttons:()=>Knu,alerts:()=>Qnu});var Jnu,wnu,Knu,Qnu,Gnu,Hnu,Lnu,qnu,Xnu,xnu,vnu,Snu,Wnu,Ynu,Rnu,Tnu,Onu,Inu,Pnu,jnu,Nnu,inu,anu,Vnu,hnu,mnu,rnu,az3;var ynu=g(()=>{m4();Jnu={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:""},wnu={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."},Knu={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:""},Qnu={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!`},Gnu={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:""},Hnu={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:""},Lnu={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"},qnu={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:""},Xnu={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."},xnu={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:""},vnu={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},Snu={title:""},Wnu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},Ynu={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:""},Rnu={title:"Dọn canvas"},Tnu={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."},Onu={title:"",content:""},Inu={resetLibrary:"",removeItemsFromLib:"Xóa món đã chọn khỏi thư viện"},Pnu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},jnu={tooltip:"",link:""},Nnu={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},inu={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"canvas",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},anu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Vnu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},hnu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},mnu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},rnu={title:"",button:"",description:"",syntax:"",preview:""},az3={labels:Jnu,library:wnu,buttons:Knu,alerts:Qnu,errors:Gnu,toolBar:Hnu,headings:Lnu,hints:qnu,canvasError:Xnu,errorSplash:xnu,roomDialog:vnu,errorDialog:Snu,exportDialog:Wnu,helpDialog:Ynu,clearCanvasDialog:Rnu,publishDialog:Tnu,publishSuccessDialog:Onu,confirmDialog:Inu,imageExportDialog:Pnu,encrypted:jnu,stats:Nnu,toast:inu,colors:anu,welcomeScreen:Vnu,colorPicker:hnu,overwriteConfirm:mnu,mermaid:rnu}});var Kpu={};ju(Kpu,{welcomeScreen:()=>Mpu,toolBar:()=>dnu,toast:()=>lpu,stats:()=>fpu,roomDialog:()=>upu,publishSuccessDialog:()=>Fpu,publishDialog:()=>Dpu,overwriteConfirm:()=>Jpu,mermaid:()=>wpu,library:()=>gnu,labels:()=>cnu,imageExportDialog:()=>zpu,hints:()=>onu,helpDialog:()=>Apu,headings:()=>snu,exportDialog:()=>Epu,errors:()=>pnu,errorSplash:()=>enu,errorDialog:()=>Bpu,encrypted:()=>kpu,default:()=>Vz3,confirmDialog:()=>Upu,colors:()=>bpu,colorPicker:()=>Zpu,clearCanvasDialog:()=>Cpu,canvasError:()=>tnu,buttons:()=>_nu,alerts:()=>nnu});var cnu,gnu,_nu,nnu,pnu,dnu,snu,onu,tnu,enu,upu,Bpu,Epu,Apu,Cpu,Dpu,Fpu,Upu,zpu,kpu,fpu,lpu,bpu,Mpu,Zpu,Jpu,wpu,Vz3;var Qpu=g(()=>{m4();cnu={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"},gnu={noItems:"尚未添加任何项目……",hint_emptyLibrary:"选中画布上的项目添加到此处,或从下方的公共素材库中导入。",hint_emptyPrivateLibrary:"选中画布上的项目添加到此处。"},_nu={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:"点击以开始交互"},nnu={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:`无网络连接。
您的改动将不会被保存!`},pnu={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:"无法复制到剪贴板。"},dnu={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 设置"},snu={canvasActions:"画布动作",selectedShapeActions:"选定形状操作",shapes:"形状"},onu={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 以禁用吸附"},tnu={cannotShowPreview:"无法显示预览",canvasTooBig:"画布可能过大。",canvasTooBigTip:"提示:尝试将最远的元素移动到和其它元素更近一些。"},enu={headingMain:"遇到异常。请尝试<button>重新加载页面</button>。",clearCanvasMessage:"如果重新加载页面无效,请尝试<button>清除画布</button>。",clearCanvasCaveat:"这会造成当前工作丢失",trackedToSentry:"标识符为{{eventId}}的错误已在我们的系统中被记录",openIssueMessage:"我们非常谨慎地处理错误信息,您的画布内容不会被包含在错误报告中。如果您的画布内容不需要保持私密,请考虑在我们的 <button>bug 跟踪系统</button>上提供更多信息。请复制粘贴以下信息到 GitHub Issue 中。",sceneContent:"画布内容:"},upu={desc_intro:"你可以邀请其他人到目前的画面中与你协作。",desc_privacy:"别担心,该会话使用端到端加密,无论绘制什么都将保持私密,甚至连我们的服务器也无法查看。",button_startSession:"开始会话",button_stopSession:"结束会话",desc_inProgressIntro:"实时协作会话进行中。",desc_shareLink:"分享此链接给你要协作的用户",desc_exitSession:"停止会话将中断您与房间的连接,但您依然可以在本地继续使用画布。请注意,这不会影响到其他用户,他们仍可以在他们的版本上继续协作。",shareTitle:"加入 Excalidraw 实时协作会话"},Bpu={title:"错误"},Epu={disk_title:"保存到本地",disk_details:"将画布数据导出为文件,以便以后导入",disk_button:"保存为文件",link_title:"分享链接",link_details:"导出为只读链接。",link_button:"导出链接",excalidrawplus_description:"将画布保存到您的 Excalidraw+ 工作区。",excalidrawplus_button:"导出",excalidrawplus_exportError:"暂时无法导出到 Excalidraw+ ..."},Apu={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:"左右移动页面"},Cpu={title:"清除画布"},Dpu={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:"注意:部分选中的项目已经发布或提交。请仅在更新已有或已提交的素材库时重复提交项目。"},Fpu={title:"素材库已提交",content:"谢谢你 {{authorName}}。您的素材库已被提交审核。请点击<link>此处</link>跟进此次提交的状态"},Upu={resetLibrary:"重置素材库",removeItemsFromLib:"从素材库中删除选中的项目"},zpu={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:"复制到剪贴板"}},kpu={tooltip:"您的绘图采用端到端加密,其内容对于 Excalidraw 服务器是不可见的。",link:"Excalidraw 中关于端到端加密的博客"},fpu={angle:"角度",element:"元素",elements:"元素",height:"高度",scene:"画布",selected:"选中",storage:"存储",title:"详细统计信息",total:"总计",version:"版本",versionCopy:"点击复制",versionNotAvailable:"版本不可用",width:"宽度"},lpu={addedToLibrary:"添加到素材库中",copyStyles:"样式已拷贝。",copyToClipboard:"已复制到剪切板。",copyToClipboardAsPng:`已将 {{exportSelection}} 作为 PNG 复制到剪贴板
({{exportColorScheme}})`,fileSaved:"文件已保存。",fileSavedToFilename:"保存到 {filename}",canvas:"画布",selection:"所选项",pasteAsSingleElement:`使用 {{shortcut}} 粘贴为单个元素,
或粘贴到现有的文本编辑器里`,unableToEmbed:"目前不允许嵌入此网址。请在 GitHub 上提 issue 请求将此网址加入白名单",unrecognizedLinkFormat:"您嵌入的链接不符合格式要求。请尝试粘贴源网站提供的“嵌入 (embed)”字符串"},bpu={transparent:"透明",black:"黑",white:"白",red:"红",pink:"粉红",grape:"紫红",violet:"蓝紫",gray:"灰",blue:"蓝",cyan:"青",teal:"蓝绿",green:"绿",yellow:"黄",orange:"橙",bronze:"古铜"},Mpu={app:{center_heading:"您的所有数据都储存在浏览器本地。",center_heading_plus:"是否前往 Excalidraw+ ",menuHint:"导出、首选项、语言……"},defaults:{menuHint:"导出、首选项……",center_heading:"图,化繁为简。",toolbarHint:"选择工具并开始绘图!",helpHint:"快捷键和帮助"}},Zpu={mostUsedCustomColors:"常用自定义颜色",colors:"颜色",shades:"色调明暗",hexCode:"十六进制值",noShades:"此颜色没有可用的明暗变化"},Jpu={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>您可以先使用下列方式备份您的绘图。"}}},wpu={title:"Mermaid 至 Excalidraw",button:"插入",description:"目前仅支持<flowchartLink>流程图</flowchartLink>、<sequenceLink>序列图</sequenceLink>和<classLink>类图</classLink>。其他类型在 Excalidraw 中将以图像呈现。",syntax:"Mermaid 语法",preview:"预览"},Vz3={labels:cnu,library:gnu,buttons:_nu,alerts:nnu,errors:pnu,toolBar:dnu,headings:snu,hints:onu,canvasError:tnu,errorSplash:enu,roomDialog:upu,errorDialog:Bpu,exportDialog:Epu,helpDialog:Apu,clearCanvasDialog:Cpu,publishDialog:Dpu,publishSuccessDialog:Fpu,confirmDialog:Upu,imageExportDialog:zpu,encrypted:kpu,stats:fpu,toast:lpu,colors:bpu,welcomeScreen:Mpu,colorPicker:Zpu,overwriteConfirm:Jpu,mermaid:wpu}});var _pu={};ju(_pu,{welcomeScreen:()=>$pu,toolBar:()=>xpu,toast:()=>mpu,stats:()=>hpu,roomDialog:()=>Rpu,publishSuccessDialog:()=>Npu,publishDialog:()=>jpu,overwriteConfirm:()=>cpu,mermaid:()=>gpu,library:()=>Hpu,labels:()=>Gpu,imageExportDialog:()=>apu,hints:()=>Spu,helpDialog:()=>Ipu,headings:()=>vpu,exportDialog:()=>Opu,errors:()=>Xpu,errorSplash:()=>Ypu,errorDialog:()=>Tpu,encrypted:()=>Vpu,default:()=>hz3,confirmDialog:()=>ipu,colors:()=>rpu,colorPicker:()=>ypu,clearCanvasDialog:()=>Ppu,canvasError:()=>Wpu,buttons:()=>Lpu,alerts:()=>qpu});var Gpu,Hpu,Lpu,qpu,Xpu,xpu,vpu,Spu,Wpu,Ypu,Rpu,Tpu,Opu,Ipu,Ppu,jpu,Npu,ipu,apu,Vpu,hpu,mpu,rpu,$pu,ypu,cpu,gpu,hz3;var npu=g(()=>{m4();Gpu={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:""},Hpu={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},Lpu={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:""},qpu={clearReset:"【‼️ 警告 ‼️ 無法復原的動作】你確定要清空呢塊畫布嗎?",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"無嘢可以匯出喎~畫吓嘢先?",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},Xpu={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:""},xpu={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},vpu={canvasActions:"畫布動作",selectedShapeActions:"",shapes:""},Spu={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:""},Wpu={cannotShowPreview:"無法顯示預覽",canvasTooBig:"塊畫布太大啦,縮細啲先啦?",canvasTooBigTip:""},Ypu={headingMain:"",clearCanvasMessage:"如果重新整理頁面都係睇唔到,你可以<button>清空畫布</button>",clearCanvasCaveat:"(注意:呢個動作會直接丟棄你嘅作品,並且無法復原)",trackedToSentry:"",openIssueMessage:"",sceneContent:""},Rpu={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},Tpu={title:""},Opu={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},Ipu={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:""},Ppu={title:""},jpu={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},Npu={title:"",content:""},ipu={resetLibrary:"",removeItemsFromLib:""},apu={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Vpu={tooltip:"",link:""},hpu={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},mpu={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"畫布",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},rpu={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},$pu={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},ypu={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},cpu={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},gpu={title:"",button:"",description:"",syntax:"",preview:""},hz3={labels:Gpu,library:Hpu,buttons:Lpu,alerts:qpu,errors:Xpu,toolBar:xpu,headings:vpu,hints:Spu,canvasError:Wpu,errorSplash:Ypu,roomDialog:Rpu,errorDialog:Tpu,exportDialog:Opu,helpDialog:Ipu,clearCanvasDialog:Ppu,publishDialog:jpu,publishSuccessDialog:Npu,confirmDialog:ipu,imageExportDialog:apu,encrypted:Vpu,stats:hpu,toast:mpu,colors:rpu,welcomeScreen:$pu,colorPicker:ypu,overwriteConfirm:cpu,mermaid:gpu}});var Ldu={};ju(Ldu,{welcomeScreen:()=>Kdu,toolBar:()=>epu,toast:()=>Jdu,stats:()=>Zdu,roomDialog:()=>Cdu,publishSuccessDialog:()=>fdu,publishDialog:()=>kdu,overwriteConfirm:()=>Gdu,mermaid:()=>Hdu,library:()=>dpu,labels:()=>ppu,imageExportDialog:()=>bdu,hints:()=>Bdu,helpDialog:()=>Udu,headings:()=>udu,exportDialog:()=>Fdu,errors:()=>tpu,errorSplash:()=>Adu,errorDialog:()=>Ddu,encrypted:()=>Mdu,default:()=>mz3,confirmDialog:()=>ldu,colors:()=>wdu,colorPicker:()=>Qdu,clearCanvasDialog:()=>zdu,canvasError:()=>Edu,buttons:()=>spu,alerts:()=>opu});var ppu,dpu,spu,opu,tpu,epu,udu,Bdu,Edu,Adu,Cdu,Ddu,Fdu,Udu,zdu,kdu,fdu,ldu,bdu,Mdu,Zdu,Jdu,wdu,Kdu,Qdu,Gdu,Hdu,mz3;var qdu=g(()=>{m4();ppu={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:"提示詞"},dpu={noItems:"尚未加入任何物件...",hint_emptyLibrary:"選取畫布上的物件以加入,或從下方的公開 repository 中安裝資料庫",hint_emptyPrivateLibrary:"選擇畫布上的物件以在此加入"},spu={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:"點擊以互動"},opu={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:`沒有可用的網路連線。
變更無法儲存!`},tpu={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:"無法複製至剪貼簿"},epu={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 設定"},udu={canvasActions:"canvas 動作",selectedShapeActions:"選取圖形動作",shapes:"形狀"},Bdu={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 以禁用吸附"},Edu={cannotShowPreview:"無法顯示預覽",canvasTooBig:"畫布可能過大",canvasTooBigTip:"提示:可嘗試將最遠的元素移動至較集中的位置"},Adu={headingMain:"發生錯誤,嘗試<button>重新載入頁面。</button>",clearCanvasMessage:"若重新載入仍無法解決問題,嘗試<button>清除 canvas。</button>",clearCanvasCaveat:"此動作將造成目前的作品被移除。",trackedToSentry:"此錯誤與其識別碼{{eventId}}將由系統記錄。",openIssueMessage:"我們將謹慎處理,你的作品內容不會被包含在錯誤報告中。若你的作品不需保持私密,請考慮使用我們的<button>bug tracker。</button>請將下列資訊複製貼上至 GitHub issue 中。",sceneContent:"作品內容:"},Cdu={desc_intro:"你可以邀請其他人一起協作目前的作品。",desc_privacy:"連線使用 end-to-end 加密故無須擔心作品的安全性。即使是我們的伺服器也無法取得其內容。",button_startSession:"開始連線",button_stopSession:"停止連線",desc_inProgressIntro:"即時協作連線正在進行中。",desc_shareLink:"將此連結分享給欲協作的對象:",desc_exitSession:"停止連線將中斷你與協作會議室的連結,但你仍可於本機編輯此作品。意指停止連線後你的編輯不會被先前共同協作的人看見,且他們可繼續共同協作另一個版本。",shareTitle:"加入 Excalidraw 上的即時協作會議室"},Ddu={title:"錯誤"},Fdu={disk_title:"儲存至硬碟",disk_details:"將場景匯出為可供匯入之檔案",disk_button:"儲存至檔案",link_title:"可共享連結",link_details:"匯出為唯讀連結",link_button:"匯出為連結",excalidrawplus_description:"將此場景儲存至你的 Excalidraw+ 工作區",excalidrawplus_button:"輸出",excalidrawplus_exportError:"目前無法輸出至 Excalidraw+"},Udu={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:"向左/右移動頁面"},zdu={title:"清除畫布"},kdu={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:"注意:部分選取中的物件先前已發布/送出過。建議僅在要更新現存資料庫或已送出的物件時才重新送出這些物件。"},fdu={title:"資料庫已送出",content:"感謝 {{authorName}} 。您的資料庫已送出待審查。您可查看目前狀態<link>在此</link>"},ldu={resetLibrary:"重設資料庫",removeItemsFromLib:"從資料庫移除所選的項目"},bdu={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:"複製至剪貼簿"}},Mdu={tooltip:"你的作品已使用 end-to-end 方式加密,Excalidraw 的伺服器也無法取得其內容。",link:"Excalidraw 端到端加密的相關部落格文章"},Zdu={angle:"角度",element:"元素",elements:"元素",height:"高度",scene:"場景",selected:"已選",storage:"儲存",title:"詳細統計",total:"合計",version:"版本",versionCopy:"點擊複製",versionNotAvailable:"無法取得版本",width:"寬度"},Jdu={addedToLibrary:"加入資料庫",copyStyles:"已複製樣式",copyToClipboard:"複製至剪貼簿。",copyToClipboardAsPng:`以 PNG 格式將 {{exportSelection}} 複製至剪貼簿
({{exportColorScheme}})`,fileSaved:"已儲存檔案。",fileSavedToFilename:"儲存為 {filename}",canvas:"畫布",selection:"已選項目",pasteAsSingleElement:`使用 {{shortcut}} 以做為單一物件貼上,
或貼上至現有的文字編輯器`,unableToEmbed:"目前不允許嵌入此網址。您可至 GitHub 提出 issue 以要求將此網址加入合格名單。",unrecognizedLinkFormat:"您嵌入的連結格式不符。請嘗試貼入原網站所提供的「嵌入」字串。"},wdu={transparent:"透明",black:"黑",white:"白",red:"紅",pink:"粉紅",grape:"深紫",violet:"藍紫",gray:"灰",blue:"藍",cyan:"青",teal:"藍綠",green:"綠",yellow:"黃",orange:"橘",bronze:"銅"},Kdu={app:{center_heading:"所有資料皆已在瀏覽器中儲存於本機",center_heading_plus:"您是否是要前往 Excalidraw+ ",menuHint:"輸出、偏好設定、語言..."},defaults:{menuHint:"輸出、偏好設定及其他...",center_heading:"圖表。製作。超簡單。",toolbarHint:"選個工具開始畫圖吧!",helpHint:"快速鍵與說明"}},Qdu={mostUsedCustomColors:"最常使用的自訂顏色",colors:"顏色",shades:"漸變色",hexCode:"Hex 碼",noShades:"沒有此顏色的漸變色"},Gdu={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>可先使用下方的選項備份您的繪圖。"}}},Hdu={title:"Mermaid 至 Excalidraw",button:"插入",description:"目前僅支援 <flowchartLink>Flowchart</flowchartLink> 、 <sequenceLink>Sequence</sequenceLink> 及 <classLink>Class </classLink> 圖表。其餘檔案類型在 Excalidraw 將會以圖像呈現。",syntax:"Mermaid 語法",preview:"預覽"},mz3={labels:ppu,library:dpu,buttons:spu,alerts:opu,errors:tpu,toolBar:epu,headings:udu,hints:Bdu,canvasError:Edu,errorSplash:Adu,roomDialog:Cdu,errorDialog:Ddu,exportDialog:Fdu,helpDialog:Udu,clearCanvasDialog:zdu,publishDialog:kdu,publishSuccessDialog:fdu,confirmDialog:ldu,imageExportDialog:bdu,encrypted:Mdu,stats:Zdu,toast:Jdu,colors:wdu,welcomeScreen:Kdu,colorPicker:Qdu,overwriteConfirm:Gdu,mermaid:Hdu}});var rz3={};var Xdu=g(()=>{(()=>{if(Path2D.prototype.roundRect??=u,globalThis.CanvasRenderingContext2D)globalThis.CanvasRenderingContext2D.prototype.roundRect??=u;if(globalThis.OffscreenCanvasRenderingContext2D)globalThis.OffscreenCanvasRenderingContext2D.prototype.roundRect??=u;function u(A,C,D,F,U){if(![A,C,D,F].every((L)=>Number.isFinite(L)))return;U=w(U);let z,k,f,l;if(U.length===4)z=Q(U[0]),k=Q(U[1]),f=Q(U[2]),l=Q(U[3]);else if(U.length===3)z=Q(U[0]),k=Q(U[1]),l=Q(U[1]),f=Q(U[2]);else if(U.length===2)z=Q(U[0]),f=Q(U[0]),k=Q(U[1]),l=Q(U[1]);else if(U.length===1)z=Q(U[0]),k=Q(U[0]),f=Q(U[0]),l=Q(U[0]);else throw RangeError(`${B(this)} ${U.length} is not a valid size for radii sequence.`);let b=[z,k,f,l],M=b.find(({x:L,y:H})=>L<0||H<0),Z=M?.x<0?M.x:M?.y;if(b.some(({x:L,y:H})=>!Number.isFinite(L)||!Number.isFinite(H)))return;if(M)throw RangeError(`${B(this)} Radius value ${M} is negative.`);if(G(b),D<0&&F<0)this.moveTo(A-z.x,C),this.ellipse(A+D+k.x,C-k.y,k.x,k.y,0,-Math.PI*1.5,-Math.PI),this.ellipse(A+D+f.x,C+F+f.y,f.x,f.y,0,-Math.PI,-Math.PI/2),this.ellipse(A-l.x,C+F+l.y,l.x,l.y,0,-Math.PI/2,0),this.ellipse(A-z.x,C-z.y,z.x,z.y,0,0,-Math.PI/2);else if(D<0)this.moveTo(A-z.x,C),this.ellipse(A+D+k.x,C+k.y,k.x,k.y,0,-Math.PI/2,-Math.PI,1),this.ellipse(A+D+f.x,C+F-f.y,f.x,f.y,0,-Math.PI,-Math.PI*1.5,1),this.ellipse(A-l.x,C+F-l.y,l.x,l.y,0,Math.PI/2,0,1),this.ellipse(A-z.x,C+z.y,z.x,z.y,0,0,-Math.PI/2,1);else if(F<0)this.moveTo(A+z.x,C),this.ellipse(A+D-k.x,C-k.y,k.x,k.y,0,Math.PI/2,0,1),this.ellipse(A+D-f.x,C+F+f.y,f.x,f.y,0,0,-Math.PI/2,1),this.ellipse(A+l.x,C+F+l.y,l.x,l.y,0,-Math.PI/2,-Math.PI,1),this.ellipse(A+z.x,C-z.y,z.x,z.y,0,-Math.PI,-Math.PI*1.5,1);else this.moveTo(A+z.x,C),this.ellipse(A+D-k.x,C+k.y,k.x,k.y,0,-Math.PI/2,0),this.ellipse(A+D-f.x,C+F-f.y,f.x,f.y,0,0,Math.PI/2),this.ellipse(A+l.x,C+F-l.y,l.x,l.y,0,Math.PI/2,Math.PI),this.ellipse(A+z.x,C+z.y,z.x,z.y,0,Math.PI,Math.PI*1.5);this.closePath(),this.moveTo(A,C);function J(L){let{x:H,y:q,z:x,w:v}=L;return{x:H,y:q,z:x,w:v}}function w(L){let H=typeof L;if(H==="undefined"||L===null)return[0];if(H==="function")return[NaN];if(H==="object"){if(typeof L[Symbol.iterator]==="function")return[...L].map((q)=>{let x=typeof q;if(x==="undefined"||q===null)return 0;if(x==="function")return NaN;if(x==="object")return J(q);return K(q)});return[J(L)]}return[K(L)]}function K(L){return+L}function Q(L){let H=K(L);if(Number.isFinite(H))return{x:H,y:H};if(Object(L)===L)return{x:K(L.x??0),y:K(L.y??0)};return{x:NaN,y:NaN}}function G(L){let[H,q,x,v]=L,W=[Math.abs(D)/(H.x+q.x),Math.abs(F)/(q.y+x.y),Math.abs(D)/(x.x+v.x),Math.abs(F)/(H.y+v.y)],S=Math.min(...W);if(S<=1)for(let T of L)T.x*=S,T.y*=S}}function B(A){return`Failed to execute 'roundRect' on '${E(A)}':`}function E(A){return Object(A)===A&&A instanceof Path2D?"Path2D":A instanceof globalThis?.CanvasRenderingContext2D?"CanvasRenderingContext2D":A instanceof globalThis?.OffscreenCanvasRenderingContext2D?"OffscreenCanvasRenderingContext2D":A?.constructor.name||A}})()});LU0();Wg();gz0();wq();mb0();yb0();m4();var qs=Eu(Gu(),1),Xs=Eu(Gu(),1);var O83=0;function I2(u,B){let E=`atom${++O83}`,A={toString(){return(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&this.debugLabel?E+":"+this.debugLabel:E}};if(typeof u==="function")A.read=u;else A.init=u,A.read=I83,A.write=P83;if(B)A.write=B;return A}function I83(u){return u(this)}function P83(u,B,E){return B(this,typeof E==="function"?E(u(this)):E)}var uZu=(u,B)=>u.unstable_is?u.unstable_is(B):B===u,gb0=(u)=>("init"in u),cb0=(u)=>!!u.write,Fp=new WeakMap,_b0=(u)=>{var B;return nb0(u)&&!((B=Fp.get(u))==null?void 0:B[1])},j83=(u,B)=>{let E=Fp.get(u);if(E)E[1]=!0,E[0].forEach((A)=>A(B));else if((import.meta.env?import.meta.env.MODE:void 0)!=="production")throw Error("[Bug] cancelable promise not found")},N83=(u)=>{if(Fp.has(u))return;let B=[new Set,!1];Fp.set(u,B);let E=()=>{B[1]=!0};u.then(E,E),u.onCancel=(A)=>{B[0].add(A)}},nb0=(u)=>typeof(u==null?void 0:u.then)==="function",BZu=(u)=>("v"in u)||("e"in u),Dp=(u)=>{if("e"in u)throw u.e;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("v"in u))throw Error("[Bug] atom state is not initialized");return u.v},CZu=(u,B,E)=>{if(!E.p.has(u))E.p.add(u),B.then(()=>{E.p.delete(u)},()=>{E.p.delete(u)})},EZu=(u,B,E,A,C)=>{var D;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&A===B)throw Error("[Bug] atom cannot depend on itself");if(E.d.set(A,C.n),_b0(E.v))CZu(B,E.v,C);if((D=C.m)==null||D.t.add(B),u)i83(u,A,B)},gO=()=>({D:new Map,H:new Set,M:new Set,L:new Set}),nO=(u,B,E)=>{u[B].add(E)},AZu=(u,B,E)=>{if(!u.D.has(B))u.D.set(B,new Set),nO(u,"M",()=>{var A;(A=E.m)==null||A.l.forEach((C)=>nO(u,"M",C))})},i83=(u,B,E)=>{let A=u.D.get(B);if(A)A.add(E)},a83=(u,B)=>u.D.get(B),VK=(u)=>{let B,E=!1,A=(C)=>{try{C()}catch(D){if(!E)B=D,E=!0}};while(u.H.size||u.M.size||u.L.size)u.D.clear(),u.H.forEach(A),u.H.clear(),u.M.forEach(A),u.M.clear(),u.L.forEach(A),u.L.clear();if(E)throw B},DZu=(...[u,B,E,A])=>{let C=(K,Q,G)=>{let L="v"in Q,H=Q.v,q=_b0(Q.v)?Q.v:null;if(nb0(G)){N83(G);for(let x of Q.d.keys())CZu(K,G,u(x));Q.v=G}else Q.v=G;if(delete Q.e,delete Q.x,!L||!Object.is(H,Q.v)){if(++Q.n,q)j83(q,G)}},D=(K,Q)=>{var G;let L=u(Q);if(BZu(L)){if(L.m&&!L.x)return L;if(Array.from(L.d).every(([S,T])=>D(K,S).n===T))return L}L.d.clear();let H=!0,q=(S)=>{if(uZu(Q,S)){let R=u(S);if(!BZu(R))if(gb0(S))C(S,R,S.init);else throw Error("no atom init");return Dp(R)}let T=D(K,S);try{return Dp(T)}finally{if(H)EZu(K,Q,L,S,T);else{let R=gO();EZu(R,Q,L,S,T),l(R,Q,L),VK(R)}}},x,v,W={get signal(){if(!x)x=new AbortController;return x.signal},get setSelf(){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!cb0(Q))console.warn("setSelf function cannot be used with read-only atom");if(!v&&cb0(Q))v=(...S)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&H)console.warn("setSelf function cannot be called in sync");if(!H)return f(Q,...S)};return v}};try{let S=B(Q,q,W);if(C(Q,L,S),nb0(S)){(G=S.onCancel)==null||G.call(S,()=>x==null?void 0:x.abort());let T=()=>{if(L.m){let R=gO();l(R,Q,L),VK(R)}};S.then(T,T)}return L}catch(S){return delete L.v,L.e=S,delete L.x,++L.n,L}finally{H=!1}},F=(K)=>Dp(D(void 0,K)),U=(K,Q,G)=>{var L,H;let q=new Map;for(let x of((L=G.m)==null?void 0:L.t)||[]){let v=u(x);if(v.m)q.set(x,v)}for(let x of G.p)q.set(x,u(x));return(H=a83(K,Q))==null||H.forEach((x)=>{q.set(x,u(x))}),q},z=(K,Q,G)=>{let L=[],H=new Set,q=new Set,x=[[Q,G]];while(x.length>0){let[v,W]=x[x.length-1];if(q.has(v)){x.pop();continue}if(H.has(v)){L.push([v,W,W.n]),q.add(v),W.x=!0,x.pop();continue}H.add(v);for(let[S,T]of U(K,v,W))if(v!==S&&!H.has(S))x.push([S,T])}nO(K,"H",()=>{let v=new Set([Q]);for(let W=L.length-1;W>=0;--W){let[S,T,R]=L[W],Y=!1;for(let a of T.d.keys())if(a!==S&&v.has(a)){Y=!0;break}if(Y){if(D(K,S),l(K,S,T),R!==T.n)AZu(K,S,T),v.add(S)}delete T.x}})},k=(K,Q,...G)=>{let L=!0,H=(x)=>Dp(D(K,x)),q=(x,...v)=>{let W=u(x);try{if(uZu(Q,x)){if(!gb0(x))throw Error("atom not writable");let S=W.n,T=v[0];if(C(x,W,T),l(K,x,W),S!==W.n)AZu(K,x,W),z(K,x,W);return}else return k(K,x,...v)}finally{if(!L)VK(K)}};try{return E(Q,H,q,...G)}finally{L=!1}},f=(K,...Q)=>{let G=gO();try{return k(G,K,...Q)}finally{VK(G)}},l=(K,Q,G)=>{if(G.m&&!_b0(G.v)){for(let L of G.d.keys())if(!G.m.d.has(L))b(K,L,u(L)).t.add(Q),G.m.d.add(L);for(let L of G.m.d||[])if(!G.d.has(L)){G.m.d.delete(L);let H=M(K,L,u(L));H==null||H.t.delete(Q)}}},b=(K,Q,G)=>{if(!G.m){D(K,Q);for(let L of G.d.keys())b(K,L,u(L)).t.add(Q);if(G.m={l:new Set,d:new Set(G.d.keys()),t:new Set},cb0(Q)){let L=G.m,H,q=(x,v)=>{let W=!0;H=(...S)=>{try{return k(x,Q,...S)}finally{if(!W)VK(x)}};try{return v()}finally{W=!1}};nO(K,"L",()=>{let x=q(K,()=>A(Q,(...v)=>H(...v)));if(x)L.u=(v)=>q(v,x)})}}return G.m},M=(K,Q,G)=>{if(G.m&&!G.m.l.size&&!Array.from(G.m.t).some((L)=>{var H;return(H=u(L).m)==null?void 0:H.d.has(Q)})){let L=G.m.u;if(L)nO(K,"L",()=>L(K));delete G.m;for(let H of G.d.keys()){let q=M(K,H,u(H));q==null||q.t.delete(Q)}return}return G.m};return{get:F,set:f,sub:(K,Q)=>{let G=gO(),L=u(K),q=b(G,K,L).l;return q.add(Q),VK(G),()=>{q.delete(Q);let x=gO();M(x,K,L),VK(x)}},unstable_derive:(K)=>DZu(...K(u,B,E,A))}},V83=(u)=>{let B=new WeakMap,E=new Set,A,C=0,D=u.unstable_derive((z,k,f,l)=>{return A=z,[(b)=>{let M=B.get(b);if(!M){let Z=z(b);M=new Proxy(Z,{set(J,w,K){if(w==="m")E.add(b);return Reflect.set(J,w,K)},deleteProperty(J,w){if(w==="m")E.delete(b);return Reflect.deleteProperty(J,w)}}),B.set(b,M)}return M},k,(b,M,Z,...J)=>{if(C)return Z(b,...J);return f(b,M,Z,...J)},l]}),F=D.set;return Object.assign(D,{dev4_get_internal_weak_map:()=>({get:(z)=>{let k=A(z);if(k.n===0)return;return k}}),dev4_get_mounted_atoms:()=>E,dev4_restore_atoms:(z)=>{F({read:()=>null,write:(f,l)=>{++C;try{for(let[b,M]of z)if(gb0(b))l(b,M)}finally{--C}}})}})},QX=()=>{let u=new WeakMap,E=DZu((A)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!A)throw Error("Atom is undefined or null");let C=u.get(A);if(!C)C={d:new Map,p:new Set,n:0},u.set(A,C);return C},(A,...C)=>A.read(...C),(A,...C)=>A.write(...C),(A,...C)=>{var D;return(D=A.onMount)==null?void 0:D.call(A,...C)});if((import.meta.env?import.meta.env.MODE:void 0)!=="production")return V83(E);return E},_O,FZu=()=>{if(!_O){if(_O=QX(),(import.meta.env?import.meta.env.MODE:void 0)!=="production"){if(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=_O),globalThis.__JOTAI_DEFAULT_STORE__!==_O)console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044")}}return _O};var g7=Eu(Gu(),1);var h83=g7.createContext(void 0),GX=(u)=>{let B=g7.useContext(h83);return(u==null?void 0:u.store)||B||FZu()};var db0=(u)=>typeof(u==null?void 0:u.then)==="function",zZu=(u)=>{u.status="pending",u.then((B)=>{u.status="fulfilled",u.value=B},(B)=>{u.status="rejected",u.reason=B})},m83=g7.default.use||((u)=>{if(u.status==="pending")throw u;else if(u.status==="fulfilled")return u.value;else if(u.status==="rejected")throw u.reason;else throw zZu(u),u}),pb0=new WeakMap,UZu=(u)=>{let B=pb0.get(u);if(!B)B=new Promise((E,A)=>{let C=u,D=(z)=>(k)=>{if(C===z)E(k)},F=(z)=>(k)=>{if(C===z)A(k)},U=(z)=>{if("onCancel"in z&&typeof z.onCancel==="function")z.onCancel((k)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&k===z)throw Error("[Bug] p is not updated even after cancelation");if(db0(k))pb0.set(k,B),C=k,k.then(D(k),F(k)),U(k);else E(k)})};u.then(D(u),F(u)),U(u)}),pb0.set(u,B);return B};function sb0(u,B){let E=GX(B),[[A,C,D],F]=g7.useReducer((k)=>{let f=E.get(u);if(Object.is(k[0],f)&&k[1]===E&&k[2]===u)return k;return[f,E,u]},void 0,()=>[E.get(u),E,u]),U=A;if(C!==E||D!==u)F(),U=E.get(u);let z=B==null?void 0:B.delay;if(g7.useEffect(()=>{let k=E.sub(u,()=>{if(typeof z==="number"){let f=E.get(u);if(db0(f))zZu(UZu(f));setTimeout(F,z);return}F()});return F(),k},[E,u,z]),g7.useDebugValue(U),db0(U)){let k=UZu(U);return m83(k)}return U}function Up(u,B){let E=GX(B);return g7.useCallback((...C)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("write"in u))throw Error("not writable atom");return E.set(u,...C)},[E,u])}function ob0(u,B){return[sb0(u,B),Up(u,B)]}Mu();var uf=Eu(Gu(),1);var fZu=Eu(Gu(),1);var kZu=new WeakMap;function lZu(u,B){let E=GX(B),A=r83(E);for(let[C,D]of u)if(!A.has(C)||(B==null?void 0:B.dangerouslyForceHydrate))A.add(C),E.set(C,D)}var r83=(u)=>{let B=kZu.get(u);if(!B)B=new WeakSet,kZu.set(u,B);return B};function HX(){return HX=Object.assign?Object.assign.bind():function(u){for(var B=1;B<arguments.length;B++){var E=arguments[B];for(var A in E)if(Object.prototype.hasOwnProperty.call(E,A))u[A]=E[A]}return u},HX.apply(this,arguments)}function zp(){let u=uf.createContext(null);function B({store:F,initialValues:U=[],children:z}){let k=uf.useRef(F);if(!k.current)k.current=QX();return lZu(U,{store:k.current}),P(u.Provider,{value:k.current,children:z})}let E=(F)=>{let U=uf.useContext(u);if(!U)throw Error("Missing Provider from createIsolation");return GX(HX({store:U},F))};return{Provider:B,useStore:E,useAtom:(F,U)=>{let z=E();return ob0(F,HX({store:z},U))},useAtomValue:(F,U)=>{let z=E();return sb0(F,HX({store:z},U))},useSetAtom:(F,U)=>{let z=E();return Up(F,HX({store:z},U))}}}var{read:mX1,write:rX1}=I2(null);var $X1=uf.createContext({scope:void 0,baseStore:void 0});Mu();Mu();Mu();PT();bU();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();var vs=Eu(Gu(),1),msu=Eu(Gu(),1),i2=Eu(Gu(),1),eM=Eu(aE(),1),$D=Eu(Gu(),1),eA=Eu(Gu(),1),psu=Eu(Gu(),1),EZ=Eu(Gu(),1),Ss=Eu(Gu(),1),Ys=Eu(Gu(),1),Rs=Eu(Gu(),1);var w9=Eu(Gu(),1);function yU(u,B,{checkForDefaultPrevented:E=!0}={}){return function(C){if(u?.(C),E===!1||!C.defaultPrevented)return B?.(C)}}var aKu=Eu(Gu(),1);function iKu(u,B){if(typeof u==="function")return u(B);else if(u!==null&&u!==void 0)u.current=B}function ZJ0(...u){return(B)=>{let E=!1,A=u.map((C)=>{let D=iKu(C,B);if(!E&&typeof D=="function")E=!0;return D});if(E)return()=>{for(let C=0;C<A.length;C++){let D=A[C];if(typeof D=="function")D();else iKu(u[C],null)}}}}function VE(...u){return aKu.useCallback(ZJ0(...u),u)}Mu();var lf=Eu(Gu(),1);function Wd(u,B=[]){let E=[];function A(D,F){let U=lf.createContext(F),z=E.length;E=[...E,F];let k=(l)=>{let{scope:b,children:M,...Z}=l,J=b?.[u]?.[z]||U,w=lf.useMemo(()=>Z,Object.values(Z));return P(J.Provider,{value:w,children:M})};k.displayName=D+"Provider";function f(l,b){let M=b?.[u]?.[z]||U,Z=lf.useContext(M);if(Z)return Z;if(F!==void 0)return F;throw Error(`\`${l}\` must be used within \`${D}\``)}return[k,f]}let C=()=>{let D=E.map((F)=>{return lf.createContext(F)});return function(U){let z=U?.[u]||D;return lf.useMemo(()=>({[`__scope${u}`]:{...U,[u]:z}}),[U,z])}};return C.scopeName=u,[A,zC3(C,...B)]}function zC3(...u){let B=u[0];if(u.length===1)return B;let E=()=>{let A=u.map((C)=>({useScope:C(),scopeName:C.scopeName}));return function(D){let F=A.reduce((U,{useScope:z,scopeName:k})=>{let l=z(D)[`__scope${k}`];return{...U,...l}},{});return lf.useMemo(()=>({[`__scope${B.scopeName}`]:F}),[F])}};return E.scopeName=B.scopeName,E}var Y9=Eu(Gu(),1);var VKu=Eu(Gu(),1),hKu=Eu(aE(),1);var Z5=Eu(Gu(),1);Mu();var $I=Z5.forwardRef((u,B)=>{let{children:E,...A}=u,C=Z5.Children.toArray(E),D=C.find(fC3);if(D){let F=D.props.children,U=C.map((z)=>{if(z===D){if(Z5.Children.count(F)>1)return Z5.Children.only(null);return Z5.isValidElement(F)?F.props.children:null}else return z});return P(JJ0,{...A,ref:B,children:Z5.isValidElement(F)?Z5.cloneElement(F,void 0,U):null})}return P(JJ0,{...A,ref:B,children:E})});$I.displayName="Slot";var JJ0=Z5.forwardRef((u,B)=>{let{children:E,...A}=u;if(Z5.isValidElement(E)){let C=bC3(E),D=lC3(A,E.props);if(E.type!==Z5.Fragment)D.ref=B?ZJ0(B,C):C;return Z5.cloneElement(E,D)}return Z5.Children.count(E)>1?Z5.Children.only(null):null});JJ0.displayName="SlotClone";var kC3=({children:u})=>{return P(tu,{children:u})};function fC3(u){return Z5.isValidElement(u)&&u.type===kC3}function lC3(u,B){let E={...B};for(let A in B){let C=u[A],D=B[A];if(/^on[A-Z]/.test(A)){if(C&&D)E[A]=(...U)=>{D(...U),C(...U)};else if(C)E[A]=C}else if(A==="style")E[A]={...C,...D};else if(A==="className")E[A]=[C,D].filter(Boolean).join(" ")}return{...u,...E}}function bC3(u){let B=Object.getOwnPropertyDescriptor(u.props,"ref")?.get,E=B&&"isReactWarning"in B&&B.isReactWarning;if(E)return u.ref;if(B=Object.getOwnPropertyDescriptor(u,"ref")?.get,E=B&&"isReactWarning"in B&&B.isReactWarning,E)return u.props.ref;return u.props.ref||u.ref}Mu();var MC3=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],gB=MC3.reduce((u,B)=>{let E=VKu.forwardRef((A,C)=>{let{asChild:D,...F}=A,U=D?$I:B;if(typeof window<"u")window[Symbol.for("radix-ui")]=!0;return P(U,{...F,ref:C})});return E.displayName=`Primitive.${B}`,{...u,[B]:E}},{});function mKu(u,B){if(u)hKu.flushSync(()=>u.dispatchEvent(B))}var oX=Eu(Gu(),1);function hE(u){let B=oX.useRef(u);return oX.useEffect(()=>{B.current=u}),oX.useMemo(()=>(...E)=>B.current?.(...E),[])}var rKu=Eu(Gu(),1);function $Ku(u,B=globalThis?.document){let E=hE(u);rKu.useEffect(()=>{let A=(C)=>{if(C.key==="Escape")E(C)};return B.addEventListener("keydown",A,{capture:!0}),()=>B.removeEventListener("keydown",A,{capture:!0})},[E,B])}Mu();var ZC3="DismissableLayer",wJ0="dismissableLayer.update",JC3="dismissableLayer.pointerDownOutside",wC3="dismissableLayer.focusOutside",yKu,gKu=Y9.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),KJ0=Y9.forwardRef((u,B)=>{let{disableOutsidePointerEvents:E=!1,onEscapeKeyDown:A,onPointerDownOutside:C,onFocusOutside:D,onInteractOutside:F,onDismiss:U,...z}=u,k=Y9.useContext(gKu),[f,l]=Y9.useState(null),b=f?.ownerDocument??globalThis?.document,[,M]=Y9.useState({}),Z=VE(B,(x)=>l(x)),J=Array.from(k.layers),[w]=[...k.layersWithOutsidePointerEventsDisabled].slice(-1),K=J.indexOf(w),Q=f?J.indexOf(f):-1,G=k.layersWithOutsidePointerEventsDisabled.size>0,L=Q>=K,H=GC3((x)=>{let v=x.target,W=[...k.branches].some((S)=>S.contains(v));if(!L||W)return;if(C?.(x),F?.(x),!x.defaultPrevented)U?.()},b),q=HC3((x)=>{let v=x.target;if([...k.branches].some((S)=>S.contains(v)))return;if(D?.(x),F?.(x),!x.defaultPrevented)U?.()},b);return $Ku((x)=>{if(Q!==k.layers.size-1)return;if(A?.(x),!x.defaultPrevented&&U)x.preventDefault(),U()},b),Y9.useEffect(()=>{if(!f)return;if(E){if(k.layersWithOutsidePointerEventsDisabled.size===0)yKu=b.body.style.pointerEvents,b.body.style.pointerEvents="none";k.layersWithOutsidePointerEventsDisabled.add(f)}return k.layers.add(f),cKu(),()=>{if(E&&k.layersWithOutsidePointerEventsDisabled.size===1)b.body.style.pointerEvents=yKu}},[f,b,E,k]),Y9.useEffect(()=>{return()=>{if(!f)return;k.layers.delete(f),k.layersWithOutsidePointerEventsDisabled.delete(f),cKu()}},[f,k]),Y9.useEffect(()=>{let x=()=>M({});return document.addEventListener(wJ0,x),()=>document.removeEventListener(wJ0,x)},[]),P(gB.div,{...z,ref:Z,style:{pointerEvents:G?L?"auto":"none":void 0,...u.style},onFocusCapture:yU(u.onFocusCapture,q.onFocusCapture),onBlurCapture:yU(u.onBlurCapture,q.onBlurCapture),onPointerDownCapture:yU(u.onPointerDownCapture,H.onPointerDownCapture)})});KJ0.displayName=ZC3;var KC3="DismissableLayerBranch",QC3=Y9.forwardRef((u,B)=>{let E=Y9.useContext(gKu),A=Y9.useRef(null),C=VE(B,A);return Y9.useEffect(()=>{let D=A.current;if(D)return E.branches.add(D),()=>{E.branches.delete(D)}},[E.branches]),P(gB.div,{...u,ref:C})});QC3.displayName=KC3;function GC3(u,B=globalThis?.document){let E=hE(u),A=Y9.useRef(!1),C=Y9.useRef(()=>{});return Y9.useEffect(()=>{let D=(U)=>{if(U.target&&!A.current){let k=function(){_Ku(JC3,E,f,{discrete:!0})};var z=k;let f={originalEvent:U};if(U.pointerType==="touch")B.removeEventListener("click",C.current),C.current=k,B.addEventListener("click",C.current,{once:!0});else k()}else B.removeEventListener("click",C.current);A.current=!1},F=window.setTimeout(()=>{B.addEventListener("pointerdown",D)},0);return()=>{window.clearTimeout(F),B.removeEventListener("pointerdown",D),B.removeEventListener("click",C.current)}},[B,E]),{onPointerDownCapture:()=>A.current=!0}}function HC3(u,B=globalThis?.document){let E=hE(u),A=Y9.useRef(!1);return Y9.useEffect(()=>{let C=(D)=>{if(D.target&&!A.current)_Ku(wC3,E,{originalEvent:D},{discrete:!1})};return B.addEventListener("focusin",C),()=>B.removeEventListener("focusin",C)},[B,E]),{onFocusCapture:()=>A.current=!0,onBlurCapture:()=>A.current=!1}}function cKu(){let u=new CustomEvent(wJ0);document.dispatchEvent(u)}function _Ku(u,B,E,{discrete:A}){let C=E.originalEvent.target,D=new CustomEvent(u,{bubbles:!1,cancelable:!0,detail:E});if(B)C.addEventListener(u,B,{once:!0});if(A)mKu(C,D);else C.dispatchEvent(D)}var pKu=Eu(Gu(),1),QJ0=0;function dKu(){pKu.useEffect(()=>{let u=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",u[0]??nKu()),document.body.insertAdjacentElement("beforeend",u[1]??nKu()),QJ0++,()=>{if(QJ0===1)document.querySelectorAll("[data-radix-focus-guard]").forEach((B)=>B.remove());QJ0--}},[])}function nKu(){let u=document.createElement("span");return u.setAttribute("data-radix-focus-guard",""),u.tabIndex=0,u.style.outline="none",u.style.opacity="0",u.style.position="fixed",u.style.pointerEvents="none",u}var pA=Eu(Gu(),1);Mu();var GJ0="focusScope.autoFocusOnMount",HJ0="focusScope.autoFocusOnUnmount",sKu={bubbles:!1,cancelable:!0},LC3="FocusScope",LJ0=pA.forwardRef((u,B)=>{let{loop:E=!1,trapped:A=!1,onMountAutoFocus:C,onUnmountAutoFocus:D,...F}=u,[U,z]=pA.useState(null),k=hE(C),f=hE(D),l=pA.useRef(null),b=VE(B,(J)=>z(J)),M=pA.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;pA.useEffect(()=>{if(A){let Q=function(q){if(M.paused||!U)return;let x=q.target;if(U.contains(x))l.current=x;else rM(l.current,{select:!0})},G=function(q){if(M.paused||!U)return;let x=q.relatedTarget;if(x===null)return;if(!U.contains(x))rM(l.current,{select:!0})},L=function(q){if(document.activeElement!==document.body)return;for(let v of q)if(v.removedNodes.length>0)rM(U)};var J=Q,w=G,K=L;document.addEventListener("focusin",Q),document.addEventListener("focusout",G);let H=new MutationObserver(L);if(U)H.observe(U,{childList:!0,subtree:!0});return()=>{document.removeEventListener("focusin",Q),document.removeEventListener("focusout",G),H.disconnect()}}},[A,U,M.paused]),pA.useEffect(()=>{if(U){tKu.add(M);let J=document.activeElement;if(!U.contains(J)){let K=new CustomEvent(GJ0,sKu);if(U.addEventListener(GJ0,k),U.dispatchEvent(K),!K.defaultPrevented){if(qC3(WC3(uQu(U)),{select:!0}),document.activeElement===J)rM(U)}}return()=>{U.removeEventListener(GJ0,k),setTimeout(()=>{let K=new CustomEvent(HJ0,sKu);if(U.addEventListener(HJ0,f),U.dispatchEvent(K),!K.defaultPrevented)rM(J??document.body,{select:!0});U.removeEventListener(HJ0,f),tKu.remove(M)},0)}}},[U,k,f,M]);let Z=pA.useCallback((J)=>{if(!E&&!A)return;if(M.paused)return;let w=J.key==="Tab"&&!J.altKey&&!J.ctrlKey&&!J.metaKey,K=document.activeElement;if(w&&K){let Q=J.currentTarget,[G,L]=XC3(Q);if(!(G&&L)){if(K===Q)J.preventDefault()}else if(!J.shiftKey&&K===L){if(J.preventDefault(),E)rM(G,{select:!0})}else if(J.shiftKey&&K===G){if(J.preventDefault(),E)rM(L,{select:!0})}}},[E,A,M.paused]);return P(gB.div,{tabIndex:-1,...F,ref:b,onKeyDown:Z})});LJ0.displayName=LC3;function qC3(u,{select:B=!1}={}){let E=document.activeElement;for(let A of u)if(rM(A,{select:B}),document.activeElement!==E)return}function XC3(u){let B=uQu(u),E=oKu(B,u),A=oKu(B.reverse(),u);return[E,A]}function uQu(u){let B=[],E=document.createTreeWalker(u,NodeFilter.SHOW_ELEMENT,{acceptNode:(A)=>{let C=A.tagName==="INPUT"&&A.type==="hidden";if(A.disabled||A.hidden||C)return NodeFilter.FILTER_SKIP;return A.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});while(E.nextNode())B.push(E.currentNode);return B}function oKu(u,B){for(let E of u)if(!xC3(E,{upTo:B}))return E}function xC3(u,{upTo:B}){if(getComputedStyle(u).visibility==="hidden")return!0;while(u){if(B!==void 0&&u===B)return!1;if(getComputedStyle(u).display==="none")return!0;u=u.parentElement}return!1}function vC3(u){return u instanceof HTMLInputElement&&"select"in u}function rM(u,{select:B=!1}={}){if(u&&u.focus){let E=document.activeElement;if(u.focus({preventScroll:!0}),u!==E&&vC3(u)&&B)u.select()}}var tKu=SC3();function SC3(){let u=[];return{add(B){let E=u[0];if(B!==E)E?.pause();u=eKu(u,B),u.unshift(B)},remove(B){u=eKu(u,B),u[0]?.resume()}}}function eKu(u,B){let E=[...u],A=E.indexOf(B);if(A!==-1)E.splice(A,1);return E}function WC3(u){return u.filter((B)=>B.tagName!=="A")}var qJ0=Eu(Gu(),1);var BQu=Eu(Gu(),1),dA=Boolean(globalThis?.document)?BQu.useLayoutEffect:()=>{};var YC3=qJ0["useId".toString()]||(()=>{return}),RC3=0;function EQu(u){let[B,E]=qJ0.useState(YC3());return dA(()=>{if(!u)E((A)=>A??String(RC3++))},[u]),u||(B?`radix-${B}`:"")}var mE=Eu(Gu(),1);var DQu=["top","right","bottom","left"];var{min:cU,max:RD,round:cI,floor:gI}=Math,gU=(u)=>({x:u,y:u}),TC3={left:"right",right:"left",bottom:"top",top:"bottom"};function XJ0(u,B,E){return RD(u,cU(B,E))}function _U(u,B){return typeof u==="function"?u(B):u}function bf(u){return u.split("-")[0]}function BQ(u){return u.split("-")[1]}function Rd(u){return u==="x"?"y":"x"}function Td(u){return u==="y"?"height":"width"}function TD(u){let B=u[0];return B==="t"||B==="b"?"y":"x"}function Od(u){return Rd(TD(u))}function FQu(u,B,E){if(E===void 0)E=!1;let A=BQ(u),C=Od(u),D=Td(C),F=C==="x"?A===(E?"end":"start")?"right":"left":A==="start"?"bottom":"top";if(B.reference[D]>B.floating[D])F=yI(F);return[F,yI(F)]}function UQu(u){let B=yI(u);return[Yd(u),B,Yd(B)]}function Yd(u){return u.includes("start")?u.replace("start","end"):u.replace("end","start")}var AQu=["left","right"],CQu=["right","left"],OC3=["top","bottom"],IC3=["bottom","top"];function PC3(u,B,E){switch(u){case"top":case"bottom":if(E)return B?CQu:AQu;return B?AQu:CQu;case"left":case"right":return B?OC3:IC3;default:return[]}}function zQu(u,B,E,A){let C=BQ(u),D=PC3(bf(u),E==="start",A);if(C){if(D=D.map((F)=>F+"-"+C),B)D=D.concat(D.map(Yd))}return D}function yI(u){let B=bf(u);return TC3[B]+u.slice(B.length)}function jC3(u){var B,E,A,C;return{top:(B=u.top)!=null?B:0,right:(E=u.right)!=null?E:0,bottom:(A=u.bottom)!=null?A:0,left:(C=u.left)!=null?C:0}}function xJ0(u){return typeof u!=="number"?jC3(u):{top:u,right:u,bottom:u,left:u}}function EQ(u){let{x:B,y:E,width:A,height:C}=u;return{width:A,height:C,top:E,left:B,right:B+A,bottom:E+C,x:B,y:E}}function kQu(u,B,E){let{reference:A,floating:C}=u,D=TD(B),F=Od(B),U=Td(F),z=bf(B),k=D==="y",f=A.x+A.width/2-C.width/2,l=A.y+A.height/2-C.height/2,b=A[U]/2-C[U]/2,M;switch(z){case"top":M={x:f,y:A.y-C.height};break;case"bottom":M={x:f,y:A.y+A.height};break;case"right":M={x:A.x+A.width,y:l};break;case"left":M={x:A.x-C.width,y:l};break;default:M={x:A.x,y:A.y}}let Z=BQ(B);if(Z)M[F]+=b*(Z==="end"?1:-1)*(E&&k?-1:1);return M}async function bQu(u,B){var E;if(B===void 0)B={};let{x:A,y:C,platform:D,rects:F,elements:U,strategy:z}=u,{boundary:k="clippingAncestors",rootBoundary:f="viewport",elementContext:l="floating",altBoundary:b=!1,padding:M=0}=_U(B,u),Z=xJ0(M),w=U[b?l==="floating"?"reference":"floating":l],K=EQ(await D.getClippingRect({element:((E=await(D.isElement==null?void 0:D.isElement(w)))!=null?E:!0)?w:w.contextElement||await(D.getDocumentElement==null?void 0:D.getDocumentElement(U.floating)),boundary:k,rootBoundary:f,strategy:z})),Q=l==="floating"?{x:A,y:C,width:F.floating.width,height:F.floating.height}:F.reference,G=await(D.getOffsetParent==null?void 0:D.getOffsetParent(U.floating)),L=await(D.isElement==null?void 0:D.isElement(G))&&await(D.getScale==null?void 0:D.getScale(G))||{x:1,y:1},H=EQ(D.convertOffsetParentRelativeRectToViewportRelativeRect?await D.convertOffsetParentRelativeRectToViewportRelativeRect({elements:U,rect:Q,offsetParent:G,strategy:z}):Q);return{top:(K.top-H.top+Z.top)/L.y,bottom:(H.bottom-K.bottom+Z.bottom)/L.y,left:(K.left-H.left+Z.left)/L.x,right:(H.right-K.right+Z.right)/L.x}}var NC3=50,MQu=async(u,B,E)=>{let{placement:A="bottom",strategy:C="absolute",middleware:D=[],platform:F}=E,U=F.detectOverflow?F:{...F,detectOverflow:bQu},z=await(F.isRTL==null?void 0:F.isRTL(B)),k=await F.getElementRects({reference:u,floating:B,strategy:C}),{x:f,y:l}=kQu(k,A,z),b=A,M=0,Z={};for(let J=0;J<D.length;J++){let w=D[J];if(!w)continue;let{name:K,fn:Q}=w,{x:G,y:L,data:H,reset:q}=await Q({x:f,y:l,initialPlacement:A,placement:b,strategy:C,middlewareData:Z,rects:k,platform:U,elements:{reference:u,floating:B}});if(f=G!=null?G:f,l=L!=null?L:l,Z[K]={...Z[K],...H},q&&M<NC3){if(M++,typeof q==="object"){if(q.placement)b=q.placement;if(q.rects)k=q.rects===!0?await F.getElementRects({reference:u,floating:B,strategy:C}):q.rects;({x:f,y:l}=kQu(k,b,z))}J=-1}}return{x:f,y:l,placement:b,strategy:C,middlewareData:Z}},ZQu=(u)=>({name:"arrow",options:u,async fn(B){let{x:E,y:A,placement:C,rects:D,platform:F,elements:U,middlewareData:z}=B,{element:k,padding:f=0}=_U(u,B)||{};if(k==null)return{};let l=xJ0(f),b={x:E,y:A},M=Od(C),Z=Td(M),J=await F.getDimensions(k),w=M==="y",K=w?"top":"left",Q=w?"bottom":"right",G=w?"clientHeight":"clientWidth",L=D.reference[Z]+D.reference[M]-b[M]-D.floating[Z],H=b[M]-D.reference[M],q=await(F.getOffsetParent==null?void 0:F.getOffsetParent(k)),x=q?q[G]:0;if(!x||!await(F.isElement==null?void 0:F.isElement(q)))x=U.floating[G]||D.floating[Z];let v=L/2-H/2,W=x/2-J[Z]/2-1,S=cU(l[K],W),T=cU(l[Q],W),R=x-J[Z]-T,Y=x/2-J[Z]/2+v,a=XJ0(S,Y,R),I=!z.arrow&&BQ(C)!=null&&Y!==a&&D.reference[Z]/2-(Y<S?S:T)-J[Z]/2<0,O=I?Y<S?Y-S:Y-R:0;return{[M]:b[M]+O,data:{[M]:a,centerOffset:Y-a-O,...I&&{alignmentOffset:O}},reset:I}}});var JQu=function(u){if(u===void 0)u={};return{name:"flip",options:u,async fn(B){var E,A;let{placement:C,middlewareData:D,rects:F,initialPlacement:U,platform:z,elements:k}=B,{mainAxis:f=!0,crossAxis:l=!0,fallbackPlacements:b,fallbackStrategy:M="bestFit",fallbackAxisSideDirection:Z="none",flipAlignment:J=!0,...w}=_U(u,B);if((E=D.arrow)!=null&&E.alignmentOffset)return{};let K=bf(C),Q=TD(U),G=bf(U)===U,L=await(z.isRTL==null?void 0:z.isRTL(k.floating)),H=b||(G||!J?[yI(U)]:UQu(U)),q=Z!=="none";if(!b&&q)H.push(...zQu(U,J,Z,L));let x=[U,...H],v=await z.detectOverflow(B,w),W=[],S=((A=D.flip)==null?void 0:A.overflows)||[];if(f)W.push(v[K]);if(l){let a=FQu(C,F,L);W.push(v[a[0]],v[a[1]])}if(S=[...S,{placement:C,overflows:W}],!W.every((a)=>a<=0)){var T,R;let a=(((T=D.flip)==null?void 0:T.index)||0)+1,I=x[a];if(I){if(!(l==="alignment"?Q!==TD(I):!1)||S.every((N)=>TD(N.placement)===Q?N.overflows[0]>0:!0))return{data:{index:a,overflows:S},reset:{placement:I}}}let O=(R=S.filter((i)=>i.overflows[0]<=0).sort((i,N)=>i.overflows[1]-N.overflows[1])[0])==null?void 0:R.placement;if(!O)switch(M){case"bestFit":{var Y;let i=(Y=S.filter((N)=>{if(q){let V=TD(N.placement);return V===Q||V==="y"}return!0}).map((N)=>[N.placement,N.overflows.filter((V)=>V>0).reduce((V,h)=>V+h,0)]).sort((N,V)=>N[1]-V[1])[0])==null?void 0:Y[0];if(i)O=i;break}case"initialPlacement":O=U;break}if(C!==O)return{reset:{placement:O}}}return{}}}};function fQu(u,B){return{top:u.top-B.height,right:u.right-B.width,bottom:u.bottom-B.height,left:u.left-B.width}}function lQu(u){return DQu.some((B)=>u[B]>=0)}var wQu=function(u){if(u===void 0)u={};return{name:"hide",options:u,async fn(B){let{rects:E,platform:A}=B,{strategy:C="referenceHidden",...D}=_U(u,B);switch(C){case"referenceHidden":{let F=await A.detectOverflow(B,{...D,elementContext:"reference"}),U=fQu(F,E.reference);return{data:{referenceHiddenOffsets:U,referenceHidden:lQu(U)}}}case"escaped":{let F=await A.detectOverflow(B,{...D,altBoundary:!0}),U=fQu(F,E.floating);return{data:{escapedOffsets:U,escaped:lQu(U)}}}default:return{}}}}};var KQu=new Set(["left","top"]);async function iC3(u,B){let{placement:E,platform:A,elements:C}=u,D=await(A.isRTL==null?void 0:A.isRTL(C.floating)),F=bf(E),U=BQ(E),z=TD(E)==="y",k=KQu.has(F)?-1:1,f=D&&z?-1:1,l=_U(B,u),{mainAxis:b,crossAxis:M,alignmentAxis:Z}=typeof l==="number"?{mainAxis:l,crossAxis:0,alignmentAxis:null}:{mainAxis:l.mainAxis||0,crossAxis:l.crossAxis||0,alignmentAxis:l.alignmentAxis};if(U&&typeof Z==="number")M=U==="end"?Z*-1:Z;return z?{x:M*f,y:b*k}:{x:b*k,y:M*f}}var QQu=function(u){if(u===void 0)u=0;return{name:"offset",options:u,async fn(B){var E,A;let{x:C,y:D,placement:F,middlewareData:U}=B,z=await iC3(B,u);if(F===((E=U.offset)==null?void 0:E.placement)&&(A=U.arrow)!=null&&A.alignmentOffset)return{};return{x:C+z.x,y:D+z.y,data:{...z,placement:F}}}}},GQu=function(u){if(u===void 0)u={};return{name:"shift",options:u,async fn(B){let{x:E,y:A,placement:C,platform:D}=B,{mainAxis:F=!0,crossAxis:U=!1,limiter:z={fn:(Q)=>{let{x:G,y:L}=Q;return{x:G,y:L}}},...k}=_U(u,B),f={x:E,y:A},l=await D.detectOverflow(B,k),b=TD(C),M=Rd(b),Z=f[M],J=f[b],w=(Q,G)=>XJ0(G+l[Q==="y"?"top":"left"],G,G-l[Q==="y"?"bottom":"right"]);if(F)Z=w(M,Z);if(U)J=w(b,J);let K=z.fn({...B,[M]:Z,[b]:J});return{...K,data:{x:K.x-E,y:K.y-A,enabled:{[M]:F,[b]:U}}}}}},HQu=function(u){if(u===void 0)u={};return{options:u,fn(B){var E,A;let{x:C,y:D,placement:F,rects:U,middlewareData:z}=B,{offset:k=0,mainAxis:f=!0,crossAxis:l=!0}=_U(u,B),b={x:C,y:D},M=TD(F),Z=Rd(M),J=b[Z],w=b[M],K=_U(k,B),Q=typeof K==="number"?{mainAxis:K,crossAxis:0}:{mainAxis:(E=K.mainAxis)!=null?E:0,crossAxis:(A=K.crossAxis)!=null?A:0};if(f){let H=Z==="y"?"height":"width",q=U.reference[Z]-U.floating[H]+Q.mainAxis,x=U.reference[Z]+U.reference[H]-Q.mainAxis;if(J<q)J=q;else if(J>x)J=x}if(l){var G,L;let H=Z==="y"?"width":"height",q=KQu.has(bf(F)),x=U.reference[M]-U.floating[H]+(q?((G=z.offset)==null?void 0:G[M])||0:0)+(q?0:Q.crossAxis),v=U.reference[M]+U.reference[H]+(q?0:((L=z.offset)==null?void 0:L[M])||0)-(q?Q.crossAxis:0);if(w<x)w=x;else if(w>v)w=v}return{[Z]:J,[M]:w}}}},LQu=function(u){if(u===void 0)u={};return{name:"size",options:u,async fn(B){let{placement:E,rects:A,platform:C,elements:D}=B,{apply:F=()=>{},...U}=_U(u,B),z=await C.detectOverflow(B,U),k=bf(E),f=BQ(E),l=TD(E)==="y",{width:b,height:M}=A.floating,Z,J;if(k==="top"||k==="bottom")Z=k,J=f===(await(C.isRTL==null?void 0:C.isRTL(D.floating))?"start":"end")?"left":"right";else J=k,Z=f==="end"?"top":"bottom";let w=M-z.top-z.bottom,K=b-z.left-z.right,Q=cU(M-z[Z],w),G=cU(b-z[J],K),L=B.middlewareData.shift,H=!L,q=Q,x=G;if(L!=null&&L.enabled.x)x=K;if(L!=null&&L.enabled.y)q=w;if(H&&!f)if(l)x=b-2*RD(z.left,z.right);else q=M-2*RD(z.top,z.bottom);await F({...B,availableWidth:x,availableHeight:q});let v=await C.getDimensions(D.floating);if(b!==v.width||M!==v.height)return{reset:{rects:!0}};return{}}}};function Id(){return typeof window<"u"}function DQ(u){if(XQu(u))return(u.nodeName||"").toLowerCase();return"#document"}function _B(u){var B;return(u==null||(B=u.ownerDocument)==null?void 0:B.defaultView)||window}function nU(u){var B;return(B=(XQu(u)?u.ownerDocument:u.document)||window.document)==null?void 0:B.documentElement}function XQu(u){if(!Id())return!1;return u instanceof Node||u instanceof _B(u).Node}function OD(u){if(!Id())return!1;return u instanceof Element||u instanceof _B(u).Element}function Mf(u){if(!Id())return!1;return u instanceof HTMLElement||u instanceof _B(u).HTMLElement}function qQu(u){if(!Id()||typeof ShadowRoot>"u")return!1;return u instanceof ShadowRoot||u instanceof _B(u).ShadowRoot}function _I(u){let{overflow:B,overflowX:E,overflowY:A,display:C}=ID(u);return/auto|scroll|overlay|hidden|clip/.test(B+A+E)&&C!=="inline"&&C!=="contents"}function xQu(u){return/^(table|td|th)$/.test(DQ(u))}function nI(u){try{if(u.matches(":popover-open"))return!0}catch(B){}try{return u.matches(":modal")}catch(B){return!1}}var aC3=/transform|translate|scale|rotate|perspective|filter/,VC3=/paint|layout|strict|content/,AQ=(u)=>!!u&&u!=="none",vJ0;function Pd(u){let B=OD(u)?ID(u):u;return AQ(B.transform)||AQ(B.translate)||AQ(B.scale)||AQ(B.rotate)||AQ(B.perspective)||!jd()&&(AQ(B.backdropFilter)||AQ(B.filter))||aC3.test(B.willChange||"")||VC3.test(B.contain||"")}function vQu(u){let B=$M(u);while(Mf(B)&&!tX(B)){if(Pd(B))return B;else if(nI(B))return null;B=$M(B)}return null}function jd(){if(vJ0==null)vJ0=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none");return vJ0}function tX(u){return/^(html|body|#document)$/.test(DQ(u))}function ID(u){return _B(u).getComputedStyle(u)}function pI(u){if(OD(u))return{scrollLeft:u.scrollLeft,scrollTop:u.scrollTop};return{scrollLeft:u.scrollX,scrollTop:u.scrollY}}function $M(u){if(DQ(u)==="html")return u;let B=u.assignedSlot||u.parentNode||qQu(u)&&u.host||nU(u);return qQu(B)?B.host:B}function SQu(u){let B=$M(u);if(tX(B))return(u.ownerDocument||u).body;if(Mf(B)&&_I(B))return B;return SQu(B)}function CQ(u,B,E){var A;if(B===void 0)B=[];if(E===void 0)E=!0;let C=SQu(u),D=C===((A=u.ownerDocument)==null?void 0:A.body),F=_B(C);if(D){let U=Nd(F);return B.concat(F,F.visualViewport||[],_I(C)?C:[],U&&E?CQ(U):[])}else return B.concat(C,CQ(C,[],E))}function Nd(u){return u.parent&&Object.getPrototypeOf(u.parent)?u.frameElement:null}function RQu(u){let B=ID(u),E=parseFloat(B.width)||0,A=parseFloat(B.height)||0,C=Mf(u),D=C?u.offsetWidth:E,F=C?u.offsetHeight:A,U=cI(E)!==D||cI(A)!==F;if(U)E=D,A=F;return{width:E,height:A,$:U}}function WJ0(u){return!OD(u)?u.contextElement:u}function eX(u){let B=WJ0(u);if(!Mf(B))return gU(1);let E=B.getBoundingClientRect(),{width:A,height:C,$:D}=RQu(B),F=(D?cI(E.width):E.width)/A,U=(D?cI(E.height):E.height)/C;if(!F||!Number.isFinite(F))F=1;if(!U||!Number.isFinite(U))U=1;return{x:F,y:U}}var hC3=gU(0);function TQu(u){let B=_B(u);if(!jd()||!B.visualViewport)return hC3;return{x:B.visualViewport.offsetLeft,y:B.visualViewport.offsetTop}}function mC3(u,B,E){if(B===void 0)B=!1;return!!E&&B&&E===_B(u)}function FQ(u,B,E,A){if(B===void 0)B=!1;if(E===void 0)E=!1;let C=u.getBoundingClientRect(),D=WJ0(u),F=gU(1);if(B)if(A){if(OD(A))F=eX(A)}else F=eX(u);let U=mC3(D,E,A)?TQu(D):gU(0),z=(C.left+U.x)/F.x,k=(C.top+U.y)/F.y,f=C.width/F.x,l=C.height/F.y;if(D&&A){let b=_B(D),M=OD(A)?_B(A):A,Z=b,J=Nd(Z);while(J&&M!==Z){let w=eX(J),K=J.getBoundingClientRect(),Q=ID(J),G=K.left+(J.clientLeft+parseFloat(Q.paddingLeft))*w.x,L=K.top+(J.clientTop+parseFloat(Q.paddingTop))*w.y;z*=w.x,k*=w.y,f*=w.x,l*=w.y,z+=G,k+=L,Z=_B(J),J=Nd(Z)}}return EQ({width:f,height:l,x:z,y:k})}function id(u,B){let E=pI(u).scrollLeft;if(!B)return FQ(nU(u)).left+E;return B.left+E}function OQu(u,B){let E=u.getBoundingClientRect(),A=E.left+B.scrollLeft-id(u,E),C=E.top+B.scrollTop;return{x:A,y:C}}function rC3(u){let{elements:B,rect:E,offsetParent:A,strategy:C}=u,D=C==="fixed",F=nU(A),U=B?nI(B.floating):!1;if(A===F||U&&D)return E;let z={scrollLeft:0,scrollTop:0},k=gU(1),f=gU(0),l=Mf(A);if(l||!D){if(DQ(A)!=="body"||_I(F))z=pI(A);if(l){let M=FQ(A);k=eX(A),f.x=M.x+A.clientLeft,f.y=M.y+A.clientTop}}let b=F&&!l&&!D?OQu(F,z):gU(0);return{width:E.width*k.x,height:E.height*k.y,x:E.x*k.x-z.scrollLeft*k.x+f.x+b.x,y:E.y*k.y-z.scrollTop*k.y+f.y+b.y}}function $C3(u){return u.getClientRects?Array.from(u.getClientRects()):[]}function yC3(u){let B=pI(u),E=u.ownerDocument.body,A=RD(u.scrollWidth,u.clientWidth,E.scrollWidth,E.clientWidth),C=RD(u.scrollHeight,u.clientHeight,E.scrollHeight,E.clientHeight),D=-B.scrollLeft+id(u),F=-B.scrollTop;if(ID(E).direction==="rtl")D+=RD(u.clientWidth,E.clientWidth)-A;return{width:A,height:C,x:D,y:F}}var cC3=25;function gC3(u,B,E){if(E===void 0)E="viewport";let A=E==="layoutViewport",C=_B(u),D=nU(u),F=C.visualViewport,U=D.clientWidth,z=D.clientHeight,k=0,f=0;if(F){let b=!jd()||B==="fixed";if(A){if(!b)k=-F.offsetLeft,f=-F.offsetTop}else if(U=F.width,z=F.height,b)k=F.offsetLeft,f=F.offsetTop}if(id(D)<=0){let b=D.ownerDocument,M=b.body,Z=getComputedStyle(M),J=b.compatMode==="CSS1Compat"?parseFloat(Z.marginLeft)+parseFloat(Z.marginRight)||0:0,w=Math.abs(D.clientWidth-M.clientWidth-J),K=getComputedStyle(D).scrollbarGutter==="stable both-edges"?w/2:w;if(K<=cC3)U-=K}return{width:U,height:z,x:k,y:f}}function _C3(u,B){let E=FQ(u,!0,B==="fixed"),A=E.top+u.clientTop,C=E.left+u.clientLeft,D=eX(u),F=u.clientWidth*D.x,U=u.clientHeight*D.y,z=C*D.x,k=A*D.y;return{width:F,height:U,x:z,y:k}}function WQu(u,B,E){let A;if(B==="viewport"||B==="layoutViewport")A=gC3(u,E,B);else if(B==="document")A=yC3(nU(u));else if(OD(B))A=_C3(B,E);else{let C=TQu(u);A={x:B.x-C.x,y:B.y-C.y,width:B.width,height:B.height}}return EQ(A)}function nC3(u,B){let E=B.get(u);if(E)return E;let A=CQ(u,[],!1).filter((U)=>OD(U)&&DQ(U)!=="body"),C=null,D=ID(u).position==="fixed",F=D?$M(u):u;while(OD(F)&&!tX(F)){let U=ID(F),z=Pd(F),k=C?C.position:D?"fixed":"";if(!z&&(k==="fixed"||k==="absolute"&&U.position==="static"))A=A.filter((l)=>l!==F);else C=U;F=$M(F)}return B.set(u,A),A}function pC3(u){let{element:B,boundary:E,rootBoundary:A,strategy:C}=u,F=[...E==="clippingAncestors"?nI(B)?[]:nC3(B,this._c):[].concat(E),A],U=WQu(B,F[0],C),z=U.top,k=U.right,f=U.bottom,l=U.left;for(let b=1;b<F.length;b++){let M=WQu(B,F[b],C);z=RD(M.top,z),k=cU(M.right,k),f=cU(M.bottom,f),l=RD(M.left,l)}return{width:k-l,height:f-z,x:l,y:z}}function dC3(u){let{width:B,height:E}=RQu(u);return{width:B,height:E}}function sC3(u,B,E){let A=Mf(B),C=nU(B),D=E==="fixed",F=FQ(u,!0,D,B),U={scrollLeft:0,scrollTop:0},z=gU(0);if(A||!D){if(DQ(B)!=="body"||_I(C))U=pI(B);if(A){let b=FQ(B,!0,D,B);z.x=b.x+B.clientLeft,z.y=b.y+B.clientTop}}if(!A&&C)z.x=id(C);let k=C&&!A&&!D?OQu(C,U):gU(0),f=F.left+U.scrollLeft-z.x-k.x,l=F.top+U.scrollTop-z.y-k.y;return{x:f,y:l,width:F.width,height:F.height}}function SJ0(u){return ID(u).position==="static"}function YQu(u,B){if(!Mf(u)||ID(u).position==="fixed")return null;if(B)return B(u);let E=u.offsetParent;if(nU(u)===E)E=E.ownerDocument.body;return E}function IQu(u,B){let E=_B(u);if(nI(u))return E;if(!Mf(u)){let C=$M(u);while(C&&!tX(C)){if(OD(C)&&!SJ0(C))return C;C=$M(C)}return E}let A=YQu(u,B);while(A&&xQu(A)&&SJ0(A))A=YQu(A,B);if(A&&tX(A)&&SJ0(A)&&!Pd(A))return E;return A||vQu(u)||E}var oC3=async function(u){let B=this.getOffsetParent||IQu,E=this.getDimensions,A=await E(u.floating);return{reference:sC3(u.reference,await B(u.floating),u.strategy),floating:{x:0,y:0,width:A.width,height:A.height}}};function tC3(u){return ID(u).direction==="rtl"}var PQu={convertOffsetParentRelativeRectToViewportRelativeRect:rC3,getDocumentElement:nU,getClippingRect:pC3,getOffsetParent:IQu,getElementRects:oC3,getClientRects:$C3,getDimensions:dC3,getScale:eX,isElement:OD,isRTL:tC3};function jQu(u,B){return u.x===B.x&&u.y===B.y&&u.width===B.width&&u.height===B.height}function eC3(u,B,E){let A=null,C,D=nU(u);function F(){var f;clearTimeout(C),(f=A)==null||f.disconnect(),A=null}function U(f,l){if(f===void 0)f=!1;if(l===void 0)l=1;F();let b=u.getBoundingClientRect(),{left:M,top:Z,width:J,height:w}=b;if(!f)B();if(!J||!w)return;let K=gI(Z),Q=gI(D.clientWidth-(M+J)),G=gI(D.clientHeight-(Z+w)),L=gI(M),q={rootMargin:-K+"px "+-Q+"px "+-G+"px "+-L+"px",threshold:RD(0,cU(1,l))||1},x=!0;function v(W){let S=W[0].intersectionRatio;if(!jQu(b,u.getBoundingClientRect()))return U();if(S!==l){if(!x)return U();if(!S)C=setTimeout(()=>{U(!1,0.0000001)},1000);else U(!1,S)}x=!1}try{A=new IntersectionObserver(v,{...q,root:D.ownerDocument})}catch(W){A=new IntersectionObserver(v,q)}A.observe(u)}let z=_B(u),k=()=>U(E);return z.addEventListener("resize",k),U(!0),()=>{z.removeEventListener("resize",k),F()}}function YJ0(u,B,E,A){if(A===void 0)A={};let{ancestorScroll:C=!0,ancestorResize:D=!0,elementResize:F=typeof ResizeObserver==="function",layoutShift:U=typeof IntersectionObserver==="function",animationFrame:z=!1}=A,k=WJ0(u),f=C||D?[...k?CQ(k):[],...B?CQ(B):[]]:[];f.forEach((K)=>{C&&K.addEventListener("scroll",E),D&&K.addEventListener("resize",E)});let l=k&&U?eC3(k,E,D):null,b=-1,M=null;if(F){if(M=new ResizeObserver((K)=>{let[Q]=K;if(Q&&Q.target===k&&M&&B)M.unobserve(B),cancelAnimationFrame(b),b=requestAnimationFrame(()=>{var G;(G=M)==null||G.observe(B)});E()}),k&&!z)M.observe(k);if(B)M.observe(B)}let Z,J=z?FQ(u):null;if(z)w();function w(){let K=FQ(u);if(J&&!jQu(J,K))E();J=K,Z=requestAnimationFrame(w)}return E(),()=>{var K;if(f.forEach((Q)=>{C&&Q.removeEventListener("scroll",E),D&&Q.removeEventListener("resize",E)}),l==null||l(),(K=M)==null||K.disconnect(),M=null,z)cancelAnimationFrame(Z)}}var NQu=QQu;var iQu=GQu,aQu=JQu,VQu=LQu,hQu=wQu,RJ0=ZQu;var mQu=HQu,TJ0=(u,B,E)=>{let A=new Map,C=E!=null?E:{},D={...PQu,...C.platform,_c:A};return MQu(u,B,{...C,platform:D})};var j2=Eu(Gu(),1),$Qu=Eu(Gu(),1),yQu=Eu(aE(),1),uD3=typeof document<"u",BD3=function(){},ad=uD3?$Qu.useLayoutEffect:BD3;function Vd(u,B){if(u===B)return!0;if(typeof u!==typeof B)return!1;if(typeof u==="function"&&u.toString()===B.toString())return!0;let E,A,C;if(u&&B&&typeof u==="object"){if(Array.isArray(u)){if(E=u.length,E!==B.length)return!1;for(A=E;A--!==0;)if(!Vd(u[A],B[A]))return!1;return!0}if(C=Object.keys(u),E=C.length,E!==Object.keys(B).length)return!1;for(A=E;A--!==0;)if(!{}.hasOwnProperty.call(B,C[A]))return!1;for(A=E;A--!==0;){let D=C[A];if(D==="_owner"&&u.$$typeof)continue;if(!Vd(u[D],B[D]))return!1}return!0}return u!==u&&B!==B}function cQu(u){if(typeof window>"u")return 1;return(u.ownerDocument.defaultView||window).devicePixelRatio||1}function rQu(u,B){let E=cQu(u);return Math.round(B*E)/E}function OJ0(u){let B=j2.useRef(u);return ad(()=>{B.current=u}),B}function gQu(u){if(u===void 0)u={};let{placement:B="bottom",strategy:E="absolute",middleware:A=[],platform:C,elements:{reference:D,floating:F}={},transform:U=!0,whileElementsMounted:z,open:k}=u,[f,l]=j2.useState({x:0,y:0,strategy:E,placement:B,middlewareData:{},isPositioned:!1}),[b,M]=j2.useState(A);if(!Vd(b,A))M(A);let[Z,J]=j2.useState(null),[w,K]=j2.useState(null),Q=j2.useCallback((N)=>{if(N!==q.current)q.current=N,J(N)},[]),G=j2.useCallback((N)=>{if(N!==x.current)x.current=N,K(N)},[]),L=D||Z,H=F||w,q=j2.useRef(null),x=j2.useRef(null),v=j2.useRef(f),W=z!=null,S=OJ0(z),T=OJ0(C),R=OJ0(k),Y=j2.useCallback(()=>{if(!q.current||!x.current)return;let N={placement:B,strategy:E,middleware:b};if(T.current)N.platform=T.current;TJ0(q.current,x.current,N).then((V)=>{let h={...V,isPositioned:R.current!==!1};if(a.current&&!Vd(v.current,h))v.current=h,yQu.flushSync(()=>{l(h)})})},[b,B,E,T,R]);ad(()=>{if(k===!1&&v.current.isPositioned)v.current.isPositioned=!1,l((N)=>({...N,isPositioned:!1}))},[k]);let a=j2.useRef(!1);ad(()=>{return a.current=!0,()=>{a.current=!1}},[]),ad(()=>{if(L)q.current=L;if(H)x.current=H;if(L&&H){if(S.current)return S.current(L,H,Y);Y()}},[L,H,Y,S,W]);let I=j2.useMemo(()=>({reference:q,floating:x,setReference:Q,setFloating:G}),[Q,G]),O=j2.useMemo(()=>({reference:L,floating:H}),[L,H]),i=j2.useMemo(()=>{let N={position:E,left:0,top:0};if(!O.floating)return N;let V=rQu(O.floating,f.x),h=rQu(O.floating,f.y);if(U)return{...N,transform:"translate("+V+"px, "+h+"px)",...cQu(O.floating)>=1.5&&{willChange:"transform"}};return{position:E,left:V,top:h}},[E,U,O.floating,f.x,f.y]);return j2.useMemo(()=>({...f,update:Y,refs:I,elements:O,floatingStyles:i}),[f,Y,I,O,i])}var ED3=(u)=>{function B(E){return{}.hasOwnProperty.call(E,"current")}return{name:"arrow",options:u,fn(E){let{element:A,padding:C}=typeof u==="function"?u(E):u;if(A&&B(A)){if(A.current!=null)return RJ0({element:A.current,padding:C}).fn(E);return{}}if(A)return RJ0({element:A,padding:C}).fn(E);return{}}}},_Qu=(u,B)=>{let E=NQu(u);return{name:E.name,fn:E.fn,options:[u,B]}},nQu=(u,B)=>{let E=iQu(u);return{name:E.name,fn:E.fn,options:[u,B]}},pQu=(u,B)=>{return{fn:mQu(u).fn,options:[u,B]}},dQu=(u,B)=>{let E=aQu(u);return{name:E.name,fn:E.fn,options:[u,B]}},sQu=(u,B)=>{let E=VQu(u);return{name:E.name,fn:E.fn,options:[u,B]}};var oQu=(u,B)=>{let E=hQu(u);return{name:E.name,fn:E.fn,options:[u,B]}};var tQu=(u,B)=>{let E=ED3(u);return{name:E.name,fn:E.fn,options:[u,B]}};var eQu=Eu(Gu(),1);Mu();var AD3="Arrow",uGu=eQu.forwardRef((u,B)=>{let{children:E,width:A=10,height:C=5,...D}=u;return P(gB.svg,{...D,ref:B,width:A,height:C,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:u.asChild?E:P("polygon",{points:"0,0 30,0 15,10"})})});uGu.displayName=AD3;var BGu=uGu;var EGu=Eu(Gu(),1);function AGu(u){let[B,E]=EGu.useState(void 0);return dA(()=>{if(u){E({width:u.offsetWidth,height:u.offsetHeight});let A=new ResizeObserver((C)=>{if(!Array.isArray(C))return;if(!C.length)return;let D=C[0],F,U;if("borderBoxSize"in D){let z=D.borderBoxSize,k=Array.isArray(z)?z[0]:z;F=k.inlineSize,U=k.blockSize}else F=u.offsetWidth,U=u.offsetHeight;E({width:F,height:U})});return A.observe(u,{box:"border-box"}),()=>A.unobserve(u)}else E(void 0)},[u]),B}Mu();var IJ0="Popper",[CGu,PJ0]=Wd(IJ0),[DD3,DGu]=CGu(IJ0),FGu=(u)=>{let{__scopePopper:B,children:E}=u,[A,C]=mE.useState(null);return P(DD3,{scope:B,anchor:A,onAnchorChange:C,children:E})};FGu.displayName=IJ0;var UGu="PopperAnchor",zGu=mE.forwardRef((u,B)=>{let{__scopePopper:E,virtualRef:A,...C}=u,D=DGu(UGu,E),F=mE.useRef(null),U=VE(B,F);return mE.useEffect(()=>{D.onAnchorChange(A?.current||F.current)}),A?null:P(gB.div,{...C,ref:U})});zGu.displayName=UGu;var jJ0="PopperContent",[FD3,UD3]=CGu(jJ0),kGu=mE.forwardRef((u,B)=>{let{__scopePopper:E,side:A="bottom",sideOffset:C=0,align:D="center",alignOffset:F=0,arrowPadding:U=0,avoidCollisions:z=!0,collisionBoundary:k=[],collisionPadding:f=0,sticky:l="partial",hideWhenDetached:b=!1,updatePositionStrategy:M="optimized",onPlaced:Z,...J}=u,w=DGu(jJ0,E),[K,Q]=mE.useState(null),G=VE(B,(_)=>Q(_)),[L,H]=mE.useState(null),q=AGu(L),x=q?.width??0,v=q?.height??0,W=A+(D!=="center"?"-"+D:""),S=typeof f==="number"?f:{top:0,right:0,bottom:0,left:0,...f},T=Array.isArray(k)?k:[k],R=T.length>0,Y={padding:S,boundary:T.filter(kD3),altBoundary:R},{refs:a,floatingStyles:I,placement:O,isPositioned:i,middlewareData:N}=gQu({strategy:"fixed",placement:W,whileElementsMounted:(..._)=>{return YJ0(..._,{animationFrame:M==="always"})},elements:{reference:w.anchor},middleware:[_Qu({mainAxis:C+v,alignmentAxis:F}),z&&nQu({mainAxis:!0,crossAxis:!1,limiter:l==="partial"?pQu():void 0,...Y}),z&&dQu({...Y}),sQu({...Y,apply:({elements:_,rects:b0,availableWidth:B0,availableHeight:k0})=>{let{width:f0,height:D0}=b0.reference,P0=_.floating.style;P0.setProperty("--radix-popper-available-width",`${B0}px`),P0.setProperty("--radix-popper-available-height",`${k0}px`),P0.setProperty("--radix-popper-anchor-width",`${f0}px`),P0.setProperty("--radix-popper-anchor-height",`${D0}px`)}}),L&&tQu({element:L,padding:U}),fD3({arrowWidth:x,arrowHeight:v}),b&&oQu({strategy:"referenceHidden",...Y})]}),[V,h]=bGu(O),r=hE(Z);dA(()=>{if(i)r?.()},[i,r]);let m=N.arrow?.x,$=N.arrow?.y,y=N.arrow?.centerOffset!==0,[p,e]=mE.useState();return dA(()=>{if(K)e(window.getComputedStyle(K).zIndex)},[K]),P("div",{ref:a.setFloating,"data-radix-popper-content-wrapper":"",style:{...I,transform:i?I.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:p,["--radix-popper-transform-origin"]:[N.transformOrigin?.x,N.transformOrigin?.y].join(" "),...N.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:u.dir,children:P(FD3,{scope:E,placedSide:V,onArrowChange:H,arrowX:m,arrowY:$,shouldHideArrow:y,children:P(gB.div,{"data-side":V,"data-align":h,...J,ref:G,style:{...J.style,animation:!i?"none":void 0}})})})});kGu.displayName=jJ0;var fGu="PopperArrow",zD3={top:"bottom",right:"left",bottom:"top",left:"right"},lGu=mE.forwardRef(function(B,E){let{__scopePopper:A,...C}=B,D=UD3(fGu,A),F=zD3[D.placedSide];return P("span",{ref:D.onArrowChange,style:{position:"absolute",left:D.arrowX,top:D.arrowY,[F]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[D.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[D.placedSide],visibility:D.shouldHideArrow?"hidden":void 0},children:P(BGu,{...C,ref:E,style:{...C.style,display:"block"}})})});lGu.displayName=fGu;function kD3(u){return u!==null}var fD3=(u)=>({name:"transformOrigin",options:u,fn(B){let{placement:E,rects:A,middlewareData:C}=B,F=C.arrow?.centerOffset!==0,U=F?0:u.arrowWidth,z=F?0:u.arrowHeight,[k,f]=bGu(E),l={start:"0%",center:"50%",end:"100%"}[f],b=(C.arrow?.x??0)+U/2,M=(C.arrow?.y??0)+z/2,Z="",J="";if(k==="bottom")Z=F?l:`${b}px`,J=`${-z}px`;else if(k==="top")Z=F?l:`${b}px`,J=`${A.floating.height+z}px`;else if(k==="right")Z=`${-z}px`,J=F?l:`${M}px`;else if(k==="left")Z=`${A.floating.width+z}px`,J=F?l:`${M}px`;return{data:{x:Z,y:J}}}});function bGu(u){let[B,E="center"]=u.split("-");return[B,E]}var MGu=FGu,NJ0=zGu,ZGu=kGu,JGu=lGu;var hd=Eu(Gu(),1),wGu=Eu(aE(),1);Mu();var bD3="Portal",iJ0=hd.forwardRef((u,B)=>{let{container:E,...A}=u,[C,D]=hd.useState(!1);dA(()=>D(!0),[]);let F=E||C&&globalThis?.document?.body;return F?wGu.default.createPortal(P(gB.div,{...A,ref:B}),F):null});iJ0.displayName=bD3;var $8=Eu(Gu(),1);var KGu=Eu(Gu(),1);function MD3(u,B){return KGu.useReducer((E,A)=>{return B[E][A]??E},u)}var rd=(u)=>{let{present:B,children:E}=u,A=ZD3(B),C=typeof E==="function"?E({present:A.isPresent}):$8.Children.only(E),D=VE(A.ref,JD3(C));return typeof E==="function"||A.isPresent?$8.cloneElement(C,{ref:D}):null};rd.displayName="Presence";function ZD3(u){let[B,E]=$8.useState(),A=$8.useRef({}),C=$8.useRef(u),D=$8.useRef("none"),F=u?"mounted":"unmounted",[U,z]=MD3(F,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return $8.useEffect(()=>{let k=md(A.current);D.current=U==="mounted"?k:"none"},[U]),dA(()=>{let k=A.current,f=C.current;if(f!==u){let b=D.current,M=md(k);if(u)z("MOUNT");else if(M==="none"||k?.display==="none")z("UNMOUNT");else if(f&&b!==M)z("ANIMATION_OUT");else z("UNMOUNT");C.current=u}},[u,z]),dA(()=>{if(B){let k,f=B.ownerDocument.defaultView??window,l=(M)=>{let J=md(A.current).includes(M.animationName);if(M.target===B&&J){if(z("ANIMATION_END"),!C.current){let w=B.style.animationFillMode;B.style.animationFillMode="forwards",k=f.setTimeout(()=>{if(B.style.animationFillMode==="forwards")B.style.animationFillMode=w})}}},b=(M)=>{if(M.target===B)D.current=md(A.current)};return B.addEventListener("animationstart",b),B.addEventListener("animationcancel",l),B.addEventListener("animationend",l),()=>{f.clearTimeout(k),B.removeEventListener("animationstart",b),B.removeEventListener("animationcancel",l),B.removeEventListener("animationend",l)}}else z("ANIMATION_END")},[B,z]),{isPresent:["mounted","unmountSuspended"].includes(U),ref:$8.useCallback((k)=>{if(k)A.current=getComputedStyle(k);E(k)},[])}}function md(u){return u?.animationName||"none"}function JD3(u){let B=Object.getOwnPropertyDescriptor(u.props,"ref")?.get,E=B&&"isReactWarning"in B&&B.isReactWarning;if(E)return u.ref;if(B=Object.getOwnPropertyDescriptor(u,"ref")?.get,E=B&&"isReactWarning"in B&&B.isReactWarning,E)return u.props.ref;return u.props.ref||u.ref}var yM=Eu(Gu(),1);function QGu({prop:u,defaultProp:B,onChange:E=()=>{}}){let[A,C]=wD3({defaultProp:B,onChange:E}),D=u!==void 0,F=D?u:A,U=hE(E),z=yM.useCallback((k)=>{if(D){let l=typeof k==="function"?k(u):k;if(l!==u)U(l)}else C(k)},[D,u,C,U]);return[F,z]}function wD3({defaultProp:u,onChange:B}){let E=yM.useState(u),[A]=E,C=yM.useRef(A),D=hE(B);return yM.useEffect(()=>{if(C.current!==A)D(A),C.current=A},[A,C,D]),E}var KD3=function(u){if(typeof document>"u")return null;var B=Array.isArray(u)?u[0]:u;return B.ownerDocument.body},ux=new WeakMap,$d=new WeakMap,yd={},aJ0=0,GGu=function(u){return u&&(u.host||GGu(u.parentNode))},QD3=function(u,B){return B.map(function(E){if(u.contains(E))return E;var A=GGu(E);if(A&&u.contains(A))return A;return console.error("aria-hidden",E,"in not contained inside",u,". Doing nothing"),null}).filter(function(E){return Boolean(E)})},GD3=function(u,B,E,A){var C=QD3(B,Array.isArray(u)?u:[u]);if(!yd[E])yd[E]=new WeakMap;var D=yd[E],F=[],U=new Set,z=new Set(C),k=function(l){if(!l||U.has(l))return;U.add(l),k(l.parentNode)};C.forEach(k);var f=function(l){if(!l||z.has(l))return;Array.prototype.forEach.call(l.children,function(b){if(U.has(b))f(b);else try{var M=b.getAttribute(A),Z=M!==null&&M!=="false",J=(ux.get(b)||0)+1,w=(D.get(b)||0)+1;if(ux.set(b,J),D.set(b,w),F.push(b),J===1&&Z)$d.set(b,!0);if(w===1)b.setAttribute(E,"true");if(!Z)b.setAttribute(A,"true")}catch(K){console.error("aria-hidden: cannot operate on ",b,K)}})};return f(B),U.clear(),aJ0++,function(){if(F.forEach(function(l){var b=ux.get(l)-1,M=D.get(l)-1;if(ux.set(l,b),D.set(l,M),!b){if(!$d.has(l))l.removeAttribute(A);$d.delete(l)}if(!M)l.removeAttribute(E)}),aJ0--,!aJ0)ux=new WeakMap,ux=new WeakMap,$d=new WeakMap,yd={}}},HGu=function(u,B,E){if(E===void 0)E="data-aria-hidden";var A=Array.from(Array.isArray(u)?u:[u]),C=B||KD3(u);if(!C)return function(){return null};return A.push.apply(A,Array.from(C.querySelectorAll("[aria-live], script"))),GD3(A,C,E,"aria-hidden")};var y8=function(){return y8=Object.assign||function(B){for(var E,A=1,C=arguments.length;A<C;A++){E=arguments[A];for(var D in E)if(Object.prototype.hasOwnProperty.call(E,D))B[D]=E[D]}return B},y8.apply(this,arguments)};function cd(u,B){var E={};for(var A in u)if(Object.prototype.hasOwnProperty.call(u,A)&&B.indexOf(A)<0)E[A]=u[A];if(u!=null&&typeof Object.getOwnPropertySymbols==="function"){for(var C=0,A=Object.getOwnPropertySymbols(u);C<A.length;C++)if(B.indexOf(A[C])<0&&Object.prototype.propertyIsEnumerable.call(u,A[C]))E[A[C]]=u[A[C]]}return E}function LGu(u,B,E){if(E||arguments.length===2){for(var A=0,C=B.length,D;A<C;A++)if(D||!(A in B)){if(!D)D=Array.prototype.slice.call(B,0,A);D[A]=B[A]}}return u.concat(D||Array.prototype.slice.call(B))}var dd=Eu(Gu(),1);var o7=Eu(Gu(),1);var UQ="right-scroll-bar-position",zQ="width-before-scroll-bar",VJ0="with-scroll-bars-hidden",hJ0="--removed-body-scroll-bar-size";var _d=Eu(Gu(),1);function gd(u,B){if(typeof u==="function")u(B);else if(u)u.current=B;return u}var qGu=Eu(Gu(),1);function XGu(u,B){var E=qGu.useState(function(){return{value:u,callback:B,facade:{get current(){return E.value},set current(A){var C=E.value;if(C!==A)E.value=A,E.callback(A,C)}}}})[0];return E.callback=B,E.facade}var HD3=typeof window<"u"?_d.useLayoutEffect:_d.useEffect,xGu=new WeakMap;function mJ0(u,B){var E=XGu(B||null,function(A){return u.forEach(function(C){return gd(C,A)})});return HD3(function(){var A=xGu.get(E);if(A){var C=new Set(A),D=new Set(u),F=E.current;C.forEach(function(U){if(!D.has(U))gd(U,null)}),D.forEach(function(U){if(!C.has(U))gd(U,F)})}xGu.set(E,u)},[u]),E}function LD3(u){return u}function qD3(u,B){if(B===void 0)B=LD3;var E=[],A=!1,C={read:function(){if(A)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");if(E.length)return E[E.length-1];return u},useMedium:function(D){var F=B(D,A);return E.push(F),function(){E=E.filter(function(U){return U!==F})}},assignSyncMedium:function(D){A=!0;while(E.length){var F=E;E=[],F.forEach(D)}E={push:function(U){return D(U)},filter:function(){return E}}},assignMedium:function(D){A=!0;var F=[];if(E.length){var U=E;E=[],U.forEach(D),F=E}var z=function(){var f=F;F=[],f.forEach(D)},k=function(){return Promise.resolve().then(z)};k(),E={push:function(f){F.push(f),k()},filter:function(f){return F=F.filter(f),E}}}};return C}function rJ0(u){if(u===void 0)u={};var B=qD3(null);return B.options=y8({async:!0,ssr:!1},u),B}var vGu=Eu(Gu(),1),SGu=function(u){var B=u.sideCar,E=cd(u,["sideCar"]);if(!B)throw Error("Sidecar: please provide `sideCar` property to import the right car");var A=B.read();if(!A)throw Error("Sidecar medium not found");return vGu.createElement(A,y8({},E))};SGu.isSideCarExport=!0;function $J0(u,B){return u.useMedium(B),SGu}var nd=rJ0();var yJ0=function(){return},dI=o7.forwardRef(function(u,B){var E=o7.useRef(null),A=o7.useState({onScrollCapture:yJ0,onWheelCapture:yJ0,onTouchMoveCapture:yJ0}),C=A[0],D=A[1],F=u.forwardProps,U=u.children,z=u.className,k=u.removeScrollBar,f=u.enabled,l=u.shards,b=u.sideCar,M=u.noRelative,Z=u.noIsolation,J=u.inert,w=u.allowPinchZoom,K=u.as,Q=K===void 0?"div":K,G=u.gapMode,L=cd(u,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),H=b,q=mJ0([E,B]),x=y8(y8({},L),C);return o7.createElement(o7.Fragment,null,f&&o7.createElement(H,{sideCar:nd,removeScrollBar:k,shards:l,noRelative:M,noIsolation:Z,inert:J,setCallbacks:D,allowPinchZoom:!!w,lockRef:E,gapMode:G}),F?o7.cloneElement(o7.Children.only(U),y8(y8({},x),{ref:q})):o7.createElement(Q,y8({},x,{className:z,ref:q}),U))});dI.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};dI.classNames={fullWidth:zQ,zeroRight:UQ};var t6=Eu(Gu(),1);var Ex=Eu(Gu(),1);var RGu=Eu(Gu(),1);var WGu;var YGu=function(){if(WGu)return WGu;if(typeof __webpack_nonce__<"u")return __webpack_nonce__;return};function XD3(){if(!document)return null;var u=document.createElement("style");u.type="text/css";var B=YGu();if(B)u.setAttribute("nonce",B);return u}function xD3(u,B){if(u.styleSheet)u.styleSheet.cssText=B;else u.appendChild(document.createTextNode(B))}function vD3(u){var B=document.head||document.getElementsByTagName("head")[0];B.appendChild(u)}var cJ0=function(){var u=0,B=null;return{add:function(E){if(u==0){if(B=XD3())xD3(B,E),vD3(B)}u++},remove:function(){if(u--,!u&&B)B.parentNode&&B.parentNode.removeChild(B),B=null}}};var gJ0=function(){var u=cJ0();return function(B,E){RGu.useEffect(function(){return u.add(B),function(){u.remove()}},[B&&E])}};var sI=function(){var u=gJ0(),B=function(E){var{styles:A,dynamic:C}=E;return u(A,C),null};return B};var SD3={left:0,top:0,right:0,gap:0},_J0=function(u){return parseInt(u||"",10)||0},WD3=function(u){var B=window.getComputedStyle(document.body),E=B[u==="padding"?"paddingLeft":"marginLeft"],A=B[u==="padding"?"paddingTop":"marginTop"],C=B[u==="padding"?"paddingRight":"marginRight"];return[_J0(E),_J0(A),_J0(C)]},nJ0=function(u){if(u===void 0)u="margin";if(typeof window>"u")return SD3;var B=WD3(u),E=document.documentElement.clientWidth,A=window.innerWidth;return{left:B[0],top:B[1],right:B[2],gap:Math.max(0,A-E+B[2]-B[0])}};var YD3=sI(),Bx="data-scroll-locked",RD3=function(u,B,E,A){var{left:C,top:D,right:F,gap:U}=u;if(E===void 0)E="margin";return`
.`.concat(VJ0,` {
overflow: hidden `).concat(A,`;
padding-right: `).concat(U,"px ").concat(A,`;
}
body[`).concat(Bx,`] {
overflow: hidden `).concat(A,`;
overscroll-behavior: contain;
`).concat([B&&"position: relative ".concat(A,";"),E==="margin"&&`
padding-left: `.concat(C,`px;
padding-top: `).concat(D,`px;
padding-right: `).concat(F,`px;
margin-left:0;
margin-top:0;
margin-right: `).concat(U,"px ").concat(A,`;
`),E==="padding"&&"padding-right: ".concat(U,"px ").concat(A,";")].filter(Boolean).join(""),`
}
.`).concat(UQ,` {
right: `).concat(U,"px ").concat(A,`;
}
.`).concat(zQ,` {
margin-right: `).concat(U,"px ").concat(A,`;
}
.`).concat(UQ," .").concat(UQ,` {
right: 0 `).concat(A,`;
}
.`).concat(zQ," .").concat(zQ,` {
margin-right: 0 `).concat(A,`;
}
body[`).concat(Bx,`] {
`).concat(hJ0,": ").concat(U,`px;
}
`)},TGu=function(){var u=parseInt(document.body.getAttribute(Bx)||"0",10);return isFinite(u)?u:0},TD3=function(){Ex.useEffect(function(){return document.body.setAttribute(Bx,(TGu()+1).toString()),function(){var u=TGu()-1;if(u<=0)document.body.removeAttribute(Bx);else document.body.setAttribute(Bx,u.toString())}},[])},pJ0=function(u){var{noRelative:B,noImportant:E,gapMode:A}=u,C=A===void 0?"margin":A;TD3();var D=Ex.useMemo(function(){return nJ0(C)},[C]);return Ex.createElement(YD3,{styles:RD3(D,!B,C,!E?"!important":"")})};var dJ0=!1;if(typeof window<"u")try{Ax=Object.defineProperty({},"passive",{get:function(){return dJ0=!0,!0}}),window.addEventListener("test",Ax,Ax),window.removeEventListener("test",Ax,Ax)}catch(u){dJ0=!1}var Ax,kQ=dJ0?{passive:!1}:!1;var OD3=function(u){return u.tagName==="TEXTAREA"},OGu=function(u,B){if(!(u instanceof Element))return!1;var E=window.getComputedStyle(u);return E[B]!=="hidden"&&!(E.overflowY===E.overflowX&&!OD3(u)&&E[B]==="visible")},ID3=function(u){return OGu(u,"overflowY")},PD3=function(u){return OGu(u,"overflowX")},sJ0=function(u,B){var E=B.ownerDocument,A=B;do{if(typeof ShadowRoot<"u"&&A instanceof ShadowRoot)A=A.host;var C=IGu(u,A);if(C){var D=PGu(u,A),F=D[1],U=D[2];if(F>U)return!0}A=A.parentNode}while(A&&A!==E.body);return!1},jD3=function(u){var{scrollTop:B,scrollHeight:E,clientHeight:A}=u;return[B,E,A]},ND3=function(u){var{scrollLeft:B,scrollWidth:E,clientWidth:A}=u;return[B,E,A]},IGu=function(u,B){return u==="v"?ID3(B):PD3(B)},PGu=function(u,B){return u==="v"?jD3(B):ND3(B)},iD3=function(u,B){return u==="h"&&B==="rtl"?-1:1},jGu=function(u,B,E,A,C){var D=iD3(u,window.getComputedStyle(B).direction),F=D*A,U=E.target,z=B.contains(U),k=!1,f=F>0,l=0,b=0;do{if(!U)break;var M=PGu(u,U),Z=M[0],J=M[1],w=M[2],K=J-w-D*Z;if(Z||K){if(IGu(u,U))l+=K,b+=Z}var Q=U.parentNode;U=Q&&Q.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Q.host:Q}while(!z&&U!==document.body||z&&(B.contains(U)||B===U));if(f&&(C&&Math.abs(l)<1||!C&&F>l))k=!0;else if(!f&&(C&&Math.abs(b)<1||!C&&-F>b))k=!0;return k};var pd=function(u){return"changedTouches"in u?[u.changedTouches[0].clientX,u.changedTouches[0].clientY]:[0,0]},NGu=function(u){return[u.deltaX,u.deltaY]},iGu=function(u){return u&&"current"in u?u.current:u},aD3=function(u,B){return u[0]===B[0]&&u[1]===B[1]},VD3=function(u){return`
.block-interactivity-`.concat(u,` {pointer-events: none;}
.allow-interactivity-`).concat(u,` {pointer-events: all;}
`)},hD3=0,Cx=[];function aGu(u){var B=t6.useRef([]),E=t6.useRef([0,0]),A=t6.useRef(),C=t6.useState(hD3++)[0],D=t6.useState(sI)[0],F=t6.useRef(u);t6.useEffect(function(){F.current=u},[u]),t6.useEffect(function(){if(u.inert){document.body.classList.add("block-interactivity-".concat(C));var J=LGu([u.lockRef.current],(u.shards||[]).map(iGu),!0).filter(Boolean);return J.forEach(function(w){return w.classList.add("allow-interactivity-".concat(C))}),function(){document.body.classList.remove("block-interactivity-".concat(C)),J.forEach(function(w){return w.classList.remove("allow-interactivity-".concat(C))})}}return},[u.inert,u.lockRef.current,u.shards]);var U=t6.useCallback(function(J,w){if("touches"in J&&J.touches.length===2||J.type==="wheel"&&J.ctrlKey)return!F.current.allowPinchZoom;var K=pd(J),Q=E.current,G="deltaX"in J?J.deltaX:Q[0]-K[0],L="deltaY"in J?J.deltaY:Q[1]-K[1],H,q=J.target,x=Math.abs(G)>Math.abs(L)?"h":"v";if("touches"in J&&x==="h"&&q.type==="range")return!1;var v=window.getSelection(),W=v&&v.anchorNode,S=W?W===q||W.contains(q):!1;if(S)return!1;var T=sJ0(x,q);if(!T)return!0;if(T)H=x;else H=x==="v"?"h":"v",T=sJ0(x,q);if(!T)return!1;if(!A.current&&"changedTouches"in J&&(G||L))A.current=H;if(!H)return!0;var R=A.current||H;return jGu(R,w,J,R==="h"?G:L,!0)},[]),z=t6.useCallback(function(J){var w=J;if(!Cx.length||Cx[Cx.length-1]!==D)return;var K="deltaY"in w?NGu(w):pd(w),Q=B.current.filter(function(H){return H.name===w.type&&(H.target===w.target||w.target===H.shadowParent)&&aD3(H.delta,K)})[0];if(Q&&Q.should){if(w.cancelable)w.preventDefault();return}if(!Q){var G=(F.current.shards||[]).map(iGu).filter(Boolean).filter(function(H){return H.contains(w.target)}),L=G.length>0?U(w,G[0]):!F.current.noIsolation;if(L){if(w.cancelable)w.preventDefault()}}},[]),k=t6.useCallback(function(J,w,K,Q){var G={name:J,delta:w,target:K,should:Q,shadowParent:mD3(K)};B.current.push(G),setTimeout(function(){B.current=B.current.filter(function(L){return L!==G})},1)},[]),f=t6.useCallback(function(J){E.current=pd(J),A.current=void 0},[]),l=t6.useCallback(function(J){k(J.type,NGu(J),J.target,U(J,u.lockRef.current))},[]),b=t6.useCallback(function(J){k(J.type,pd(J),J.target,U(J,u.lockRef.current))},[]);t6.useEffect(function(){return Cx.push(D),u.setCallbacks({onScrollCapture:l,onWheelCapture:l,onTouchMoveCapture:b}),document.addEventListener("wheel",z,kQ),document.addEventListener("touchmove",z,kQ),document.addEventListener("touchstart",f,kQ),function(){Cx=Cx.filter(function(J){return J!==D}),document.removeEventListener("wheel",z,kQ),document.removeEventListener("touchmove",z,kQ),document.removeEventListener("touchstart",f,kQ)}},[]);var{removeScrollBar:M,inert:Z}=u;return t6.createElement(t6.Fragment,null,Z?t6.createElement(D,{styles:VD3(C)}):null,M?t6.createElement(pJ0,{noRelative:u.noRelative,gapMode:u.gapMode}):null)}function mD3(u){var B=null;while(u!==null){if(u instanceof ShadowRoot)B=u.host,u=u.host;u=u.parentNode}return B}var VGu=$J0(nd,aGu);var hGu=dd.forwardRef(function(u,B){return dd.createElement(dI,y8({},u,{ref:B,sideCar:VGu}))});hGu.classNames=dI.classNames;var oJ0=hGu;Mu();var tJ0="Popover",[mGu,uW1]=Wd(tJ0,[PJ0]),oI=PJ0(),[rD3,cM]=mGu(tJ0),rGu=(u)=>{let{__scopePopover:B,children:E,open:A,defaultOpen:C,onOpenChange:D,modal:F=!1}=u,U=oI(B),z=w9.useRef(null),[k,f]=w9.useState(!1),[l=!1,b]=QGu({prop:A,defaultProp:C,onChange:D});return P(MGu,{...U,children:P(rD3,{scope:B,contentId:EQu(),triggerRef:z,open:l,onOpenChange:b,onOpenToggle:w9.useCallback(()=>b((M)=>!M),[b]),hasCustomAnchor:k,onCustomAnchorAdd:w9.useCallback(()=>f(!0),[]),onCustomAnchorRemove:w9.useCallback(()=>f(!1),[]),modal:F,children:E})})};rGu.displayName=tJ0;var $Gu="PopoverAnchor",$D3=w9.forwardRef((u,B)=>{let{__scopePopover:E,...A}=u,C=cM($Gu,E),D=oI(E),{onCustomAnchorAdd:F,onCustomAnchorRemove:U}=C;return w9.useEffect(()=>{return F(),()=>U()},[F,U]),P(NJ0,{...D,...A,ref:B})});$D3.displayName=$Gu;var yGu="PopoverTrigger",cGu=w9.forwardRef((u,B)=>{let{__scopePopover:E,...A}=u,C=cM(yGu,E),D=oI(E),F=VE(B,C.triggerRef),U=P(gB.button,{type:"button","aria-haspopup":"dialog","aria-expanded":C.open,"aria-controls":C.contentId,"data-state":sGu(C.open),...A,ref:F,onClick:yU(u.onClick,C.onOpenToggle)});return C.hasCustomAnchor?U:P(NJ0,{asChild:!0,...D,children:U})});cGu.displayName=yGu;var eJ0="PopoverPortal",[yD3,cD3]=mGu(eJ0,{forceMount:void 0}),gGu=(u)=>{let{__scopePopover:B,forceMount:E,children:A,container:C}=u,D=cM(eJ0,B);return P(yD3,{scope:B,forceMount:E,children:P(rd,{present:E||D.open,children:P(iJ0,{asChild:!0,container:C,children:A})})})};gGu.displayName=eJ0;var Dx="PopoverContent",_Gu=w9.forwardRef((u,B)=>{let E=cD3(Dx,u.__scopePopover),{forceMount:A=E.forceMount,...C}=u,D=cM(Dx,u.__scopePopover);return P(rd,{present:A||D.open,children:D.modal?P(gD3,{...C,ref:B}):P(_D3,{...C,ref:B})})});_Gu.displayName=Dx;var gD3=w9.forwardRef((u,B)=>{let E=cM(Dx,u.__scopePopover),A=w9.useRef(null),C=VE(B,A),D=w9.useRef(!1);return w9.useEffect(()=>{let F=A.current;if(F)return HGu(F)},[]),P(oJ0,{as:$I,allowPinchZoom:!0,children:P(nGu,{...u,ref:C,trapFocus:E.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:yU(u.onCloseAutoFocus,(F)=>{if(F.preventDefault(),!D.current)E.triggerRef.current?.focus()}),onPointerDownOutside:yU(u.onPointerDownOutside,(F)=>{let U=F.detail.originalEvent,z=U.button===0&&U.ctrlKey===!0,k=U.button===2||z;D.current=k},{checkForDefaultPrevented:!1}),onFocusOutside:yU(u.onFocusOutside,(F)=>F.preventDefault(),{checkForDefaultPrevented:!1})})})}),_D3=w9.forwardRef((u,B)=>{let E=cM(Dx,u.__scopePopover),A=w9.useRef(!1),C=w9.useRef(!1);return P(nGu,{...u,ref:B,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:(D)=>{if(u.onCloseAutoFocus?.(D),!D.defaultPrevented){if(!A.current)E.triggerRef.current?.focus();D.preventDefault()}A.current=!1,C.current=!1},onInteractOutside:(D)=>{if(u.onInteractOutside?.(D),!D.defaultPrevented){if(A.current=!0,D.detail.originalEvent.type==="pointerdown")C.current=!0}let F=D.target;if(E.triggerRef.current?.contains(F))D.preventDefault();if(D.detail.originalEvent.type==="focusin"&&C.current)D.preventDefault()}})}),nGu=w9.forwardRef((u,B)=>{let{__scopePopover:E,trapFocus:A,onOpenAutoFocus:C,onCloseAutoFocus:D,disableOutsidePointerEvents:F,onEscapeKeyDown:U,onPointerDownOutside:z,onFocusOutside:k,onInteractOutside:f,...l}=u,b=cM(Dx,E),M=oI(E);return dKu(),P(LJ0,{asChild:!0,loop:!0,trapped:A,onMountAutoFocus:C,onUnmountAutoFocus:D,children:P(KJ0,{asChild:!0,disableOutsidePointerEvents:F,onInteractOutside:f,onEscapeKeyDown:U,onPointerDownOutside:z,onFocusOutside:k,onDismiss:()=>b.onOpenChange(!1),children:P(ZGu,{"data-state":sGu(b.open),role:"dialog",id:b.contentId,...M,...l,ref:B,style:{...l.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)"}}})})})}),pGu="PopoverClose",nD3=w9.forwardRef((u,B)=>{let{__scopePopover:E,...A}=u,C=cM(pGu,E);return P(gB.button,{type:"button",...A,ref:B,onClick:yU(u.onClick,()=>C.onOpenChange(!1))})});nD3.displayName=pGu;var pD3="PopoverArrow",dGu=w9.forwardRef((u,B)=>{let{__scopePopover:E,...A}=u,C=oI(E);return P(JGu,{...C,...A,ref:B})});dGu.displayName=pD3;function sGu(u){return u?"open":"closed"}var gM=rGu;var _M=cGu,oGu=gGu,Fx=_Gu;var sd=dGu;Mu();Mu();var tsu=Eu(Gu(),1),yD=Eu(Gu(),1),Ts=Eu(Gu(),1),esu=Eu(aE(),1),CK0=Eu(Gu(),1),JP=Eu(Gu(),1),Eou=Eu(Gu(),1),Aou=Eu(Gu(),1),Cou=Eu(Gu(),1);Mu();Mu();Mu();var Dou=Eu(Gu(),1),wQ=Eu(Gu(),1);Mu();Mu();Mu();var Xx=Eu(Gu(),1);Mu();Mu();Mu();Mu();Mu();Mu();var w5=Eu(Gu(),1),Uou=Eu(Gu(),1),kou=Eu(Gu(),1),js=Eu(Gu(),1),Ns=Eu(Gu(),1);Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();rb();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();var wou=Eu(Gu(),1),wP=Eu(Gu(),1),Gou=Eu(Gu(),1),Lou=Eu(Gu(),1),Sou=Eu(Gu(),1),uC=Eu(Gu(),1),oA=Eu(Gu(),1),ms=Eu(Gu(),1),rs=Eu(Gu(),1),Pou=Eu(aE(),1),jou=Eu(Gu(),1),c5=Eu(Gu(),1),Nou=Eu(Gu(),1),$s=Eu(Gu(),1),uB=Eu(Gu(),1),MK0=Eu(Gu(),1),Kx=Eu(Gu(),1),QP=Eu(Gu(),1),pw0=Eu(aE(),1),rE=Eu(Gu(),1),ys=Eu(Gu(),1),JQ=Eu(Gu(),1),vx=Eu(Gu(),1),DZ=Eu(Gu(),1),cs=Eu(Gu(),1),gou=Eu(Gu(),1),_ou=Eu(Xq(),1),eU=Eu(Gu(),1),nou=Eu(uHu(),1),pou=Eu(Gu(),1),gs=Eu(Gu(),1);var tI=Eu(Gu(),1);var BHu=(u)=>{let B,E=new Set,A=(f,l)=>{let b=typeof f==="function"?f(B):f;if(!Object.is(b,B)){let M=B;B=(l!=null?l:typeof b!=="object"||b===null)?b:Object.assign({},B,b),E.forEach((Z)=>Z(B,M))}},C=()=>B,z={setState:A,getState:C,getInitialState:()=>k,subscribe:(f)=>{return E.add(f),()=>E.delete(f)},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.");E.clear()}},k=B=u(A,C,z);return z},EHu=(u)=>u?BHu(u):BHu;var UHu=Eu(Gu(),1),zHu=Eu(CHu(),1),{useDebugValue:wF3}=UHu.default,{useSyncExternalStoreWithSelector:KF3}=zHu.default,DHu=!1,QF3=(u)=>u;function GF3(u,B=QF3,E){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&E&&!DHu)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"),DHu=!0;let A=KF3(u.subscribe,u.getState,u.getServerState||u.getInitialState,B,E);return wF3(A),A}var FHu=(u)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&typeof u!=="function")console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");let B=typeof u==="function"?EHu(u):u,E=(A,C)=>GF3(B,A,C);return Object.assign(E,B),E},kHu=(u)=>u?FHu(u):FHu;var fHu,lHu,bHu=typeof window<"u"&&((fHu=window.document)!=null&&fHu.createElement||((lHu=window.navigator)==null?void 0:lHu.product)==="ReactNative")?tI.default.useLayoutEffect:tI.default.useEffect;function jD(){let u=kHu((B)=>({current:[],version:0,set:B}));return{In:({children:B})=>{let E=u((C)=>C.set),A=u((C)=>C.version);return bHu(()=>{E((C)=>({version:C.version+1}))},[]),bHu(()=>{return E(({current:C})=>({current:[...C,B]})),()=>E(({current:C})=>({current:C.filter((D)=>D!==B)}))},[B,A]),null},Out:()=>{let B=u((E)=>E.current);return tI.default.createElement(tI.default.Fragment,null,B)}}}Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();rb();Mu();Mu();var utu=Eu(Gu(),1),ns=Eu(Gu(),1),AZ=Eu(Gu(),1),Utu=Eu(aE(),1),ztu=Eu(Gu(),1),ktu=Eu(Gu(),1),ps=Eu(Gu(),1),g8=Eu(Gu(),1),ds=Eu(Gu(),1),Sx=Eu(Gu(),1),FZ=Eu(Gu(),1),Qtu=Eu(Gu(),1),MQ=Eu(Gu(),1);Mu();rb();Mu();Mu();Mu();Mu();Mu();Mu();var Htu=Eu(Gu(),1),a2=Eu(Gu(),1),qtu=Eu(Gu(),1),xtu=Eu(Gu(),1);function i6(){return i6=Object.assign?Object.assign.bind():function(u){for(var B=1;B<arguments.length;B++){var E=arguments[B];for(var A in E)({}).hasOwnProperty.call(E,A)&&(u[A]=E[A])}return u},i6.apply(null,arguments)}var y5=Eu(Gu(),1);function od(u,B,{checkForDefaultPrevented:E=!0}={}){return function(C){if(u===null||u===void 0||u(C),E===!1||!C.defaultPrevented)return B===null||B===void 0?void 0:B(C)}}var ND=Eu(Gu(),1);function MHu(u,B=[]){let E=[];function A(D,F){let U=ND.createContext(F),z=E.length;E=[...E,F];function k(l){let{scope:b,children:M,...Z}=l,J=(b===null||b===void 0?void 0:b[u][z])||U,w=ND.useMemo(()=>Z,Object.values(Z));return ND.createElement(J.Provider,{value:w},M)}function f(l,b){let M=(b===null||b===void 0?void 0:b[u][z])||U,Z=ND.useContext(M);if(Z)return Z;if(F!==void 0)return F;throw Error(`\`${l}\` must be used within \`${D}\``)}return k.displayName=D+"Provider",[k,f]}let C=()=>{let D=E.map((F)=>{return ND.createContext(F)});return function(U){let z=(U===null||U===void 0?void 0:U[u])||D;return ND.useMemo(()=>({[`__scope${u}`]:{...U,[u]:z}}),[U,z])}};return C.scopeName=u,[A,HF3(C,...B)]}function HF3(...u){let B=u[0];if(u.length===1)return B;let E=()=>{let A=u.map((C)=>({useScope:C(),scopeName:C.scopeName}));return function(D){let F=A.reduce((U,{useScope:z,scopeName:k})=>{let l=z(D)[`__scope${k}`];return{...U,...l}},{});return ND.useMemo(()=>({[`__scope${B.scopeName}`]:F}),[F])}};return E.scopeName=B.scopeName,E}var a6=Eu(Gu(),1);function fQ(u,B,{checkForDefaultPrevented:E=!0}={}){return function(C){if(u===null||u===void 0||u(C),E===!1||!C.defaultPrevented)return B===null||B===void 0?void 0:B(C)}}var aD=Eu(Gu(),1);var iD=Eu(Gu(),1);function ZHu(u,B=[]){let E=[];function A(D,F){let U=iD.createContext(F),z=E.length;E=[...E,F];function k(l){let{scope:b,children:M,...Z}=l,J=(b===null||b===void 0?void 0:b[u][z])||U,w=iD.useMemo(()=>Z,Object.values(Z));return iD.createElement(J.Provider,{value:w},M)}function f(l,b){let M=(b===null||b===void 0?void 0:b[u][z])||U,Z=iD.useContext(M);if(Z)return Z;if(F!==void 0)return F;throw Error(`\`${l}\` must be used within \`${D}\``)}return k.displayName=D+"Provider",[k,f]}let C=()=>{let D=E.map((F)=>{return iD.createContext(F)});return function(U){let z=(U===null||U===void 0?void 0:U[u])||D;return iD.useMemo(()=>({[`__scope${u}`]:{...U,[u]:z}}),[U,z])}};return C.scopeName=u,[A,LF3(C,...B)]}function LF3(...u){let B=u[0];if(u.length===1)return B;let E=()=>{let A=u.map((C)=>({useScope:C(),scopeName:C.scopeName}));return function(D){let F=A.reduce((U,{useScope:z,scopeName:k})=>{let l=z(D)[`__scope${k}`];return{...U,...l}},{});return iD.useMemo(()=>({[`__scope${B.scopeName}`]:F}),[F])}};return E.scopeName=B.scopeName,E}var JHu=Eu(Gu(),1);function qF3(u,B){if(typeof u==="function")u(B);else if(u!==null&&u!==void 0)u.current=B}function Bw0(...u){return(B)=>u.forEach((E)=>qF3(E,B))}function Ew0(...u){return JHu.useCallback(Bw0(...u),u)}var R9=Eu(Gu(),1);var td=R9.forwardRef((u,B)=>{let{children:E,...A}=u,C=R9.Children.toArray(E),D=C.find(xF3);if(D){let F=D.props.children,U=C.map((z)=>{if(z===D){if(R9.Children.count(F)>1)return R9.Children.only(null);return R9.isValidElement(F)?F.props.children:null}else return z});return R9.createElement(Aw0,i6({},A,{ref:B}),R9.isValidElement(F)?R9.cloneElement(F,void 0,U):null)}return R9.createElement(Aw0,i6({},A,{ref:B}),E)});td.displayName="Slot";var Aw0=R9.forwardRef((u,B)=>{let{children:E,...A}=u;if(R9.isValidElement(E))return R9.cloneElement(E,{...vF3(A,E.props),ref:Bw0(B,E.ref)});return R9.Children.count(E)>1?R9.Children.only(null):null});Aw0.displayName="SlotClone";var XF3=({children:u})=>{return R9.createElement(R9.Fragment,null,u)};function xF3(u){return R9.isValidElement(u)&&u.type===XF3}function vF3(u,B){let E={...B};for(let A in B){let C=u[A],D=B[A];if(/^on[A-Z]/.test(A)){if(C&&D)E[A]=(...U)=>{D(...U),C(...U)};else if(C)E[A]=C}else if(A==="style")E[A]={...C,...D};else if(A==="className")E[A]=[C,D].filter(Boolean).join(" ")}return{...u,...E}}function wHu(u){let B=u+"CollectionProvider",[E,A]=ZHu(B),[C,D]=E(B,{collectionRef:{current:null},itemMap:new Map}),F=(M)=>{let{scope:Z,children:J}=M,w=aD.default.useRef(null),K=aD.default.useRef(new Map).current;return aD.default.createElement(C,{scope:Z,itemMap:K,collectionRef:w},J)},U=u+"CollectionSlot",z=aD.default.forwardRef((M,Z)=>{let{scope:J,children:w}=M,K=D(U,J),Q=Ew0(Z,K.collectionRef);return aD.default.createElement(td,{ref:Q},w)}),k=u+"CollectionItemSlot",f="data-radix-collection-item",l=aD.default.forwardRef((M,Z)=>{let{scope:J,children:w,...K}=M,Q=aD.default.useRef(null),G=Ew0(Z,Q),L=D(k,J);return aD.default.useEffect(()=>{return L.itemMap.set(Q,{ref:Q,...K}),()=>void L.itemMap.delete(Q)}),aD.default.createElement(td,{[f]:"",ref:G},w)});function b(M){let Z=D(u+"CollectionConsumer",M);return aD.default.useCallback(()=>{let w=Z.collectionRef.current;if(!w)return[];let K=Array.from(w.querySelectorAll(`[${f}]`));return Array.from(Z.itemMap.values()).sort((L,H)=>K.indexOf(L.ref.current)-K.indexOf(H.ref.current))},[Z.collectionRef,Z.itemMap])}return[{Provider:F,Slot:z,ItemSlot:l},b,A]}var KHu=Eu(Gu(),1);function SF3(u,B){if(typeof u==="function")u(B);else if(u!==null&&u!==void 0)u.current=B}function Cw0(...u){return(B)=>u.forEach((E)=>SF3(E,B))}function QHu(...u){return KHu.useCallback(Cw0(...u),u)}var VD=Eu(Gu(),1);function GHu(u,B=[]){let E=[];function A(D,F){let U=VD.createContext(F),z=E.length;E=[...E,F];function k(l){let{scope:b,children:M,...Z}=l,J=(b===null||b===void 0?void 0:b[u][z])||U,w=VD.useMemo(()=>Z,Object.values(Z));return VD.createElement(J.Provider,{value:w},M)}function f(l,b){let M=(b===null||b===void 0?void 0:b[u][z])||U,Z=VD.useContext(M);if(Z)return Z;if(F!==void 0)return F;throw Error(`\`${l}\` must be used within \`${D}\``)}return k.displayName=D+"Provider",[k,f]}let C=()=>{let D=E.map((F)=>{return VD.createContext(F)});return function(U){let z=(U===null||U===void 0?void 0:U[u])||D;return VD.useMemo(()=>({[`__scope${u}`]:{...U,[u]:z}}),[U,z])}};return C.scopeName=u,[A,WF3(C,...B)]}function WF3(...u){let B=u[0];if(u.length===1)return B;let E=()=>{let A=u.map((C)=>({useScope:C(),scopeName:C.scopeName}));return function(D){let F=A.reduce((U,{useScope:z,scopeName:k})=>{let l=z(D)[`__scope${k}`];return{...U,...l}},{});return VD.useMemo(()=>({[`__scope${B.scopeName}`]:F}),[F])}};return E.scopeName=B.scopeName,E}var Dw0=Eu(Gu(),1);var HHu=Eu(Gu(),1),LHu=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?HHu.useLayoutEffect:()=>{};var YF3=Dw0["useId".toString()]||(()=>{return}),RF3=0;function qHu(u){let[B,E]=Dw0.useState(YF3());return LHu(()=>{if(!u)E((A)=>A!==null&&A!==void 0?A:String(RF3++))},[u]),u||(B?`radix-${B}`:"")}var zx=Eu(Gu(),1),PF3=Eu(aE(),1);var T9=Eu(Gu(),1);var Uw0=T9.forwardRef((u,B)=>{let{children:E,...A}=u,C=T9.Children.toArray(E),D=C.find(OF3);if(D){let F=D.props.children,U=C.map((z)=>{if(z===D){if(T9.Children.count(F)>1)return T9.Children.only(null);return T9.isValidElement(F)?F.props.children:null}else return z});return T9.createElement(Fw0,i6({},A,{ref:B}),T9.isValidElement(F)?T9.cloneElement(F,void 0,U):null)}return T9.createElement(Fw0,i6({},A,{ref:B}),E)});Uw0.displayName="Slot";var Fw0=T9.forwardRef((u,B)=>{let{children:E,...A}=u;if(T9.isValidElement(E))return T9.cloneElement(E,{...IF3(A,E.props),ref:Cw0(B,E.ref)});return T9.Children.count(E)>1?T9.Children.only(null):null});Fw0.displayName="SlotClone";var TF3=({children:u})=>{return T9.createElement(T9.Fragment,null,u)};function OF3(u){return T9.isValidElement(u)&&u.type===TF3}function IF3(u,B){let E={...B};for(let A in B){let C=u[A],D=B[A];if(/^on[A-Z]/.test(A)){if(C&&D)E[A]=(...U)=>{D(...U),C(...U)};else if(C)E[A]=C}else if(A==="style")E[A]={...C,...D};else if(A==="className")E[A]=[C,D].filter(Boolean).join(" ")}return{...u,...E}}var jF3=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],zw0=jF3.reduce((u,B)=>{let E=zx.forwardRef((A,C)=>{let{asChild:D,...F}=A,U=D?Uw0:B;return zx.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),zx.createElement(U,i6({},F,{ref:C}))});return E.displayName=`Primitive.${B}`,{...u,[B]:E}},{});var kx=Eu(Gu(),1);function eI(u){let B=kx.useRef(u);return kx.useEffect(()=>{B.current=u}),kx.useMemo(()=>(...E)=>{var A;return(A=B.current)===null||A===void 0?void 0:A.call(B,...E)},[])}var pM=Eu(Gu(),1);function XHu({prop:u,defaultProp:B,onChange:E=()=>{}}){let[A,C]=NF3({defaultProp:B,onChange:E}),D=u!==void 0,F=D?u:A,U=eI(E),z=pM.useCallback((k)=>{if(D){let l=typeof k==="function"?k(u):k;if(l!==u)U(l)}else C(k)},[D,u,C,U]);return[F,z]}function NF3({defaultProp:u,onChange:B}){let E=pM.useState(u),[A]=E,C=pM.useRef(A),D=eI(B);return pM.useEffect(()=>{if(C.current!==A)D(A),C.current=A},[A,C,D]),E}var uP=Eu(Gu(),1),iF3=uP.createContext(void 0);function ed(u){let B=uP.useContext(iF3);return u||B||"ltr"}var kw0="rovingFocusGroup.onEntryFocus",aF3={bubbles:!1,cancelable:!0},lw0="RovingFocusGroup",[fw0,xHu,VF3]=wHu(lw0),[hF3,bw0]=GHu(lw0,[VF3]),[mF3,rF3]=hF3(lw0),$F3=a6.forwardRef((u,B)=>{return a6.createElement(fw0.Provider,{scope:u.__scopeRovingFocusGroup},a6.createElement(fw0.Slot,{scope:u.__scopeRovingFocusGroup},a6.createElement(yF3,i6({},u,{ref:B}))))}),yF3=a6.forwardRef((u,B)=>{let{__scopeRovingFocusGroup:E,orientation:A,loop:C=!1,dir:D,currentTabStopId:F,defaultCurrentTabStopId:U,onCurrentTabStopIdChange:z,onEntryFocus:k,...f}=u,l=a6.useRef(null),b=QHu(B,l),M=ed(D),[Z=null,J]=XHu({prop:F,defaultProp:U,onChange:z}),[w,K]=a6.useState(!1),Q=eI(k),G=xHu(E),L=a6.useRef(!1),[H,q]=a6.useState(0);return a6.useEffect(()=>{let x=l.current;if(x)return x.addEventListener(kw0,Q),()=>x.removeEventListener(kw0,Q)},[Q]),a6.createElement(mF3,{scope:E,orientation:A,dir:M,loop:C,currentTabStopId:Z,onItemFocus:a6.useCallback((x)=>J(x),[J]),onItemShiftTab:a6.useCallback(()=>K(!0),[]),onFocusableItemAdd:a6.useCallback(()=>q((x)=>x+1),[]),onFocusableItemRemove:a6.useCallback(()=>q((x)=>x-1),[])},a6.createElement(zw0.div,i6({tabIndex:w||H===0?-1:0,"data-orientation":A},f,{ref:b,style:{outline:"none",...u.style},onMouseDown:fQ(u.onMouseDown,()=>{L.current=!0}),onFocus:fQ(u.onFocus,(x)=>{let v=!L.current;if(x.target===x.currentTarget&&v&&!w){let W=new CustomEvent(kw0,aF3);if(x.currentTarget.dispatchEvent(W),!W.defaultPrevented){let S=G().filter((I)=>I.focusable),T=S.find((I)=>I.active),R=S.find((I)=>I.id===Z),a=[T,R,...S].filter(Boolean).map((I)=>I.ref.current);vHu(a)}}L.current=!1}),onBlur:fQ(u.onBlur,()=>K(!1))})))}),cF3="RovingFocusGroupItem",gF3=a6.forwardRef((u,B)=>{let{__scopeRovingFocusGroup:E,focusable:A=!0,active:C=!1,tabStopId:D,...F}=u,U=qHu(),z=D||U,k=rF3(cF3,E),f=k.currentTabStopId===z,l=xHu(E),{onFocusableItemAdd:b,onFocusableItemRemove:M}=k;return a6.useEffect(()=>{if(A)return b(),()=>M()},[A,b,M]),a6.createElement(fw0.ItemSlot,{scope:E,id:z,focusable:A,active:C},a6.createElement(zw0.span,i6({tabIndex:f?0:-1,"data-orientation":k.orientation},F,{ref:B,onMouseDown:fQ(u.onMouseDown,(Z)=>{if(!A)Z.preventDefault();else k.onItemFocus(z)}),onFocus:fQ(u.onFocus,()=>k.onItemFocus(z)),onKeyDown:fQ(u.onKeyDown,(Z)=>{if(Z.key==="Tab"&&Z.shiftKey){k.onItemShiftTab();return}if(Z.target!==Z.currentTarget)return;let J=pF3(Z,k.orientation,k.dir);if(J!==void 0){Z.preventDefault();let K=l().filter((Q)=>Q.focusable).map((Q)=>Q.ref.current);if(J==="last")K.reverse();else if(J==="prev"||J==="next"){if(J==="prev")K.reverse();let Q=K.indexOf(Z.currentTarget);K=k.loop?dF3(K,Q+1):K.slice(Q+1)}setTimeout(()=>vHu(K))}})})))}),_F3={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function nF3(u,B){if(B!=="rtl")return u;return u==="ArrowLeft"?"ArrowRight":u==="ArrowRight"?"ArrowLeft":u}function pF3(u,B,E){let A=nF3(u.key,E);if(B==="vertical"&&["ArrowLeft","ArrowRight"].includes(A))return;if(B==="horizontal"&&["ArrowUp","ArrowDown"].includes(A))return;return _F3[A]}function vHu(u){let B=document.activeElement;for(let E of u){if(E===B)return;if(E.focus(),document.activeElement!==B)return}}function dF3(u,B){return u.map((E,A)=>u[(B+A)%u.length])}var SHu=$F3,WHu=gF3;var t7=Eu(Gu(),1),OHu=Eu(aE(),1);var YHu=Eu(Gu(),1);function sF3(u,B){if(typeof u==="function")u(B);else if(u!==null&&u!==void 0)u.current=B}function oF3(...u){return(B)=>u.forEach((E)=>sF3(E,B))}function RHu(...u){return YHu.useCallback(oF3(...u),u)}var THu=Eu(Gu(),1),Mw0=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?THu.useLayoutEffect:()=>{};function tF3(u,B){return t7.useReducer((E,A)=>{let C=B[E][A];return C!==null&&C!==void 0?C:E},u)}var Zw0=(u)=>{let{present:B,children:E}=u,A=eF3(B),C=typeof E==="function"?E({present:A.isPresent}):t7.Children.only(E),D=RHu(A.ref,C.ref);return typeof E==="function"||A.isPresent?t7.cloneElement(C,{ref:D}):null};Zw0.displayName="Presence";function eF3(u){let[B,E]=t7.useState(),A=t7.useRef({}),C=t7.useRef(u),D=t7.useRef("none"),F=u?"mounted":"unmounted",[U,z]=tF3(F,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return t7.useEffect(()=>{let k=us(A.current);D.current=U==="mounted"?k:"none"},[U]),Mw0(()=>{let k=A.current,f=C.current;if(f!==u){let b=D.current,M=us(k);if(u)z("MOUNT");else if(M==="none"||(k===null||k===void 0?void 0:k.display)==="none")z("UNMOUNT");else if(f&&b!==M)z("ANIMATION_OUT");else z("UNMOUNT");C.current=u}},[u,z]),Mw0(()=>{if(B){let k=(l)=>{let M=us(A.current).includes(l.animationName);if(l.target===B&&M)OHu.flushSync(()=>z("ANIMATION_END"))},f=(l)=>{if(l.target===B)D.current=us(A.current)};return B.addEventListener("animationstart",f),B.addEventListener("animationcancel",k),B.addEventListener("animationend",k),()=>{B.removeEventListener("animationstart",f),B.removeEventListener("animationcancel",k),B.removeEventListener("animationend",k)}}else z("ANIMATION_END")},[B,z]),{isPresent:["mounted","unmountSuspended"].includes(U),ref:t7.useCallback((k)=>{if(k)A.current=getComputedStyle(k);E(k)},[])}}function us(u){return(u===null||u===void 0?void 0:u.animationName)||"none"}var fx=Eu(Gu(),1),DU3=Eu(aE(),1);var O9=Eu(Gu(),1);var uU3=Eu(Gu(),1);function BU3(u,B){if(typeof u==="function")u(B);else if(u!==null&&u!==void 0)u.current=B}function IHu(...u){return(B)=>u.forEach((E)=>BU3(E,B))}var ww0=O9.forwardRef((u,B)=>{let{children:E,...A}=u,C=O9.Children.toArray(E),D=C.find(AU3);if(D){let F=D.props.children,U=C.map((z)=>{if(z===D){if(O9.Children.count(F)>1)return O9.Children.only(null);return O9.isValidElement(F)?F.props.children:null}else return z});return O9.createElement(Jw0,i6({},A,{ref:B}),O9.isValidElement(F)?O9.cloneElement(F,void 0,U):null)}return O9.createElement(Jw0,i6({},A,{ref:B}),E)});ww0.displayName="Slot";var Jw0=O9.forwardRef((u,B)=>{let{children:E,...A}=u;if(O9.isValidElement(E))return O9.cloneElement(E,{...CU3(A,E.props),ref:IHu(B,E.ref)});return O9.Children.count(E)>1?O9.Children.only(null):null});Jw0.displayName="SlotClone";var EU3=({children:u})=>{return O9.createElement(O9.Fragment,null,u)};function AU3(u){return O9.isValidElement(u)&&u.type===EU3}function CU3(u,B){let E={...B};for(let A in B){let C=u[A],D=B[A];if(/^on[A-Z]/.test(A)){if(C&&D)E[A]=(...U)=>{D(...U),C(...U)};else if(C)E[A]=C}else if(A==="style")E[A]={...C,...D};else if(A==="className")E[A]=[C,D].filter(Boolean).join(" ")}return{...u,...E}}var FU3=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],BP=FU3.reduce((u,B)=>{let E=fx.forwardRef((A,C)=>{let{asChild:D,...F}=A,U=D?ww0:B;return fx.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),fx.createElement(U,i6({},F,{ref:C}))});return E.displayName=`Primitive.${B}`,{...u,[B]:E}},{});var dM=Eu(Gu(),1);var lx=Eu(Gu(),1);function Kw0(u){let B=lx.useRef(u);return lx.useEffect(()=>{B.current=u}),lx.useMemo(()=>(...E)=>{var A;return(A=B.current)===null||A===void 0?void 0:A.call(B,...E)},[])}function PHu({prop:u,defaultProp:B,onChange:E=()=>{}}){let[A,C]=UU3({defaultProp:B,onChange:E}),D=u!==void 0,F=D?u:A,U=Kw0(E),z=dM.useCallback((k)=>{if(D){let l=typeof k==="function"?k(u):k;if(l!==u)U(l)}else C(k)},[D,u,C,U]);return[F,z]}function UU3({defaultProp:u,onChange:B}){let E=dM.useState(u),[A]=E,C=dM.useRef(A),D=Kw0(B);return dM.useEffect(()=>{if(C.current!==A)D(A),C.current=A},[A,C,D]),E}var Qw0=Eu(Gu(),1);var jHu=Eu(Gu(),1),NHu=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?jHu.useLayoutEffect:()=>{};var zU3=Qw0["useId".toString()]||(()=>{return}),kU3=0;function iHu(u){let[B,E]=Qw0.useState(zU3());return NHu(()=>{if(!u)E((A)=>A!==null&&A!==void 0?A:String(kU3++))},[u]),u||(B?`radix-${B}`:"")}var aHu="Tabs",[fU3,LY1]=MHu(aHu,[bw0]),VHu=bw0(),[lU3,Gw0]=fU3(aHu),bU3=y5.forwardRef((u,B)=>{let{__scopeTabs:E,value:A,onValueChange:C,defaultValue:D,orientation:F="horizontal",dir:U,activationMode:z="automatic",...k}=u,f=ed(U),[l,b]=PHu({prop:A,onChange:C,defaultProp:D});return y5.createElement(lU3,{scope:E,baseId:iHu(),value:l,onValueChange:b,orientation:F,dir:f,activationMode:z},y5.createElement(BP.div,i6({dir:f,"data-orientation":F},k,{ref:B})))}),MU3="TabsList",ZU3=y5.forwardRef((u,B)=>{let{__scopeTabs:E,loop:A=!0,...C}=u,D=Gw0(MU3,E),F=VHu(E);return y5.createElement(SHu,i6({asChild:!0},F,{orientation:D.orientation,dir:D.dir,loop:A}),y5.createElement(BP.div,i6({role:"tablist","aria-orientation":D.orientation},C,{ref:B})))}),JU3="TabsTrigger",wU3=y5.forwardRef((u,B)=>{let{__scopeTabs:E,value:A,disabled:C=!1,...D}=u,F=Gw0(JU3,E),U=VHu(E),z=hHu(F.baseId,A),k=mHu(F.baseId,A),f=A===F.value;return y5.createElement(WHu,i6({asChild:!0},U,{focusable:!C,active:f}),y5.createElement(BP.button,i6({type:"button",role:"tab","aria-selected":f,"aria-controls":k,"data-state":f?"active":"inactive","data-disabled":C?"":void 0,disabled:C,id:z},D,{ref:B,onMouseDown:od(u.onMouseDown,(l)=>{if(!C&&l.button===0&&l.ctrlKey===!1)F.onValueChange(A);else l.preventDefault()}),onKeyDown:od(u.onKeyDown,(l)=>{if([" ","Enter"].includes(l.key))F.onValueChange(A)}),onFocus:od(u.onFocus,()=>{let l=F.activationMode!=="manual";if(!f&&!C&&l)F.onValueChange(A)})})))}),KU3="TabsContent",QU3=y5.forwardRef((u,B)=>{let{__scopeTabs:E,value:A,forceMount:C,children:D,...F}=u,U=Gw0(KU3,E),z=hHu(U.baseId,A),k=mHu(U.baseId,A),f=A===U.value,l=y5.useRef(f);return y5.useEffect(()=>{let b=requestAnimationFrame(()=>l.current=!1);return()=>cancelAnimationFrame(b)},[]),y5.createElement(Zw0,{present:C||f},({present:b})=>y5.createElement(BP.div,i6({"data-state":f?"active":"inactive","data-orientation":U.orientation,role:"tabpanel","aria-labelledby":z,hidden:!b,id:k,tabIndex:0},F,{ref:B,style:{...u.style,animationDuration:l.current?"0s":void 0}}),b&&D))});function hHu(u,B){return`${u}-trigger-${B}`}function mHu(u,B){return`${u}-content-${B}`}var Bs=bU3,Es=ZU3,As=wU3,Cs=QU3;Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();var Otu=Eu(Gu(),1),ss=Eu(Gu(),1),q7=Eu(Gu(),1),ptu=Eu(cHu(),1),stu=Eu(Gu(),1),_D=Eu(Gu(),1),HP=Eu(Gu(),1);Mu();var ow0=Eu(Gu(),1),rD=Eu(Gu(),1);Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();rb();Mu();Mu();Mu();Mu();Mu();Mu();var gD=Eu(Gu(),1),Ueu=Eu(Xq(),1),oU=Eu(Gu(),1),zeu=Eu(Gu(),1),keu=Eu(Gu(),1),CZ=Eu(Gu(),1),Wx=Eu(Gu(),1),feu=Eu(Xq(),1),Yx=Eu(Gu(),1),LK0=Eu(aE(),1),beu=Eu(Gu(),1),GQ=Eu(Gu(),1),os=Eu(Gu(),1);function iU3(u,B,E,A){Object.defineProperty(u,B,{get:E,set:A,enumerable:!0,configurable:!0})}var aU3={};iU3(aU3,"LaserPointer",()=>oM);function d9([u,B,E],[A,C,D]){return[u+A,B+C,E+D]}function EP([u,B,E],[A,C,D]){return[u-A,B-C,E-D]}function N2([u,B,E],A){return[u*A,B*A,E*A]}function bx([u,B,E]){return[u/Math.sqrt(u**2+B**2),B/Math.sqrt(u**2+B**2),E]}function e7([u,B,E],A){return[Math.cos(A)*u-Math.sin(A)*B,Math.sin(A)*u+Math.cos(A)*B,E]}function VU3(u,B,E){return d9(u,N2(EP(B,u),E))}function gHu(u,B,E){return Math.atan2(E[1]-u[1],E[0]-u[0])-Math.atan2(B[1]-u[1],B[0]-u[0])}function _Hu(u){return Math.atan2(Math.sin(u),Math.cos(u))}function nHu([u,B]){return Math.sqrt(u**2+B**2)}function Mx([u,B],[E,A]){return Math.sqrt((E-u)**2+(A-B)**2)}function hU3(u){if(u.length<2)return 0;let B=0;for(let E=1;E<=u.length-1;E++)B+=Mx(u[E-1],u[E]);return B+=Mx(u[u.length-2],u[u.length-1]),B}var mU3=(u,B,E)=>Math.max(B,Math.min(E,u));function rU3(u,B,E){let A=Mx(B,E);if(A===0)return Mx(u,B);let C=mU3(((u[0]-B[0])*(E[0]-B[0])+(u[1]-B[1])*(E[1]-B[1]))/A**2,0,1),D=[B[0]+C*(E[0]-B[0]),B[1]+C*(E[1]-B[1]),u[2]];return Mx(D,u)}function Ds(u,B){if(B===0)return u;if(u.length<=2)return u;let E=u[0],A=u[u.length-1],[C,D]=u.reduce(([F,U],z,k)=>{let f=rU3(z,E,A);return f>F?[f,k]:[F,U]},[0,-1]);if(C>=B){let F=u[D];return[...Ds([E,...u.slice(1,D),F],B).slice(0,-1),F,...Ds([F,...u.slice(D,-1),A],B).slice(1)]}else return[E,A]}class oM{static{this.defaults={size:2,streamline:0.45,simplify:0.1,simplifyPhase:"output",keepHead:!1,sizeMapping:()=>1}}static{this.constants={cornerDetectionMaxAngle:75,cornerDetectionVariance:(u)=>u>35?0.5:1,maxTailLength:50}}constructor(u){this.originalPoints=[],this.stablePoints=[],this.tailPoints=[],this.isFresh=!0,this.options=Object.assign({},oM.defaults,u)}get lastPoint(){return this.tailPoints[this.tailPoints.length-1]??this.stablePoints[this.stablePoints.length-1]}addPoint(u){let B=this.originalPoints[this.originalPoints.length-1];if(B&&B[0]===u[0]&&B[1]===u[1])return;if(this.originalPoints.push(u),this.isFresh){this.isFresh=!1,this.stablePoints.push(u);return}if(this.options.streamline>0)u=VU3(this.lastPoint,u,1-this.options.streamline);if(this.tailPoints.push(u),hU3(this.tailPoints)>oM.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(u,B,E,A,C){return(u??this.options.size)*this.options.sizeMapping({pressure:B,runningLength:C,currentIndex:E,totalLength:A})}getStrokeOutline(u){if(this.isFresh)return[];let B=[...this.stablePoints,...this.tailPoints];if(this.options.simplify>0&&this.options.simplifyPhase==="input")B=Ds(B,this.options.simplify);let E=B.length;if(E===0)return[];if(E===1){let q=B[0],x=this.getSize(u,q[2],0,E,0);if(x<0.5)return[];let v=[];for(let W=0;W<=Math.PI*2;W+=Math.PI/16)v.push(d9(q,N2(e7([1,0,0],W),x)));return v.push(d9(q,N2([1,0,0],this.getSize(u,q[2],0,E,0)))),v}if(E===2){let q=B[0],x=B[1],v=this.getSize(u,q[2],0,E,0),W=this.getSize(u,x[2],0,E,0);if(v<0.5||W<0.5)return[];let S=[],T=gHu(q,[q[0],q[1]-100,q[2]],x);for(let R=T;R<=Math.PI+T;R+=Math.PI/16)S.push(d9(q,N2(e7([1,0,0],R),v)));for(let R=Math.PI+T;R<=Math.PI*2+T;R+=Math.PI/16)S.push(d9(x,N2(e7([1,0,0],R),W)));return S.push(S[0]),S}let A=[],C=[],D=0,F=0,U=0,z=0;for(let q=1;q<E-1;q++){let x=B[q-1],v=B[q],W=B[q+1],S=v[2],T=Mx(x,v);z+=T,D=F+(T-F)*0.2;let R=this.getSize(u,S,q,E,z);if(R===0){U=q+1;continue}let Y=bx(EP(x,v)),a=bx(EP(W,v)),I=e7(Y,Math.PI/2),O=e7(Y,-Math.PI/2),i=e7(a,Math.PI/2),N=e7(a,-Math.PI/2),V=d9(v,N2(I,R)),h=d9(v,N2(O,R)),r=d9(v,N2(i,R)),m=d9(v,N2(N,R)),$=d9(I,N),y=d9(O,i),p=d9(v,N2(nHu($)===0?Y:bx($),R)),e=d9(v,N2(nHu(y)===0?a:bx(y),R)),_=_Hu(gHu(v,x,W)),b0=oM.constants.cornerDetectionMaxAngle/180*Math.PI*oM.constants.cornerDetectionVariance(D);if(Math.abs(_)<b0){let B0=Math.abs(_Hu(Math.PI-_));if(B0===0)continue;if(_<0){C.push(h,e);for(let k0=0;k0<=B0;k0+=B0/4)A.push(d9(v,e7(N2(I,R),k0)));for(let k0=B0;k0>=0;k0-=B0/4)C.push(d9(v,e7(N2(I,R),k0)));C.push(e,r)}else{A.push(V,p);for(let k0=0;k0<=B0;k0+=B0/4)C.push(d9(v,e7(N2(I,-R),-k0)));for(let k0=B0;k0>=0;k0-=B0/4)A.push(d9(v,e7(N2(I,-R),-k0)));A.push(p,m)}}else A.push(p),C.push(e);F=D}if(U>=E-2)if(this.options.keepHead){let q=B[E-1],x=[];for(let v=0;v<=Math.PI*2;v+=Math.PI/16)x.push(d9(q,N2(e7([1,0,0],v),this.options.size)));return x.push(d9(q,N2([1,0,0],this.options.size))),x}else return[];let k=B[U],f=B[U+1],l=B[E-2],b=B[E-1],M=bx(EP(f,k)),Z=bx(EP(l,b)),J=e7(M,-Math.PI/2),w=e7(Z,Math.PI/2),K=this.getSize(u,k[2],0,E,0),Q=[],G=this.options.keepHead?this.options.size:this.getSize(u,l[2],E-2,E,z),L=[];if(K>1){for(let q=0;q<=Math.PI;q+=Math.PI/16)Q.unshift(d9(k,e7(N2(J,K),-q)));Q.unshift(d9(k,N2(J,-K)))}else Q.push(k);for(let q=0;q<=Math.PI*3;q+=Math.PI/16)L.push(d9(b,e7(N2(w,-G),-q)));let H=[...Q,...A,...L.reverse(),...C.reverse()];if(Q.length>0)H.push(Q[0]);if(this.options.simplify>0&&this.options.simplifyPhase==="output")return Ds(H,this.options.simplify);return H}}Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();Mu();var ts=Eu(Gu(),1),xeu=Eu(Xq(),1),uJ3=Eu(Gu(),1),isu=zp(),{useAtom:P9,useSetAtom:xs,useAtomValue:asu,useStore:$R1}=isu,$z3=isu.Provider,mD=QX(),yz3=xCu({"./locales/ar-SA.json":()=>Promise.resolve().then(() => (qLu(),LLu)),"./locales/az-AZ.json":()=>Promise.resolve().then(() => (oLu(),sLu)),"./locales/bg-BG.json":()=>Promise.resolve().then(() => (Squ(),vqu)),"./locales/bn-BD.json":()=>Promise.resolve().then(() => (BXu(),uXu)),"./locales/ca-ES.json":()=>Promise.resolve().then(() => (TXu(),RXu)),"./locales/cs-CZ.json":()=>Promise.resolve().then(() => (Dxu(),Cxu)),"./locales/da-DK.json":()=>Promise.resolve().then(() => (jxu(),Pxu)),"./locales/de-DE.json":()=>Promise.resolve().then(() => (kvu(),zvu)),"./locales/el-GR.json":()=>Promise.resolve().then(() => (Vvu(),avu)),"./locales/en.json":()=>Promise.resolve().then(() => (mvu(),hvu)),"./locales/es-ES.json":()=>Promise.resolve().then(() => (JSu(),ZSu)),"./locales/eu-ES.json":()=>Promise.resolve().then(() => (cSu(),ySu)),"./locales/fa-IR.json":()=>Promise.resolve().then(() => (GWu(),QWu)),"./locales/fi-FI.json":()=>Promise.resolve().then(() => (pWu(),nWu)),"./locales/fr-FR.json":()=>Promise.resolve().then(() => (XYu(),qYu)),"./locales/gl-ES.json":()=>Promise.resolve().then(() => (tYu(),oYu)),"./locales/he-IL.json":()=>Promise.resolve().then(() => (WRu(),SRu)),"./locales/hi-IN.json":()=>Promise.resolve().then(() => (ETu(),BTu)),"./locales/hu-HU.json":()=>Promise.resolve().then(() => (OTu(),TTu)),"./locales/id-ID.json":()=>Promise.resolve().then(() => (FOu(),DOu)),"./locales/it-IT.json":()=>Promise.resolve().then(() => (NOu(),jOu)),"./locales/ja-JP.json":()=>Promise.resolve().then(() => (fIu(),kIu)),"./locales/kaa.json":()=>Promise.resolve().then(() => (hIu(),VIu)),"./locales/kab-KAB.json":()=>Promise.resolve().then(() => (ZPu(),MPu)),"./locales/kk-KZ.json":()=>Promise.resolve().then(() => (yPu(),$Pu)),"./locales/km-KH.json":()=>Promise.resolve().then(() => (Qju(),Kju)),"./locales/ko-KR.json":()=>Promise.resolve().then(() => (nju(),_ju)),"./locales/ku-TR.json":()=>Promise.resolve().then(() => (qNu(),LNu)),"./locales/lt-LT.json":()=>Promise.resolve().then(() => (oNu(),sNu)),"./locales/lv-LV.json":()=>Promise.resolve().then(() => (Siu(),viu)),"./locales/mr-IN.json":()=>Promise.resolve().then(() => (Bau(),uau)),"./locales/my-MM.json":()=>Promise.resolve().then(() => (Tau(),Rau)),"./locales/nb-NO.json":()=>Promise.resolve().then(() => (DVu(),CVu)),"./locales/nl-NL.json":()=>Promise.resolve().then(() => (jVu(),PVu)),"./locales/nn-NO.json":()=>Promise.resolve().then(() => (khu(),zhu)),"./locales/oc-FR.json":()=>Promise.resolve().then(() => (Vhu(),ahu)),"./locales/pa-IN.json":()=>Promise.resolve().then(() => (Mmu(),bmu)),"./locales/percentages.json":()=>Promise.resolve().then(() => (Jmu(),Zmu)),"./locales/pl-PL.json":()=>Promise.resolve().then(() => (cmu(),ymu)),"./locales/pt-BR.json":()=>Promise.resolve().then(() => (Gru(),Qru)),"./locales/pt-PT.json":()=>Promise.resolve().then(() => (pru(),nru)),"./locales/ro-RO.json":()=>Promise.resolve().then(() => (X$u(),q$u)),"./locales/ru-RU.json":()=>Promise.resolve().then(() => (t$u(),o$u)),"./locales/si-LK.json":()=>Promise.resolve().then(() => (Wyu(),Syu)),"./locales/sk-SK.json":()=>Promise.resolve().then(() => (Ecu(),Bcu)),"./locales/sl-SI.json":()=>Promise.resolve().then(() => (Ocu(),Tcu)),"./locales/sv-SE.json":()=>Promise.resolve().then(() => (Fgu(),Dgu)),"./locales/ta-IN.json":()=>Promise.resolve().then(() => (Ngu(),jgu)),"./locales/th-TH.json":()=>Promise.resolve().then(() => (f_u(),k_u)),"./locales/tr-TR.json":()=>Promise.resolve().then(() => (h_u(),V_u)),"./locales/uk-UA.json":()=>Promise.resolve().then(() => (Znu(),Mnu)),"./locales/vi-VN.json":()=>Promise.resolve().then(() => (ynu(),$nu)),"./locales/zh-CN.json":()=>Promise.resolve().then(() => (Qpu(),Kpu)),"./locales/zh-HK.json":()=>Promise.resolve().then(() => (npu(),_pu)),"./locales/zh-TW.json":()=>Promise.resolve().then(() => (qdu(),Ldu))}),cz3=85,Lx={code:"en",label:"English"},EK0=[Lx,...[{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((u)=>Cp[u.code]>=cz3).sort((u,B)=>u.label>B.label?1:-1)],ws="__test__";Z3.DEV&&EK0.unshift({code:ws,label:"test language"},{code:`${ws}.rtl`,label:"test language (rtl)",rtl:!0});var wx=Lx,ls={},Vsu=async(u)=>{if(wx=u,document.documentElement.dir=wx.rtl?"rtl":"ltr",document.documentElement.lang=wx.code,u.code.startsWith(ws))ls={};else try{ls=await yz3(`./locales/${wx.code}.json`)}catch(B){console.error(`Failed to load language ${u.code}:`,B.message),ls=cO}mD.set(hsu,u.code)},ZP=()=>wx,xdu=(u,B)=>{for(let E=0;E<B.length;++E){let A=B[E];if(u[A]===void 0)return;u=u[A]}if(typeof u=="string")return u},C0=(u,B,E)=>{if(wx.code.startsWith(ws))return`[[${B?`${u}(${JSON.stringify(B).slice(1,-1)})`:u}]]`;let A=u.split("."),C=xdu(ls,A)||xdu(cO,A)||E;if(C===void 0){let D=`Can't find translation for ${u}`;if(Z3.PROD)return console.warn(D),"";throw Error(D)}if(B)for(let D in B)C=C.replace(`{{${D}}}`,String(B[D]));return C},hsu=I2(Lx.code),AB=()=>{let u=asu(hsu);return{t:C0,langCode:u}},gz3=({size:u="1em",circleWidth:B=8,synchronized:E=!1,className:A=""})=>{let C=-(msu.default.useRef(Date.now()).current%1600);return P("div",{className:`Spinner ${A}`,children:P("svg",{viewBox:"0 0 100 100",style:{width:u,height:u,"--spinner-delay":E?`${C}ms`:0},children:P("circle",{cx:"50",cy:"50",r:50-B/2,strokeWidth:B,fill:"none",strokeMiterlimit:"10"})})})},Zf=gz3,rsu=({delay:u,theme:B})=>{let[E,A]=vs.useState(!!u);return vs.useEffect(()=>{if(!u)return;let C=setTimeout(()=>{A(!1)},u);return()=>clearTimeout(C)},[u]),E?null:l0("div",{className:Yu("LoadingMessage",{"LoadingMessage--dark":B===_3.DARK}),children:[P("div",{children:P(Zf,{})}),P("div",{className:"LoadingMessage-text",children:C0("labels.loadingScene")})]})},_z3=(u)=>{let[B,E]=Xs.useState(!0);return Xs.useEffect(()=>{let A=async()=>{await Vsu(C),E(!1)},C=EK0.find((D)=>D.code===u.langCode)||Lx;A()},[u.langCode]),B?P(rsu,{theme:u.theme}):u.children},A1=$D.default.forwardRef(({size:u="medium",visible:B=!0,className:E="",...A},C)=>{let{id:D}=Bz(),F=$D.default.useRef(null);$D.default.useImperativeHandle(C,()=>F.current);let U=`ToolIcon_size_${u}`,[z,k]=$D.useState(!1),f=$D.useRef(!0),l=async(M)=>{let Z="onClick"in A&&A.onClick?.(M);if(uX(Z))try{k(!0),await Z}catch(J){if(J instanceof xO)console.warn(J);else throw J}finally{f.current&&k(!1)}};$D.useEffect(()=>(f.current=!0,()=>{f.current=!1}),[]);let b=$D.useRef(null);if(A.type==="button"||A.type==="icon"||A.type==="submit"){let M=A.type==="icon"?"button":A.type;return l0("button",{className:Yu("ToolIcon_type_button",U,E,B&&!A.hidden?"ToolIcon_type_button--show":"ToolIcon_type_button--hide",{ToolIcon:!A.hidden,"ToolIcon--selected":A.selected,"ToolIcon--plain":A.type==="icon"}),style:A.style,"data-testid":A["data-testid"],hidden:A.hidden,title:A.title,"aria-label":A["aria-label"],type:M,onClick:l,ref:F,disabled:z||A.isLoading||!!A.disabled,children:[(A.icon||A.label)&&l0("div",{className:"ToolIcon__icon","aria-hidden":"true","aria-disabled":!!A.disabled,children:[A.icon||A.label,A.keyBindingLabel&&P("span",{className:"ToolIcon__keybinding",children:A.keyBindingLabel}),A.isLoading&&P(Zf,{})]}),A.showAriaLabel&&l0("div",{className:"ToolIcon__label",children:[A["aria-label"]," ",z&&P(Zf,{})]}),A.children]})}return l0("label",{className:Yu("ToolIcon",E),title:A.title,onPointerDown:(M)=>{b.current=M.pointerType||null,A.onPointerDown?.({pointerType:M.pointerType||null})},onPointerUp:()=>{requestAnimationFrame(()=>{b.current=null})},children:[P("input",{className:`ToolIcon_type_radio ${U}`,type:"radio",name:A.name,"aria-label":A["aria-label"],"aria-keyshortcuts":A["aria-keyshortcuts"],"data-testid":A["data-testid"],id:`${D}-${A.id}`,onChange:()=>{A.onChange?.({pointerType:b.current})},checked:A.checked,ref:F}),l0("div",{className:"ToolIcon__icon",children:[A.icon,A.keyBindingLabel&&P("span",{className:"ToolIcon__keybinding",children:A.keyBindingLabel})]})]})});A1.displayName="ToolButton";var nz3=(u,B,E)=>{let A=new Set(N3(u.filter((f)=>u3(f)),B).map((f)=>f.id)),C={},D=E.scene.getNonDeletedElementsMap(),F=new Set;for(let f of A){let l=HD(u,f);for(let b of l)if(!F.has(b.id)){if(X6(b)){let M=l5(b,D);M&&(C[M.id]=!0)}else C[b.id]=!0;F.add(b.id)}}let U=!0,z=u.map((f)=>{if(B.selectedElementIds[f.id]){let l=X6(f)?l5(f,D):null;return f.frameId&&A.has(f.frameId)?(U=!1,C[f.id]=!0,f):l?.frameId&&A.has(l?.frameId)?f:(f.boundElements&&f.boundElements.forEach((b)=>{let M=E.scene.getNonDeletedElementsMap().get(b.id);M&&K4(M)&&(Wu(M,{startBinding:f.id===M.startBinding?.elementId?null:M.startBinding,endBinding:f.id===M.endBinding?.elementId?null:M.endBinding}),Wu(M,{points:M.points}))}),O3(f,{isDeleted:!0}))}return f.frameId&&A.has(f.frameId)?(U=!1,X6(f)||(C[f.id]=!0),O3(f,{frameId:null})):X6(f)&&B.selectedElementIds[f.containerId]?O3(f,{isDeleted:!0}):f}),k=B.editingGroupId;if(U&&B.editingGroupId){let f=x6(z,B.editingGroupId).filter((l)=>!l.isDeleted);if(f.length>1)f[0]&&(C[f[0].id]=!0);else{k=null,f[0]&&(C[f[0].id]=!0);let l=f[0];if(l){let b=l.groupIds.findIndex((Z)=>Z===B.editingGroupId),M=l.groupIds[b+1];if(M){let Z=x6(z,M).filter((J)=>!J.isDeleted);Z.length>1&&(k=M,Z.forEach((J)=>{C[J.id]=!0}))}}}}return{elements:z,appState:{...B,...y7({selectedElementIds:C,editingGroupId:k},z,B,null)}}},vdu=(u,B)=>{if(u.editingGroupId){let E=x6(z6(B),u.editingGroupId);if(E.length)return{...u,selectedElementIds:{[E[0].id]:!0}}}return u},$su=C4({name:"deleteSelectedElements",label:"labels.delete",icon:MM,trackEvent:{category:"element",action:"delete"},perform:(u,B,E,A)=>{if(B.editingLinearElement){let{elementId:F,selectedPointsIndices:U,startBindingElement:z,endBindingElement:k}=B.editingLinearElement,f=A.scene.getNonDeletedElementsMap(),l=M4.getElement(F,f);if(!l||U==null)return!1;if(l.points.length<2){let M=u.map((J)=>J.id===l.id?O3(J,{isDeleted:!0}):J),Z=vdu(B,M);return{elements:M,appState:{...Z,editingLinearElement:null},captureUpdate:Xu.IMMEDIATELY}}let b={startBindingElement:U?.includes(0)?null:z,endBindingElement:U?.includes(l.points.length-1)?null:k};return M4.deletePoints(l,U),{elements:u,appState:{...B,editingLinearElement:{...B.editingLinearElement,...b,selectedPointsIndices:U?.[0]>0?[U[0]-1]:[0]}},captureUpdate:Xu.IMMEDIATELY}}let{elements:C,appState:D}=nz3(u,B,A);return pf0(C,C.filter((F)=>F.isDeleted)),D=vdu(D,C),{elements:C,appState:{...D,activeTool:n9(B,{type:"selection"}),multiElement:null,activeEmbeddable:null},captureUpdate:Z2(z6(u),B)?Xu.IMMEDIATELY:Xu.EVENTUALLY}},keyTest:(u,B,E)=>(u.key===y0.BACKSPACE||u.key===y0.DELETE)&&!u[y0.CTRL_OR_CMD],PanelComponent:({elements:u,appState:B,updateData:E})=>P(A1,{type:"button",icon:MM,title:C0("labels.delete"),"aria-label":C0("labels.delete"),onClick:()=>E(null),visible:Z2(z6(u),B)})}),hw0=(u,B)=>u.frameId===B||u.id===B,ysu=(u,B,E)=>{let A=[],C=[],D=null,F=-1,U=e4(E||N3(u,B,{includeBoundTextElement:!0,includeElementsInFrames:!0}));for(;++F<u.length;){let z=u[F];U.get(z.id)?(C.length&&(A=A.concat(C),C=[]),A.push(F),D=F+1):z.isDeleted&&D===F?(D=F+1,C.push(F)):C=[]}return A},pz3=(u)=>{let B=0;return u.reduce((E,A,C)=>(C>0&&u[C-1]!==A-1&&(B=++B),(E[B]||(E[B]=[])).push(A),E),[])},Sdu=(u,B,E)=>{if("containerId"in u&&u.containerId){let A=RU.getScene(u).getElement(u.containerId);if(A)return E==="left"?Math.min(B.indexOf(A),B.indexOf(u)):Math.max(B.indexOf(A),B.indexOf(u))}else{let A=u.boundElements?.find((C)=>C.type!=="arrow")?.id;if(A){let C=RU.getScene(u).getElement(A);if(C)return E==="left"?Math.min(B.indexOf(C),B.indexOf(u)):Math.max(B.indexOf(C),B.indexOf(u))}}},dz3=(u,B)=>{let E=-1,A=-1;return u.forEach((C,D)=>{hw0(C,B)&&(E===-1&&(E=D),A=D)}),E===-1?[]:u.slice(E,A+1)},sz3=(u,B,E,A,C)=>{let D=B[E],F=(l)=>l.isDeleted?!1:C?l.frameId===C:u.editingGroupId?l.groupIds.includes(u.editingGroupId):!0,U=A==="left"?kM(B,(l)=>F(l),Math.max(0,E-1)):mk0(B,(l)=>F(l),E+1),z=B[U];if(!z)return-1;if(u.editingGroupId){if(D?.groupIds.join("")===z?.groupIds.join(""))return Sdu(z,B,A)??U;if(!z?.groupIds.includes(u.editingGroupId))return-1}if(!C&&(z.frameId||u3(z))){let l=dz3(B,z.frameId||z.id);return A==="left"?B.indexOf(l[0]):B.indexOf(l[l.length-1])}if(!z.groupIds.length)return Sdu(z,B,A)??U;let k=u.editingGroupId?z.groupIds[z.groupIds.indexOf(u.editingGroupId)-1]:z.groupIds[z.groupIds.length-1],f=x6(B,k);return f.length?A==="left"?B.indexOf(f[0]):B.indexOf(f[f.length-1]):U},csu=(u,B)=>B.reduce((E,A)=>{let C=u[A];return E.set(C.id,C),E},new Map),gsu=(u,B,E)=>{let A=ysu(u,B),C=csu(u,A),D=pz3(A);E==="right"&&(D=D.reverse());let F=new Set(A.filter((U)=>u3(u[U])).map((U)=>u[U].id));return D.forEach((U,z)=>{let k=U[0],f=U[U.length-1],l=E==="left"?k:f,b=U.some((Q)=>{let G=u[Q];return G.frameId&&F.has(G.frameId)})?null:u[l]?.frameId,M=sz3(B,u,l,E,b);if(M===-1||l===M)return;let Z=E==="left"?u.slice(0,M):u.slice(0,k),J=u.slice(k,f+1),w=E==="left"?u.slice(M,k):u.slice(f+1,M+1),K=E==="left"?u.slice(f+1):u.slice(M+1);u=E==="left"?[...Z,...J,...w,...K]:[...Z,...w,...J,...K]}),lD(u,C),u},_su=(u,B,E,A,C)=>{let D=ysu(u,B,C),F=csu(u,D),U=[],z,k;if(E==="left"){if(A)z=mk0(u,(Z)=>hw0(Z,A));else if(B.editingGroupId){let Z=x6(u,B.editingGroupId);if(!Z.length)return u;z=u.indexOf(Z[0])}else z=0;k=D[D.length-1]}else{if(A)k=kM(u,(Z)=>hw0(Z,A));else if(B.editingGroupId){let Z=x6(u,B.editingGroupId);if(!Z.length)return u;k=u.indexOf(Z[Z.length-1])}else k=u.length-1;z=D[0]}z===-1&&(z=0);for(let Z=z;Z<k+1;Z++)D.includes(Z)||U.push(u[Z]);let f=Array.from(F.values()),l=u.slice(0,z),b=u.slice(k+1),M=E==="left"?[...l,...f,...U,...b]:[...l,...U,...f,...b];return lD(M,F),M};function nsu(u,B,E,A){let C=e4(N3(u,B,{includeBoundTextElement:!0,includeElementsInFrames:!0})),D={regularElements:[],frameChildren:new Map},F=new Set;for(let k of u)C.has(k.id)&&u3(k)&&F.add(k.id);for(let k of u)if(C.has(k.id))if(u3(k)||k.frameId&&F.has(k.frameId))D.regularElements.push(k);else if(!k.frameId)D.regularElements.push(k);else{let f=D.frameChildren.get(k.frameId)||[];f.push(k),D.frameChildren.set(k.frameId,f)}let U=u,z=Array.from(D.frameChildren.entries());for(let[k,f]of z)U=A(u,B,E,k,f);return A(U,B,E,null,D.regularElements)}var oz3=(u,B)=>gsu(u,B,"left"),tz3=(u,B)=>gsu(u,B,"right"),ez3=(u,B)=>nsu(u,B,"left",_su),uk3=(u,B)=>nsu(u,B,"right",_su),Bk3=C4({name:"sendBackward",label:"labels.sendBackward",keywords:["move down","zindex","layer"],icon:kf0,trackEvent:{category:"element"},perform:(u,B)=>({elements:oz3(u,B),appState:B,captureUpdate:Xu.IMMEDIATELY}),keyPriority:40,keyTest:(u)=>u[y0.CTRL_OR_CMD]&&!u.shiftKey&&u.code===U1.BRACKET_LEFT,PanelComponent:({updateData:u,appState:B})=>P("button",{type:"button",className:"zIndexButton",onClick:()=>u(null),title:`${C0("labels.sendBackward")} — ${Su("CtrlOrCmd+[")}`,children:kf0})}),Ek3=C4({name:"bringForward",label:"labels.bringForward",keywords:["move up","zindex","layer"],icon:zf0,trackEvent:{category:"element"},perform:(u,B)=>({elements:tz3(u,B),appState:B,captureUpdate:Xu.IMMEDIATELY}),keyPriority:40,keyTest:(u)=>u[y0.CTRL_OR_CMD]&&!u.shiftKey&&u.code===U1.BRACKET_RIGHT,PanelComponent:({updateData:u,appState:B})=>P("button",{type:"button",className:"zIndexButton",onClick:()=>u(null),title:`${C0("labels.bringForward")} — ${Su("CtrlOrCmd+]")}`,children:zf0})}),Ak3=C4({name:"sendToBack",label:"labels.sendToBack",keywords:["move down","zindex","layer"],icon:lf0,trackEvent:{category:"element"},perform:(u,B)=>({elements:ez3(u,B),appState:B,captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>bD?u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.BRACKET_LEFT:u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.code===U1.BRACKET_LEFT,PanelComponent:({updateData:u,appState:B})=>P("button",{type:"button",className:"zIndexButton",onClick:()=>u(null),title:`${C0("labels.sendToBack")} — ${bD?Su("CtrlOrCmd+Alt+["):Su("CtrlOrCmd+Shift+[")}`,children:lf0})}),Ck3=C4({name:"bringToFront",label:"labels.bringToFront",keywords:["move up","zindex","layer"],icon:ff0,trackEvent:{category:"element"},perform:(u,B)=>({elements:uk3(u,B),appState:B,captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>bD?u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.BRACKET_RIGHT:u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.code===U1.BRACKET_RIGHT,PanelComponent:({updateData:u,appState:B})=>P("button",{type:"button",className:"zIndexButton",onClick:(E)=>u(null),title:`${C0("labels.bringToFront")} — ${bD?Su("CtrlOrCmd+Alt+]"):Su("CtrlOrCmd+Shift+]")}`,children:ff0})}),Dk3=C4({name:"selectAll",label:"labels.selectAll",icon:Llu,trackEvent:{category:"canvas"},viewMode:!1,perform:(u,B,E,A)=>{if(B.editingLinearElement)return!1;let C=u.filter((D)=>!D.isDeleted&&!(l4(D)&&D.containerId)&&!D.locked).reduce((D,F)=>(D[F.id]=!0,D),{});return{appState:{...B,...y7({editingGroupId:null,selectedElementIds:C},z6(u),B,A),selectedLinearElement:Object.keys(C).length===1&&W3(u[0])?new M4(u[0]):null},captureUpdate:Xu.IMMEDIATELY}},keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.key===y0.A}),Fk3=(u)=>{let B=u.slice(),E=new Set,A=(D)=>{let F=D[0]?.groupIds?.join(""),U=[D[0]],z=[];for(let k of D.slice(1))k.groupIds?.join("")===F?U.push(k):z.push(k);return z.length?[...U,...A(z)]:U},C=new Map;return B.forEach((D,F)=>{if(!C.has(D.id))if(D.groupIds?.length){let U=D.groupIds[D.groupIds.length-1],z=B.slice(F).filter((k)=>{let f=k?.groupIds?.some((l)=>l===U);return f&&C.set(k.id,!0),f});for(let k of A(z))E.add(k)}else E.add(D)}),E.size!==u.length?(console.error("normalizeGroupElementOrder: lost some elements... bailing!"),u):[...E]},Uk3=(u)=>{let B=gku(u),E=u.slice(),A=new Set;return E.forEach((C,D)=>{C&&(C.boundElements?.length?(A.add(C),E[D]=null,C.boundElements.forEach((F)=>{let U=B.get(F.id);U&&F.type==="text"&&(A.add(U[0]),E[U[1]]=null)})):C.type==="text"&&C.containerId&&B.get(C.containerId)?.[0].boundElements?.find((F)=>F.id===C.id)||(A.add(C),E[D]=null))}),A.size!==u.length?(console.error("normalizeBoundElementsOrder: lost some elements... bailing!"),u):[...A]},zk3=(u)=>Uk3(Fk3(u)),kk3=C4({name:"duplicateSelection",label:"labels.duplicateSelection",icon:t_,trackEvent:{category:"element"},perform:(u,B,E,A)=>{if(B.editingLinearElement)try{let D=M4.duplicateSelectedPoints(B,A.scene.getNonDeletedElementsMap());return{elements:u,appState:D,captureUpdate:Xu.IMMEDIATELY}}catch{return!1}let C=fk3(u,B);if(A.props.onDuplicate&&C.elements){let D=A.props.onDuplicate(C.elements,u);D&&(C.elements=D)}return{...C,captureUpdate:Xu.IMMEDIATELY}},keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.key===y0.D,PanelComponent:({elements:u,appState:B,updateData:E})=>P(A1,{type:"button",icon:t_,title:`${C0("labels.duplicateSelection")} — ${Su("CtrlOrCmd+D")}`,"aria-label":C0("labels.duplicateSelection"),onClick:()=>E(null),visible:Z2(z6(u),B)})}),fk3=(u,B)=>{let E=new Map,A=[],C=[],D=new Map,F=new Map,U=e4(u),z=(J)=>{let w=gk0(J).reduce((K,Q)=>{if(f.has(Q.id))return K;f.set(Q.id,!0);let G=bl0(B.editingGroupId,E,Q,{x:Q.x+zO/2,y:Q.y+zO/2});return f.set(G.id,!0),F.set(G.id,G),D.set(Q.id,G.id),C.push(Q),A.push(G),K.push(G),K},[]);return Array.isArray(J)?w:w[0]||null};u=zk3(u);let k=e4(N3(u,B,{includeBoundTextElement:!0,includeElementsInFrames:!0})),f=new Map,l=u.slice(),b=(J,w)=>{l2(J!==-1,"targetIndex === -1 "),!(!Array.isArray(w)&&!w)&&l.splice(J+1,0,...gk0(w))},M=new Set(u.filter((J)=>k.has(J.id)&&u3(J)).map((J)=>J.id));for(let J of u){if(f.has(J.id)||!k.has(J.id))continue;let w=ef0(B,J);if(w){let K=x6(u,w).flatMap((G)=>u3(G)?[...HD(u,G.id),G]:[G]),Q=kM(l,(G)=>G.groupIds?.includes(w));b(Q,z(K));continue}if(!(J.frameId&&M.has(J.frameId))){if(u3(J)){let K=J.id,Q=HD(u,K),G=kM(l,(L)=>L.frameId===K||L.id===K);b(G,z([...Q,J]));continue}if(i8(J)){let K=Y3(J,U),Q=kM(l,(G)=>G.id===J.id||("containerId"in G)&&G.containerId===J.id);K?b(Q,z([J,K])):b(Q,z(J));continue}if(X6(J)){let K=l5(J,U),Q=kM(l,(G)=>G.id===J.id||G.id===K?.id);K?b(Q,z([K,J])):b(Q,z(J));continue}b(kM(l,(K)=>K.id===J.id),z(J))}}Dl0(l,C,D),nf0(l,C,D),jl0(l,C,D);let Z=pn(A);return{elements:l,appState:{...B,...y7({editingGroupId:B.editingGroupId,selectedElementIds:Z.reduce((J,w)=>(X6(w)||(J[w.id]=!0),J),{})},z6(l),B,null)}}},lk3=new Set(["command_palette","export"]),G6=(u,B,E,A)=>{try{if(typeof window>"u"||Z3.VITE_WORKER_ID||Z3.VITE_APP_ENABLE_TRACKING!=="true"||!lk3.has(u)||Z3.DEV)return;Z3.PROD||console.info("trackEvent",{category:u,action:B,label:E,value:A}),window.sa_event&&window.sa_event(B,{category:u,label:E,value:A})}catch(C){console.error("error during analytics",C)}},dsu=psu.forwardRef((u,B)=>{let{title:E,className:A,testId:C,active:D,standalone:F,icon:U,onClick:z}=u;return P("button",{type:"button",ref:B,title:E,"data-testid":C,className:Yu(A,{standalone:F,active:D}),onClick:z,children:U},E)}),tU=(u)=>P("div",{className:"buttonList",children:u.options.map((B)=>u.type==="button"?P(dsu,{icon:B.icon,title:B.text,testId:B.testId,active:B.active??u.value===B.value,onClick:(E)=>u.onClick(B.value,E)},B.text):l0("label",{className:Yu({active:u.value===B.value}),title:B.text,children:[P("input",{type:"radio",name:u.group,onChange:()=>u.onChange(B.value),checked:u.value===B.value,"data-testid":B.testId}),B.icon]},B.text))}),bk3=({onChange:u,type:B,activeColor:E,topPicks:A})=>{let C;return B==="elementStroke"&&(C=Xk0),B==="elementBackground"&&(C=xk0),B==="canvasBackground"&&(C=vk0),A&&(C=A),C?P("div",{className:"color-picker__top-picks",children:C.map((D)=>P("button",{className:Yu("color-picker__button",{active:D===E,"is-transparent":D==="transparent"||!D}),style:{"--swatch-color":D},type:"button",title:D,onClick:()=>u(D),"data-testid":`color-top-pick-${D}`,children:P("div",{className:"color-picker__button-outline"})},D))}):(console.error("Invalid type for TopPicks"),null)},ssu=()=>P("div",{style:{width:1,height:"1rem",backgroundColor:"var(--default-border-color)",margin:"0 auto"}}),Ws=({palette:u,color:B})=>{for(let[E,A]of Object.entries(u))if(Array.isArray(A)){let C=A.indexOf(B);if(C>-1)return{colorName:E,shade:C}}else if(A===B)return{colorName:E,shade:null};return null},mw0=[["q","w","e","r","t"],["a","s","d","f","g"],["z","x","c","v","b"]].flat(),osu=({color:u,palette:B})=>!Object.values(B).flat().includes(u),Mk3=(u,B,E)=>{let A={elementBackground:"backgroundColor",elementStroke:"strokeColor"},C=u.filter((F)=>{if(F.isDeleted)return!1;let U=F[A[B]];return osu({color:U,palette:E})}),D=new Map;return C.forEach((F)=>{let U=F[A[B]];D.has(U)?D.set(U,D.get(U)+1):D.set(U,1)}),[...D.entries()].sort((F,U)=>U[1]-F[1]).map((F)=>F[0]).slice(0,uku)},qx=I2(null),Wdu=(u,B,E)=>(u*299+B*587+E*114)/1000>=160?"black":"white",Zk3=(u,B)=>{if(B){let D=new Option().style;if(D.color=u,D.color){let F=D.color.replace(/^(rgb|rgba)\(/,"").replace(/\)$/,"").replace(/\s/g,"").split(","),U=parseInt(F[0]),z=parseInt(F[1]),k=parseInt(F[2]);return Wdu(U,z,k)}}if(u==="transparent")return"black";let E=parseInt(u.substring(1,3),16),A=parseInt(u.substring(3,5),16),C=parseInt(u.substring(5,7),16);return Wdu(E,A,C)},Jk3=({color:u,keyLabel:B,isCustomColor:E=!1,isShade:A=!1})=>l0("div",{className:"color-picker__button__hotkey-label",style:{color:Zk3(u,E)},children:[A&&"⇧",B]}),AK0=Jk3,wk3=({hex:u,onChange:B,palette:E})=>{let A=Ws({color:u||"transparent",palette:E}),[C,D]=P9(qx),F=Ss.useRef(null);if(Ss.useEffect(()=>{F.current&&C==="shades"&&F.current.focus()},[A,C]),A){let{colorName:U,shade:z}=A,k=E[U];if(Array.isArray(k))return P("div",{className:"color-picker-content--default shades",children:k.map((f,l)=>l0("button",{ref:l===z&&C==="shades"?F:void 0,tabIndex:-1,type:"button",className:Yu("color-picker__button color-picker__button--large",{active:l===z}),"aria-label":"Shade",title:`${U} - ${l+1}`,style:f?{"--swatch-color":f}:void 0,onClick:()=>{B(f),D("shades")},children:[P("div",{className:"color-picker__button-outline"}),P(AK0,{color:f,keyLabel:l+1,isShade:!0})]},l))})}return l0("div",{className:"color-picker-content--default",style:{position:"relative"},tabIndex:-1,children:[P("button",{type:"button",tabIndex:-1,className:"color-picker__button color-picker__button--large color-picker__button--no-focus-visible"}),P("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:C0("colorPicker.noShades")})]})},Kk3=({palette:u,color:B,onChange:E,label:A,activeShade:C})=>{let D=Ws({color:B||"transparent",palette:u}),[F,U]=P9(qx),z=Ys.useRef(null);return Ys.useEffect(()=>{z.current&&F==="baseColors"&&z.current.focus()},[D?.colorName,F]),P("div",{className:"color-picker-content--default",children:Object.entries(u).map(([k,f],l)=>{let b=(Array.isArray(f)?f[C]:f)||"transparent",M=mw0[l],Z=C0(`colors.${k.replace(/\d+/,"")}`,null,"");return l0("button",{ref:D?.colorName===k?z:void 0,tabIndex:-1,type:"button",className:Yu("color-picker__button color-picker__button--large",{active:D?.colorName===k,"is-transparent":b==="transparent"||!b}),onClick:()=>{E(b),U("baseColors")},title:`${Z}${b.startsWith("#")?` ${b}`:""} — ${M}`,"aria-label":`${Z} — ${M}`,style:b?{"--swatch-color":b}:void 0,"data-testid":`color-${k}`,children:[P("div",{className:"color-picker__button-outline"}),P(AK0,{color:b,keyLabel:M})]},k)})})},Qk3=Kk3,Gk3=({colors:u,color:B,onChange:E,label:A})=>{let[C,D]=P9(qx),F=Rs.useRef(null);return Rs.useEffect(()=>{F.current&&F.current.focus()},[B,C]),P("div",{className:"color-picker-content--default",children:u.map((U,z)=>l0("button",{ref:B===U?F:void 0,tabIndex:-1,type:"button",className:Yu("color-picker__button color-picker__button--large",{active:B===U,"is-transparent":U==="transparent"||!U}),onClick:()=>{E(U),D("custom")},title:U,"aria-label":A,style:{"--swatch-color":U},children:[P("div",{className:"color-picker__button-outline"}),P(AK0,{color:U,keyLabel:z+1,isCustomColor:!0})]},z))})},qw0=(u,B,E)=>{let A=Math.ceil(E/HK);switch(B=B??-1,u){case"ArrowLeft":{let C=B-1;return C<0?E-1:C}case"ArrowRight":return(B+1)%E;case"ArrowDown":{let C=B+HK;return C>=E?B%HK:C}case"ArrowUp":{let C=B-HK,D=C<0?HK*A+C:C;return D>=E?void 0:D}}},Hk3=({e:u,colorObj:B,onChange:E,palette:A,customColors:C,setActiveColorPickerSection:D,activeShade:F})=>{if(B?.shade!=null&&["Digit1","Digit2","Digit3","Digit4","Digit5"].includes(u.code)&&u.shiftKey){let U=Number(u.code.slice(-1))-1;return E(A[B.colorName][U]),D("shades"),!0}if(["1","2","3","4","5"].includes(u.key)&&C[Number(u.key)-1])return E(C[Number(u.key)-1]),D("custom"),!0;if(mw0.includes(u.key)){let U=mw0.indexOf(u.key),z=Object.keys(A)[U],k=A[z],f=Array.isArray(k)?k[F]:k;return E(f),D("baseColors"),!0}return!1},Lk3=({event:u,activeColorPickerSection:B,palette:E,color:A,onChange:C,customColors:D,setActiveColorPickerSection:F,updateData:U,activeShade:z,onEyeDropperToggle:k,onEscape:f})=>{if(u[y0.CTRL_OR_CMD])return!1;if(u.key===y0.ESCAPE)return f(u),!0;if(u.key===y0.ALT)return k(!0),!0;if(u.key===y0.I)return k(),!0;let l=Ws({color:A,palette:E});if(u.key===y0.TAB){let b={custom:!!D.length,baseColors:!0,shades:l?.shade!=null,hex:!0},M=Object.entries(b).reduce((Q,[G,L])=>(L&&Q.push(G),Q),[]),Z=M.indexOf(B),J=u.shiftKey?-1:1,w=Z+J>M.length-1?0:Z+J<0?M.length-1:Z+J,K=M[w];return K&&F(K),K==="custom"?C(D[0]):K==="baseColors"&&(Object.entries(E).find(([Q,G])=>Array.isArray(G)?G.includes(A):G===A?Q:null)||C(m3.black)),u.preventDefault(),u.stopPropagation(),!0}if(Hk3({e:u,colorObj:l,onChange:C,palette:E,customColors:D,setActiveColorPickerSection:F,activeShade:z}))return!0;if(B==="shades"&&l){let{shade:b}=l,M=qw0(u.key,b,HK);if(M!==void 0)return C(E[l.colorName][M]),!0}if(B==="baseColors"&&l){let{colorName:b}=l,M=Object.keys(E),Z=M.indexOf(b),J=qw0(u.key,Z,M.length);if(J!==void 0){let w=M[J],K=E[w];return C(Array.isArray(K)?K[z]:K),!0}}if(B==="custom"){let b=D.indexOf(A),M=qw0(u.key,b,D.length);if(M!==void 0){let Z=D[M];return C(Z),!0}}return!1},qk3=({children:u})=>P("div",{className:"color-picker__heading",children:u}),bs=qk3,Xk3=({color:u,onChange:B,label:E,type:A,elements:C,palette:D,updateData:F,children:U,onEyeDropperToggle:z,onEscape:k})=>{let[f]=EZ.default.useState(()=>A==="canvasBackground"?[]:Mk3(C,A,D)),[l,b]=P9(qx),M=Ws({color:u,palette:D});EZ.useEffect(()=>{if(!l){let K=osu({color:u,palette:D}),Q=K&&!f.includes(u);b(Q?"hex":K?"custom":M?.shade!=null?"shades":"baseColors")}},[l,u,D,b,M,f]);let[Z,J]=EZ.useState(M?.shade??(A==="elementBackground"?Pq:Iq));EZ.useEffect(()=>{M?.shade!=null&&J(M.shade);let K=(Q)=>{Q.key===y0.ALT&&z(!1)};return document.addEventListener("keyup",K,{capture:!0}),()=>{document.removeEventListener("keyup",K,{capture:!0})}},[M,z]);let w=EZ.default.useRef(null);return P("div",{role:"dialog","aria-modal":"true","aria-label":C0("labels.colorPicker"),children:l0("div",{ref:w,onKeyDown:(K)=>{Lk3({event:K,activeColorPickerSection:l,palette:D,color:u,onChange:B,onEyeDropperToggle:z,customColors:f,setActiveColorPickerSection:b,updateData:F,activeShade:Z,onEscape:k})&&(K.preventDefault(),K.stopPropagation())},className:"color-picker-content properties-content",tabIndex:-1,children:[!!f.length&&l0("div",{children:[P(bs,{children:C0("colorPicker.mostUsedCustomColors")}),P(Gk3,{colors:f,color:u,label:C0("colorPicker.mostUsedCustomColors"),onChange:B})]}),l0("div",{children:[P(bs,{children:C0("colorPicker.colors")}),P(Qk3,{color:u,label:E,palette:D,onChange:B,activeShade:Z})]}),l0("div",{children:[P(bs,{children:C0("colorPicker.shades")}),P(wk3,{hex:u,onChange:B,palette:D})]}),U]})})},uou=CK0.default.createContext(null),X7=()=>CK0.default.useContext(uou),Bou=(u)=>{let[B,E]=JP.useState(null),A=K5(),{theme:C}=X7(),{container:D}=Bz();return JP.useLayoutEffect(()=>{B&&(B.className="",B.classList.add("excalidraw",...u?.className?.split(/\s+/)||[]),B.classList.toggle("excalidraw--mobile",A.editor.isMobile),B.classList.toggle("theme--dark",C===_3.DARK))},[B,C,A.editor.isMobile,u?.className]),JP.useLayoutEffect(()=>{let F=u?.parentSelector?D?.querySelector(u.parentSelector):document.body;if(!F)return;let U=document.createElement("div");return F.appendChild(U),E(U),()=>{F.removeChild(U)}},[D,u?.parentSelector]),B};function DK0(u,B,E){Eou.useEffect(()=>{function A(C){let D=C;if(!u.current)return;let F=E?.(D,u.current);if(F===!0)return;if(F===!1)return B(D);u.current.contains(D.target)||!document.documentElement.contains(D.target)||D.target.closest("[data-radix-portal]")||D.target===document.documentElement&&document.body.style.pointerEvents==="none"||D.target.closest("[data-prevent-outside-click]")||B(D)}return document.addEventListener("pointerdown",A),document.addEventListener("touchstart",A),()=>{document.removeEventListener("pointerdown",A),document.removeEventListener("touchstart",A)}},[u,B,E])}var Os=(u)=>{let B=Aou.useRef(u);return Object.assign(B.current,u),B.current},Is=I2(null),xk3=({onCancel:u,onChange:B,onSelect:E,colorPickerType:A})=>{let C=Bou({className:"excalidraw-eye-dropper-backdrop",parentSelector:".excalidraw-eye-dropper-container"}),D=X7(),F=es(),U=uz(),z=N3(F,D),k=Os({app:U,onCancel:u,onChange:B,onSelect:E,selectedElements:z}),{container:f}=Bz();Ts.useEffect(()=>{let b=l.current;if(!b||!U.canvas||!C)return;let M=!1,Z=U.canvas.getContext("2d"),J=({clientX:q,clientY:x})=>{let v=Z.getImageData((q-D.offsetLeft)*window.devicePixelRatio,(x-D.offsetTop)*window.devicePixelRatio,1,1).data;return Cku(v[0],v[1],v[2])},w=({clientX:q,clientY:x,altKey:v})=>{b.style.top=`${x+20}px`,b.style.left=`${q+20}px`;let W=J({clientX:q,clientY:x});M&&k.onChange(A,W,k.selectedElements,{altKey:v}),b.style.background=W},K=()=>{k.onCancel()},Q=(q,x)=>{k.onSelect(q,x)},G=(q)=>{M=!0,q.stopImmediatePropagation()},L=(q)=>{M=!1,f?.focus(),q.stopImmediatePropagation(),q.preventDefault(),Q(J(q),q)},H=(q)=>{q.key===y0.ESCAPE&&(q.preventDefault(),q.stopImmediatePropagation(),K())};return C.tabIndex=-1,C.focus(),w({clientX:k.app.lastViewportPosition.x,clientY:k.app.lastViewportPosition.y,altKey:!1}),C.addEventListener("keydown",H),C.addEventListener("pointerdown",G),C.addEventListener("pointerup",L),window.addEventListener("pointermove",w,{passive:!0}),window.addEventListener("blur",K),()=>{M=!1,C.removeEventListener("keydown",H),C.removeEventListener("pointerdown",G),C.removeEventListener("pointerup",L),window.removeEventListener("pointermove",w),window.removeEventListener("blur",K)}},[k,U.canvas,C,A,f,D.offsetLeft,D.offsetTop]);let l=Ts.useRef(null);return DK0(l,()=>{u()},(b)=>!!b.target.closest(".excalidraw-eye-dropper-trigger, .excalidraw-eye-dropper-backdrop")),C?esu.createPortal(P("div",{ref:l,className:"excalidraw-eye-dropper-preview"}),C):null},vk3=({color:u,onChange:B,label:E,colorPickerType:A})=>{let C=K5(),[D,F]=yD.useState(u),[U,z]=P9(qx);yD.useEffect(()=>{F(u)},[u]);let k=yD.useCallback((Z)=>{let J=Z.toLowerCase(),w=Sk3(J);w&&B(w),F(J)},[B]),f=yD.useRef(null),l=yD.useRef(null);yD.useEffect(()=>{f.current&&f.current.focus()},[U]);let[b,M]=P9(Is);return yD.useEffect(()=>()=>{M(null)},[M]),l0("div",{className:"color-picker__input-label",children:[P("div",{className:"color-picker__input-hash",children:"#"}),P("input",{ref:U==="hex"?f:void 0,style:{border:0,padding:0},spellCheck:!1,className:"color-picker-input","aria-label":E,onChange:(Z)=>{k(Z.target.value)},value:(D||"").replace(/^#/,""),onBlur:()=>{F(u)},tabIndex:-1,onFocus:()=>z("hex"),onKeyDown:(Z)=>{Z.key!==y0.TAB&&(Z.key===y0.ESCAPE&&l.current?.focus(),Z.stopPropagation())}}),!C.editor.isMobile&&l0(tu,{children:[P("div",{style:{width:"1px",height:"1.25rem",backgroundColor:"var(--default-border-color)"}}),P("div",{ref:l,className:Yu("excalidraw-eye-dropper-trigger",{selected:b}),onClick:()=>M((Z)=>Z?null:{keepOpenOnAlt:!1,onSelect:(J)=>B(J),colorPickerType:A}),title:`${C0("labels.eyeDropper")} — ${y0.I.toLocaleUpperCase()} or ${Su("Alt")} `,children:blu})]})]})},cD=Dou.default.forwardRef(({children:u,padding:B,className:E,style:A},C)=>P("div",{className:Yu("Island",E),style:{"--padding":B,...A},ref:C,children:u})),Fou=Cou.default.forwardRef(({className:u,container:B,children:E,style:A,onClose:C,onKeyDown:D,onFocusOutside:F,onPointerLeave:U,onPointerDownOutside:z},k)=>{let f=K5();return P(oGu,{container:B,children:l0(Fx,{ref:k,className:Yu("focus-visible-none",u),"data-prevent-outside-click":!0,side:f.editor.isMobile&&!f.viewport.isLandscape?"bottom":"right",align:f.editor.isMobile&&!f.viewport.isLandscape?"center":"start",alignOffset:-16,sideOffset:20,style:{zIndex:"var(--zIndex-popup)"},onPointerLeave:U,onKeyDown:D,onFocusOutside:F,onPointerDownOutside:z,onCloseAutoFocus:(l)=>{l.stopPropagation(),l.preventDefault(),B&&!Vku(document.activeElement)&&B.focus(),C()},children:[P(cD,{padding:3,style:A,children:E}),P(sd,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})}),Ydu=(u)=>{let B=new Option().style;return B.color=u,!!B.color},Sk3=(u)=>TA(u)?u:Ydu(`#${u}`)?`#${u}`:Ydu(u)?u:null,Wk3=({type:u,color:B,onChange:E,label:A,elements:C,palette:D=m3,updateData:F})=>{let{container:U}=Bz(),[,z]=P9(qx),[k,f]=P9(Is),l=l0("div",{children:[P(bs,{children:C0("colorPicker.hexCode")}),P(vk3,{color:B,label:A,onChange:(Z)=>{E(Z)},colorPickerType:u})]}),b=tsu.useRef(null),M=()=>{b.current?.querySelector(".color-picker-content")?.focus()};return P(Fou,{container:U,style:{maxWidth:"13rem"},onFocusOutside:(Z)=>{M(),Z.preventDefault()},onPointerDownOutside:(Z)=>{k&&Z.preventDefault()},onClose:()=>{F({openPopup:null}),z(null)},children:D?P(Xk3,{palette:D,color:B,onChange:(Z)=>{E(Z)},onEyeDropperToggle:(Z)=>{f((J)=>Z?(J=J||{keepOpenOnAlt:!0,onSelect:E,colorPickerType:u},J.keepOpenOnAlt=!0,J):Z===!1||J?null:{keepOpenOnAlt:!1,onSelect:E,colorPickerType:u})},onEscape:(Z)=>{k?f(null):F({openPopup:null})},label:A,type:u,elements:C,updateData:F,children:l}):l})},Yk3=({label:u,color:B,type:E})=>P(_M,{type:"button",className:Yu("color-picker__button active-color properties-trigger",{"is-transparent":B==="transparent"||!B}),"aria-label":u,style:B?{"--swatch-color":B}:void 0,title:E==="elementStroke"?C0("labels.showStroke"):C0("labels.showBackground"),children:P("div",{className:"color-picker__button-outline"})}),FK0=({type:u,color:B,onChange:E,label:A,elements:C,palette:D=m3,topPicks:F,updateData:U,appState:z})=>P("div",{children:l0("div",{role:"dialog","aria-modal":"true",className:"color-picker-container",children:[P(bk3,{activeColor:B,onChange:E,type:u,topPicks:F}),P(ssu,{}),l0(gM,{open:z.openPopup===u,onOpenChange:(k)=>{U({openPopup:k?u:null})},children:[P(Yk3,{color:B,label:A,type:u}),z.openPopup===u&&P(Wk3,{type:u,color:B,onChange:E,label:A,elements:C,palette:D,updateData:U})]})]})}),Ps=({icon:u})=>P("span",{style:{width:"1em",margin:"0 0.5ex 0 0.5ex",display:"inline-block",lineHeight:0,verticalAlign:"middle"},children:u}),Rk3=({label:u,open:B,openTrigger:E,children:A,className:C})=>l0(tu,{children:[l0("div",{style:{cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center"},className:C,onClick:E,children:[u,P(Ps,{icon:B?ilu:Of0})]}),B&&P("div",{style:{display:"flex",flexDirection:"column"},children:A})]}),rw0=Rk3,Tk3=I2(!1);function Ok3({options:u,value:B,label:E,onChange:A,onClose:C,numberOfOptionsToAlwaysShow:D=u.length}){let F=K5(),U=(M)=>{let Z=u.find((J)=>J.keyBinding===M.key.toLowerCase());if(!(M.metaKey||M.altKey||M.ctrlKey)&&Z)A(Z.value),M.preventDefault();else if(M.key===y0.TAB){let J=u.findIndex((K)=>K.value===B),w=M.shiftKey?(u.length+J-1)%u.length:(J+1)%u.length;A(u[w].value)}else if(AX(M.key)){let J=ZP().rtl,w=u.findIndex((K)=>K.value===B);if(w!==-1){let K=u.length,Q=w;switch(M.key){case(J?y0.ARROW_LEFT:y0.ARROW_RIGHT):Q=(w+1)%K;break;case(J?y0.ARROW_RIGHT:y0.ARROW_LEFT):Q=(K+w-1)%K;break;case y0.ARROW_DOWN:{Q=(w+(D??1))%K;break}case y0.ARROW_UP:{Q=(K+w-(D??1))%K;break}}A(u[Q].value)}M.preventDefault()}else(M.key===y0.ESCAPE||M.key===y0.ENTER)&&(M.preventDefault(),C());M.nativeEvent.stopImmediatePropagation(),M.stopPropagation()},[z,k]=P9(Tk3),f=wQ.default.useMemo(()=>u.slice(0,D),[u,D]),l=wQ.default.useMemo(()=>u.slice(D),[u,D]);wQ.useEffect(()=>{f.some((M)=>M.value===B)||k(!0)},[B,f,k]);let b=(M)=>P("div",{className:"picker-content",children:M.map((Z,J)=>l0("button",{type:"button",className:Yu("picker-option",{active:B===Z.value}),onClick:(w)=>{A(Z.value)},title:`${Z.text} ${Z.keyBinding&&`— ${Z.keyBinding.toUpperCase()}`}`,"aria-label":Z.text||"none","aria-keyshortcuts":Z.keyBinding||void 0,ref:(w)=>{B===Z.value&&setTimeout(()=>{w?.focus()},0)},children:[Z.icon,Z.keyBinding&&P("span",{className:"picker-keybinding",children:Z.keyBinding})]},Z.text))});return P(Fx,{side:F.editor.isMobile&&!F.viewport.isLandscape?"top":"bottom",align:"start",sideOffset:12,style:{zIndex:"var(--zIndex-popup)"},onKeyDown:U,children:l0("div",{className:"picker",role:"dialog","aria-modal":"true","aria-label":E,children:[b(f),l.length>0&&P(rw0,{label:C0("labels.more_options"),open:z,openTrigger:()=>{k((M)=>!M)},className:"picker-collapsible",children:b(l)})]})})}function Rdu({value:u,label:B,options:E,onChange:A,group:C="",numberOfOptionsToAlwaysShow:D}){let[F,U]=wQ.default.useState(!1),z=wQ.default.useRef(null);return P("div",{children:l0(gM,{open:F,onOpenChange:(k)=>U(k),children:[P(_M,{name:C,type:"button","aria-label":B,onClick:()=>U(!F),ref:z,className:F?"active":"",children:E.find((k)=>k.value===u)?.icon}),F&&P(Ok3,{options:E,value:u,label:B,onChange:A,onClose:()=>{U(!1)},numberOfOptionsToAlwaysShow:D})]})})}var zou=Uou.default.forwardRef(({className:u,placeholder:B,onChange:E},A)=>l0("div",{className:Yu("QuickSearch__wrapper",u),children:[ZM,P("input",{ref:A,className:"QuickSearch__input",type:"text",placeholder:B,onChange:(C)=>E(C.target.value.trim().toLowerCase())})]})),fou=({className:u,placeholder:B,children:E})=>{let A=!kou.Children.count(E);return P("div",{className:Yu("ScrollableList__wrapper",u),role:"menu",children:A?P("div",{className:"empty",children:B}):E})},lou=({children:u,className:B="",style:E,title:A})=>l0("div",{className:`dropdown-menu-group ${B}`,style:E,children:[A&&P("p",{className:"dropdown-menu-group-title",children:A}),u]}),$w0=lou;lou.displayName="DropdownMenuGroup";var bou=Ns.default.createContext({}),Mou=(u="",B=!1,E=!1)=>`dropdown-menu-item dropdown-menu-item-base ${u}
${B?"dropdown-menu-item--selected":""} ${E?"dropdown-menu-item--hovered":""}`.trim(),Zou=(u,B)=>{let E=Ns.useContext(bou);return wO(u,(A)=>{let C=new CustomEvent("menu.itemSelect",{bubbles:!0,cancelable:!0});B?.(C),C.defaultPrevented||E.onSelect?.(C)})},Ik3=({textStyle:u,icon:B,shortcut:E,children:A})=>{let C=K5();return l0(tu,{children:[B&&P("div",{className:"dropdown-menu-item__icon",children:B}),P("div",{style:u,className:"dropdown-menu-item__text",children:A}),E&&!C.editor.isMobile&&P("div",{className:"dropdown-menu-item__shortcut",children:E})]})},Jou=Ik3,UK0=({icon:u,value:B,order:E,children:A,shortcut:C,className:D,hovered:F,selected:U,textStyle:z,onSelect:k,onClick:f,...l})=>{let b=Zou(f,k),M=js.useRef(null);return js.useEffect(()=>{F&&(E===0?M.current?.scrollIntoView({block:"end"}):M.current?.scrollIntoView({block:"nearest"}))},[F,E]),P("button",{...l,ref:M,value:B,onClick:b,className:Mou(D,U,F),title:l.title??l["aria-label"],children:P(Jou,{textStyle:z,icon:u,shortcut:C,children:A})})};UK0.displayName="DropdownMenuItem";var kP={GREEN:"green",RED:"red",BLUE:"blue"},zK0=({type:u=kP.BLUE,children:B})=>{let{theme:E}=SP(),A={display:"inline-flex",marginLeft:"auto",padding:"2px 4px",borderRadius:6,fontSize:9,fontFamily:"Cascadia, monospace",border:E===_3.LIGHT?"1.5px solid white":"none"};switch(u){case kP.GREEN:Object.assign(A,{backgroundColor:"var(--background-color-badge)",color:"var(--color-badge)"});break;case kP.RED:Object.assign(A,{backgroundColor:"pink",color:"darkred"});break;case kP.BLUE:default:Object.assign(A,{background:"var(--color-promo)",color:"var(--color-surface-lowest)"})}return P("div",{className:"DropDownMenuItemBadge",style:A,children:B})};zK0.displayName="DropdownMenuItemBadge";UK0.Badge=zK0;var BC=UK0,Pk3=({event:u,inputRef:B,hoveredFont:E,filteredFonts:A,onClose:C,onSelect:D,onHover:F})=>{if(!u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.key.toLowerCase()===y0.F)return B.current?.focus(),!0;if(u.key===y0.ESCAPE)return C(),!0;if(u.key===y0.ENTER)return E?.value&&D(E.value),!0;if(u.key===y0.ARROW_DOWN)return E?.next?F(E.next.value):A[0]?.value&&F(A[0].value),!0;if(u.key===y0.ARROW_UP)return E?.prev?F(E.prev.value):A[A.length-1]?.value&&F(A[A.length-1].value),!0},jk3=w5.default.memo(({selectedFontFamily:u,hoveredFontFamily:B,onSelect:E,onHover:A,onLeave:C,onOpen:D,onClose:F})=>{let{container:U}=Bz(),{fonts:z}=uz(),{showDeprecatedFonts:k}=vP(),[f,l]=w5.useState(""),b=w5.useRef(null),M=w5.useMemo(()=>Array.from(PU.registered.entries()).filter(([v,{metadata:W}])=>!W.serverSide&&!W.fallback).map(([v,{metadata:W,fontFaces:S}])=>{let T={value:v,icon:W.icon??tT,text:S[0]?.fontFace?.family??"Unknown"};return W.deprecated&&Object.assign(T,{deprecated:W.deprecated,badge:{type:kP.RED,placeholder:C0("fontList.badge.old")}}),T}).sort((v,W)=>v.text.toLowerCase()>W.text.toLowerCase()?1:-1),[]),Z=w5.useMemo(()=>new Set(z.getSceneFamilies()),[u]),J=w5.useMemo(()=>M.filter((v)=>Z.has(v.value)),[M,Z]),w=w5.useMemo(()=>M.filter((v)=>!Z.has(v.value)&&(k||!v.deprecated)),[M,Z,k]),K=w5.useMemo(()=>_ku([...J,...w].filter((v)=>v.text?.toLowerCase().includes(f))),[J,w,f]),Q=w5.useMemo(()=>{let v;return B?v=K.find((W)=>W.value===B):u&&(v=K.find((W)=>W.value===u)),!v&&f&&(K[0]?.value?A(K[0].value):C()),v},[B,u,f,K,A,C]),G=w5.useCallback((v)=>{Pk3({event:v,inputRef:b,hoveredFont:Q,filteredFonts:K,onSelect:E,onHover:A,onClose:F})&&(v.preventDefault(),v.stopPropagation())},[Q,K,E,A,F]);w5.useEffect(()=>(D(),()=>{F()}),[]);let L=w5.useMemo(()=>K.filter((v)=>Z.has(v.value)),[K,Z]),H=w5.useMemo(()=>K.filter((v)=>!Z.has(v.value)),[K,Z]),q=(v,W)=>l0(BC,{icon:v.icon,value:v.value,order:W,textStyle:{fontFamily:WK({fontFamily:v.value})},hovered:v.value===Q?.value,selected:v.value===u,tabIndex:v.value===u?0:-1,onClick:(S)=>{E(Number(S.currentTarget.value))},onMouseMove:()=>{Q?.value!==v.value&&A(v.value)},children:[v.text,v.badge&&P(zK0,{type:v.badge.type,children:v.badge.placeholder})]},v.value),x=[];return L.length&&x.push(P($w0,{title:C0("fontList.sceneFonts"),children:L.map(q)},"group_1")),H.length&&x.push(P($w0,{title:C0("fontList.availableFonts"),children:H.map((v,W)=>q(v,W+L.length))},"group_2")),l0(Fou,{className:"properties-content",container:U,style:{width:"15rem"},onClose:F,onPointerLeave:C,onKeyDown:G,children:[P(zou,{ref:b,placeholder:C0("quickSearch.placeholder"),onChange:YK(l,20)}),P(fou,{className:"dropdown-menu fonts manual-hover",placeholder:C0("fontList.empty"),children:x.length?x:null})]})},(u,B)=>u.selectedFontFamily===B.selectedFontFamily&&u.hoveredFontFamily===B.hoveredFontFamily),Nk3=({selectedFontFamily:u})=>{let B=wou.useMemo(()=>!!(u&&!ak3(u)),[u]);return P(_M,{asChild:!0,children:P("div",{children:P(dsu,{standalone:!0,icon:ek0,title:C0("labels.showFonts"),className:"properties-trigger",testId:"font-family-show-fonts",active:B,onClick:()=>{}})})})},Kou=[{value:n6.Excalifont,icon:$q,text:C0("labels.handDrawn"),testId:"font-family-hand-drawn"},{value:n6.Nunito,icon:tT,text:C0("labels.normal"),testId:"font-family-normal"},{value:n6["Comic Shanns"],icon:Y_,text:C0("labels.code"),testId:"font-family-code"}],ik3=new Set(Kou.map((u)=>u.value)),ak3=(u)=>u?ik3.has(u):!1,Vk3=Xx.default.memo(({isOpened:u,selectedFontFamily:B,hoveredFontFamily:E,onSelect:A,onHover:C,onLeave:D,onPopupChange:F})=>{let U=Xx.useMemo(()=>Kou,[]),z=Xx.useCallback((k)=>{k&&A(k)},[A]);return l0("div",{role:"dialog","aria-modal":"true",className:"FontPicker__container",children:[P(tU,{type:"button",options:U,value:B,onClick:z}),P(ssu,{}),l0(gM,{open:u,onOpenChange:F,children:[P(Nk3,{selectedFontFamily:B}),u&&P(jk3,{selectedFontFamily:B,hoveredFontFamily:E,onSelect:z,onHover:C,onLeave:D,onOpen:()=>F(!0),onClose:()=>F(!1)})]})]})},(u,B)=>u.isOpened===B.isOpened&&u.selectedFontFamily===B.selectedFontFamily&&u.hoveredFontFamily===B.hoveredFontFamily),hk3=({updateData:u,appState:B,elements:E,testId:A})=>{let C=wP.default.useRef(null),D=wP.default.useRef(null),F=pB(E,B,(U)=>U.opacity,!0,B.currentItemOpacity);return wP.useEffect(()=>{if(C.current&&D.current){let U=C.current,z=D.current,k=U.offsetWidth,f=15,l=F/100*(k-f)+f/2;z.style.left=`${l}px`,U.style.background=`linear-gradient(to right, var(--color-slider-track) 0%, var(--color-slider-track) ${F}%, var(--button-bg) ${F}%, var(--button-bg) 100%)`}},[F]),l0("label",{className:"control-label",children:[C0("labels.opacity"),l0("div",{className:"range-wrapper",children:[P("input",{ref:C,type:"range",min:"0",max:"100",step:"10",onChange:(U)=>{u(+U.target.value)},value:F,className:"range-input","data-testid":A}),P("div",{className:"value-bubble",ref:D,children:F!==0?F:null}),P("div",{className:"zero-label",children:"0"})]})]})},Qou=0.1,nB=(u,B,E,A=!1)=>{let C=e4(N3(u,B,{includeBoundTextElement:A}));return u.map((D)=>C.get(D.id)||D.id===B.editingTextElement?.id?E(D):D)},pB=function(u,B,E,A,C){let D=B.editingTextElement,F=z6(u),U=null;return D&&(U=E(D)),U||(Z2(F,B)?U=WMu(A===!0?F:F.filter((z)=>A(z)),B,E)??(typeof C=="function"?C(!0):C):U=typeof C=="function"?C(!1):C),U},mk3=(u,B)=>X6(B)||!B.autoResize?B:Wu(B,{x:u.textAlign==="left"?u.x:u.x+(u.width-B.width)/(u.textAlign==="center"?2:1),y:u.y+(u.height-B.height)/2},!1),kK0=(u,B,E,A,C)=>{let D=new Set,F=nB(u,B,(z)=>{if(l4(z)){let k=A(z);D.add(k);let f=O3(z,{fontSize:k});return c7(f,E.scene.getContainerElement(z),E.scene.getNonDeletedElementsMap()),f=mk3(z,f),f}return z},!0),U=e4(F);return N3(u,B,{includeBoundTextElement:!0}).forEach((z)=>{l4(z)&&hB(z,U)}),{elements:F,appState:{...B,currentItemFontSize:D.size===1?[...D][0]:C??B.currentItemFontSize},captureUpdate:Xu.IMMEDIATELY}},$T1=C4({name:"changeStrokeColor",label:"labels.stroke",trackEvent:!1,perform:(u,B,E)=>({...E.currentItemStrokeColor&&{elements:nB(u,B,(A)=>Mn(A.type)?O3(A,{strokeColor:E.currentItemStrokeColor}):A,!0)},appState:{...B,...E},captureUpdate:E.currentItemStrokeColor?Xu.IMMEDIATELY:Xu.EVENTUALLY}),PanelComponent:({elements:u,appState:B,updateData:E,appProps:A})=>l0(tu,{children:[P("h3",{"aria-hidden":"true",children:C0("labels.stroke")}),P(FK0,{topPicks:Xk0,palette:Eku,type:"elementStroke",label:C0("labels.stroke"),color:pB(u,B,(C)=>C.strokeColor,!0,B.currentItemStrokeColor),onChange:(C)=>E({currentItemStrokeColor:C}),elements:u,appState:B,updateData:E})]})}),yT1=C4({name:"changeBackgroundColor",label:"labels.changeBackground",trackEvent:!1,perform:(u,B,E)=>({...E.currentItemBackgroundColor&&{elements:nB(u,B,(A)=>O3(A,{backgroundColor:E.currentItemBackgroundColor}))},appState:{...B,...E},captureUpdate:E.currentItemBackgroundColor?Xu.IMMEDIATELY:Xu.EVENTUALLY}),PanelComponent:({elements:u,appState:B,updateData:E,appProps:A})=>l0(tu,{children:[P("h3",{"aria-hidden":"true",children:C0("labels.background")}),P(FK0,{topPicks:xk0,palette:Aku,type:"elementBackground",label:C0("labels.background"),color:pB(u,B,(C)=>C.backgroundColor,!0,B.currentItemBackgroundColor),onChange:(C)=>E({currentItemBackgroundColor:C}),elements:u,appState:B,updateData:E})]})}),cT1=C4({name:"changeFillStyle",label:"labels.fill",trackEvent:!1,perform:(u,B,E,A)=>(G6("element","changeFillStyle",`${E} (${A.device.editor.isMobile?"mobile":"desktop"})`),{elements:nB(u,B,(C)=>O3(C,{fillStyle:E})),appState:{...B,currentItemFillStyle:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>{let A=N3(u,B),C=A.length>0&&A.every((D)=>D.fillStyle==="zigzag");return l0("fieldset",{children:[P("legend",{children:C0("labels.fill")}),P(tU,{type:"button",options:[{value:"hachure",text:`${C?C0("labels.zigzag"):C0("labels.hachure")} (${Su("Alt-Click")})`,icon:C?Sfu:Wfu,active:C?!0:void 0,testId:"fill-hachure"},{value:"cross-hatch",text:C0("labels.crossHatch"),icon:Yfu,testId:"fill-cross-hatch"},{value:"solid",text:C0("labels.solid"),icon:Rfu,testId:"fill-solid"}],value:pB(u,B,(D)=>D.fillStyle,(D)=>D.hasOwnProperty("fillStyle"),(D)=>D?null:B.currentItemFillStyle),onClick:(D,F)=>{let U=F.altKey&&D==="hachure"&&A.every((z)=>z.fillStyle==="hachure")?"zigzag":D;E(U)}})]})}}),gT1=C4({name:"changeStrokeWidth",label:"labels.strokeWidth",trackEvent:!1,perform:(u,B,E)=>({elements:nB(u,B,(A)=>O3(A,{strokeWidth:E})),appState:{...B,currentItemStrokeWidth:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>l0("fieldset",{children:[P("legend",{children:C0("labels.strokeWidth")}),P(tU,{group:"stroke-width",options:[{value:c_.thin,text:C0("labels.thin"),icon:Lf0,testId:"strokeWidth-thin"},{value:c_.bold,text:C0("labels.bold"),icon:Tfu,testId:"strokeWidth-bold"},{value:c_.extraBold,text:C0("labels.extraBold"),icon:Ofu,testId:"strokeWidth-extraBold"}],value:pB(u,B,(A)=>A.strokeWidth,(A)=>A.hasOwnProperty("strokeWidth"),(A)=>A?null:B.currentItemStrokeWidth),onChange:(A)=>E(A)})]})}),_T1=C4({name:"changeSloppiness",label:"labels.sloppiness",trackEvent:!1,perform:(u,B,E)=>({elements:nB(u,B,(A)=>O3(A,{seed:KD(),roughness:E})),appState:{...B,currentItemRoughness:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>l0("fieldset",{children:[P("legend",{children:C0("labels.sloppiness")}),P(tU,{group:"sloppiness",options:[{value:0,text:C0("labels.architect"),icon:jfu},{value:1,text:C0("labels.artist"),icon:Nfu},{value:2,text:C0("labels.cartoonist"),icon:ifu}],value:pB(u,B,(A)=>A.roughness,(A)=>A.hasOwnProperty("roughness"),(A)=>A?null:B.currentItemRoughness),onChange:(A)=>E(A)})]})}),nT1=C4({name:"changeStrokeStyle",label:"labels.strokeStyle",trackEvent:!1,perform:(u,B,E)=>({elements:nB(u,B,(A)=>O3(A,{strokeStyle:E})),appState:{...B,currentItemStrokeStyle:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>l0("fieldset",{children:[P("legend",{children:C0("labels.strokeStyle")}),P(tU,{group:"strokeStyle",options:[{value:"solid",text:C0("labels.strokeStyle_solid"),icon:Lf0},{value:"dashed",text:C0("labels.strokeStyle_dashed"),icon:Ifu},{value:"dotted",text:C0("labels.strokeStyle_dotted"),icon:Pfu}],value:pB(u,B,(A)=>A.strokeStyle,(A)=>A.hasOwnProperty("strokeStyle"),(A)=>A?null:B.currentItemStrokeStyle),onChange:(A)=>E(A)})]})}),pT1=C4({name:"changeOpacity",label:"labels.opacity",trackEvent:!1,perform:(u,B,E)=>({elements:nB(u,B,(A)=>O3(A,{opacity:E}),!0),appState:{...B,currentItemOpacity:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>P(hk3,{updateData:E,elements:u,appState:B,testId:"opacity"})}),dT1=C4({name:"changeFontSize",label:"labels.fontSize",trackEvent:!1,perform:(u,B,E,A)=>kK0(u,B,A,()=>E,E),PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>l0("fieldset",{children:[P("legend",{children:C0("labels.fontSize")}),P(tU,{group:"font-size",options:[{value:16,text:C0("labels.small"),icon:ofu,testId:"fontSize-small"},{value:20,text:C0("labels.medium"),icon:tfu,testId:"fontSize-medium"},{value:28,text:C0("labels.large"),icon:efu,testId:"fontSize-large"},{value:36,text:C0("labels.veryLarge"),icon:ulu,testId:"fontSize-veryLarge"}],value:pB(u,B,(C)=>{if(l4(C))return C.fontSize;let D=Y3(C,A.scene.getNonDeletedElementsMap());return D?D.fontSize:null},(C)=>l4(C)||Y3(C,A.scene.getNonDeletedElementsMap())!==null,(C)=>C?null:B.currentItemFontSize||TU),onChange:(C)=>E(C)})]})}),Tdu=C4({name:"decreaseFontSize",label:"labels.decreaseFontSize",icon:qO,trackEvent:!1,perform:(u,B,E,A)=>kK0(u,B,A,(C)=>Math.round(1/(1+Qou)*C.fontSize)),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.shiftKey&&(u.key===y0.CHEVRON_LEFT||u.key===y0.COMMA)}),Odu=C4({name:"increaseFontSize",label:"labels.increaseFontSize",icon:qO,trackEvent:!1,perform:(u,B,E,A)=>kK0(u,B,A,(C)=>Math.round(C.fontSize*(1+Qou))),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.shiftKey&&(u.key===y0.CHEVRON_RIGHT||u.key===y0.PERIOD)}),sT1=C4({name:"changeFontFamily",label:"labels.fontFamily",trackEvent:!1,perform:(u,B,E,A)=>{let{cachedElements:C,resetAll:D,resetContainers:F,...U}=E;if(D)return{elements:nB(u,B,(Z)=>{let J=C?.get(Z.id);return J?O3(Z,{...J}):Z},!0),appState:{...B,...U},captureUpdate:Xu.NEVER};let{currentItemFontFamily:z,currentHoveredFontFamily:k}=E,f=Xu.EVENTUALLY,l,b=!1;if(z)l=z,f=Xu.IMMEDIATELY;else if(k){l=k,f=Xu.EVENTUALLY;let Z=N3(u,B,{includeBoundTextElement:!0}).filter((J)=>l4(J));if(Z.length>200)b=!0;else{let J=0,w=0;for(;J<Z.length&&w<5000;){let K=Z[J];w+=K?.originalText.length||0,J++}w>5000&&(b=!0)}}let M={appState:{...B,...U},captureUpdate:f};if(l&&!b){let Z=new Map,J=new Set,w=!1,K=Array.from(PU.loadedFontsCache.values()),Q=Object.entries(n6).find(([H,q])=>q===l)?.[0];k&&Q&&K.some((H)=>H.startsWith(Q))&&(w=!0),Object.assign(M,{elements:nB(u,B,(H)=>{if(l4(H)&&(H.fontFamily!==l||z)){let q=O3(H,{fontFamily:l,lineHeight:JM(l)}),x=C?.get(H.containerId||"")||{},v=A.scene.getContainerElement(H);return F&&v&&x&&Wu(v,{...x},!1),w||(J=new Set([...J,...Array.from(q.originalText)])),Z.set(q,v),q}return H},!0)});let G=`10px ${WK({fontFamily:l})}`,L=Array.from(J.values()).join();if(w||window.document.fonts.check(G,L))for(let[H,q]of Z)c7(H,q,A.scene.getNonDeletedElementsMap(),!1);else window.document.fonts.load(G,L).then((H)=>{for(let[q,x]of Z){let v=A.scene.getElement(q.id),W=x?A.scene.getElement(x.id):null;v&&c7(v,W,A.scene.getNonDeletedElementsMap(),!1)}A.fonts.onLoaded(H)})}return M},PanelComponent:({elements:u,appState:B,app:E,updateData:A})=>{let C=eA.useRef(new Map),D=eA.useRef(null),[F,U]=eA.useState({}),z=eA.useRef(!0),k=eA.useMemo(()=>{let f=(l,b)=>pB(l,B,(M)=>{if(l4(M))return M.fontFamily;let Z=Y3(M,b);return Z?Z.fontFamily:null},(M)=>l4(M)||Y3(M,b)!==null,(M)=>M?null:B.currentItemFontFamily||ok);return F.openPopup==="fontFamily"&&B.openPopup==="fontFamily"?f(Array.from(C.current?.values()??[]),C.current):!F.openPopup&&B.openPopup!=="fontFamily"?f(u,E.scene.getNonDeletedElementsMap()):D.current},[F.openPopup,B,u,E.scene]);return eA.useEffect(()=>{D.current=k},[k]),eA.useEffect(()=>{Object.keys(F).length&&(A(F),U({}))},[F]),eA.useEffect(()=>(z.current=!1,()=>{z.current=!0}),[]),l0("fieldset",{children:[P("legend",{children:C0("labels.fontFamily")}),P(Vk3,{isOpened:B.openPopup==="fontFamily",selectedFontFamily:k,hoveredFontFamily:B.currentHoveredFontFamily,onSelect:(f)=>{U({openPopup:null,currentHoveredFontFamily:null,currentItemFontFamily:f}),C.current.clear()},onHover:(f)=>{U({currentHoveredFontFamily:f,cachedElements:new Map(C.current),resetContainers:!0})},onLeave:()=>{U({currentHoveredFontFamily:null,cachedElements:new Map(C.current),resetAll:!0})},onPopupChange:(f)=>{if(f){C.current.clear();let{editingTextElement:l}=B;if(l?.type==="text"){let b=E.scene.getElement(l.id);C.current.set(l.id,O3(b||l,{},!0))}else{let b=N3(u,B,{includeBoundTextElement:!0});for(let M of b)C.current.set(M.id,O3(M,{},!0))}U({openPopup:"fontFamily"})}else{let l={openPopup:null,currentHoveredFontFamily:null,cachedElements:new Map(C.current),resetAll:!0};z.current?A({...F,...l}):U(l),C.current.clear()}}})]})}}),oT1=C4({name:"changeTextAlign",label:"Change text alignment",trackEvent:!1,perform:(u,B,E,A)=>({elements:nB(u,B,(C)=>{if(l4(C)){let D=O3(C,{textAlign:E});return c7(D,A.scene.getContainerElement(C),A.scene.getNonDeletedElementsMap()),D}return C},!0),appState:{...B,currentItemTextAlign:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>{let C=A.scene.getNonDeletedElementsMap();return l0("fieldset",{children:[P("legend",{children:C0("labels.textAlign")}),P(tU,{group:"text-align",options:[{value:"left",text:C0("labels.left"),icon:Blu,testId:"align-left"},{value:"center",text:C0("labels.center"),icon:Elu,testId:"align-horizontal-center"},{value:"right",text:C0("labels.right"),icon:Alu,testId:"align-right"}],value:pB(u,B,(D)=>{if(l4(D))return D.textAlign;let F=Y3(D,C);return F?F.textAlign:null},(D)=>l4(D)||Y3(D,C)!==null,(D)=>D?null:B.currentItemTextAlign),onChange:(D)=>E(D)})]})}}),tT1=C4({name:"changeVerticalAlign",label:"Change vertical alignment",trackEvent:{category:"element"},perform:(u,B,E,A)=>({elements:nB(u,B,(C)=>{if(l4(C)){let D=O3(C,{verticalAlign:E});return c7(D,A.scene.getContainerElement(C),A.scene.getNonDeletedElementsMap()),D}return C},!0),appState:{...B},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P("fieldset",{children:P(tU,{group:"text-align",options:[{value:P8.TOP,text:C0("labels.alignTop"),icon:P(Clu,{theme:B.theme}),testId:"align-top"},{value:P8.MIDDLE,text:C0("labels.centerVertically"),icon:P(Flu,{theme:B.theme}),testId:"align-middle"},{value:P8.BOTTOM,text:C0("labels.alignBottom"),icon:P(Dlu,{theme:B.theme}),testId:"align-bottom"}],value:pB(u,B,(C)=>{if(l4(C)&&C.containerId)return C.verticalAlign;let D=Y3(C,A.scene.getNonDeletedElementsMap());return D?D.verticalAlign:null},(C)=>l4(C)||Y3(C,A.scene.getNonDeletedElementsMap())!==null,(C)=>C?null:P8.MIDDLE),onChange:(C)=>E(C)})})}),eT1=C4({name:"changeRoundness",label:"Change edge roundness",trackEvent:!1,perform:(u,B,E)=>({elements:nB(u,B,(A)=>K4(A)?A:O3(A,{roundness:E==="round"?{type:RK(A.type)?b2.ADAPTIVE_RADIUS:b2.PROPORTIONAL_RADIUS}:null})),appState:{...B,currentItemRoundness:E},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>{let A=$l0(z6(u),B).some((C)=>C.roundness?.type===b2.LEGACY);return l0("fieldset",{children:[P("legend",{children:C0("labels.edges")}),P(tU,{group:"edges",options:[{value:"sharp",text:C0("labels.sharp"),icon:afu},{value:"round",text:C0("labels.round"),icon:Vfu}],value:pB(u,B,(C)=>A?null:C.roundness?"round":"sharp",(C)=>!j3(C)&&C.hasOwnProperty("roundness"),(C)=>C?null:B.currentItemRoundness),onChange:(C)=>E(C)})]})}}),Idu=(u)=>[{value:null,text:C0("labels.arrowhead_none"),keyBinding:"q",icon:hfu},{value:"arrow",text:C0("labels.arrowhead_arrow"),keyBinding:"w",icon:P(mfu,{flip:u})},{value:"triangle",text:C0("labels.arrowhead_triangle"),icon:P(cfu,{flip:u}),keyBinding:"e"},{value:"triangle_outline",text:C0("labels.arrowhead_triangle_outline"),icon:P(gfu,{flip:u}),keyBinding:"r"},{value:"circle",text:C0("labels.arrowhead_circle"),keyBinding:"a",icon:P(rfu,{flip:u})},{value:"circle_outline",text:C0("labels.arrowhead_circle_outline"),keyBinding:"s",icon:P($fu,{flip:u})},{value:"diamond",text:C0("labels.arrowhead_diamond"),icon:P(_fu,{flip:u}),keyBinding:"d"},{value:"diamond_outline",text:C0("labels.arrowhead_diamond_outline"),icon:P(nfu,{flip:u}),keyBinding:"f"},{value:"bar",text:C0("labels.arrowhead_bar"),keyBinding:"z",icon:P(yfu,{flip:u})},{value:"crowfoot_one",text:C0("labels.arrowhead_crowfoot_one"),icon:P(dfu,{flip:u}),keyBinding:"c"},{value:"crowfoot_many",text:C0("labels.arrowhead_crowfoot_many"),icon:P(pfu,{flip:u}),keyBinding:"x"},{value:"crowfoot_one_or_many",text:C0("labels.arrowhead_crowfoot_one_or_many"),icon:P(sfu,{flip:u}),keyBinding:"v"}],uO1=C4({name:"changeArrowhead",label:"Change arrowheads",trackEvent:!1,perform:(u,B,E)=>({elements:nB(u,B,(A)=>{if(W3(A)){let{position:C,type:D}=E;if(C==="start")return O3(A,{startArrowhead:D});if(C==="end")return O3(A,{endArrowhead:D})}return A}),appState:{...B,[E.position==="start"?"currentItemStartArrowhead":"currentItemEndArrowhead"]:E.type},captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E})=>{let A=ZP().rtl;return l0("fieldset",{children:[P("legend",{children:C0("labels.arrowheads")}),l0("div",{className:"iconSelectList buttonList",children:[P(Rdu,{label:"arrowhead_start",options:Idu(!A),value:pB(u,B,(C)=>W3(C)&&vO(C.type)?C.startArrowhead:B.currentItemStartArrowhead,!0,B.currentItemStartArrowhead),onChange:(C)=>E({position:"start",type:C}),numberOfOptionsToAlwaysShow:4}),P(Rdu,{label:"arrowhead_end",group:"arrowheads",options:Idu(!!A),value:pB(u,B,(C)=>W3(C)&&vO(C.type)?C.endArrowhead:B.currentItemEndArrowhead,!0,B.currentItemEndArrowhead),onChange:(C)=>E({position:"end",type:C}),numberOfOptionsToAlwaysShow:4})]})]})}}),BO1=C4({name:"changeArrowType",label:"Change arrow types",trackEvent:!1,perform:(u,B,E,A)=>{let C=nB(u,B,(U)=>{if(!j3(U))return U;let z=O3(U,{roundness:E===f5.round?{type:b2.PROPORTIONAL_RADIUS}:null,elbowed:E===f5.elbow,points:E===f5.elbow||U.elbowed?[U.points[0],U.points[U.points.length-1]]:U.points});if(K4(z)){let k=A.scene.getNonDeletedElementsMap();A.dismissLinearEditor();let f=M4.getPointAtIndexGlobalCoordinates(z,0,k),l=M4.getPointAtIndexGlobalCoordinates(z,-1,k),b=!z.startBinding&&aA(OA(f),u,k,B.zoom,!1,!0),M=!z.endBinding&&aA(OA(l),u,k,B.zoom,!1,!0),Z=b||z.startBinding&&k.get(z.startBinding.elementId),J=M||z.endBinding&&k.get(z.endBinding.elementId),w=b?gq(z,b,"start"):f,K=M?gq(z,M,"end"):l;b&&zD(z,b,"start",k),M&&zD(z,M,"end",k),Wu(z,{points:[w,K].map((Q)=>t(Q[0]-z.x,Q[1]-z.y)),...Z&&z.startBinding?{startBinding:{...z.startBinding,...YO(z,Z,"start",k)}}:{},...J&&z.endBinding?{endBinding:{...z.endBinding,...YO(z,J,"end",k)}}:{}}),M4.updateEditorMidPointsCache(z,k,A.state)}return z}),D={...B,currentItemArrowType:E},F=B.selectedLinearElement?.elementId;if(F){let U=C.find((z)=>z.id===F);U&&(D.selectedLinearElement=new M4(U))}return{elements:C,appState:D,captureUpdate:Xu.IMMEDIATELY}},PanelComponent:({elements:u,appState:B,updateData:E})=>l0("fieldset",{children:[P("legend",{children:C0("labels.arrowtypes")}),P(tU,{group:"arrowtypes",options:[{value:f5.sharp,text:C0("labels.arrowtype_sharp"),icon:Plu,testId:"sharp-arrow"},{value:f5.round,text:C0("labels.arrowtype_round"),icon:Nlu,testId:"round-arrow"},{value:f5.elbow,text:C0("labels.arrowtype_elbowed"),icon:jlu,testId:"elbow-arrow"}],value:pB(u,B,(A)=>j3(A)?A.elbowed?f5.elbow:A.roundness?f5.round:f5.sharp:null,(A)=>j3(A),(A)=>A?null:B.currentItemArrowType),onChange:(A)=>E(A)})]})}),bQ=({viewportX:u,viewportY:B,nextZoom:E},A)=>{let C=u-A.offsetLeft,D=B-A.offsetTop,F=A.zoom.value,U=A.scrollX+(C-C/F),z=A.scrollY+(D-D/F),k=-(C-C/E),f=-(D-D/E);return{scrollX:U+k,scrollY:z+f,zoom:{value:E}}},fP=()=>{let u=document.querySelector(".excalidraw-tooltip");if(u)return u;let B=document.createElement("div");return document.body.appendChild(B),B.classList.add("excalidraw-tooltip"),B},Hou=(u,B,E="bottom")=>{let A=u.getBoundingClientRect(),C=window.innerWidth,D=window.innerHeight,F=5,U=B.left+B.width/2-A.width/2;U<0?U=F:U+A.width>=C&&(U=C-A.width-F);let z;E==="bottom"?(z=B.top+B.height+F,z+A.height>=D&&(z=B.top-A.height-F)):(z=B.top-A.height-F,z<0&&(z=B.top+B.height+F)),Object.assign(u.style,{top:`${z}px`,left:`${U}px`})},rk3=(u,B,E,A)=>{B.classList.add("excalidraw-tooltip--visible"),B.style.minWidth=A?"50ch":"10ch",B.style.maxWidth=A?"50ch":"15ch",B.textContent=E;let C=u.getBoundingClientRect();Hou(B,C)},KQ=({children:u,label:B,long:E=!1,style:A,disabled:C})=>(Gou.useEffect(()=>()=>fP().classList.remove("excalidraw-tooltip--visible"),[]),C?null:P("div",{className:"excalidraw-tooltip-wrapper",onPointerEnter:(D)=>rk3(D.currentTarget,fP(),B,E),onPointerLeave:()=>fP().classList.remove("excalidraw-tooltip--visible"),style:A,children:u})),CO1=C4({name:"changeViewBackgroundColor",label:"labels.canvasBackground",paletteName:"Change canvas background color",trackEvent:!1,predicate:(u,B,E,A)=>!!A.props.UIOptions.canvasActions.changeViewBackgroundColor&&!B.viewModeEnabled,perform:(u,B,E)=>({appState:{...B,...E},captureUpdate:E.viewBackgroundColor?Xu.IMMEDIATELY:Xu.EVENTUALLY}),PanelComponent:({elements:u,appState:B,updateData:E,appProps:A})=>P(FK0,{palette:null,topPicks:vk0,label:C0("labels.canvasBackground"),type:"canvasBackground",color:B.viewBackgroundColor,onChange:(C)=>E({viewBackgroundColor:C}),"data-testid":"canvas-background-picker",elements:u,appState:B,updateData:E})}),lP=C4({name:"clearCanvas",label:"labels.clearCanvas",paletteName:"Clear canvas",icon:MM,trackEvent:{category:"canvas"},predicate:(u,B,E,A)=>!!A.props.UIOptions.canvasActions.clearCanvas&&!B.viewModeEnabled&&B.openDialog?.name!=="elementLinkSelector",perform:(u,B,E,A)=>(A.imageCache.clear(),{elements:u.map((C)=>O3(C,{isDeleted:!0})),appState:{...MD(),files:{},theme:B.theme,penMode:B.penMode,penDetected:B.penDetected,exportBackground:B.exportBackground,exportEmbedScene:B.exportEmbedScene,gridSize:B.gridSize,gridStep:B.gridStep,gridModeEnabled:B.gridModeEnabled,stats:B.stats,pasteDialog:B.pasteDialog,activeTool:B.activeTool.type==="image"?{...B.activeTool,type:"selection"}:B.activeTool},captureUpdate:Xu.IMMEDIATELY})}),Pdu=C4({name:"zoomIn",label:"buttons.zoomIn",viewMode:!0,icon:uf0,trackEvent:{category:"canvas"},perform:(u,B,E,A)=>({appState:{...B,...bQ({viewportX:B.width/2+B.offsetLeft,viewportY:B.height/2+B.offsetTop,nextZoom:jU(B.zoom.value+kO)},B),userToFollow:null},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({updateData:u,appState:B})=>P(A1,{type:"button",className:"zoom-in-button zoom-button",icon:uf0,title:`${C0("buttons.zoomIn")} — ${Su("CtrlOrCmd++")}`,"aria-label":C0("buttons.zoomIn"),disabled:B.zoom.value>=r_,onClick:()=>{u(null)}}),keyTest:(u)=>(u.code===U1.EQUAL||u.code===U1.NUM_ADD)&&(u[y0.CTRL_OR_CMD]||u.shiftKey)}),jdu=C4({name:"zoomOut",label:"buttons.zoomOut",icon:Bf0,viewMode:!0,trackEvent:{category:"canvas"},perform:(u,B,E,A)=>({appState:{...B,...bQ({viewportX:B.width/2+B.offsetLeft,viewportY:B.height/2+B.offsetTop,nextZoom:jU(B.zoom.value-kO)},B),userToFollow:null},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({updateData:u,appState:B})=>P(A1,{type:"button",className:"zoom-out-button zoom-button",icon:Bf0,title:`${C0("buttons.zoomOut")} — ${Su("CtrlOrCmd+-")}`,"aria-label":C0("buttons.zoomOut"),disabled:B.zoom.value<=m_,onClick:()=>{u(null)}}),keyTest:(u)=>(u.code===U1.MINUS||u.code===U1.NUM_SUBTRACT)&&(u[y0.CTRL_OR_CMD]||u.shiftKey)}),Ndu=C4({name:"resetZoom",label:"buttons.resetZoom",icon:kfu,viewMode:!0,trackEvent:{category:"canvas"},perform:(u,B,E,A)=>({appState:{...B,...bQ({viewportX:B.width/2+B.offsetLeft,viewportY:B.height/2+B.offsetTop,nextZoom:jU(1)},B),userToFollow:null},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({updateData:u,appState:B})=>P(KQ,{label:C0("buttons.resetZoom"),style:{height:"100%"},children:l0(A1,{type:"button",className:"reset-zoom-button zoom-button",title:C0("buttons.resetZoom"),"aria-label":C0("buttons.resetZoom"),onClick:()=>{u(null)},children:[(B.zoom.value*100).toFixed(0),"%"]})}),keyTest:(u)=>(u.code===U1.ZERO||u.code===U1.NUM_ZERO)&&(u[y0.CTRL_OR_CMD]||u.shiftKey)}),$k3=(u,B,E=1)=>{let[A,C,D,F]=u,U=D-A,z=B.width/U,k=F-C,f=B.height/k,l=Math.min(z,f)*$3(E,0.1,1);return Math.min(l,1)},yk3=({bounds:u,appState:B,canvasOffsets:E,fitToViewport:A=!1,viewportZoomFactor:C=1,minZoom:D=-1/0,maxZoom:F=1/0})=>{C=$3(C,m_,r_);let[U,z,k,f]=u,l=(U+k)/2,b=(z+f)/2,M=E?.left??0,Z=E?.top??0,J=E?.right??0,w=E?.bottom??0,K=B.width-M-J,Q=B.height-Z-w,G;if(A){let q=k-U,x=f-z;G=Math.min(K/q,Q/x)*C}else G=$k3(u,{width:K,height:Q},C);let L=jU($3(Iku(G,kO,"floor"),D,F)),H=df0({scenePoint:{x:l,y:b},viewportDimensions:{width:B.width,height:B.height},offsets:E,zoom:{value:L}});return{appState:{...B,scrollX:H.scrollX,scrollY:H.scrollY,zoom:{value:L}},captureUpdate:Xu.EVENTUALLY}},is=({canvasOffsets:u,targetElements:B,appState:E,fitToViewport:A,viewportZoomFactor:C,minZoom:D,maxZoom:F})=>{let U=T1(z6(B));return yk3({canvasOffsets:u,bounds:U,appState:E,fitToViewport:A,viewportZoomFactor:C,minZoom:D,maxZoom:F})},DO1=C4({name:"zoomToFitSelectionInViewport",label:"labels.zoomToFitViewport",icon:Un,trackEvent:{category:"canvas"},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B);return is({targetElements:C.length?C:u,appState:{...B,userToFollow:null},fitToViewport:!1,canvasOffsets:A.getEditorUIOffsets()})},keyTest:(u)=>u.code===U1.TWO&&u.shiftKey&&!u.altKey&&!u[y0.CTRL_OR_CMD]}),FO1=C4({name:"zoomToFitSelection",label:"helpDialog.zoomToSelection",icon:Un,trackEvent:{category:"canvas"},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B);return is({targetElements:C.length?C:u,appState:{...B,userToFollow:null},fitToViewport:!0,canvasOffsets:A.getEditorUIOffsets()})},keyTest:(u)=>u.code===U1.THREE&&u.shiftKey&&!u.altKey&&!u[y0.CTRL_OR_CMD]}),UO1=C4({name:"zoomToFit",label:"helpDialog.zoomToFit",icon:Un,viewMode:!0,trackEvent:{category:"canvas"},perform:(u,B,E,A)=>is({targetElements:u,appState:{...B,userToFollow:null},fitToViewport:!1,canvasOffsets:A.getEditorUIOffsets()}),keyTest:(u)=>u.code===U1.ONE&&u.shiftKey&&!u.altKey&&!u[y0.CTRL_OR_CMD]}),Ks=C4({name:"toggleTheme",label:(u,B)=>B.theme===_3.DARK?"buttons.lightMode":"buttons.darkMode",keywords:["toggle","dark","light","mode","theme"],icon:(u)=>u.theme===_3.LIGHT?e_:un,viewMode:!0,trackEvent:{category:"canvas"},perform:(u,B,E)=>({appState:{...B,theme:E||(B.theme===_3.LIGHT?_3.DARK:_3.LIGHT)},captureUpdate:Xu.EVENTUALLY}),keyTest:(u)=>u.altKey&&u.shiftKey&&u.code===U1.D,predicate:(u,B,E,A)=>!!A.props.UIOptions.canvasActions.toggleTheme}),zO1=C4({name:"toggleEraserTool",label:"toolBar.eraser",trackEvent:{category:"toolbar"},perform:(u,B)=>{let E;return ZD(B)?E=n9(B,{...B.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):E=n9(B,{type:"eraser",lastActiveToolBeforeEraser:B.activeTool}),{appState:{...B,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:E},captureUpdate:Xu.IMMEDIATELY}},keyTest:(u)=>u.key===y0.E}),ck3=C4({name:"toggleHandTool",label:"toolBar.hand",paletteName:"Toggle hand tool",trackEvent:{category:"toolbar"},icon:Xf0,viewMode:!1,perform:(u,B,E,A)=>{let C;return SK(B)?C=n9(B,{...B.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):(C=n9(B,{type:"hand",lastActiveToolBeforeEraser:B.activeTool}),u6(A.interactiveCanvas,g1.GRAB)),{appState:{...B,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:C},captureUpdate:Xu.IMMEDIATELY}},keyTest:(u)=>!u.altKey&&!u[y0.CTRL_OR_CMD]&&u.key===y0.H}),hD=C4({name:"finalize",label:"",trackEvent:!1,perform:(u,B,E,A)=>{let{interactiveCanvas:C,focusContainer:D,scene:F}=A,U=F.getNonDeletedElementsMap();if(B.editingLinearElement){let{elementId:b,startBindingElement:M,endBindingElement:Z}=B.editingLinearElement,J=M4.getElement(b,U);if(J)return FD(J)&&SO(J,M,Z,U,F),{elements:J.points.length<2||aK(J)?u.filter((w)=>w.id!==J.id):void 0,appState:{...B,cursorButton:"up",editingLinearElement:null},captureUpdate:Xu.IMMEDIATELY}}let z=u,k=B.pendingImageElementId&&F.getElement(B.pendingImageElementId);k&&Wu(k,{isDeleted:!0},!1),window.document.activeElement instanceof HTMLElement&&D();let f=B.multiElement?B.multiElement:B.newElement?.type==="freedraw"?B.newElement:null;if(f){if(f.type!=="freedraw"&&B.lastPointerDownWith!=="touch"){let{points:M,lastCommittedPoint:Z}=f;(!Z||M[M.length-1]!==Z)&&Wu(f,{points:f.points.slice(0,-1)})}aK(f)&&(z=z.filter((M)=>M.id!==f.id));let b=SU(f.points,B.zoom.value);if((f.type==="line"||f.type==="freedraw")&&b){let M=f.points,Z=M[0];Wu(f,{points:M.map((J,w)=>w===M.length-1?t(Z[0],Z[1]):J)})}if(FD(f)&&!b&&f.points.length>1){let[M,Z]=M4.getPointAtIndexGlobalCoordinates(f,-1,e4(u));Hn(f,B,{x:M,y:Z},U,u)}}(!B.activeTool.locked&&B.activeTool.type!=="freedraw"||!f)&&mA(C);let l;return B.activeTool.type==="eraser"?l=n9(B,{...B.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):l=n9(B,{type:"selection"}),{elements:z,appState:{...B,cursorButton:"up",activeTool:(B.activeTool.locked||B.activeTool.type==="freedraw")&&f?B.activeTool:l,activeEmbeddable:null,newElement:null,selectionElement:null,multiElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:f&&!B.activeTool.locked&&B.activeTool.type!=="freedraw"?{...B.selectedElementIds,[f.id]:!0}:B.selectedElementIds,selectedLinearElement:f&&W3(f)?new M4(f):B.selectedLinearElement,pendingImageElementId:null},captureUpdate:Xu.IMMEDIATELY}},keyTest:(u,B)=>u.key===y0.ESCAPE&&(B.editingLinearElement!==null||!B.newElement&&B.multiElement===null)||(u.key===y0.ESCAPE||u.key===y0.ENTER)&&B.multiElement!==null,PanelComponent:({appState:u,updateData:B,data:E})=>P(A1,{type:"button",icon:Gfu,title:C0("buttons.done"),"aria-label":C0("buttons.done"),onClick:B,visible:u.multiElement!=null,size:E?.size||"medium",style:{pointerEvents:"all"}})}),gk3=(u)=>{let{id:B}=Bz(),[E,A]=Lou.useState(u.value),C=(F)=>{u.ignoreFocus||cku(F.target);let U=F.target.value;U!==u.value&&u.onChange(U)},D=(F)=>{if(F.key===y0.ENTER){if(F.preventDefault(),F.nativeEvent.isComposing||F.keyCode===229)return;F.currentTarget.blur()}};return l0("div",{className:"ProjectName",children:[P("label",{className:"ProjectName-label",htmlFor:"filename",children:`${u.label}:`}),P("input",{type:"text",className:"TextInput",onBlur:C,onKeyDown:D,id:`${B}-filename`,value:E,onChange:(F)=>A(F.target.value)})]})},_k3=(u)=>{let B=u.title||(u.value===_3.DARK?C0("buttons.lightMode"):C0("buttons.darkMode"));return P(A1,{type:"icon",icon:u.value===_3.LIGHT?idu.MOON:idu.SUN,title:B,"aria-label":B,onClick:()=>u.onChange(u.value===_3.DARK?_3.LIGHT:_3.DARK),"data-testid":"toggle-dark-mode"})},idu={SUN:P("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:P("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:P("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:P("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"})})},as=(u,{selectedElementIds:B},E)=>{u=z6(u);let A=E&&Z2(u,{selectedElementIds:B}),C=null,D=A?N3(u,{selectedElementIds:B},{includeBoundTextElement:!0}):u;return A&&(D.length===1&&u3(D[0])?(C=D[0],D=nn(u,C)):D.length>1&&(D=N3(u,{selectedElementIds:B},{includeBoundTextElement:!0,includeElementsInFrames:!0}))),{exportingFrame:C,exportedElements:IU(D)}},Vs=async(u,B,E,A,{exportBackground:C,exportPadding:D=xK,viewBackgroundColor:F,name:U=E.name||Pk0,fileHandle:z=null,exportingFrame:k=null})=>{if(B.length===0)throw Error(C0("alerts.cannotExportEmptyCanvas"));if(u==="svg"||u==="clipboard-svg"){let l=an(B,{exportBackground:C,exportWithDarkMode:E.exportWithDarkMode,viewBackgroundColor:F,exportPadding:D,exportScale:E.exportScale,exportEmbedScene:E.exportEmbedScene&&u==="svg"},A,{exportingFrame:k});if(u==="svg")return PO(l.then((b)=>new Blob([b.outerHTML],{type:y4.svg})),{description:"Export to SVG",name:U,extension:E.exportEmbedScene?"excalidraw.svg":"svg",mimeTypes:[XK.svg],fileHandle:z});if(u==="clipboard-svg"){let b=await l.then((M)=>M.outerHTML);try{await bX(b)}catch{throw Error(C0("errors.copyToSystemClipboardFailed"))}return}}let f=vl0(B,E,A,{exportBackground:C,viewBackgroundColor:F,exportPadding:D,exportingFrame:k});if(u==="png"){let l=KX(f);return E.exportEmbedScene&&(l=l.then((b)=>Promise.resolve().then(() => (yz0(),$z0)).then(({encodePngMetadata:M})=>M({blob:b,metadata:On(B,E,A,"local")})))),PO(l,{description:"Export to PNG",name:U,extension:E.exportEmbedScene?"excalidraw.png":"png",mimeTypes:[XK.png],fileHandle:z})}else if(u==="clipboard")try{let l=KX(f);await QMu(l)}catch(l){throw console.warn(l),l.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(C0("canvasError.canvasTooBig")):pq&&l.name==="TypeError"?Error(`${C0("alerts.couldNotCopyToClipboard")}
${C0("hints.firefox_clipboard_write")}`):Error(C0("alerts.couldNotCopyToClipboard"))}else throw Error("Unsupported export type")},nk3=async(u,B,E,A)=>{let{exportBackground:C,viewBackgroundColor:D,fileHandle:F}=B,U=el0(F);if(!F||!hMu(U))throw Error("fileHandle should exist and should be of type svg or png when resaving");B={...B,exportEmbedScene:!0};let{exportedElements:z,exportingFrame:k}=as(u,B,!1);return await Vs(U,z,B,E,{exportBackground:C,viewBackgroundColor:D,name:A,fileHandle:F,exportingFrame:k}),{fileHandle:F}},fK0=({children:u,checked:B,onChange:E,className:A})=>l0("div",{className:Yu("Checkbox",A,{"is-checked":B}),onClick:(C)=>{E(!B,C),C.currentTarget.querySelector(".Checkbox-box").focus()},children:[P("button",{type:"button",className:"Checkbox-box",role:"checkbox","aria-checked":B,children:Zfu}),P("div",{className:"Checkbox-label",children:u})]}),pk3=C4({name:"changeProjectName",label:"labels.fileTitle",trackEvent:!1,perform:(u,B,E)=>({appState:{...B,name:E},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({appState:u,updateData:B,appProps:E,data:A,app:C})=>P(gk3,{label:C0("labels.fileTitle"),value:C.getName(),onChange:(D)=>B(D),ignoreFocus:A?.ignoreFocus??!1})}),dk3=C4({name:"changeExportScale",label:"imageExportDialog.scale",trackEvent:{category:"export",action:"scale"},perform:(u,B,E)=>({appState:{...B,exportScale:E},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({elements:u,appState:B,updateData:E})=>{let A=z6(u),C=Z2(A,B)?N3(A,B):A;return P(tu,{children:y_.map((D)=>{let[F,U]=UMu(C,xK,D),z=`${C0("imageExportDialog.label.scale")} ${D}x (${F}x${U})`;return P(A1,{size:"small",type:"radio",icon:`${D}x`,name:"export-canvas-scale",title:z,"aria-label":z,id:"export-canvas-scale",checked:D===B.exportScale,onChange:()=>E(D)},D)})})}}),sk3=C4({name:"changeExportBackground",label:"imageExportDialog.label.withBackground",trackEvent:{category:"export",action:"toggleBackground"},perform:(u,B,E)=>({appState:{...B,exportBackground:E},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({appState:u,updateData:B})=>P(fK0,{checked:u.exportBackground,onChange:(E)=>B(E),children:C0("imageExportDialog.label.withBackground")})}),qou=C4({name:"changeExportEmbedScene",label:"imageExportDialog.tooltip.embedScene",trackEvent:{category:"export",action:"embedScene"},perform:(u,B,E)=>({appState:{...B,exportEmbedScene:E},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({appState:u,updateData:B})=>l0(fK0,{checked:u.exportEmbedScene,onChange:(E)=>B(E),children:[C0("imageExportDialog.label.embedScene"),P(KQ,{label:C0("imageExportDialog.tooltip.embedScene"),long:!0,children:P("div",{className:"excalidraw-tooltip-icon",children:Hfu})})]})}),adu=C4({name:"saveToActiveFile",label:"buttons.save",icon:LO,trackEvent:{category:"export"},predicate:(u,B,E,A)=>!!A.props.UIOptions.canvasActions.saveToActiveFile&&!!B.fileHandle&&!B.viewModeEnabled,perform:async(u,B,E,A)=>{let C=!!B.fileHandle;try{let{fileHandle:D}=Bp(B.fileHandle)?await nk3(u,B,A.files,A.getName()):await Zl0(u,B,A.files,A.getName());return{captureUpdate:Xu.EVENTUALLY,appState:{...B,fileHandle:D,toast:C?{message:D?.name?C0("toast.fileSavedToFilename").replace("{filename}",`"${D.name}"`):C0("toast.fileSaved")}:null}}}catch(D){return D?.name!=="AbortError"?console.error(D):console.warn(D),{captureUpdate:Xu.EVENTUALLY}}},keyTest:(u)=>u.key===y0.S&&u[y0.CTRL_OR_CMD]&&!u.shiftKey}),Xou=C4({name:"saveFileToDisk",label:"exportDialog.disk_title",icon:LO,viewMode:!0,trackEvent:{category:"export"},perform:async(u,B,E,A)=>{try{let{fileHandle:C}=await Zl0(u,{...B,fileHandle:null},A.files,A.getName());return{captureUpdate:Xu.EVENTUALLY,appState:{...B,openDialog:null,fileHandle:C,toast:{message:C0("toast.fileSaved")}}}}catch(C){return C?.name!=="AbortError"?console.error(C):console.warn(C),{captureUpdate:Xu.EVENTUALLY}}},keyTest:(u)=>u.key===y0.S&&u.shiftKey&&u[y0.CTRL_OR_CMD],PanelComponent:({updateData:u})=>P(A1,{type:"button",icon:wfu,title:C0("buttons.saveAs"),"aria-label":C0("buttons.saveAs"),showAriaLabel:K5().editor.isMobile,hidden:!rk,onClick:()=>u(null),"data-testid":"save-as-button"})}),yw0=C4({name:"loadScene",label:"buttons.load",trackEvent:{category:"export"},predicate:(u,B,E,A)=>!!A.props.UIOptions.canvasActions.loadScene&&!B.viewModeEnabled,perform:async(u,B,E,A)=>{try{let{elements:C,appState:D,files:F}=await tbu(B,u);return{elements:C,appState:D,files:F,captureUpdate:Xu.IMMEDIATELY}}catch(C){return C?.name==="AbortError"?(console.warn(C),!1):{elements:u,appState:{...B,errorMessage:C.message},files:A.files,captureUpdate:Xu.EVENTUALLY}}},keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.key===y0.O}),ok3=C4({name:"exportWithDarkMode",label:"imageExportDialog.label.darkMode",trackEvent:{category:"export",action:"toggleTheme"},perform:(u,B,E)=>({appState:{...B,exportWithDarkMode:E},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({appState:u,updateData:B})=>P("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:"-45px",marginBottom:"10px"},children:P(_k3,{value:u.exportWithDarkMode?_3.DARK:_3.LIGHT,onChange:(E)=>{B(E===_3.DARK)},title:C0("imageExportDialog.label.darkMode")})})}),xou="{}",tk3=C4({name:"copyStyles",label:"labels.copyStyles",icon:Tf0,trackEvent:{category:"element"},perform:(u,B,E,A)=>{let C=[],D=u.find((F)=>B.selectedElementIds[F.id]);if(C.push(D),D&&i8(D)){let F=Y3(D,A.scene.getNonDeletedElementsMap());C.push(F)}return D&&(xou=JSON.stringify(C)),{appState:{...B,toast:{message:C0("toast.copyStyles")}},captureUpdate:Xu.EVENTUALLY}},keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.C}),ek3=C4({name:"pasteStyles",label:"labels.pasteStyles",icon:Tf0,trackEvent:{category:"element"},perform:(u,B,E,A)=>{let C=JSON.parse(xou),D=C[0],F=C[1];if(!pk0(D))return{elements:u,captureUpdate:Xu.EVENTUALLY};let U=N3(u,B,{includeBoundTextElement:!0}),z=U.map((k)=>k.id);return{elements:u.map((k)=>{if(z.includes(k.id)){let f=D;if(l4(k)&&k.containerId&&(f=F),!f)return k;let l=O3(k,{backgroundColor:f?.backgroundColor,strokeWidth:f?.strokeWidth,strokeColor:f?.strokeColor,strokeStyle:f?.strokeStyle,fillStyle:f?.fillStyle,opacity:f?.opacity,roughness:f?.roughness,roundness:f.roundness?oku(f.roundness.type,k)?f.roundness:tku(k):null});if(l4(l)){let b=f.fontSize||TU,M=f.fontFamily||ok;l=O3(l,{fontSize:b,fontFamily:M,textAlign:f.textAlign||dq,lineHeight:f.lineHeight||JM(M)});let Z=null;l.containerId&&(Z=U.find((J)=>l4(l)&&J.id===l.containerId)||null),c7(l,Z,A.scene.getNonDeletedElementsMap())}return l.type==="arrow"&&j3(f)&&(l=O3(l,{startArrowhead:f.startArrowhead,endArrowhead:f.endArrowhead})),u3(k)&&(l=O3(l,{roundness:null,backgroundColor:"transparent"})),l}return k}),captureUpdate:Xu.IMMEDIATELY}},keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.V}),wO1=C4({name:"toggleCanvasMenu",label:"buttons.menu",trackEvent:{category:"menu"},perform:(u,B)=>({appState:{...B,openMenu:B.openMenu==="canvas"?null:"canvas"},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({appState:u,updateData:B})=>P(A1,{type:"button",icon:Ef0,"aria-label":C0("buttons.menu"),onClick:B,selected:u.openMenu==="canvas"})}),KO1=C4({name:"toggleEditMenu",label:"buttons.edit",trackEvent:{category:"menu"},perform:(u,B)=>({appState:{...B,openMenu:B.openMenu==="shape"?null:"shape"},captureUpdate:Xu.EVENTUALLY}),PanelComponent:({elements:u,appState:B,updateData:E})=>P(A1,{visible:en(B,z6(u)),type:"button",icon:Kfu,"aria-label":C0("buttons.edit"),onClick:E,selected:B.openMenu==="shape"})}),lK0=C4({name:"toggleShortcuts",label:"welcomeScreen.defaults.helpHint",icon:lfu,viewMode:!0,trackEvent:{category:"menu",action:"toggleHelpDialog"},perform:(u,B,E,{focusContainer:A})=>(B.openDialog?.name==="help"&&A(),{appState:{...B,openDialog:B.openDialog?.name==="help"?null:{name:"help"}},captureUpdate:Xu.EVENTUALLY}),keyTest:(u)=>u.key===y0.QUESTION_MARK}),uf3=(u)=>{if(u.length>=2){let B=u[0].groupIds;for(let E of B)if(u.reduce((A,C)=>A&&UX(C,E),!0))return!0}return!1},Vdu=(u,B,E)=>{let A=E.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0});return A.length>=2&&!uf3(A)&&!rl0(A)},Bf3=C4({name:"group",label:"labels.group",icon:(u)=>P(Gf0,{theme:u.theme}),trackEvent:{category:"element"},perform:(u,B,E,A)=>{let C=gn(A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0}));if(C.length<2)return{appState:B,elements:u,captureUpdate:Xu.EVENTUALLY};let D=KM(B);if(D.length===1){let J=D[0],w=new Set(x6(u,J).map((Q)=>Q.id)),K=new Set(C.map((Q)=>Q.id));if(new Set([...Array.from(w),...Array.from(K)]).size===w.size)return{appState:B,elements:u,captureUpdate:Xu.EVENTUALLY}}let F=[...u];new Set(C.map((J)=>J.frameId)).size>1&&XMu(C).forEach((J,w)=>{hO(J,A.scene.getNonDeletedElementsMap())});let U=TE(),z=e4(C);F=F.map((J)=>z.get(J.id)?O3(J,{groupIds:Xbu(J.groupIds,U,B.editingGroupId)}):J);let k=x6(F,U),f=k[k.length-1],l=F.lastIndexOf(f),b=F.slice(l+1),M=F.slice(0,l).filter((J)=>!UX(J,U)),Z=lD([...M,...k,...b],e4(k));return{appState:{...B,...of0(U,{...B,selectedGroupIds:{}},z6(F))},elements:Z,captureUpdate:Xu.IMMEDIATELY}},predicate:(u,B,E,A)=>Vdu(u,B,A),keyTest:(u)=>!u.shiftKey&&u[y0.CTRL_OR_CMD]&&u.key===y0.G,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!Vdu(u,B,A),type:"button",icon:P(Gf0,{theme:B.theme}),onClick:()=>E(null),title:`${C0("labels.group")} — ${Su("CtrlOrCmd+G")}`,"aria-label":C0("labels.group"),visible:Z2(z6(u),B)})}),Ef3=C4({name:"ungroup",label:"labels.ungroup",icon:(u)=>P(Hf0,{theme:u.theme}),trackEvent:{category:"element"},perform:(u,B,E,A)=>{let C=KM(B),D=e4(u);if(C.length===0)return{appState:B,elements:u,captureUpdate:Xu.EVENTUALLY};let F=[...u],U=[];F=F.map((l)=>{X6(l)&&U.push(l.id);let b=xbu(l.groupIds,B.selectedGroupIds);return b.length===l.groupIds.length?l:O3(l,{groupIds:b})});let z=y7(B,z6(F),B,null),k=A.scene.getSelectedElements(B),f=new Set(k.filter((l)=>l.frameId).map((l)=>l.frameId));return cn(u).filter((l)=>f.has(l.id)).forEach((l)=>{l&&(F=hl0(F,VO(F,l,B,D),l,A))}),z.selectedElementIds=Object.entries(z.selectedElementIds).reduce((l,[b,M])=>(M&&!U.includes(b)&&(l[b]=!0),l),{}),{appState:{...B,...z},elements:F,captureUpdate:Xu.IMMEDIATELY}},keyTest:(u)=>u.shiftKey&&u[y0.CTRL_OR_CMD]&&u.key===y0.G.toUpperCase(),predicate:(u,B)=>KM(B).length>0,PanelComponent:({elements:u,appState:B,updateData:E})=>P(A1,{type:"button",hidden:KM(B).length===0,icon:P(Hf0,{theme:B.theme}),onClick:()=>E(null),title:`${C0("labels.ungroup")} — ${Su("CtrlOrCmd+Shift+G")}`,"aria-label":C0("labels.ungroup"),visible:Z2(z6(u),B)})}),vou=(u,B,E,A,C,D,F)=>{u.beginPath(),u.moveTo(B+D,E),u.lineTo(B+A-D,E),u.quadraticCurveTo(B+A,E,B+A,E+D),u.lineTo(B+A,E+C-D),u.quadraticCurveTo(B+A,E+C,B+A-D,E+C),u.lineTo(B+D,E+C),u.quadraticCurveTo(B,E+C,B,E+C-D),u.lineTo(B,E+D),u.quadraticCurveTo(B,E,B+D,E),u.closePath(),u.fill(),F&&(u.strokeStyle=F),u.stroke()};function Af3(u){let B=0;if(u.length===0)return B;for(let E=0;E<u.length;E++){let A=u.charCodeAt(E);B=(B<<5)-B+A}return B}var hs=(u,B)=>`hsl(${Math.abs(Af3(B?.id||u))%37*10}, 100%, 83%)`,Cf3=(u)=>{let B=u?.trim()?.codePointAt(0);return(B?String.fromCodePoint(B):"?").toUpperCase()},Df3=({context:u,renderConfig:B,appState:E,normalizedWidth:A,normalizedHeight:C})=>{for(let[D,F]of B.remotePointerViewportCoords){let{x:U,y:z}=F,k=E.collaborators.get(D);U-=E.offsetLeft,z-=E.offsetTop;let f=11,l=14,b=U<0||U>A-f||z<0||z>C-l;U=Math.max(U,0),U=Math.min(U,A-f),z=Math.max(z,0),z=Math.min(z,C-l);let M=hs(D,k);u.save(),u.strokeStyle=M,u.fillStyle=M;let Z=B.remotePointerUserStates.get(D),J=b||Z==="idle"||Z==="away";J&&(u.globalAlpha=0.3),B.remotePointerButton.get(D)==="down"&&(u.beginPath(),u.arc(U,z,15,0,2*Math.PI,!1),u.lineWidth=3,u.strokeStyle="#ffffff88",u.stroke(),u.closePath(),u.beginPath(),u.arc(U,z,15,0,2*Math.PI,!1),u.lineWidth=1,u.strokeStyle=M,u.stroke(),u.closePath());let w=E.theme===_3.DARK?"#2f6330":Zku,K=k?.isSpeaking;K&&(u.fillStyle=w,u.strokeStyle=w,u.lineWidth=10,u.lineJoin="round",u.beginPath(),u.moveTo(U,z),u.lineTo(U+0,z+14),u.lineTo(U+4,z+9),u.lineTo(U+11,z+8),u.closePath(),u.stroke(),u.fill()),u.fillStyle=UO,u.strokeStyle=UO,u.lineWidth=6,u.lineJoin="round",u.beginPath(),u.moveTo(U,z),u.lineTo(U+0,z+14),u.lineTo(U+4,z+9),u.lineTo(U+11,z+8),u.closePath(),u.stroke(),u.fill(),u.fillStyle=M,u.strokeStyle=M,u.lineWidth=2,u.lineJoin="round",u.beginPath(),J?(u.moveTo(U-1,z-1),u.lineTo(U-1,z+15),u.lineTo(U+5,z+10),u.lineTo(U+12,z+9),u.closePath(),u.fill()):(u.moveTo(U,z),u.lineTo(U+0,z+14),u.lineTo(U+4,z+9),u.lineTo(U+11,z+8),u.closePath(),u.fill(),u.stroke());let Q=B.remotePointerUsernames.get(D)||"";if(!b&&Q){u.font="600 12px sans-serif";let G=(K?U+0:U)+f/2,L=(K?z+0:z)+l+2,H=5,q=3,x=u.measureText(Q),v=x.actualBoundingBoxDescent+x.actualBoundingBoxAscent,W=Math.max(v,12),S=G-1,T=L-1,R=x.width+2+H*2+2,Y=W+2+q*2+2;if(u.roundRect?(u.beginPath(),u.roundRect(S,T,R,Y,8),u.fillStyle=M,u.fill(),u.strokeStyle=UO,u.stroke(),K&&(u.beginPath(),u.roundRect(S-2,T-2,R+4,Y+4,8),u.strokeStyle=w,u.stroke())):vou(u,S,T,R,Y,8,UO),u.fillStyle=Mku,u.fillText(Q,G+H+1,L+q+x.actualBoundingBoxAscent+Math.floor((W-v)/2)+2),K){u.fillStyle=w;let a=8,I=8,O=5;u.fillRect(S+R+I,T+(Y/2-a/2),2,a),u.fillRect(S+R+I+O,T+(Y/2-a*2/2),2,a*2),u.fillRect(S+R+I+O*2,T+(Y/2-a/2),2,a)}}u.restore(),u.closePath()}},hdu=({color:u,onClick:B,name:E,src:A,className:C})=>{let D=Cf3(E),[F,U]=Sou.useState(!1),z=!F&&A,k=z?void 0:{background:u};return P("div",{className:Yu("Avatar",C),style:k,onClick:B,children:z?P("img",{className:"Avatar-img",src:A,alt:D,referrerPolicy:"no-referrer",onError:()=>U(!0)}):D})},XO1=C4({name:"goToCollaborator",label:"Go to a collaborator",viewMode:!0,trackEvent:{category:"collab"},perform:(u,B,E)=>!E.socketId||B.userToFollow?.socketId===E.socketId||E.isCurrentUser?{appState:{...B,userToFollow:null},captureUpdate:Xu.EVENTUALLY}:{appState:{...B,userToFollow:{socketId:E.socketId,username:E.username||""},openMenu:B.openMenu==="canvas"?null:B.openMenu},captureUpdate:Xu.EVENTUALLY},PanelComponent:({updateData:u,data:B,appState:E})=>{let{socketId:A,collaborator:C,withName:D,isBeingFollowed:F}=B,U=hs(A,C),z=Yu({"is-followed":F,"is-current-user":C.isCurrentUser===!0,"is-speaking":C.isSpeaking,"is-in-call":C.isInCall,"is-muted":C.isMuted}),k=C.isInCall?C.isSpeaking?l0("div",{className:"UserList__collaborator-status-icon-speaking-indicator",title:C0("userList.hint.isSpeaking"),children:[P("div",{}),P("div",{}),P("div",{})]}):C.isMuted?P("div",{className:"UserList__collaborator-status-icon-microphone-muted",title:C0("userList.hint.micMuted"),children:Hlu}):P("div",{title:C0("userList.hint.inCall"),children:Glu}):null;return D?l0("div",{className:`dropdown-menu-item dropdown-menu-item-base UserList__collaborator ${z}`,style:{"--avatar-size":"1.5rem"},onClick:()=>u(C),children:[P(hdu,{color:U,onClick:()=>{},name:C.username||"",src:C.avatarUrl,className:z}),P("div",{className:"UserList__collaborator-name",children:C.username}),l0("div",{className:"UserList__collaborator-status-icons","aria-hidden":!0,children:[F&&P("div",{className:"UserList__collaborator-status-icon-is-followed",title:C0("userList.hint.followStatus"),children:Fn}),k]})]}):l0("div",{className:`UserList__collaborator UserList__collaborator--avatar-only ${z}`,children:[P(hdu,{color:U,onClick:()=>{u(C)},name:C.username||"",src:C.avatarUrl,className:z}),k&&P("div",{className:"UserList__collaborator-status-icon",children:k})]})}}),Ff3=C4({name:"addToLibrary",trackEvent:{category:"element"},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});for(let D of Ik0)if(C.some((F)=>F.type===D))return{captureUpdate:Xu.EVENTUALLY,appState:{...B,errorMessage:C0(`errors.libraryElementTypeError.${D}`)}};return A.library.getLatestLibrary().then((D)=>A.library.setLibrary([{id:TE(),status:"unpublished",elements:C.map(QM),created:Date.now()},...D])).then(()=>({captureUpdate:Xu.EVENTUALLY,appState:{...B,toast:{message:C0("toast.addedToLibrary")}}})).catch((D)=>({captureUpdate:Xu.EVENTUALLY,appState:{...B,errorMessage:D.message}}))},label:"labels.addToLibrary"}),Uf3=(u,B,E,A)=>{let C=RO(u,B),D=hA(u);return C.flatMap((F)=>{let U=zf3(F,D,E);return F.map((z)=>{let k=Wu(z,{x:z.x+U.x,y:z.y+U.y});return hB(z,A.getNonDeletedElementsMap(),{simultaneouslyUpdated:F}),k})})},zf3=(u,B,{axis:E,position:A})=>{let C=hA(u),[D,F]=E==="x"?["minX","maxX"]:["minY","maxY"],U={x:0,y:0};return A==="start"?{...U,[E]:B[D]-C[D]}:A==="end"?{...U,[E]:B[F]-C[F]}:{...U,[E]:(B[D]+B[F])/2-(C[D]+C[F])/2}},$E=(u,B)=>{let E=B.scene.getSelectedElements(u);return E.length>1&&!E.some((A)=>u3(A))},xx=(u,B,E,A)=>{let C=E.scene.getSelectedElements(B),D=e4(u),F=Uf3(C,D,A,E.scene),U=e4(F);return iK(u.map((z)=>U.get(z.id)||z),B,E)},vO1=C4({name:"alignTop",label:"labels.alignTop",icon:bf0,trackEvent:{category:"element"},predicate:(u,B,E,A)=>$E(B,A),perform:(u,B,E,A)=>({appState:B,elements:xx(u,B,A,{position:"start",axis:"y"}),captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.key===y0.ARROW_UP,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!$E(B,A),type:"button",icon:bf0,onClick:()=>E(null),title:`${C0("labels.alignTop")} — ${Su("CtrlOrCmd+Shift+Up")}`,"aria-label":C0("labels.alignTop"),visible:Z2(z6(u),B)})}),SO1=C4({name:"alignBottom",label:"labels.alignBottom",icon:Mf0,trackEvent:{category:"element"},predicate:(u,B,E,A)=>$E(B,A),perform:(u,B,E,A)=>({appState:B,elements:xx(u,B,A,{position:"end",axis:"y"}),captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.key===y0.ARROW_DOWN,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!$E(B,A),type:"button",icon:Mf0,onClick:()=>E(null),title:`${C0("labels.alignBottom")} — ${Su("CtrlOrCmd+Shift+Down")}`,"aria-label":C0("labels.alignBottom"),visible:Z2(z6(u),B)})}),WO1=C4({name:"alignLeft",label:"labels.alignLeft",icon:Zf0,trackEvent:{category:"element"},predicate:(u,B,E,A)=>$E(B,A),perform:(u,B,E,A)=>({appState:B,elements:xx(u,B,A,{position:"start",axis:"x"}),captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.key===y0.ARROW_LEFT,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!$E(B,A),type:"button",icon:Zf0,onClick:()=>E(null),title:`${C0("labels.alignLeft")} — ${Su("CtrlOrCmd+Shift+Left")}`,"aria-label":C0("labels.alignLeft"),visible:Z2(z6(u),B)})}),YO1=C4({name:"alignRight",label:"labels.alignRight",icon:Jf0,trackEvent:{category:"element"},predicate:(u,B,E,A)=>$E(B,A),perform:(u,B,E,A)=>({appState:B,elements:xx(u,B,A,{position:"end",axis:"x"}),captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.shiftKey&&u.key===y0.ARROW_RIGHT,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!$E(B,A),type:"button",icon:Jf0,onClick:()=>E(null),title:`${C0("labels.alignRight")} — ${Su("CtrlOrCmd+Shift+Right")}`,"aria-label":C0("labels.alignRight"),visible:Z2(z6(u),B)})}),RO1=C4({name:"alignVerticallyCentered",label:"labels.centerVertically",icon:wf0,trackEvent:{category:"element"},predicate:(u,B,E,A)=>$E(B,A),perform:(u,B,E,A)=>({appState:B,elements:xx(u,B,A,{position:"center",axis:"y"}),captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!$E(B,A),type:"button",icon:wf0,onClick:()=>E(null),title:C0("labels.centerVertically"),"aria-label":C0("labels.centerVertically"),visible:Z2(z6(u),B)})}),TO1=C4({name:"alignHorizontallyCentered",label:"labels.centerHorizontally",icon:Kf0,trackEvent:{category:"element"},predicate:(u,B,E,A)=>$E(B,A),perform:(u,B,E,A)=>({appState:B,elements:xx(u,B,A,{position:"center",axis:"x"}),captureUpdate:Xu.IMMEDIATELY}),PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!$E(B,A),type:"button",icon:Kf0,onClick:()=>E(null),title:C0("labels.centerHorizontally"),"aria-label":C0("labels.centerHorizontally"),visible:Z2(z6(u),B)})}),kf3=(u,B,E)=>{let[A,C,D,F]=E.axis==="x"?["minX","midX","maxX","width"]:["minY","midY","maxY","height"],U=hA(u),z=RO(u,B).map((b)=>[b,hA(b)]).sort((b,M)=>b[1][C]-M[1][C]),k=0;for(let b of z)k+=b[1][F];let f=(U[F]-k)/(z.length-1);if(f<0){let b=z.findIndex((w)=>w[1][A]===U[A]),M=z.findIndex((w)=>w[1][D]===U[D]),Z=(z[M][1][C]-z[b][1][C])/(z.length-1),J=z[b][1][C];return z.flatMap(([w,K],Q)=>{let G={x:0,y:0};return Q!==b&&Q!==M&&(J+=Z,G[E.axis]=J-K[C]),w.map((L)=>O3(L,{x:L.x+G.x,y:L.y+G.y}))})}let l=U[A];return z.flatMap(([b,M])=>{let Z={x:0,y:0};return Z[E.axis]=l-M[A],l+=f,l+=M[F],b.map((J)=>O3(J,{x:J.x+Z.x,y:J.y+Z.y}))})},Wou=(u,B)=>{let E=B.scene.getSelectedElements(u);return E.length>1&&!E.some((A)=>u3(A))},You=(u,B,E,A)=>{let C=E.scene.getSelectedElements(B),D=kf3(C,E.scene.getNonDeletedElementsMap(),A),F=e4(D);return iK(u.map((U)=>F.get(U.id)||U),B,E)},IO1=C4({name:"distributeHorizontally",label:"labels.distributeHorizontally",trackEvent:{category:"element"},perform:(u,B,E,A)=>({appState:B,elements:You(u,B,A,{space:"between",axis:"x"}),captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.H,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!Wou(B,A),type:"button",icon:xfu,onClick:()=>E(null),title:`${C0("labels.distributeHorizontally")} — ${Su("Alt+H")}`,"aria-label":C0("labels.distributeHorizontally"),visible:Z2(z6(u),B)})}),PO1=C4({name:"distributeVertically",label:"labels.distributeVertically",trackEvent:{category:"element"},perform:(u,B,E,A)=>({appState:B,elements:You(u,B,A,{space:"between",axis:"y"}),captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.V,PanelComponent:({elements:u,appState:B,updateData:E,app:A})=>P(A1,{hidden:!Wou(B,A),type:"button",icon:vfu,onClick:()=>E(null),title:`${C0("labels.distributeVertically")} — ${Su("Alt+V")}`,"aria-label":C0("labels.distributeVertically"),visible:Z2(z6(u),B)})}),ff3=C4({name:"flipHorizontal",label:"labels.flipHorizontal",icon:xlu,trackEvent:{category:"element"},perform:(u,B,E,A)=>({elements:iK(Rou(u,A.scene.getNonDeletedElementsMap(),B,"horizontal",A),B,A),appState:B,captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>u.shiftKey&&u.code===U1.H}),lf3=C4({name:"flipVertical",label:"labels.flipVertical",icon:Xlu,trackEvent:{category:"element"},perform:(u,B,E,A)=>({elements:iK(Rou(u,A.scene.getNonDeletedElementsMap(),B,"vertical",A),B,A),appState:B,captureUpdate:Xu.IMMEDIATELY}),keyTest:(u)=>u.shiftKey&&u.code===U1.V&&!u[y0.CTRL_OR_CMD]}),Rou=(u,B,E,A,C)=>{let D=N3(z6(u),E,{includeBoundTextElement:!0,includeElementsInFrames:!0}),F=bf3(D,B,E,A,C),U=e4(F);return u.map((z)=>U.get(z.id)||z)},bf3=(u,B,E,A,C)=>{if(u.every((M)=>j3(M)&&(M.startBinding||M.endBinding)))return u.map((M)=>{let Z=M;return O3(Z,{startArrowhead:Z.endArrowhead,endArrowhead:Z.startArrowhead})});let{midX:D,midY:F}=hA(u);ol0(u,B,"nw",C.scene,new Map(Array.from(B.values()).map((M)=>[M.id,QM(M)])),{flipByX:A==="horizontal",flipByY:A==="vertical",shouldResizeFromCenter:!0,shouldMaintainAspectRatio:!0}),WO(u.filter(W3),B,C.scene.getNonDeletedElements(),C.scene,AM(E),[],E.zoom);let{elbowArrows:U,otherElements:z}=u.reduce((M,Z)=>K4(Z)?{...M,elbowArrows:M.elbowArrows.concat(Z)}:{...M,otherElements:M.otherElements.concat(Z)},{elbowArrows:[],otherElements:[]}),{midX:k,midY:f}=hA(u),[l,b]=[D-k,F-f];return z.forEach((M)=>Wu(M,{x:M.x+l,y:M.y+b})),U.forEach((M)=>Wu(M,{x:M.x+l,y:M.y+b})),u},Ms=C4({name:"copy",label:"labels.copy",icon:t_,trackEvent:{category:"element"},perform:async(u,B,E,A)=>{let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});try{await JMu(C,A.files,E)}catch(D){return{captureUpdate:Xu.EVENTUALLY,appState:{...B,errorMessage:D.message}}}return{captureUpdate:Xu.EVENTUALLY}},keyTest:void 0}),mdu=C4({name:"paste",label:"labels.paste",trackEvent:{category:"element"},perform:async(u,B,E,A)=>{let C;try{C=await KMu()}catch(D){return D.name==="AbortError"||D.name==="NotAllowedError"?!1:(console.error(`actionPaste ${D.name}: ${D.message}`),pq?{captureUpdate:Xu.EVENTUALLY,appState:{...B,errorMessage:C0("hints.firefox_clipboard_write")}}:{captureUpdate:Xu.EVENTUALLY,appState:{...B,errorMessage:C0("errors.asyncPasteFailedOnRead")}})}try{A.pasteFromClipboard(ZMu({types:C}))}catch(D){return console.error(D),{captureUpdate:Xu.EVENTUALLY,appState:{...B,errorMessage:C0("errors.asyncPasteFailedOnParse")}}}return{captureUpdate:Xu.EVENTUALLY}},keyTest:void 0}),rdu=C4({name:"cut",label:"labels.cut",icon:zlu,trackEvent:{category:"element"},perform:(u,B,E,A)=>(Ms.perform(u,B,E,A),$su.perform(u,B,null,A)),keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.key===y0.X}),$du=C4({name:"copyAsSvg",label:"labels.copyAsSvg",icon:vlu,trackEvent:{category:"element"},perform:async(u,B,E,A)=>{if(!A.canvas)return{captureUpdate:Xu.EVENTUALLY};let{exportedElements:C,exportingFrame:D}=as(u,B,!0);try{await Vs("clipboard-svg",C,B,A.files,{...B,exportingFrame:D,name:A.getName()});let F=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});return{appState:{toast:{message:C0("toast.copyToClipboardAsSvg",{exportSelection:F.length?C0("toast.selection"):C0("toast.canvas"),exportColorScheme:B.exportWithDarkMode?C0("buttons.darkMode"):C0("buttons.lightMode")})}},captureUpdate:Xu.EVENTUALLY}}catch(F){return console.error(F),{appState:{errorMessage:F.message},captureUpdate:Xu.EVENTUALLY}}},predicate:(u)=>rn&&u.length>0,keywords:["svg","clipboard","copy"]}),ydu=C4({name:"copyAsPng",label:"labels.copyAsPng",icon:Slu,trackEvent:{category:"element"},perform:async(u,B,E,A)=>{if(!A.canvas)return{captureUpdate:Xu.EVENTUALLY};let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),{exportedElements:D,exportingFrame:F}=as(u,B,!0);try{return await Vs("clipboard",D,B,A.files,{...B,exportingFrame:F,name:A.getName()}),{appState:{...B,toast:{message:C0("toast.copyToClipboardAsPng",{exportSelection:C.length?C0("toast.selection"):C0("toast.canvas"),exportColorScheme:B.exportWithDarkMode?C0("buttons.darkMode"):C0("buttons.lightMode")})}},captureUpdate:Xu.EVENTUALLY}}catch(U){return console.error(U),{appState:{...B,errorMessage:U.message},captureUpdate:Xu.EVENTUALLY}}},predicate:(u)=>$n&&u.length>0,keyTest:(u)=>u.code===U1.C&&u.altKey&&u.shiftKey,keywords:["png","clipboard","copy"]}),cdu=C4({name:"copyText",label:"labels.copyText",trackEvent:{category:"element"},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0});try{bX(Vbu(C))}catch{throw Error(C0("errors.copyToSystemClipboardFailed"))}return{captureUpdate:Xu.EVENTUALLY}},predicate:(u,B,E,A)=>rn&&A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0}).some(l4),keywords:["text","clipboard","copy"]}),gdu=C4({name:"gridMode",icon:Olu,keywords:["snap"],label:"labels.toggleGrid",viewMode:!0,trackEvent:{category:"canvas",predicate:(u)=>u.gridModeEnabled},perform(u,B){return{appState:{...B,gridModeEnabled:!this.checked(B),objectsSnapModeEnabled:!1},captureUpdate:Xu.EVENTUALLY}},checked:(u)=>u.gridModeEnabled,predicate:(u,B,E)=>E.gridModeEnabled===void 0,keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.code===U1.QUOTE}),cw0=C4({name:"zenMode",label:"buttons.zenMode",icon:Ylu,paletteName:"Toggle zen mode",viewMode:!0,trackEvent:{category:"canvas",predicate:(u)=>!u.zenModeEnabled},perform(u,B){return{appState:{...B,zenModeEnabled:!this.checked(B)},captureUpdate:Xu.EVENTUALLY}},checked:(u)=>u.zenModeEnabled,predicate:(u,B,E)=>typeof E.zenModeEnabled>"u",keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.Z}),Mf3=C4({name:"objectsSnapMode",label:"buttons.objectsSnapMode",icon:Wlu,viewMode:!1,trackEvent:{category:"canvas",predicate:(u)=>!u.objectsSnapModeEnabled},perform(u,B){return{appState:{...B,objectsSnapModeEnabled:!this.checked(B),gridModeEnabled:!1},captureUpdate:Xu.EVENTUALLY}},checked:(u)=>u.objectsSnapModeEnabled,predicate:(u,B,E)=>typeof E.objectsSnapModeEnabled>"u",keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.S}),gw0=C4({name:"stats",label:"stats.fullTitle",icon:qlu,paletteName:"Toggle stats",viewMode:!0,trackEvent:{category:"menu"},keywords:["edit","attributes","customize"],perform(u,B){return{appState:{...B,stats:{...B.stats,open:!this.checked(B)}},captureUpdate:Xu.EVENTUALLY}},checked:(u)=>u.stats.open,keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.SLASH}),Zf3=C4({name:"unbindText",label:"labels.unbindText",trackEvent:{category:"element"},predicate:(u,B,E,A)=>A.scene.getSelectedElements(B).some((C)=>i8(C)),perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B),D=A.scene.getNonDeletedElementsMap();return C.forEach((F)=>{let U=Y3(F,D);if(U){let{width:z,height:k}=Q7(U.originalText,e1(U),U.lineHeight),f=Ibu(F.id);Cl0(F.id);let{x:l,y:b}=OO(F,U,D);Wu(U,{containerId:null,width:z,height:k,text:U.originalText,x:l,y:b}),Wu(F,{boundElements:F.boundElements?.filter((M)=>M.id!==U.id),height:f||F.height})}}),{elements:u,appState:B,captureUpdate:Xu.IMMEDIATELY}}}),Jf3=C4({name:"bindText",label:"labels.bindText",trackEvent:{category:"element"},predicate:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B);if(C.length===2){let D=l4(C[0])||l4(C[1]),F;if(lM(C[0])?F=C[0]:lM(C[1])&&(F=C[1]),D&&F&&Y3(F,A.scene.getNonDeletedElementsMap())===null)return!0}return!1},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B),D,F;l4(C[0])&&lM(C[1])?(D=C[0],F=C[1]):(D=C[1],F=C[0]),Wu(D,{containerId:F.id,verticalAlign:P8.MIDDLE,textAlign:rq.CENTER,autoResize:!0}),Wu(F,{boundElements:(F.boundElements||[]).concat({type:"text",id:D.id})});let U=F.height;return c7(D,F,A.scene.getNonDeletedElementsMap()),TO(F.id,U),{elements:wf3(u,F,D),appState:{...B,selectedElementIds:{[F.id]:!0}},captureUpdate:Xu.IMMEDIATELY}}}),wf3=(u,B,E)=>{let A=u.slice(),C=A.findIndex((F)=>F.id===E.id);A.splice(C,1);let D=A.findIndex((F)=>F.id===B.id);return A.splice(D+1,0,E),lD(A,e4([B,E])),A},Kf3=(u,B,E)=>{let A=u.slice(),C=A.findIndex((F)=>F.id===B.id);A.splice(C,1);let D=A.findIndex((F)=>F.id===E.id);return A.splice(D,0,B),lD(A,e4([B,E])),A},Qf3=C4({name:"wrapTextInContainer",label:"labels.createContainerFromText",trackEvent:{category:"element"},predicate:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B),D=C.every((F)=>l4(F));return C.length>0&&D},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B),D=u.slice(),F={};for(let U of C)if(l4(U)){let z=QD({type:"rectangle",backgroundColor:B.currentItemBackgroundColor,boundElements:[...U.boundElements||[],{id:U.id,type:"text"}],angle:U.angle,fillStyle:B.currentItemFillStyle,strokeColor:B.currentItemStrokeColor,roughness:B.currentItemRoughness,strokeWidth:B.currentItemStrokeWidth,strokeStyle:B.currentItemStrokeStyle,roundness:B.currentItemRoundness==="round"?{type:RK("rectangle")?b2.ADAPTIVE_RADIUS:b2.PROPORTIONAL_RADIUS}:null,opacity:100,locked:!1,x:U.x-f2,y:U.y-f2,width:CM(U.width,"rectangle"),height:CM(U.height,"rectangle"),groupIds:U.groupIds,frameId:U.frameId});if(U.boundElements?.length){let k=U.boundElements.filter((f)=>f.type==="arrow").map((f)=>f.id);D.filter((f)=>k.includes(f.id)).forEach((f)=>{let{startBinding:l,endBinding:b}=f;l?.elementId===U.id&&(l={...l,elementId:z.id}),b?.elementId===U.id&&(b={...b,elementId:z.id}),(l||b)&&Wu(f,{startBinding:l,endBinding:b},!1)})}Wu(U,{containerId:z.id,verticalAlign:P8.MIDDLE,boundElements:null,textAlign:rq.CENTER,autoResize:!0},!1),c7(U,z,A.scene.getNonDeletedElementsMap()),D=Kf3([...D,z],z,U),F[z.id]=!0}return{elements:D,appState:{...B,selectedElementIds:F},captureUpdate:Xu.IMMEDIATELY}}}),bK0=380,Gf3=42,_w0=5,Tou=85,Hf3=500,nw0=!1,Fs=new Map,Lf3=({element:u,elementsMap:B,setAppState:E,onLinkOpen:A,setToast:C,updateEmbedValidationStatus:D})=>{let F=SP(),U=vP(),z=K5(),k=u.link||"",[f,l]=uC.useState(k),b=uC.useRef(null),M=F.showHyperlinkPopup==="editor",Z=uC.useCallback(()=>{if(!b.current)return;let G=j8(b.current.value)||null;if(!u.link&&G&&G6("hyperlink","create"),rB(u)){if(F.activeEmbeddable?.element===u&&E({activeEmbeddable:null}),!G){Wu(u,{link:null}),D(u,!1);return}if(!IO(G,U.validateEmbeddable))G&&C({message:C0("toast.unableToEmbed"),closable:!0}),u.link&&Fs.set(u.id,u.link),Wu(u,{link:G}),D(u,!1);else{let{width:L,height:H}=u,q=NK(G);q?.error instanceof URIError&&C({message:C0("toast.unrecognizedLinkFormat"),closable:!0});let x=q?q.intrinsicSize.w/q.intrinsicSize.h:1,v=Fs.get(u.id)!==u.link;Wu(u,{...v?{width:q?.type==="video"?L>H?L:H*x:L,height:q?.type==="video"&&L>H?L/x:H}:{},link:G}),D(u,!0),Fs.has(u.id)&&Fs.delete(u.id)}}else Wu(u,{link:G})},[u,C,U.validateEmbeddable,F.activeEmbeddable,E,D]);uC.useLayoutEffect(()=>()=>{Z()},[Z]),uC.useEffect(()=>{M&&b?.current&&!(z.viewport.isMobile||z.isTouchScreen)&&b.current.select()},[M,z.viewport.isMobile,z.isTouchScreen]),uC.useEffect(()=>{let G=null,L=(H)=>{if(M)return;G&&clearTimeout(G),xf3(u,B,F,t(H.clientX,H.clientY))&&(G=window.setTimeout(()=>{E({showHyperlinkPopup:!1})},Hf3))};return window.addEventListener("pointermove",L,!1),()=>{window.removeEventListener("pointermove",L,!1),G&&clearTimeout(G)}},[F,u,M,E,B]);let J=uC.useCallback(()=>{G6("hyperlink","delete"),Wu(u,{link:null}),E({showHyperlinkPopup:!1})},[E,u]),w=()=>{G6("hyperlink","edit","popup-ui"),E({showHyperlinkPopup:"editor"})},{x:K,y:Q}=Oou(u,F,B);return F.contextMenu||F.selectedElementsAreBeingDragged||F.resizingElement||F.isRotating||F.openMenu||F.viewModeEnabled?null:l0("div",{className:"excalidraw-hyperlinkContainer",style:{top:`${Q}px`,left:`${K}px`,width:bK0,padding:_w0},children:[M?P("input",{className:Yu("excalidraw-hyperlinkContainer-input"),placeholder:C0("labels.link.hint"),ref:b,value:f,onChange:(G)=>l(G.target.value),autoFocus:!0,onKeyDown:(G)=>{G.stopPropagation(),G[y0.CTRL_OR_CMD]&&G.key===y0.K&&G.preventDefault(),(G.key===y0.ENTER||G.key===y0.ESCAPE)&&(Z(),E({showHyperlinkPopup:"info"}))}}):u.link?P("a",{href:j8(u.link||""),className:"excalidraw-hyperlinkContainer-link",target:Fl0(u.link)?"_self":"_blank",onClick:(G)=>{if(u.link&&A){let L=$k0("excalidraw-link",G.nativeEvent);A({...u,link:j8(u.link)},L),L.defaultPrevented&&G.preventDefault()}},rel:"noopener noreferrer",children:u.link}):P("div",{className:"excalidraw-hyperlinkContainer-link",children:C0("labels.link.empty")}),l0("div",{className:"excalidraw-hyperlinkContainer__buttons",children:[!M&&P(A1,{type:"button",title:C0("buttons.edit"),"aria-label":C0("buttons.edit"),label:C0("buttons.edit"),onClick:w,className:"excalidraw-hyperlinkContainer--edit",icon:$q}),P(A1,{type:"button",title:C0("labels.linkToElement"),"aria-label":C0("labels.linkToElement"),label:C0("labels.linkToElement"),onClick:()=>{E({openDialog:{name:"elementLinkSelector",sourceElementId:u.id}})},icon:Pf0}),k&&!rB(u)&&P(A1,{type:"button",title:C0("buttons.remove"),"aria-label":C0("buttons.remove"),label:C0("buttons.remove"),onClick:J,className:"excalidraw-hyperlinkContainer--remove",icon:MM})]})]})},Oou=(u,B,E)=>{let[A,C]=S3(u,E),{x:D,y:F}=jA({sceneX:A+u.width/2,sceneY:C},B),U=D-B.offsetLeft-bK0/2,z=F-B.offsetTop-Tou;return{x:U,y:z}},_du=(u,B)=>{let E=N3(u,B);return rB(E[0])?"labels.link.editEmbed":E[0]?.link?"labels.link.edit":"labels.link.create"},bP=null,qf3=(u,B,E)=>{bP&&clearTimeout(bP),bP=window.setTimeout(()=>Xf3(u,B,E),Hku)},Xf3=(u,B,E)=>{if(!u.link)return;let A=fP();A.classList.add("excalidraw-tooltip--visible"),A.style.maxWidth="20rem",A.textContent=lX(u.link)?C0("labels.link.goToElement"):u.link;let[C,D,F,U]=S3(u,E),[z,k,f,l]=In([C,D,F,U],u.angle,B),b=jA({sceneX:z,sceneY:k},B);Hou(A,{left:b.x,top:b.y,width:f,height:l},"top"),G6("hyperlink","tooltip","link-icon"),nw0=!0},ndu=()=>{bP&&clearTimeout(bP),nw0&&(nw0=!1,fP().classList.remove("excalidraw-tooltip--visible"))},xf3=(u,B,E,[A,C])=>{let{x:D,y:F}=Q6({clientX:A,clientY:C},E),U=15/E.zoom.value;if(zn(D,F,u,B))return!1;let[z,k,f]=S3(u,B);if(D>=z&&D<=f&&F>=k-Tou&&F<=k)return!1;let{x:l,y:b}=Oou(u,E,B);return!(A>=l-U&&A<=l+bK0+_w0*2+U&&C>=b-U&&C<=b+U+_w0*2+Gf3)},Iou=C4({name:"hyperlink",label:(u,B)=>_du(u,B),icon:En,perform:(u,B)=>B.showHyperlinkPopup==="editor"?!1:{elements:u,appState:{...B,showHyperlinkPopup:"editor",openMenu:null},captureUpdate:Xu.IMMEDIATELY},trackEvent:{category:"hyperlink",action:"click"},keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.key===y0.K,predicate:(u,B)=>N3(u,B).length===1,PanelComponent:({elements:u,appState:B,updateData:E})=>{let A=N3(u,B);return P(A1,{type:"button",icon:En,"aria-label":C0(_du(u,B)),title:`${rB(u[0])?C0("labels.link.labelEmbed"):C0("labels.link.label")} - ${Su("CtrlOrCmd+K")}`,onClick:()=>E(null),selected:A.length===1&&!!A[0].link})}}),Xw0=(u)=>u.every((B)=>!B.locked),vf3=C4({name:"toggleElementLock",label:(u,B,E)=>{let A=E.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!1});return A.length===1&&!u3(A[0])?A[0].locked?"labels.elementLock.unlock":"labels.elementLock.lock":Xw0(A)?"labels.elementLock.lockAll":"labels.elementLock.unlockAll"},icon:(u,B)=>{let E=N3(B,u);return Xw0(E)?o_:HO},trackEvent:{category:"element"},predicate:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B);return C.length>0&&!C.some((D)=>D.locked&&D.frameId)},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});if(!C.length)return!1;let D=Xw0(C),F=e4(C);return{elements:u.map((U)=>F.has(U.id)?O3(U,{locked:D}):U),appState:{...B,selectedLinearElement:D?null:B.selectedLinearElement},captureUpdate:Xu.IMMEDIATELY}},keyTest:(u,B,E,A)=>u.key.toLocaleLowerCase()===y0.L&&u[y0.CTRL_OR_CMD]&&u.shiftKey&&A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!1}).length>0}),Sf3=C4({name:"unlockAllElements",paletteName:"Unlock all elements",trackEvent:{category:"canvas"},viewMode:!1,icon:HO,predicate:(u,B)=>N3(u,B).length===0&&u.some((E)=>E.locked),perform:(u,B)=>{let E=u.filter((A)=>A.locked);return{elements:u.map((A)=>A.locked?O3(A,{locked:!1}):A),appState:{...B,selectedElementIds:Object.fromEntries(E.map((A)=>[A.id,!0]))},captureUpdate:Xu.IMMEDIATELY}},label:"labels.elementLock.unlockAll"}),Wf3=()=>{let[u,B]=rs.useState(null),E=rs.useCallback((A)=>B(A),[]);return[u,E]},Yf3=(u)=>{let{closeOnClickOutside:B=!0}=u,E=Bou({className:"excalidraw-modal-container"}),A=jou.useRef(document.body.classList.contains("excalidraw-animations-disabled"));if(!E)return null;let C=(D)=>{D.key===y0.ESCAPE&&(D.nativeEvent.stopImmediatePropagation(),D.stopPropagation(),u.onCloseRequest())};return Pou.createPortal(l0("div",{className:Yu("Modal",u.className,{"animations-disabled":A.current}),role:"dialog","aria-modal":"true",onKeyDown:C,"aria-labelledby":u.labelledBy,"data-prevent-outside-click":!0,children:[P("div",{className:"Modal__background",onClick:B?u.onCloseRequest:void 0}),P("div",{className:"Modal__content",style:{"--max-width":`${u.maxWidth}px`},tabIndex:0,children:u.children})]}),E)},iou=I2(new Map),pdu=async(u)=>await aO({elements:u,appState:{exportBackground:!1,viewBackgroundColor:m3.white},files:null,renderEmbeddables:!1,skipInliningFonts:!0}),Rf3=(u,B,E)=>{let[A,C]=$s.useState();return $s.useEffect(()=>{if(B)if(u){let D=E.get(u);D?C(D):(async()=>{let F=await pdu(B);F.querySelector(".style-fonts")?.remove(),F&&(E.set(u,F),C(F))})()}else(async()=>{let D=await pdu(B);C(D)})()},[u,B,E,C]),A},aou=()=>{let[u]=P9(iou);return{clearLibraryCache:()=>u.clear(),deleteItemsFromLibraryCache:(B)=>{B.forEach((E)=>u.delete(E))},svgCache:u}},Tf3=class{constructor(){j0(this,"jobs",[]),j0(this,"running",!1)}tick(){if(this.running)return;let u=this.jobs.shift();u?(this.running=!0,u.promise.resolve(JK(u.jobFactory,...u.args).finally(()=>{this.running=!1,this.tick()}))):this.running=!1}push(u,...B){let E=$ku();return this.jobs.push({jobFactory:u,promise:E,args:B}),this.tick(),E}};var Of3=new GD,KP=I2({status:"loaded",isInitialized:!1,libraryItems:[]}),AP=(u)=>IU(u),If3=(u,B)=>!u.find((E)=>E.elements.length!==B.elements.length?!1:E.elements.every((A,C)=>A.id===B.elements[C].id&&A.versionNonce===B.elements[C].versionNonce)),Pf3=(u,B)=>{let E=[];for(let A of B)If3(u,A)&&E.push(A);return[...E,...u]},jf3=(u,B)=>{let E=e4(B),A={deletedItems:new Map,addedItems:new Map};for(let D of u)E.has(D.id)||A.deletedItems.set(D.id,D);let C=e4(u);for(let D of B)C.has(D.id)||A.addedItems.set(D.id,D);return A},Nf3=class{constructor(u){j0(this,"currLibraryItems",[]),j0(this,"prevLibraryItems",AP(this.currLibraryItems)),j0(this,"app"),j0(this,"updateQueue",[]),j0(this,"getLastUpdateTask",()=>this.updateQueue[this.updateQueue.length-1]),j0(this,"notifyListeners",()=>{if(this.updateQueue.length>0)mD.set(KP,(B)=>({status:"loading",libraryItems:this.currLibraryItems,isInitialized:B.isInitialized}));else{mD.set(KP,{status:"loaded",libraryItems:this.currLibraryItems,isInitialized:!0});try{let B=this.prevLibraryItems;this.prevLibraryItems=AP(this.currLibraryItems);let E=AP(this.currLibraryItems);this.app.props.onLibraryChange?.(E),Of3.trigger(jf3(B,E),E)}catch(B){console.error(B)}}}),j0(this,"destroy",()=>{this.updateQueue=[],this.currLibraryItems=[],mD.set(iou,new Map)}),j0(this,"resetLibrary",()=>this.setLibrary([])),j0(this,"getLatestLibrary",()=>new Promise(async(B)=>{try{let E=await(this.getLastUpdateTask()||this.currLibraryItems);this.updateQueue.length>0?B(this.getLatestLibrary()):B(AP(E))}catch{return B(this.currLibraryItems)}})),j0(this,"updateLibrary",async({libraryItems:B,prompt:E=!1,merge:A=!1,openLibraryMenu:C=!1,defaultStatus:D="unpublished"})=>(C&&this.app.setState({openSidebar:{name:VA.name,tab:lO}}),this.setLibrary(()=>new Promise(async(F,U)=>{try{let z=await(typeof B=="function"&&!(B instanceof Blob)?B(this.currLibraryItems):B),k;z instanceof Blob?k=await rMu(z,D):k=mn(z,D),!E||window.confirm(C0("alerts.confirmAddLibrary",{numShapes:k.length}))?(E&&this.app.focusContainer(),F(A?Pf3(this.currLibraryItems,k):k)):U(new xO)}catch(z){U(z)}})))),j0(this,"setLibrary",(B)=>{let E=new Promise(async(A,C)=>{try{await this.getLastUpdateTask(),typeof B=="function"&&(B=B(this.currLibraryItems)),this.currLibraryItems=AP(await B),A(this.currLibraryItems)}catch(D){C(D)}}).catch((A)=>{if(A.name==="AbortError")return console.warn("Library update aborted by user"),this.currLibraryItems;throw A}).finally(()=>{this.updateQueue=this.updateQueue.filter((A)=>A!==E),this.notifyListeners()});return this.updateQueue.push(E),this.notifyListeners(),E}),this.app=u}},if3=Nf3,Vou=(u)=>{let B=Math.ceil(Math.sqrt(u.length)),E=[],A=(b)=>u.slice(b*B,b*B+B).reduce((M,Z)=>{let{height:J}=hA(Z.elements);return Math.max(M,J)},0),C=(b)=>{let M=0,Z=0,J=0;for(let w of u){if(M%B===0&&(Z=0),Z===b){let{width:K}=hA(w.elements);J=Math.max(J,K)}M++,Z++}return J},D=0,F=0,U=0,z=0,k=0,f=0,l=0;for(let b of u){k&&k%B===0&&(F+=U+50,D=0,f=0,l++),f===0&&(U=A(l)),z=C(f);let{minX:M,minY:Z,width:J,height:w}=hA(b.elements),K=(z-J)/2,Q=(U-w)/2;E.push(...b.elements.map((G)=>({...G,x:G.x+D+K-M,y:G.y+F+Q-Z}))),D+=z+50,k++,f++}return E};var Us=class u{constructor(B){j0(this,"adapter"),this.adapter=B}static async getLibraryItems(B,E,A=!0){let C=()=>new Promise(async(D,F)=>{try{let U=await B.load({source:E});D(mn(U?.libraryItems||[],"published"))}catch(U){F(U)}});return A?u.queue.push(C):C()}getLibraryItems(B){return u.getLibraryItems(this.adapter,B,!1)}};j0(Us,"queue",new Tf3),j0(Us,"run",async(u,B)=>{let E=new Us(u);return Us.queue.push(()=>B(E))});var af3=MK0.forwardRef(({children:u,gap:B,align:E,justifyContent:A,className:C,style:D},F)=>P("div",{className:Yu("Stack Stack_horizontal",C),style:{"--gap":B,alignItems:E,justifyContent:A,...D},ref:F,children:u})),Vf3=MK0.forwardRef(({children:u,gap:B,align:E,justifyContent:A,className:C,style:D},F)=>P("div",{className:Yu("Stack Stack_vertical",C),style:{"--gap":B,justifyItems:E,justifyContent:A,...D},ref:F,children:u})),tA={Row:af3,Col:Vf3},hf3=({theme:u,id:B,libraryReturnUrl:E})=>{let A=E||window.location.origin+window.location.pathname;return P("a",{className:"library-menu-browse-button",href:`${Z3.VITE_APP_LIBRARY_URL}?target=${window.name||"_blank"}&referrer=${A}&useHash=true&token=${B}&theme=${u}&version=${fO.excalidrawLibrary}`,target:"_excalidraw_libraries",children:C0("labels.libraries")})},mf3=hf3,hou=({libraryReturnUrl:u,theme:B,id:E,style:A,children:C,className:D})=>l0("div",{className:Yu("library-menu-control-buttons",D),style:A,children:[P(mf3,{id:E,libraryReturnUrl:u,theme:B}),C]}),rf3=/({{[\w-]+}})|(<[\w-]+>)|(<\/[\w-]+>)/g,$f3=/{{([\w-]+)}}/,yf3=/<([\w-]+)>/,cf3=/<\/([\w-]+)>/,gf3=(u,B)=>{let E=[{name:"",children:[]}];return u.split(rf3).filter(Boolean).forEach((A)=>{let C=A.match(yf3),D=A.match(cf3),F=A.match($f3);if(C!==null){let U=C[1];B.hasOwnProperty(U)?E.push({name:U,children:[]}):console.warn(`Trans: missed to pass in prop ${U} for interpolating ${u}`)}else if(D!==null)if(D[1]===E[E.length-1].name){let U=E.pop(),z=QP.default.createElement(QP.default.Fragment,{},...U.children),k=B[U.name];typeof k=="function"&&E[E.length-1].children.push(k(z))}else console.warn(`Trans: unexpected end tag ${A} for interpolating ${u}`);else if(F!==null){let U=F[1];B.hasOwnProperty(U)?E[E.length-1].children.push(B[U]):console.warn(`Trans: key ${U} not in props for interpolating ${u}`)}else E[E.length-1].children.push(A)}),E.length!==1&&console.warn(`Trans: stack not empty for interpolating ${u}`),E[0].children},_f3=({i18nKey:u,children:B,...E})=>{let{t:A}=AB();return QP.default.createElement(QP.default.Fragment,{},...gf3(A(u),E))},sU=_f3,nf3=({label:u,onClick:B,className:E,children:A,actionType:C,type:D="button",isLoading:F,...U})=>{let z=C?`Dialog__action-button--${C}`:"";return l0("button",{className:Yu("Dialog__action-button",z,E),type:D,"aria-label":u,onClick:B,...U,children:[A&&P("div",{style:F?{visibility:"hidden"}:{},children:A}),P("div",{style:F?{visibility:"hidden"}:{},children:u}),F&&P("div",{style:{position:"absolute",inset:0},children:P(Zf,{})})]})},Hx=nf3,pf3=(u)=>{let{onConfirm:B,onCancel:E,children:A,confirmText:C=C0("buttons.confirm"),cancelText:D=C0("buttons.cancel"),className:F="",...U}=u,z=V2(),k=xs(ZK0),{container:f}=Bz();return l0(nD,{onCloseRequest:E,size:"small",...U,className:`confirm-dialog ${F}`,children:[A,l0("div",{className:"confirm-dialog-buttons",children:[P(Hx,{label:D,onClick:()=>{z({openMenu:null}),k(!1),pw0.flushSync(()=>{E()}),f?.focus()}}),P(Hx,{label:C,onClick:()=>{z({openMenu:null}),k(!1),pw0.flushSync(()=>{B()}),f?.focus()},actionType:"danger"})]})]})},mou=pf3,ZQ=class{static has(u){try{return!!window.localStorage.getItem(u)}catch(B){return console.warn(`localStorage.getItem error: ${B.message}`),!1}}static get(u){try{let B=window.localStorage.getItem(u);return B?JSON.parse(B):null}catch(B){return console.warn(`localStorage.getItem error: ${B.message}`),null}}};j0(ZQ,"set",(u,B)=>{try{return window.localStorage.setItem(u,JSON.stringify(B)),!0}catch(E){return console.warn(`localStorage.setItem error: ${E.message}`),!1}}),j0(ZQ,"delete",(u)=>{try{window.localStorage.removeItem(u)}catch(B){console.warn(`localStorage.removeItem error: ${B.message}`)}});var df3=async(u)=>{let B=Math.round(8),E=Math.max(Math.round(2),2),A=mku(u,6),C=document.createElement("canvas");C.width=A[0].length*128+(A[0].length+1)*(B*2)-B*2,C.height=A.length*128+(A.length+1)*(B*2)-B*2;let D=C.getContext("2d");D.fillStyle=_6.white,D.fillRect(0,0,C.width,C.height);for(let[F,U]of u.entries()){let z=await yn({elements:U.elements,files:null,maxWidthOrHeight:128}),{width:k,height:f}=z,l=Math.floor(F/6)*(128+B*2),b=F%6*(128+B*2);D.drawImage(z,b+(128-k)/2+B,l+(128-f)/2+B),D.lineWidth=E,D.strokeStyle=_6.gray[4],D.strokeRect(b+B/2,l+B/2,128+B,128+B)}return await Ep(new File([await KX(C)],"preview",{type:y4.png}),{outputType:y4.jpg,maxWidthOrHeight:5000})},sf3=({libItem:u,appState:B,index:E,onChange:A,onRemove:C})=>{let D=rE.useRef(null),F=rE.useRef(null);return rE.useEffect(()=>{let U=D.current;U&&(async()=>{let z=await aO({elements:u.elements,appState:{...B,viewBackgroundColor:_6.white,exportBackground:!0},files:null,skipInliningFonts:!0});U.innerHTML=z.outerHTML})()},[u.elements,B]),l0("div",{className:"single-library-item",children:[u.status==="published"&&P("span",{className:"single-library-item-status",children:C0("labels.statusPublished")}),P("div",{ref:D,className:"single-library-item__svg"}),P(A1,{"aria-label":C0("buttons.remove"),type:"button",icon:OK,className:"single-library-item--remove",onClick:C.bind(null,u.id),title:C0("buttons.remove")}),l0("div",{style:{display:"flex",margin:"0.8rem 0",width:"100%",fontSize:"14px",fontWeight:500,flexDirection:"column"},children:[l0("label",{style:{display:"flex",justifyContent:"space-between",flexDirection:"column"},children:[l0("div",{style:{padding:"0.5em 0"},children:[P("span",{style:{fontWeight:500,color:_6.gray[6]},children:C0("publishDialog.itemName")}),P("span",{"aria-hidden":"true",className:"required",children:"*"})]}),P("input",{type:"text",ref:F,style:{width:"80%",padding:"0.2rem"},defaultValue:u.name,placeholder:"Item name",onChange:(U)=>{A(U.target.value,E)}})]}),P("span",{className:"error",children:u.error})]})]})},of3=({onClose:u,libraryItems:B,appState:E,onSuccess:A,onError:C,updateItemsInStorage:D,onRemove:F})=>{let[U,z]=rE.useState({authorName:"",githubHandle:"",name:"",description:"",twitterHandle:"",website:""}),[k,f]=rE.useState(!1);rE.useEffect(()=>{let G=ZQ.get(sq.PUBLISH_LIBRARY);G&&z(G)},[]);let[l,b]=rE.useState(B.slice());rE.useEffect(()=>{b(B.slice())},[B]);let M=(G)=>{z({...U,[G.target.name]:G.target.value})},Z=async(G)=>{G.preventDefault(),f(!0);let L=[],H=!1;if(l.forEach((T)=>{let R="";T.name||(R=C0("publishDialog.errors.required"),H=!0),L.push({...T,error:R})}),H){b(L),f(!1);return}let q=await df3(l),x={type:WE.excalidrawLibrary,version:fO.excalidrawLibrary,source:h_,libraryItems:l},v=JSON.stringify(x,null,2),W=new Blob([v],{type:"application/json"}),S=new FormData;S.append("excalidrawLib",W),S.append("previewImage",q),S.append("previewImageType",q.type),S.append("title",U.name),S.append("authorName",U.authorName),S.append("githubHandle",U.githubHandle),S.append("name",U.name),S.append("description",U.description),S.append("twitterHandle",U.twitterHandle),S.append("website",U.website),fetch(`${Z3.VITE_APP_LIBRARY_BACKEND}/submit`,{method:"post",body:S}).then((T)=>T.ok?T.json().then(({url:R})=>{ZQ.delete(sq.PUBLISH_LIBRARY),A({url:R,authorName:U.authorName,items:l})}):T.json().catch(()=>{throw Error(T.statusText||"something went wrong")}).then((R)=>{throw Error(R.message||T.statusText||"something went wrong")}),(T)=>{console.error(T),C(T),f(!1)}).catch((T)=>{console.error(T),C(T),f(!1)})},J=()=>{let G=[];return l.forEach((L,H)=>{G.push(P("div",{className:"single-library-item-wrapper",children:P(sf3,{libItem:L,appState:E,index:H,onChange:(q,x)=>{let v=l.slice();v[x].name=q,b(v)},onRemove:F})},H))}),P("div",{className:"selected-library-items",children:G})},w=rE.useCallback(()=>{D(l),ZQ.set(sq.PUBLISH_LIBRARY,U),u()},[l,u,D,U]),K=!!B.length,Q=B.some((G)=>G.status==="published");return P(nD,{onCloseRequest:w,title:C0("publishDialog.title"),className:"publish-library",children:K?l0("form",{onSubmit:Z,children:[P("div",{className:"publish-library-note",children:P(sU,{i18nKey:"publishDialog.noteDescription",link:(G)=>P("a",{href:"https://libraries.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:G})})}),P("span",{className:"publish-library-note",children:P(sU,{i18nKey:"publishDialog.noteGuidelines",link:(G)=>P("a",{href:"https://github.com/excalidraw/excalidraw-libraries#guidelines",target:"_blank",rel:"noopener noreferrer",children:G})})}),P("div",{className:"publish-library-note",children:C0("publishDialog.noteItems")}),Q&&P("span",{className:"publish-library-note publish-library-warning",children:C0("publishDialog.republishWarning")}),J(),l0("div",{className:"publish-library__fields",children:[l0("label",{children:[l0("div",{children:[P("span",{children:C0("publishDialog.libraryName")}),P("span",{"aria-hidden":"true",className:"required",children:"*"})]}),P("input",{type:"text",name:"name",required:!0,value:U.name,onChange:M,placeholder:C0("publishDialog.placeholder.libraryName")})]}),l0("label",{style:{alignItems:"flex-start"},children:[l0("div",{children:[P("span",{children:C0("publishDialog.libraryDesc")}),P("span",{"aria-hidden":"true",className:"required",children:"*"})]}),P("textarea",{name:"description",rows:4,required:!0,value:U.description,onChange:M,placeholder:C0("publishDialog.placeholder.libraryDesc")})]}),l0("label",{children:[l0("div",{children:[P("span",{children:C0("publishDialog.authorName")}),P("span",{"aria-hidden":"true",className:"required",children:"*"})]}),P("input",{type:"text",name:"authorName",required:!0,value:U.authorName,onChange:M,placeholder:C0("publishDialog.placeholder.authorName")})]}),l0("label",{children:[P("span",{children:C0("publishDialog.githubUsername")}),P("input",{type:"text",name:"githubHandle",value:U.githubHandle,onChange:M,placeholder:C0("publishDialog.placeholder.githubHandle")})]}),l0("label",{children:[P("span",{children:C0("publishDialog.twitterUsername")}),P("input",{type:"text",name:"twitterHandle",value:U.twitterHandle,onChange:M,placeholder:C0("publishDialog.placeholder.twitterHandle")})]}),l0("label",{children:[P("span",{children:C0("publishDialog.website")}),P("input",{type:"text",name:"website",pattern:"https?://.+",title:C0("publishDialog.errors.website"),value:U.website,onChange:M,placeholder:C0("publishDialog.placeholder.website")})]}),P("span",{className:"publish-library-note",children:P(sU,{i18nKey:"publishDialog.noteLicense",link:(G)=>P("a",{href:"https://github.com/excalidraw/excalidraw-libraries/blob/main/LICENSE",target:"_blank",rel:"noopener noreferrer",children:G})})})]}),l0("div",{className:"publish-library__buttons",children:[P(Hx,{label:C0("buttons.cancel"),onClick:w,"data-testid":"cancel-clear-canvas-button"}),P(Hx,{type:"submit",label:C0("buttons.submit"),actionType:"primary",isLoading:k})]})]}):P("p",{style:{padding:"1em",textAlign:"center",fontWeight:500},children:C0("publishDialog.atleastOneLibItem")})})},tf3=of3,rou=({className:u="",children:B,onToggle:E,title:A,...C})=>{let D=K5(),F=Yu(`dropdown-menu-button ${u}`,"zen-mode-transition",{"dropdown-menu-button--mobile":D.editor.isMobile}).trim();return P("button",{"data-prevent-outside-click":!0,className:F,onClick:E,type:"button","data-testid":"dropdown-menu-button",title:A,...C,children:B})},ef3=rou;rou.displayName="DropdownMenuTrigger";var $ou=()=>P("div",{style:{height:"1px",backgroundColor:"var(--default-border-color)",margin:".5rem 0"}}),ul3=$ou;$ou.displayName="DropdownMenuSeparator";var you=({children:u,onClickOutside:B,className:E="",onSelect:A,style:C})=>{let D=K5(),F=ys.useRef(null),U=Os({onClickOutside:B});DK0(F,()=>{U.onClickOutside?.()}),ys.useEffect(()=>{let k=(l)=>{l.key===y0.ESCAPE&&(l.stopImmediatePropagation(),U.onClickOutside?.())},f={capture:!0};return document.addEventListener("keydown",k,f),()=>{document.removeEventListener("keydown",k,f)}},[U]);let z=Yu(`dropdown-menu ${E}`,{"dropdown-menu--mobile":D.editor.isMobile}).trim();return P(bou.Provider,{value:{onSelect:A},children:P("div",{ref:F,className:z,style:C,"data-testid":"dropdown-menu",children:D.editor.isMobile?P(tA.Col,{className:"dropdown-menu-container",children:u}):P(cD,{className:"dropdown-menu-container",padding:2,style:{zIndex:2},children:u})})})};you.displayName="DropdownMenuContent";var Bl3=you,cou=({icon:u,shortcut:B,href:E,children:A,onSelect:C,className:D="",selected:F,rel:U="noreferrer",...z})=>{let k=Zou(z.onClick,C);return P("a",{...z,href:E,target:"_blank",rel:"noreferrer",className:Mou(D,F),title:z.title??z["aria-label"],onClick:k,children:P(Jou,{icon:u,shortcut:B,children:A})})},Zs=cou;cou.displayName="DropdownMenuItemLink";var El3=({children:u,className:B="",selected:E,...A})=>P("div",{...A,className:`dropdown-menu-item-base dropdown-menu-item-custom ${B} ${E?"dropdown-menu-item--selected":""}`.trim(),children:u}),Al3=El3,Cl3=(u)=>{return JQ.default.Children.toArray(u).find((E)=>JQ.default.isValidElement(E)&&typeof E.type!="string"&&E?.type.displayName&&E.type.displayName==="DropdownMenuTrigger")||null},Dl3=(u)=>{return JQ.default.Children.toArray(u).find((E)=>JQ.default.isValidElement(E)&&typeof E.type!="string"&&E?.type.displayName&&E.type.displayName==="DropdownMenuContent")||null},wf=({children:u,open:B})=>{let E=Cl3(u),A=Dl3(u);return l0(tu,{children:[E,B&&A]})};wf.Trigger=ef3;wf.Content=Bl3;wf.Item=BC;wf.ItemLink=Zs;wf.ItemCustom=Al3;wf.Group=$w0;wf.Separator=ul3;var v6=wf;wf.displayName="DropdownMenu";var Fl3=(u,B)=>u.filter((E)=>B.includes(E.id)),Ul3=({setAppState:u,selectedItems:B,library:E,onRemoveFromLibrary:A,resetLibrary:C,onSelectItems:D,appState:F,className:U})=>{let[z]=P9(KP),[k,f]=P9(ZK0),l=()=>{let S=B.length?C0("alerts.removeItemsFromsLibrary",{count:B.length}):C0("alerts.resetLibrary"),T=B.length?C0("confirmDialog.removeItemsFromLib"):C0("confirmDialog.resetLibrary");return P(mou,{onConfirm:()=>{B.length?A():C(),M(!1)},onCancel:()=>{M(!1)},title:T,children:P("p",{children:S})})},[b,M]=Kx.useState(!1),Z=!!B.length,J=Z?z.libraryItems.filter((S)=>B.includes(S.id)):z.libraryItems,w=Z?C0("buttons.remove"):C0("buttons.resetLibrary"),[K,Q]=Kx.useState(!1),[G,L]=Kx.useState(null),H=Kx.useCallback(()=>l0(nD,{onCloseRequest:()=>L(null),title:C0("publishSuccessDialog.title"),className:"publish-library-success",size:"small",children:[P("p",{children:P(sU,{i18nKey:"publishSuccessDialog.content",authorName:G.authorName,link:(S)=>P("a",{href:G?.url,target:"_blank",rel:"noopener noreferrer",children:S})})}),P(A1,{type:"button",title:C0("buttons.close"),"aria-label":C0("buttons.close"),label:C0("buttons.close"),onClick:()=>L(null),"data-testid":"publish-library-success-close",className:"publish-library-success-close"})]}),[L,G]),q=(S,T)=>{Q(!1),L({url:S.url,authorName:S.authorName});let R=T.slice();R.forEach((Y)=>{B.includes(Y.id)&&(Y.status="published")}),E.setLibrary(R)},x=async()=>{try{await E.updateLibrary({libraryItems:Tn({description:"Excalidraw library files"}),merge:!0,openLibraryMenu:!0})}catch(S){if(S?.name==="AbortError"){console.warn(S);return}u({errorMessage:C0("errors.importLibraryError")})}},v=async()=>{let S=Z?J:await E.getLatestLibrary();uMu(S).catch(hk0).catch((T)=>{u({errorMessage:T.message})})},W=()=>l0(v6,{open:k,children:[P(v6.Trigger,{onToggle:()=>f(!k),children:Afu}),l0(v6.Content,{onClickOutside:()=>f(!1),onSelect:()=>f(!1),className:"library-menu",children:[!Z&&P(v6.Item,{onSelect:x,icon:An,"data-testid":"lib-dropdown--load",children:C0("buttons.load")}),!!J.length&&P(v6.Item,{onSelect:v,icon:LO,"data-testid":"lib-dropdown--export",children:C0("buttons.export")}),!!J.length&&P(v6.Item,{onSelect:()=>M(!0),icon:MM,children:w}),Z&&P(v6.Item,{icon:Ulu,onSelect:()=>Q(!0),"data-testid":"lib-dropdown--remove",children:C0("buttons.publishLibrary")})]})]});return l0("div",{className:Yu("library-menu-dropdown-container",U),children:[W(),B.length>0&&P("div",{className:"library-actions-counter",children:B.length}),b&&l(),K&&P(tf3,{onClose:()=>Q(!1),libraryItems:Fl3(z.libraryItems,B),appState:F,onSuccess:(S)=>q(S,z.libraryItems),onError:(S)=>window.alert(S),updateItemsInStorage:()=>E.setLibrary(z.libraryItems),onRemove:(S)=>D(B.filter((T)=>T!==S))}),G&&H()]})},ddu=({selectedItems:u,onSelectItems:B,className:E})=>{let{library:A}=uz(),{clearLibraryCache:C,deleteItemsFromLibraryCache:D}=aou(),F=X7(),U=V2(),[z]=P9(KP),k=async(f)=>{let l=f.filter((b)=>!u.includes(b.id));A.setLibrary(l).catch(()=>{U({errorMessage:C0("alerts.errorRemovingFromLibrary")})}),D(u),B([])};return P(Ul3,{appState:F,setAppState:U,selectedItems:u,onSelectItems:B,library:A,onRemoveFromLibrary:()=>k(z.libraryItems),resetLibrary:()=>{A.resetLibrary(),C()},className:E})},zl3=DZ.memo(({id:u,elements:B,isPending:E,onClick:A,selected:C,onToggle:D,onDrag:F,svgCache:U})=>{let z=DZ.useRef(null),k=Rf3(u,B,U);DZ.useEffect(()=>{let Z=z.current;if(Z)return k&&(Z.innerHTML=k.outerHTML),()=>{Z.innerHTML=""}},[k]);let[f,l]=DZ.useState(!1),b=K5().editor.isMobile,M=E&&P("div",{className:"library-unit__adder",children:Efu});return l0("div",{className:Yu("library-unit",{"library-unit__active":B,"library-unit--hover":B&&f,"library-unit--selected":C,"library-unit--skeleton":!k}),onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),children:[P("div",{className:Yu("library-unit__dragger",{"library-unit__pulse":!!E}),ref:z,draggable:!!B,onClick:B||E?(Z)=>{u&&Z.shiftKey?D(u,Z):A(u)}:void 0,onDragStart:(Z)=>{if(!u){Z.preventDefault();return}l(!1),F(u,Z)}}),M,u&&B&&(f||b||C)&&P(fK0,{checked:C,onChange:(Z,J)=>D(u,J),className:"library-unit__checkbox"})]})}),kl3=()=>P("div",{className:"library-unit library-unit--skeleton"});function fl3(){return[!1,cs.useCallback((u)=>u(),[])]}var ll3=cs.default.useTransition||fl3,sdu=({children:u})=>P("div",{className:"library-menu-items-container__grid",children:u}),xw0=vx.memo(({items:u,onItemSelectToggle:B,onItemDrag:E,isItemSelected:A,onClick:C,svgCache:D,itemsRenderedPerBatch:F})=>{let[,U]=ll3(),[z,k]=vx.useState(0);return vx.useEffect(()=>{z<u.length&&U(()=>{k(z+F)})},[z,u.length,U,F]),P(tu,{children:u.map((f,l)=>l<z?P(zl3,{elements:f?.elements,isPending:!f?.id&&!!f?.elements,onClick:C,svgCache:D,id:f?.id,selected:A(f.id),onToggle:B,onDrag:E},f?.id??l):P(kl3,{},l))})}),bl3=I2(0),Ml3=(u)=>{let[B,E]=P9(bl3);return gou.useEffect(()=>{let{current:A}=u;if(!A)return;let C=_ou.default(()=>{let{scrollTop:D}=A;E(D)},200);return A.addEventListener("scroll",C),()=>{C.cancel(),A.removeEventListener("scroll",C)}},[u,E]),B},Zl3=17,Jl3=64;function wl3({isLoading:u,libraryItems:B,onAddToLibrary:E,onInsertLibraryItems:A,pendingElements:C,theme:D,id:F,libraryReturnUrl:U,onSelectItems:z,selectedItems:k}){let f=uB.useRef(null),l=Ml3(f);uB.useEffect(()=>{l>0&&f.current?.scrollTo(0,l)},[]);let{svgCache:b}=aou(),M=uB.useMemo(()=>B.filter((S)=>S.status!=="published"),[B]),Z=uB.useMemo(()=>B.filter((S)=>S.status==="published"),[B]),J=!B.length&&!C.length,w=!C.length&&!M.length&&!Z.length,[K,Q]=uB.useState(null),G=uB.useCallback((S,T)=>{let R=!k.includes(S),Y=[...M,...Z];if(R){if(T.shiftKey&&K){let a=Y.findIndex((N)=>N.id===K),I=Y.findIndex((N)=>N.id===S);if(a===-1||I===-1){z([...k,S]);return}let O=e4(k),i=Y.reduce((N,V,h)=>((h>=a&&h<=I||O.has(V.id))&&N.push(V.id),N),[]);z(i)}else z([...k,S]);Q(S)}else Q(null),z(k.filter((a)=>a!==S))},[K,z,Z,k,M]),L=uB.useCallback((S)=>{let T;return k.includes(S)?T=B.filter((R)=>k.includes(R.id)):T=B.filter((R)=>R.id===S),T.map((R)=>({...R,elements:Ml0(R.elements,{randomizeSeed:!0})}))},[B,k]),H=uB.useCallback((S,T)=>{T.dataTransfer.setData(y4.excalidrawlib,Jl0(L(S)))},[L]),q=uB.useCallback((S)=>S?k.includes(S):!1,[k]),x=uB.useCallback(()=>{E(C)},[C,E]),v=uB.useCallback((S)=>{S&&A(L(S))},[L,A]),W=b.size>=B.length?Jl3:Zl3;return l0("div",{className:"library-menu-items-container",style:C.length||M.length||Z.length?{justifyContent:"flex-start"}:{borderBottom:0},children:[!w&&P(ddu,{selectedItems:k,onSelectItems:z,className:"library-menu-dropdown-container--in-heading"}),l0(tA.Col,{className:"library-menu-items-container__items",align:"start",gap:1,style:{flex:Z.length>0?1:"0 1 auto",marginBottom:0},ref:f,children:[l0(tu,{children:[!w&&P("div",{className:"library-menu-items-container__header",children:C0("labels.personalLib")}),u&&P("div",{style:{position:"absolute",top:"var(--container-padding-y)",right:"var(--container-padding-x)",transform:"translateY(50%)"},children:P(Zf,{})}),!C.length&&!M.length?l0("div",{className:"library-menu-items__no-items",children:[P("div",{className:"library-menu-items__no-items__label",children:C0("library.noItems")}),P("div",{className:"library-menu-items__no-items__hint",children:Z.length>0?C0("library.hint_emptyPrivateLibrary"):C0("library.hint_emptyLibrary")})]}):l0(sdu,{children:[C.length>0&&P(xw0,{itemsRenderedPerBatch:W,items:[{id:null,elements:C}],onItemSelectToggle:G,onItemDrag:H,onClick:x,isItemSelected:q,svgCache:b}),P(xw0,{itemsRenderedPerBatch:W,items:M,onItemSelectToggle:G,onItemDrag:H,onClick:v,isItemSelected:q,svgCache:b})]})]}),l0(tu,{children:[(Z.length>0||C.length>0||M.length>0)&&P("div",{className:"library-menu-items-container__header library-menu-items-container__header--excal",children:C0("labels.excalidrawLib")}),Z.length>0?P(sdu,{children:P(xw0,{itemsRenderedPerBatch:W,items:Z,onItemSelectToggle:G,onItemDrag:H,onClick:v,isItemSelected:q,svgCache:b})}):M.length>0?P("div",{style:{margin:"1rem 0",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",fontSize:".9rem"},children:C0("library.noItems")}):null]}),J&&P(hou,{style:{padding:"16px 0",width:"100%"},id:F,libraryReturnUrl:U,theme:D,children:P(ddu,{selectedItems:k,onSelectItems:z})})]})]})}var ZK0=I2(!1),odu=({children:u})=>P("div",{className:"layer-ui__library",children:u}),Kl3=c5.memo(({onInsertLibraryItems:u,pendingElements:B,onAddToLibrary:E,setAppState:A,libraryReturnUrl:C,library:D,id:F,theme:U,selectedItems:z,onSelectItems:k})=>{let[f]=P9(KP),l=c5.useCallback((Z)=>{(async(J,w)=>{G6("element","addToLibrary","ui");for(let Q of Ik0)if(J.some((G)=>G.type===Q))return A({errorMessage:C0(`errors.libraryElementTypeError.${Q}`)});let K=[{status:"unpublished",elements:J,id:TE(),created:Date.now()},...w];E(),D.setLibrary(K).catch(()=>{A({errorMessage:C0("alerts.errorAddingToLibrary")})})})(Z,f.libraryItems)},[E,D,A,f.libraryItems]),b=c5.useMemo(()=>f.libraryItems,[f]);if(f.status==="loading"&&!f.isInitialized)return P(odu,{children:P("div",{className:"layer-ui__library-message",children:l0("div",{children:[P(Zf,{size:"2em"}),P("span",{children:C0("labels.libraryLoadingMessage")})]})})});let M=f.libraryItems.length>0||B.length>0;return l0(odu,{children:[P(wl3,{isLoading:f.status==="loading",libraryItems:b,onAddToLibrary:l,onInsertLibraryItems:u,pendingElements:B,id:F,libraryReturnUrl:C,theme:U,onSelectItems:k,selectedItems:z}),M&&P(hou,{className:"library-menu-control-buttons--at-bottom",style:{padding:"16px 12px 0 12px"},id:F,libraryReturnUrl:C,theme:U})]})}),vw0=(u,B)=>({elements:u,pending:N3(u,{selectedElementIds:B},{includeBoundTextElement:!0,includeElementsInFrames:!0}),selectedElementIds:B}),Ql3=(u,B)=>{let E=es(),[A,C]=c5.useState(()=>vw0(E,u.selectedElementIds)),D=c5.useRef(new Map);return c5.useEffect(()=>{for(let F of A.pending)D.current.set(F.id,F.version)},[A.pending]),c5.useEffect(()=>{B.state.cursorButton==="up"&&B.state.activeTool.type==="selection"&&C((F)=>{if(!h5(F.selectedElementIds,u.selectedElementIds))return D.current.clear(),vw0(E,u.selectedElementIds);let U=B.scene.getNonDeletedElementsMap();for(let z of Object.keys(u.selectedElementIds)){let k=U.get(z)?.version;if(k&&k!==D.current.get(z))return vw0(E,u.selectedElementIds)}return F})},[B,B.state.cursorButton,B.state.activeTool.type,u.selectedElementIds,E]),A.pending},Gl3=c5.memo(()=>{let u=uz(),{onInsertElements:B}=u,E=vP(),A=X7(),C=V2(),[D,F]=c5.useState([]),U=c5.useMemo(()=>u.library,[u.library]),z=Ql3(A,u),k=c5.useCallback((l)=>{B(Vou(l))},[B]),f=c5.useCallback(()=>{C({selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null})},[C]);return P(Kl3,{pendingElements:z,onInsertLibraryItems:k,onAddToLibrary:f,setAppState:C,libraryReturnUrl:E.libraryReturnUrl,library:U,id:u.id,theme:A.theme,selectedItems:D,onSelectItems:F})});function Hl3(u){if(u&&typeof u=="number")return u;switch(u){case"small":return 550;case"wide":return 1024;case"regular":default:return 800}}var nD=(u)=>{let[B,E]=Wf3(),[A]=ms.useState(document.activeElement),{id:C}=Bz(),D=K5().viewport.isMobile;ms.useEffect(()=>{if(!B)return;let k=__(B);setTimeout(()=>{k.length>0&&u.autofocus!==!1&&(k[1]||k[0]).focus()});let f=(l)=>{if(l.key===y0.TAB){let b=__(B),{activeElement:M}=document,Z=b.findIndex((J)=>J===M);Z===0&&l.shiftKey?(b[b.length-1].focus(),l.preventDefault()):Z===b.length-1&&!l.shiftKey&&(b[0].focus(),l.preventDefault())}};return B.addEventListener("keydown",f),()=>B.removeEventListener("keydown",f)},[B,u.autofocus]);let F=V2(),U=xs(ZK0),z=()=>{F({openMenu:null}),U(!1),A.focus(),u.onCloseRequest()};return P(Yf3,{className:Yu("Dialog",u.className,{"Dialog--fullscreen":D}),labelledBy:"dialog-title",maxWidth:Hl3(u.size),onCloseRequest:z,closeOnClickOutside:u.closeOnClickOutside,children:l0(cD,{ref:E,children:[u.title&&P("h2",{id:`${C}-dialog-title`,className:"Dialog__title",children:P("span",{className:"Dialog__titleContent",children:u.title})}),D&&P("button",{className:"Dialog__close",onClick:z,title:C0("buttons.close"),"aria-label":C0("buttons.close"),type:"button",children:OK}),P("div",{className:"Dialog__content",children:u.children})]})})},QQ=({type:u="button",onSelect:B,selected:E,children:A,className:C="",...D})=>P("button",{onClick:wO(D.onClick,(F)=>{B()}),type:u,className:Yu("excalidraw-button",C,{selected:E}),...D,children:A}),JK0=eU.forwardRef(({onChange:u,label:B,fullWidth:E,placeholder:A,readonly:C,selectOnRender:D,onKeyDown:F,isRedacted:U=!1,icon:z,className:k,...f},l)=>{let b=eU.useRef(null);eU.useImperativeHandle(l,()=>b.current),eU.useLayoutEffect(()=>{D&&(b.current?.focus(),b.current?.select())},[D]);let[M,Z]=eU.useState(!1);return l0("div",{className:Yu("ExcTextField",k,{"ExcTextField--fullWidth":E,"ExcTextField--hasIcon":!!z}),onClick:()=>{b.current?.focus()},children:[z,B&&P("div",{className:"ExcTextField__label",children:B}),l0("div",{className:Yu("ExcTextField__input",{"ExcTextField__input--readonly":C}),children:[P("input",{className:Yu({"is-redacted":"value"in f&&f.value&&U&&!M}),readOnly:C,value:"value"in f?f.value:void 0,defaultValue:"defaultValue"in f?f.defaultValue:void 0,placeholder:A,ref:b,onChange:(J)=>u?.(J.target.value),onKeyDown:F}),U&&P(QQ,{onSelect:()=>Z(!M),style:{border:0,userSelect:"none"},children:M?Jlu:Fn})]})]})}),Ll3={toggleTheme:[Su("Shift+Alt+D")],saveScene:[Su("CtrlOrCmd+S")],loadScene:[Su("CtrlOrCmd+O")],clearCanvas:[Su("CtrlOrCmd+Delete")],imageExport:[Su("CtrlOrCmd+Shift+E")],commandPalette:[Su("CtrlOrCmd+/"),Su("CtrlOrCmd+Shift+P")],cut:[Su("CtrlOrCmd+X")],copy:[Su("CtrlOrCmd+C")],paste:[Su("CtrlOrCmd+V")],copyStyles:[Su("CtrlOrCmd+Alt+C")],pasteStyles:[Su("CtrlOrCmd+Alt+V")],selectAll:[Su("CtrlOrCmd+A")],deleteSelectedElements:[Su("Delete")],duplicateSelection:[Su("CtrlOrCmd+D"),Su(`Alt+${C0("helpDialog.drag")}`)],sendBackward:[Su("CtrlOrCmd+[")],bringForward:[Su("CtrlOrCmd+]")],sendToBack:[bD?Su("CtrlOrCmd+Alt+["):Su("CtrlOrCmd+Shift+[")],bringToFront:[bD?Su("CtrlOrCmd+Alt+]"):Su("CtrlOrCmd+Shift+]")],copyAsPng:[Su("Shift+Alt+C")],group:[Su("CtrlOrCmd+G")],ungroup:[Su("CtrlOrCmd+Shift+G")],gridMode:[Su("CtrlOrCmd+'")],zenMode:[Su("Alt+Z")],objectsSnapMode:[Su("Alt+S")],stats:[Su("Alt+/")],addToLibrary:[],flipHorizontal:[Su("Shift+H")],flipVertical:[Su("Shift+V")],viewMode:[Su("Alt+R")],hyperlink:[Su("CtrlOrCmd+K")],toggleElementLock:[Su("CtrlOrCmd+Shift+L")],resetZoom:[Su("CtrlOrCmd+0")],zoomOut:[Su("CtrlOrCmd+-")],zoomIn:[Su("CtrlOrCmd++")],zoomToFitSelection:[Su("Shift+3")],zoomToFit:[Su("Shift+1")],zoomToFitSelectionInViewport:[Su("Shift+2")],toggleEraserTool:[Su("E")],toggleHandTool:[Su("H")],setFrameAsActiveTool:[Su("F")],saveFileToDisk:[Su("CtrlOrCmd+S")],saveToActiveFile:[Su("CtrlOrCmd+S")],toggleShortcuts:[Su("?")],searchMenu:[Su("CtrlOrCmd+F")],wrapSelectionInFrame:[]},EB=(u,B=0)=>{let E=Ll3[u];return E&&E.length>0?E[B]||E[0]:""},ql3="\\u0300-\\u036f",Xl3="\\ufe20-\\ufe2f",xl3="\\u20d0-\\u20ff",vl3=ql3+Xl3+xl3,Sl3=`[${vl3}]`,Wl3=RegExp(Sl3,"g"),Yl3=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Rl3={À:"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"},tdu=(u)=>u.replace(Yl3,(B)=>Rl3[B]||B).replace(Wl3,""),dou=gs.default.createContext(null),dB=()=>gs.default.useContext(dou),Tl3=zp(),Ol3=()=>gs.default.useMemo(()=>({MainMenuTunnel:jD(),WelcomeScreenMenuHintTunnel:jD(),WelcomeScreenToolbarHintTunnel:jD(),WelcomeScreenHelpHintTunnel:jD(),WelcomeScreenCenterTunnel:jD(),FooterCenterTunnel:jD(),DefaultSidebarTriggerTunnel:jD(),DefaultSidebarTabTriggersTunnel:jD(),OverwriteConfirmDialogTunnel:jD(),TTDDialogTriggerTunnel:jD(),tunnelsJotai:Tl3}),[]),sou=(u,B)=>{let E=B[0]?.type||null;for(let A of B)if(A.type!==E){E=null;break}return Mn(u.activeTool.type)&&u.activeTool.type!=="image"&&E!=="image"&&E!=="frame"&&E!=="magicframe"||B.some((A)=>Mn(A.type))},oou=(u,B)=>PK(u.activeTool.type)||B.some((E)=>PK(E.type)),tou=({appState:u,elementsMap:B,renderAction:E,app:A})=>{let C=$l0(B,u),D=!1;C.length===2&&(i8(C[0])||i8(C[1]))&&(D=!0);let F=!!(u.editingTextElement||u.newElement),U=K5(),z=document.documentElement.getAttribute("dir")==="rtl",k=PK(u.activeTool.type)&&!TA(u.currentItemBackgroundColor)||C.some((Z)=>PK(Z.type)&&!TA(Z.backgroundColor)),f=C.length===1||D,l=!u.editingLinearElement&&C.length===1&&W3(C[0])&&!K4(C[0]),b=!u.croppingElementId&&C.length===1&&H1(C[0]),M=!D&&$E(u,A);return l0("div",{className:"panelColumn",children:[P("div",{children:sou(u,C)&&E("changeStrokeColor")}),oou(u,C)&&P("div",{children:E("changeBackgroundColor")}),k&&E("changeFillStyle"),(hf0(u.activeTool.type)||C.some((Z)=>hf0(Z.type)))&&E("changeStrokeWidth"),(u.activeTool.type==="freedraw"||C.some((Z)=>Z.type==="freedraw"))&&E("changeStrokeShape"),(mf0(u.activeTool.type)||C.some((Z)=>mf0(Z.type)))&&l0(tu,{children:[E("changeStrokeStyle"),E("changeSloppiness")]}),(Zn(u.activeTool.type)||C.some((Z)=>Zn(Z.type)))&&P(tu,{children:E("changeRoundness")}),(rf0(u.activeTool.type)||C.some((Z)=>rf0(Z.type)))&&P(tu,{children:E("changeArrowType")}),(u.activeTool.type==="text"||C.some(l4))&&l0(tu,{children:[E("changeFontFamily"),E("changeFontSize"),(u.activeTool.type==="text"||ibu(C,B))&&E("changeTextAlign")]}),Nbu(C,B)&&E("changeVerticalAlign"),(vO(u.activeTool.type)||C.some((Z)=>vO(Z.type)))&&P(tu,{children:E("changeArrowhead")}),E("changeOpacity"),l0("fieldset",{children:[P("legend",{children:C0("labels.layers")}),l0("div",{className:"buttonList",children:[E("sendToBack"),E("sendBackward"),E("bringForward"),E("bringToFront")]})]}),M&&!D&&l0("fieldset",{children:[P("legend",{children:C0("labels.align")}),l0("div",{className:"buttonList",children:[z?l0(tu,{children:[E("alignRight"),E("alignHorizontallyCentered"),E("alignLeft")]}):l0(tu,{children:[E("alignLeft"),E("alignHorizontallyCentered"),E("alignRight")]}),C.length>2&&E("distributeHorizontally"),P("div",{style:{flexBasis:"100%",height:0}}),l0("div",{style:{display:"flex",flexWrap:"wrap",gap:".5rem",marginTop:"-0.5rem"},children:[E("alignTop"),E("alignVerticallyCentered"),E("alignBottom"),C.length>2&&E("distributeVertically")]})]})]}),!F&&C.length>0&&l0("fieldset",{children:[P("legend",{children:C0("labels.actions")}),l0("div",{className:"buttonList",children:[!U.editor.isMobile&&E("duplicateSelection"),!U.editor.isMobile&&E("deleteSelectedElements"),E("group"),E("ungroup"),f&&E("hyperlink"),b&&E("cropEditor"),l&&E("toggleLinearEditor")]})]})]})},eou=({activeTool:u,appState:B,app:E,UIOptions:A})=>{let[C,D]=pou.useState(!1),F=u.type==="frame",U=u.type==="laser",z=u.type==="embeddable",{TTDDialogTriggerTunnel:k}=dB();return l0(tu,{children:[ln.map(({value:f,icon:l,key:b,numericKey:M,fillable:Z},J)=>{if(A.tools?.[f]===!1)return null;let w=C0(`toolBar.${f}`),K=b&&tq(typeof b=="string"?b:b[0]),Q=K?`${K} ${C0("helpDialog.or")} ${M}`:`${M}`;return P(A1,{className:Yu("Shape",{fillable:Z}),type:"radio",icon:l,checked:u.type===f,name:"editor-current-shape",title:`${tq(w)} — ${Q}`,keyBindingLabel:M||K,"aria-label":tq(w),"aria-keyshortcuts":Q,"data-testid":`toolbar-${f}`,onPointerDown:({pointerType:G})=>{!B.penDetected&&G==="pen"&&E.togglePenMode(!0)},onChange:({pointerType:G})=>{B.activeTool.type!==f&&G6("toolbar",f,"ui"),f==="image"?E.setActiveTool({type:f,insertOnCanvasDirectly:G!=="mouse"}):E.setActiveTool({type:f})}},f)}),P("div",{className:"App-toolbar__divider"}),l0(v6,{open:C,children:[P(v6.Trigger,{className:Yu("App-toolbar__extra-tools-trigger",{"App-toolbar__extra-tools-trigger--selected":F||z||U&&!E.props.isCollaborating}),onToggle:()=>D(!C),title:C0("toolBar.extraTools"),children:Mlu}),l0(v6.Content,{onClickOutside:()=>D(!1),onSelect:()=>D(!1),className:"App-toolbar__extra-tools-dropdown",children:[P(v6.Item,{onSelect:()=>E.setActiveTool({type:"frame"}),icon:vf0,shortcut:y0.F.toLocaleUpperCase(),"data-testid":"toolbar-frame",selected:F,children:C0("toolBar.frame")}),P(v6.Item,{onSelect:()=>E.setActiveTool({type:"embeddable"}),icon:ffu,"data-testid":"toolbar-embeddable",selected:z,children:C0("toolBar.embeddable")}),P(v6.Item,{onSelect:()=>E.setActiveTool({type:"laser"}),icon:Wf0,"data-testid":"toolbar-laser",selected:U,shortcut:y0.K.toLocaleUpperCase(),children:C0("toolBar.laser")}),P("div",{style:{margin:"6px 0",fontSize:14,fontWeight:600},children:"Generate"}),E.props.aiEnabled!==!1&&P(k.Out,{}),P(v6.Item,{onSelect:()=>E.setOpenDialog({name:"ttd",tab:"mermaid"}),icon:Sf0,"data-testid":"toolbar-embeddable",children:C0("toolBar.mermaidToExcalidraw")}),E.props.aiEnabled!==!1&&E.plugins.diagramToCode&&P(tu,{children:l0(v6.Item,{onSelect:()=>E.onMagicframeToolSelect(),icon:Yf0,"data-testid":"toolbar-magicframe",children:[C0("toolBar.magicframe"),P(v6.Item.Badge,{children:"AI"})]})})]})]})]})},Il3=({renderAction:u,zoom:B})=>P(tA.Col,{gap:1,className:qK.ZOOM_ACTIONS,children:l0(tA.Row,{align:"center",children:[u("zoomOut"),u("resetZoom"),u("zoomIn")]})}),Pl3=({renderAction:u,className:B})=>l0("div",{className:`undo-redo-buttons ${B}`,children:[P("div",{className:"undo-button-container",children:P(KQ,{label:C0("buttons.undo"),children:u("undo")})}),P("div",{className:"redo-button-container",children:l0(KQ,{label:C0("buttons.redo"),children:[" ",u("redo")]})})]}),jl3=({actionManager:u,showExitZenModeBtn:B})=>P("button",{type:"button",className:Yu("disable-zen-mode",{"disable-zen-mode--visible":B}),onClick:()=>u.executeAction(cw0),children:C0("buttons.exitZenMode")}),Nl3=({renderAction:u,className:B})=>P("div",{className:`finalize-button ${B}`,children:u("finalize",{size:"small"})}),edu=(u)=>{let B=utu.useRef({userFn:u});return B.current.userFn=u,B.current.stableFn||(B.current.stableFn=(...E)=>B.current.userFn(...E)),B.current.stableFn},_s=I2(null),il3=()=>{let[u,B]=P9(_s),E=_8();return u&&u==="clearCanvas"?P(mou,{onConfirm:()=>{E.executeAction(lP),B(null)},onCancel:()=>B(null),title:C0("clearCanvasDialog.title"),children:l0("p",{className:"clear-canvas__content",children:[" ",C0("alerts.clearReset")]})}):null},Btu={};hU0(Btu,{toggleTheme:()=>al3});var al3={...Ks,category:"App",label:"Toggle theme",perform:({actionManager:u})=>{u.executeAction(Ks,"commandPalette")}},Etu=C4({name:"copyElementLink",label:"labels.copyElementLink",icon:Dn,trackEvent:{category:"element"},perform:async(u,B,E,A)=>{let C=N3(u,B);try{if(window.location){let D=ql0(C,B);return D?(await bX(A.props.generateLinkForSelection?A.props.generateLinkForSelection(D.id,D.type):Ll0(D.id,D.type)),{appState:{toast:{message:C0("toast.elementLinkCopied"),closable:!0}},captureUpdate:Xu.EVENTUALLY}):{appState:B,elements:u,app:A,captureUpdate:Xu.EVENTUALLY}}}catch(D){console.error(D)}return{appState:B,elements:u,app:A,captureUpdate:Xu.EVENTUALLY}},predicate:(u,B)=>NO(N3(u,B))}),Vl3=C4({name:"linkToElement",label:"labels.linkToElement",icon:Pf0,perform:(u,B,E,A)=>{let C=N3(u,B);return C.length!==1||!NO(C)?{elements:u,appState:B,app:A,captureUpdate:Xu.EVENTUALLY}:{appState:{...B,openDialog:{name:"elementLinkSelector",sourceElementId:N3(u,B)[0].id}},captureUpdate:Xu.IMMEDIATELY}},predicate:(u,B,E,A)=>{let C=N3(u,B);return B.openDialog?.name!=="elementLinkSelector"&&C.length===1&&NO(C)},trackEvent:!1}),hl3=I2(null),s9={app:"App",export:"Export",tools:"Tools",editor:"Editor",elements:"Elements",links:"Links"},ml3=(u)=>{switch(u){case s9.app:return 1;case s9.export:return 2;case s9.editor:return 3;case s9.tools:return 4;case s9.elements:return 5;case s9.links:return 6;default:return 10}},Js=({shortcut:u,className:B,children:E})=>{let A=u.replace("++","+$").split("+");return l0("div",{className:Yu("shortcut",B),children:[A.map((C,D)=>P("div",{className:"shortcut-wrapper",children:P("div",{className:"shortcut-key",children:C==="$"?"+":C})},C)),P("div",{className:"shortcut-desc",children:E})]})},Atu=(u)=>!u.altKey&&u[y0.CTRL_OR_CMD]&&(u.shiftKey&&u.key.toLowerCase()===y0.P||u.key===y0.SLASH),XI1=Object.assign((u)=>{let B=X7(),E=V2();return oA.useEffect(()=>{let A=(C)=>{Atu(C)&&(C.preventDefault(),C.stopPropagation(),E((D)=>{let F=D.openDialog?.name==="commandPalette"?null:{name:"commandPalette"};return F&&G6("command_palette","open","shortcut"),{openDialog:F}}))};return window.addEventListener("keydown",A,{capture:!0}),()=>window.removeEventListener("keydown",A,{capture:!0})},[E]),B.openDialog?.name!=="commandPalette"?null:P(rl3,{...u})},{defaultItems:Btu});function rl3({customCommandPaletteItems:u}){let B=uz(),E=X7(),A=V2(),C=vP(),D=_8(),[F,U]=P9(hl3),[z,k]=oA.useState(null),f=oA.useRef(null),l=Os({uiAppState:E,customCommandPaletteItems:u,appProps:C});oA.useEffect(()=>{let{uiAppState:q,customCommandPaletteItems:x,appProps:v}=l,W=(Y)=>{let a="";return Y.label&&(typeof Y.label=="function"?a=C0(Y.label(B.scene.getNonDeletedElements(),q,B)):a=C0(Y.label)),a},S=(Y)=>typeof Y.icon=="function"?Y.icon(q,B.scene.getNonDeletedElements()):Y.icon,T=[],R=(Y,a,I)=>{let O={label:W(Y),icon:S(Y),category:a,shortcut:EB(Y.name),keywords:Y.keywords,predicate:Y.predicate,viewMode:Y.viewMode,perform:()=>{D.executeAction(Y,"commandPalette")}};return I?I(O,Y):O};if(q&&B.scene&&D){let Y=[D.actions.group,D.actions.ungroup,D.actions.cut,D.actions.copy,D.actions.deleteSelectedElements,D.actions.wrapSelectionInFrame,D.actions.copyStyles,D.actions.pasteStyles,D.actions.bringToFront,D.actions.bringForward,D.actions.sendBackward,D.actions.sendToBack,D.actions.alignTop,D.actions.alignBottom,D.actions.alignLeft,D.actions.alignRight,D.actions.alignVerticallyCentered,D.actions.alignHorizontallyCentered,D.actions.duplicateSelection,D.actions.flipHorizontal,D.actions.flipVertical,D.actions.zoomToFitSelection,D.actions.zoomToFitSelectionInViewport,D.actions.increaseFontSize,D.actions.decreaseFontSize,D.actions.toggleLinearEditor,D.actions.cropEditor,Iou,Etu,Vl3].map((V)=>R(V,s9.elements,(h,r)=>({...h,predicate:r.predicate?r.predicate:(m,$,y,p)=>N3(m,$).length>0}))),a=[D.actions.toggleHandTool,D.actions.setFrameAsActiveTool].map((V)=>R(V,s9.tools)),I=[D.actions.undo,D.actions.redo,D.actions.zoomIn,D.actions.zoomOut,D.actions.resetZoom,D.actions.zoomToFit,D.actions.zenMode,D.actions.viewMode,D.actions.gridMode,D.actions.objectsSnapMode,D.actions.toggleShortcuts,D.actions.selectAll,D.actions.toggleElementLock,D.actions.unlockAllElements,D.actions.stats].map((V)=>R(V,s9.editor)),O=[D.actions.saveToActiveFile,D.actions.saveFileToDisk,D.actions.copyAsPng,D.actions.copyAsSvg].map((V)=>R(V,s9.export));T=[...Y,...I,{label:W(lP),icon:S(lP),shortcut:EB(lP.name),category:s9.editor,keywords:["delete","destroy"],viewMode:!1,perform:()=>{mD.set(_s,"clearCanvas")}},{label:C0("buttons.exportImage"),category:s9.export,icon:Df0,shortcut:EB("imageExport"),keywords:["export","image","png","jpeg","svg","clipboard","picture"],perform:()=>{A({openDialog:{name:"imageExport"}})}},...O];let i=[{label:C0("toolBar.library"),category:s9.app,icon:s_,viewMode:!1,perform:()=>{q.openSidebar?A({openSidebar:null}):A({openSidebar:{name:VA.name,tab:VA.defaultTab}})}},{label:C0("search.title"),category:s9.app,icon:ZM,viewMode:!0,perform:()=>{D.executeAction(Ctu)}},{label:C0("labels.changeStroke"),keywords:["color","outline"],category:s9.elements,icon:Cn,viewMode:!1,predicate:(V,h)=>{let r=N3(V,h);return r.length>0&&sou(h,r)},perform:()=>{A((V)=>({openMenu:V.openMenu==="shape"?null:"shape",openPopup:"elementStroke"}))}},{label:C0("labels.changeBackground"),keywords:["color","fill"],icon:Cn,category:s9.elements,viewMode:!1,predicate:(V,h)=>{let r=N3(V,h);return r.length>0&&oou(h,r)},perform:()=>{A((V)=>({openMenu:V.openMenu==="shape"?null:"shape",openPopup:"elementBackground"}))}},{label:C0("labels.canvasBackground"),keywords:["color"],icon:Cn,category:s9.editor,viewMode:!1,perform:()=>{A((V)=>({openMenu:V.openMenu==="canvas"?null:"canvas",openPopup:"canvasBackground"}))}},...ln.reduce((V,h)=>{let{value:r,icon:m,key:$,numericKey:y}=h;if(v.UIOptions.tools?.[r]===!1)return V;let p=$&&tq(typeof $=="string"?$:$[0])||y,e={label:C0(`toolBar.${r}`),category:s9.tools,shortcut:p,icon:m,keywords:["toolbar"],viewMode:!1,perform:({event:_})=>{r==="image"?B.setActiveTool({type:r,insertOnCanvasDirectly:_.type==="keydown"}):B.setActiveTool({type:r})}};return V.push(e),V},[]),...a,{label:C0("toolBar.lock"),category:s9.tools,icon:q.activeTool.locked?o_:HO,shortcut:y0.Q.toLocaleUpperCase(),viewMode:!1,perform:()=>{B.toggleLock()}},{label:`${C0("labels.textToDiagram")}...`,category:s9.tools,icon:Klu,viewMode:!1,predicate:v.aiEnabled,perform:()=>{A((V)=>({...V,openDialog:{name:"ttd",tab:"text-to-diagram"}}))}},{label:`${C0("toolBar.mermaidToExcalidraw")}...`,category:s9.tools,icon:Sf0,viewMode:!1,predicate:v.aiEnabled,perform:()=>{A((V)=>({...V,openDialog:{name:"ttd",tab:"mermaid"}}))}}],N=[...T,...i,...x||[]].map((V)=>({...V,icon:V.icon||Rf0,order:V.order??ml3(V.category),haystack:`${tdu(V.label.toLocaleLowerCase())} ${V.keywords?.join(" ")||""}`}));k(N),U(N.find((V)=>V.label===F?.label)??null)}},[l,B,D,k,F?.label,U,A]);let[b,M]=oA.useState(""),[Z,J]=oA.useState(null),[w,K]=oA.useState({}),Q=(q)=>{A({openDialog:null},q),M("")},G=(q,x)=>{E.openDialog?.name==="commandPalette"&&(x.stopPropagation(),x.preventDefault(),document.body.classList.add("excalidraw-animations-disabled"),Q(()=>{q.perform({actionManager:D,event:x}),U(q),requestAnimationFrame(()=>{document.body.classList.remove("excalidraw-animations-disabled")})}))},L=edu((q)=>q.viewMode===!1&&E.viewModeEnabled?!1:typeof q.predicate=="function"?q.predicate(B.scene.getNonDeletedElements(),E,C,B):q.predicate===void 0||q.predicate),H=edu((q)=>{let x=UM(q.target)||Atu(q)||q.key===y0.ESCAPE;if(x&&q.key!==y0.ARROW_UP&&q.key!==y0.ARROW_DOWN&&q.key!==y0.ENTER)return;let v=Object.values(w).flat(),W=F&&!b&&L(F);if(q.key===y0.ARROW_UP){q.preventDefault();let S=v.findIndex((Y)=>Y.label===Z?.label);if(W){if(S===0){J(F);return}if(Z===F){let Y=v[v.length-1];Y&&J(Y);return}}let T;S===-1?T=v.length-1:T=S===0?v.length-1:(S-1)%v.length;let R=v[T];R&&J(R);return}if(q.key===y0.ARROW_DOWN){q.preventDefault();let S=v.findIndex((Y)=>Y.label===Z?.label);if(W){if(!Z||S===v.length-1){J(F);return}if(Z===F){let Y=v[0];Y&&J(Y);return}}let T=(S+1)%v.length,R=v[T];R&&J(R);return}if(q.key===y0.ENTER&&Z&&setTimeout(()=>{G(Z,q)}),!x){if(q.stopPropagation(),/^[a-zA-Z0-9]$/.test(q.key)){f?.current?.focus();return}q.preventDefault()}});return oA.useEffect(()=>(window.addEventListener("keydown",H,{capture:!0}),()=>window.removeEventListener("keydown",H,{capture:!0})),[H]),oA.useEffect(()=>{if(!z)return;let q=(S)=>{let T={};for(let R of S)T[R.category]?T[R.category].push(R):T[R.category]=[R];return T},x=z.filter(L).sort((S,T)=>S.order-T.order),v=!b&&F&&L(F);if(!b){K(q(v?x.filter((S)=>S.label!==F?.label):x)),J(v?F:x[0]||null);return}let W=tdu(b.toLocaleLowerCase().replace(/[<>_| -]/g,""));x=nou.default.filter(W,x,{extract:(S)=>S.haystack}).sort((S,T)=>T.score-S.score).map((S)=>S.original),K(q(x)),J(x[0]??null)},[b,z,L,F]),l0(nD,{onCloseRequest:()=>Q(),closeOnClickOutside:!0,title:!1,size:720,autofocus:!0,className:"command-palette-dialog",children:[P(JK0,{value:b,placeholder:C0("commandPalette.search.placeholder"),onChange:(q)=>{M(q)},selectOnRender:!0,ref:f}),!B.device.viewport.isMobile&&l0("div",{className:"shortcuts-wrapper",children:[P(Js,{shortcut:"↑↓",children:C0("commandPalette.shortcuts.select")}),P(Js,{shortcut:"↵",children:C0("commandPalette.shortcuts.confirm")}),P(Js,{shortcut:Su("Esc"),children:C0("commandPalette.shortcuts.close")})]}),l0("div",{className:"commands",children:[F&&!b&&l0("div",{className:"command-category",children:[l0("div",{className:"command-category-title",children:[C0("commandPalette.recents"),P("div",{className:"icon",style:{marginLeft:"6px"},children:Qlu})]}),P(usu,{command:F,isSelected:F.label===Z?.label,onClick:(q)=>G(F,q),disabled:!L(F),onMouseMove:()=>J(F),showShortcut:!B.device.viewport.isMobile,appState:E})]}),Object.keys(w).length>0?Object.keys(w).map((q,x)=>l0("div",{className:"command-category",children:[P("div",{className:"command-category-title",children:q}),w[q].map((v)=>P(usu,{command:v,isSelected:v.label===Z?.label,onClick:(W)=>G(v,W),onMouseMove:()=>J(v),showShortcut:!B.device.viewport.isMobile,appState:E},v.label))]},q)):z?l0("div",{className:"no-match",children:[P("div",{className:"icon",children:ZM})," ",C0("commandPalette.search.noMatch")]}):null]})]})}var usu=({command:u,isSelected:B,disabled:E,onMouseMove:A,onClick:C,showShortcut:D,appState:F})=>{let U=()=>{};return l0("div",{className:Yu("command-item",{"item-selected":B,"item-disabled":E}),ref:(z)=>{B&&!E&&z?.scrollIntoView?.({block:"nearest"})},onClick:E?U:C,onMouseMove:E?U:A,title:E?C0("commandPalette.itemNotAvailable"):"",children:[l0("div",{className:"name",children:[u.icon&&P(Ps,{icon:typeof u.icon=="function"?u.icon(F):u.icon}),u.label]}),D&&u.shortcut&&P(Js,{shortcut:u.shortcut})]})},$l3=C4({name:"toggleLinearEditor",category:s9.elements,label:(u,B,E)=>E.scene.getSelectedElements({selectedElementIds:B.selectedElementIds})[0]?.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit",keywords:["line"],trackEvent:{category:"element"},predicate:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B);return!!(!B.editingLinearElement&&C.length===1&&W3(C[0])&&!K4(C[0]))},perform(u,B,E,A){let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0})[0],D=B.editingLinearElement?.elementId===C.id?null:new M4(C);return{appState:{...B,editingLinearElement:D},captureUpdate:Xu.IMMEDIATELY}},PanelComponent:({appState:u,updateData:B,app:E})=>{let A=E.scene.getSelectedElements({selectedElementIds:u.selectedElementIds})[0],C=C0(A.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit");return P(A1,{type:"button",icon:Ilu,title:C,"aria-label":C,onClick:()=>B(null)})}}),Ctu=C4({name:"searchMenu",icon:ZM,keywords:["search","find"],label:"search.title",viewMode:!0,trackEvent:{category:"search_menu",action:"toggle",predicate:(u)=>u.gridModeEnabled},perform(u,B,E,A){if(B.openSidebar?.name===VA.name&&B.openSidebar.tab===vK){let C=A.excalidrawContainerValue.container?.querySelector(`.${qK.SEARCH_MENU_INPUT_WRAPPER} input`);return C?.matches(":focus")?{appState:{...B,openSidebar:null},captureUpdate:Xu.EVENTUALLY}:(C?.focus(),C?.select(),!1)}return{appState:{...B,openSidebar:{name:VA.name,tab:vK},openDialog:null},captureUpdate:Xu.EVENTUALLY}},checked:(u)=>u.gridModeEnabled,predicate:(u,B,E)=>E.gridModeEnabled===void 0,keyTest:(u)=>u[y0.CTRL_OR_CMD]&&u.key===y0.F}),yl3=C4({name:"cropEditor",label:"helpDialog.cropStart",icon:If0,viewMode:!0,trackEvent:{category:"menu"},keywords:["image","crop"],perform(u,B,E,A){let C=A.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!0})[0];return{appState:{...B,isCropping:!1,croppingElementId:C.id},captureUpdate:Xu.IMMEDIATELY}},predicate:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B);return!!(!B.croppingElementId&&C.length===1&&H1(C[0]))},PanelComponent:({appState:u,updateData:B,app:E})=>{let A=C0("helpDialog.cropStart");return P(A1,{type:"button",icon:If0,title:A,"aria-label":A,onClick:()=>B(null)})}}),Qs=class{constructor(u=!0,B=!0){this.isUndoStackEmpty=u,this.isRedoStackEmpty=B}},Bsu=class u{constructor(){j0(this,"onHistoryChangedEmitter",new GD),j0(this,"undoStack",[]),j0(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(B,E){let A=cl3.create(E,B);A.isEmpty()||(this.undoStack.push(A.inverse()),A.elementsChange.isEmpty()||(this.redoStack.length=0),this.onHistoryChangedEmitter.trigger(new Qs(this.isUndoStackEmpty,this.isRedoStackEmpty)))}undo(B,E,A){return this.perform(B,E,A,()=>u.pop(this.undoStack),(C)=>u.push(this.redoStack,C,B))}redo(B,E,A){return this.perform(B,E,A,()=>u.pop(this.redoStack),(C)=>u.push(this.undoStack,C,B))}perform(B,E,A,C,D){try{let F=C();if(F===null)return;let U=B,z=E,k=!1;for(;F;){try{[U,z,k]=F.applyTo(U,z,A)}finally{D(F)}if(k)break;F=C()}return[U,z]}finally{this.onHistoryChangedEmitter.trigger(new Qs(this.isUndoStackEmpty,this.isRedoStackEmpty))}}static pop(B){if(!B.length)return null;let E=B.pop();return E!==void 0?E:null}static push(B,E,A){let C=E.inverse().applyLatestChanges(A);return B.push(C)}},cl3=class u{constructor(B,E){this.appStateChange=B,this.elementsChange=E}static create(B,E){return new u(B,E)}inverse(){return new u(this.appStateChange.inverse(),this.elementsChange.inverse())}applyTo(B,E,A){let[C,D]=this.elementsChange.applyTo(B,A.elements),[F,U]=this.appStateChange.applyTo(E,C);return[C,F,D||U]}applyLatestChanges(B){let E=this.elementsChange.applyLatestChanges(B);return u.create(this.appStateChange,E)}isEmpty(){return this.appStateChange.isEmpty()&&this.elementsChange.isEmpty()}},Dtu=(u,B)=>{let[E,A]=ns.useState(B);return ns.useEffect(()=>{let C=u.on((D)=>{A(D)});return()=>{C()}},[u]),E},Ftu=(u,B,E)=>{if(!B.multiElement&&!B.resizingElement&&!B.editingTextElement&&!B.newElement&&!B.selectedElementsAreBeingDragged&&!B.selectionElement&&!u.flowChartCreator.isCreatingChart){let A=E();if(!A)return{captureUpdate:Xu.EVENTUALLY};let[C,D]=A,F=Array.from(C.values());return{appState:D,elements:F,captureUpdate:Xu.NEVER}}return{captureUpdate:Xu.EVENTUALLY}},gl3=(u,B)=>({name:"undo",label:"buttons.undo",icon:Ff0,trackEvent:{category:"history"},viewMode:!1,perform:(E,A,C,D)=>Ftu(D,A,()=>u.undo(e4(E),A,B.snapshot)),keyTest:(E)=>E[y0.CTRL_OR_CMD]&&kn(E,y0.Z)&&!E.shiftKey,PanelComponent:({updateData:E,data:A})=>{let{isUndoStackEmpty:C}=Dtu(u.onHistoryChangedEmitter,new Qs(u.isUndoStackEmpty,u.isRedoStackEmpty));return P(A1,{type:"button",icon:Ff0,"aria-label":C0("buttons.undo"),onClick:E,size:A?.size||"medium",disabled:C,"data-testid":"button-undo"})}}),_l3=(u,B)=>({name:"redo",label:"buttons.redo",icon:Uf0,trackEvent:{category:"history"},viewMode:!1,perform:(E,A,C,D)=>Ftu(D,A,()=>u.redo(e4(E),A,B.snapshot)),keyTest:(E)=>E[y0.CTRL_OR_CMD]&&E.shiftKey&&kn(E,y0.Z)||Sk0&&E.ctrlKey&&!E.shiftKey&&kn(E,y0.Y),PanelComponent:({updateData:E,data:A})=>{let{isRedoStackEmpty:C}=Dtu(u.onHistoryChangedEmitter,new Qs(u.isUndoStackEmpty,u.isRedoStackEmpty));return P(A1,{type:"button",icon:Uf0,"aria-label":C0("buttons.redo"),onClick:E,size:A?.size||"medium",disabled:C,"data-testid":"button-redo"})}}),Sw0=(u,B,E,A,C,D)=>{if(u.trackEvent)try{typeof u.trackEvent=="object"&&(!u.trackEvent.predicate||u.trackEvent.predicate(E,A,D))&&G6(u.trackEvent.category,u.trackEvent.action||u.name,`${B} (${C.device.editor.isMobile?"mobile":"desktop"})`)}catch(F){console.error("error while logging action:",F)}},nl3=class{constructor(u,B,E,A){j0(this,"actions",{}),j0(this,"updater"),j0(this,"getAppState"),j0(this,"getElementsIncludingDeleted"),j0(this,"app"),j0(this,"renderAction",(C,D)=>{let F=this.app.props.UIOptions.canvasActions;if(this.actions[C]&&"PanelComponent"in this.actions[C]&&(!(C in F)||F[C])){let U=this.actions[C],z=U.PanelComponent;z.displayName="PanelComponent";let k=this.getElementsIncludingDeleted(),f=this.getAppState(),l=(b)=>{Sw0(U,"ui",f,k,this.app,b),this.updater(U.perform(this.getElementsIncludingDeleted(),this.getAppState(),b,this.app))};return P(z,{elements:this.getElementsIncludingDeleted(),appState:this.getAppState(),updateData:l,appProps:this.app.props,app:this.app,data:D})}return null}),j0(this,"isActionEnabled",(C)=>{let D=this.getElementsIncludingDeleted(),F=this.getAppState();return!C.predicate||C.predicate(D,F,this.app.props,this.app)}),this.updater=(C)=>{if(uX(C))C.then((D)=>u(D));else return u(C)},this.getAppState=B,this.getElementsIncludingDeleted=E,this.app=A}registerAction(u){this.actions[u.name]=u}registerAll(u){u.forEach((B)=>this.registerAction(B))}handleKeyDown(u){let B=this.app.props.UIOptions.canvasActions,E=Object.values(this.actions).sort((U,z)=>(z.keyPriority||0)-(U.keyPriority||0)).filter((U)=>(U.name in B?B[U.name]:!0)&&U.keyTest&&U.keyTest(u,this.getAppState(),this.getElementsIncludingDeleted(),this.app));if(E.length!==1)return E.length>1&&console.warn("Canceling as multiple actions match this shortcut",E),!1;let A=E[0];if(this.getAppState().viewModeEnabled&&A.viewMode!==!0)return!1;let C=this.getElementsIncludingDeleted(),D=this.getAppState(),F=null;return Sw0(A,"keyboard",D,C,this.app,null),u.preventDefault(),u.stopPropagation(),this.updater(E[0].perform(C,D,F,this.app)),!0}executeAction(u,B="api",E=null){let A=this.getElementsIncludingDeleted(),C=this.getAppState();Sw0(u,B,C,A,this.app,E),this.updater(u.perform(A,C,E,this.app))}},Esu=(u)=>{let B=Array.from(u.values());return{x:Csu(B,(E)=>E.x)/B.length,y:Csu(B,(E)=>E.y)/B.length}},Asu=([u,B])=>Math.hypot(u.x-B.x,u.y-B.y),Csu=(u,B)=>u.reduce((E,A)=>E+B(A),0),pl3=({children:u,left:B,top:E,onCloseRequest:A,fitInViewport:C=!1,offsetLeft:D=0,offsetTop:F=0,viewportWidth:U=window.innerWidth,viewportHeight:z=window.innerHeight})=>{let k=AZ.useRef(null);AZ.useEffect(()=>{let l=k.current;if(!l)return;l.contains(document.activeElement)||l.focus();let b=(M)=>{if(M.key===y0.TAB){let Z=__(l),{activeElement:J}=document,w=Z.findIndex((K)=>K===J);J===l?(M.shiftKey?Z[Z.length-1]?.focus():Z[0].focus(),M.preventDefault(),M.stopImmediatePropagation()):w===0&&M.shiftKey?(Z[Z.length-1]?.focus(),M.preventDefault(),M.stopImmediatePropagation()):w===Z.length-1&&!M.shiftKey&&(Z[0]?.focus(),M.preventDefault(),M.stopImmediatePropagation())}};return l.addEventListener("keydown",b),()=>l.removeEventListener("keydown",b)},[]);let f=AZ.useRef(null);return AZ.useLayoutEffect(()=>{if(C&&k.current&&E!=null&&B!=null){let l=k.current,{width:b,height:M}=l.getBoundingClientRect();if(f.current?.top===E&&f.current?.left===B)return;f.current={top:E,left:B},b>=U?(l.style.width=`${U}px`,l.style.left="0px",l.style.overflowX="scroll"):B+b-D>U?l.style.left=`${U-b-10}px`:l.style.left=`${B}px`,M>=z?(l.style.height=`${z-20}px`,l.style.top="10px",l.style.overflowY="scroll"):E+M-F>z?l.style.top=`${z-M}px`:l.style.top=`${E}px`}},[E,B,C,U,z,D,F]),AZ.useEffect(()=>{if(A){let l=(b)=>{k.current?.contains(b.target)||Utu.unstable_batchedUpdates(()=>A(b))};return document.addEventListener("pointerdown",l,!1),()=>document.removeEventListener("pointerdown",l,!1)}},[A]),P("div",{className:"popover",ref:k,tabIndex:-1,children:u})},J5="separator",dl3=ztu.default.memo(({actionManager:u,items:B,top:E,left:A,onClose:C})=>{let D=SP(),F=es(),U=B.reduce((z,k)=>(k&&(k===J5||!k.predicate||k.predicate(F,D,u.app.props,u.app))&&z.push(k),z),[]);return P(pl3,{onCloseRequest:()=>{C()},top:E,left:A,fitInViewport:!0,offsetLeft:D.offsetLeft,offsetTop:D.offsetTop,viewportWidth:D.width,viewportHeight:D.height,children:P("ul",{className:"context-menu",onContextMenu:(z)=>z.preventDefault(),children:U.map((z,k)=>{if(z===J5)return!U[k-1]||U[k-1]===J5?null:P("hr",{className:"context-menu-item-separator"},k);let f=z.name,l="";return z.label&&(typeof z.label=="function"?l=C0(z.label(F,D,u.app)):l=C0(z.label)),P("li",{"data-testid":f,onClick:()=>{C(()=>{u.executeAction(z,"contextMenu")})},children:l0("button",{type:"button",className:Yu("context-menu-item",{dangerous:f==="deleteSelectedElements",checkmark:z.checked?.(D)}),children:[P("div",{className:"context-menu-item__label",children:l}),P("kbd",{className:"context-menu-item__shortcut",children:f?EB(f):""})]})},k)})})})}),sl3=({children:u,onClose:B})=>{let[E,A]=ps.useState(!!u),{container:C}=Bz(),D=ps.default.useCallback(()=>{A(!1),B&&B(),C?.focus()},[B,C]);return P(tu,{children:E&&P(nD,{size:"small",onCloseRequest:D,title:C0("errorDialog.title"),children:P("div",{style:{whiteSpace:"pre-wrap"},children:u})})})},ftu=function({onChange:u,value:B,choices:E,name:A}){return P("div",{className:"RadioGroup",children:E.map((C)=>l0("div",{className:Yu("RadioGroup__choice",{active:C.value===B}),title:C.ariaLabel,children:[P("input",{name:A,type:"radio",checked:C.value===B,onChange:()=>u(C.value),"aria-label":C.ariaLabel}),C.label]},String(C.value)))})},zs=({title:u,name:B,checked:E,onChange:A,disabled:C=!1})=>P("div",{className:Yu("Switch",{toggled:E,disabled:C}),children:P("input",{name:B,id:B,title:u,type:"checkbox",checked:E,disabled:C,onChange:()=>A(!E),onKeyDown:(D)=>{D.key===" "&&A(!E)}})}),MP=ds.forwardRef(({children:u,icon:B,onClick:E,label:A,variant:C="filled",color:D="primary",size:F="medium",fullWidth:U,className:z,status:k},f)=>{let[l,b]=ds.useState(!1),M=async(J)=>{let w=E?.(J);if(uX(w)){let K=window.setTimeout(()=>{b(!0)},50);try{await w}catch(Q){if(Q instanceof xO)console.warn(Q);else throw Q}finally{clearTimeout(K),b(!1)}}},Z=l?"loading":k;return D=Z==="success"?"success":D,P("button",{className:Yu("ExcButton",`ExcButton--color-${D}`,`ExcButton--variant-${C}`,`ExcButton--size-${F}`,`ExcButton--status-${Z}`,{"ExcButton--fullWidth":U},z),onClick:M,type:"button","aria-label":A,ref:f,disabled:Z==="loading"||Z==="success",children:l0("div",{className:"ExcButton__contents",children:[Z==="loading"?P(Zf,{className:"ExcButton__statusIcon"}):Z==="success"&&P("div",{className:"ExcButton__statusIcon",children:flu}),B&&P("div",{className:"ExcButton__icon","aria-hidden":!0,children:B}),C!=="icon"&&(u??A)]})})}),ol3=2000,tl3=()=>{let[u,B]=Sx.useState(null),E=Sx.useRef(0),A=()=>{clearTimeout(E.current),B("success"),E.current=window.setTimeout(()=>{B(null)},ol3)},C=Sx.useCallback(()=>{B(null)},[]);return{copyStatus:u,resetCopyStatus:C,onCopy:A}},el3="filter"in document.createElement("canvas").getContext("2d"),ub3=()=>l0("div",{children:[P("h3",{children:C0("canvasError.cannotShowPreview")}),P("p",{children:P("span",{children:C0("canvasError.canvasTooBig")})}),l0("em",{children:["(",C0("canvasError.canvasTooBigTip"),")"]})]}),Bb3=({appStateSnapshot:u,elementsSnapshot:B,files:E,actionManager:A,onExportImage:C,name:D})=>{let F=Z2(B,u),[U,z]=g8.useState(D),[k,f]=g8.useState(F),[l,b]=g8.useState(u.exportBackground),[M,Z]=g8.useState(u.exportWithDarkMode),[J,w]=g8.useState(u.exportEmbedScene),[K,Q]=g8.useState(u.exportScale),G=g8.useRef(null),[L,H]=g8.useState(null),{onCopy:q,copyStatus:x,resetCopyStatus:v}=tl3();g8.useEffect(()=>{v()},[U,l,M,K,J,v]);let{exportedElements:W,exportingFrame:S}=as(B,u,k);return g8.useEffect(()=>{let T=G.current;if(!T)return;let{offsetWidth:R,offsetHeight:Y}=T;R&&yn({elements:W,appState:{...u,name:U,exportBackground:l,exportWithDarkMode:M,exportScale:K,exportEmbedScene:J},files:E,exportPadding:xK,maxWidthOrHeight:Math.max(R,Y),exportingFrame:S}).then((a)=>(H(null),KX(a).then(()=>{T.replaceChildren(a)}).catch((I)=>{throw I.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(C0("canvasError.canvasTooBig")):I}))).catch((a)=>{console.error(a),H(a)})},[u,E,W,S,U,l,M,K,J]),l0("div",{className:"ImageExportModal",children:[P("h3",{children:C0("imageExportDialog.header")}),l0("div",{className:"ImageExportModal__preview",children:[P("div",{className:"ImageExportModal__preview__canvas",ref:G,children:L&&P(ub3,{})}),P("div",{className:"ImageExportModal__preview__filename",children:!rk&&P("input",{type:"text",className:"TextInput",value:U,style:{width:"30ch"},onChange:(T)=>{z(T.target.value),A.executeAction(pk3,"ui",T.target.value)}})})]}),l0("div",{className:"ImageExportModal__settings",children:[P("h3",{children:C0("imageExportDialog.header")}),F&&P(CP,{label:C0("imageExportDialog.label.onlySelected"),name:"exportOnlySelected",children:P(zs,{name:"exportOnlySelected",checked:k,onChange:(T)=>{f(T)}})}),P(CP,{label:C0("imageExportDialog.label.withBackground"),name:"exportBackgroundSwitch",children:P(zs,{name:"exportBackgroundSwitch",checked:l,onChange:(T)=>{b(T),A.executeAction(sk3,"ui",T)}})}),el3&&P(CP,{label:C0("imageExportDialog.label.darkMode"),name:"exportDarkModeSwitch",children:P(zs,{name:"exportDarkModeSwitch",checked:M,onChange:(T)=>{Z(T),A.executeAction(ok3,"ui",T)}})}),P(CP,{label:C0("imageExportDialog.label.embedScene"),tooltip:C0("imageExportDialog.tooltip.embedScene"),name:"exportEmbedSwitch",children:P(zs,{name:"exportEmbedSwitch",checked:J,onChange:(T)=>{w(T),A.executeAction(qou,"ui",T)}})}),P(CP,{label:C0("imageExportDialog.label.scale"),name:"exportScale",children:P(ftu,{name:"exportScale",value:K,onChange:(T)=>{Q(T),A.executeAction(dk3,"ui",T)},choices:y_.map((T)=>({value:T,label:`${T}×`}))})}),l0("div",{className:"ImageExportModal__settings__buttons",children:[P(MP,{className:"ImageExportModal__settings__buttons__button",label:C0("imageExportDialog.title.exportToPng"),onClick:()=>C(V_.png,W,{exportingFrame:S}),icon:xf0,children:C0("imageExportDialog.button.exportToPng")}),P(MP,{className:"ImageExportModal__settings__buttons__button",label:C0("imageExportDialog.title.exportToSvg"),onClick:()=>C(V_.svg,W,{exportingFrame:S}),icon:xf0,children:C0("imageExportDialog.button.exportToSvg")}),($n||pq)&&P(MP,{className:"ImageExportModal__settings__buttons__button",label:C0("imageExportDialog.title.copyPngToClipboard"),status:x,onClick:async()=>{await C(V_.clipboard,W,{exportingFrame:S}),q()},icon:Dn,children:C0("imageExportDialog.button.copyPngToClipboard")})]})]})]})},CP=({label:u,children:B,tooltip:E,name:A})=>l0("div",{className:"ImageExportModal__settings__setting",title:u,children:[l0("label",{htmlFor:A,className:"ImageExportModal__settings__setting__label",children:[u,E&&P(KQ,{label:E,long:!0,children:klu})]}),P("div",{className:"ImageExportModal__settings__setting__content",children:B})]}),Eb3=({elements:u,appState:B,files:E,actionManager:A,onExportImage:C,onCloseRequest:D,name:F})=>{let[{appStateSnapshot:U,elementsSnapshot:z}]=g8.useState(()=>({appStateSnapshot:IU(B),elementsSnapshot:IU(u)}));return P(nD,{onCloseRequest:D,size:"wide",title:!1,children:P(Bb3,{elementsSnapshot:z,appStateSnapshot:U,files:E,actionManager:A,onExportImage:C,name:F})})},ltu=({children:u,side:B,className:E})=>P("div",{className:Yu("FixedSideContainer",`FixedSideContainer_side_${B}`,E),children:u}),Qx=100,Gx=100,Dsu=(u)=>{switch(u){case y0.ARROW_UP:return"up";case y0.ARROW_DOWN:return"down";case y0.ARROW_RIGHT:return"right";case y0.ARROW_LEFT:return"left";default:return"right"}},btu=(u,B,E,A)=>{let C=[...E.values()].reduce((D,F)=>{let U;if(K4(F)&&(U=F[u==="predecessors"?"startBinding":"endBinding"])&&F[u==="predecessors"?"endBinding":"startBinding"]?.elementId===B.id){let z=E.get(U.elementId);if(!z)return D;l2(iA(z),"not an ExcalidrawBindableElement");let k=u==="predecessors"?F.points[F.points.length-1]:[0,0],f=$f0(B,ED(B),[k[0]+F.x,k[1]+F.y]);D.push({relative:z,heading:f})}return D},[]);switch(A){case"up":return C.filter((D)=>M9(D.heading,aB)).map((D)=>D.relative);case"down":return C.filter((D)=>M9(D.heading,k5)).map((D)=>D.relative);case"right":return C.filter((D)=>M9(D.heading,l9)).map((D)=>D.relative);case"left":return C.filter((D)=>M9(D.heading,iB)).map((D)=>D.relative)}},dw0=(u,B,E)=>btu("successors",u,B,E),sw0=(u,B,E)=>btu("predecessors",u,B,E),Ab3=(u,B,E)=>{let A=Gx+u.width;if(E==="up"||E==="down"){let U=Qx+u.height,z=u.x,k=u.x+u.width;if(B.every((f)=>f.x+f.width<z||f.x>k))return{x:0,y:U*(E==="up"?-1:1)}}else if(E==="right"||E==="left"){let U=u.y,z=u.y+u.height;if(B.every((k)=>k.y+k.height<U||k.y>z))return{x:(Gx+u.width)*(E==="left"?-1:1),y:0}}if(E==="up"||E==="down"){let U=Qx+u.height,z=(B.length,U),k=B.length===0?0:(B.length+1)%2===0?(B.length+1)/2*A:B.length/2*A*-1;return E==="up"?{x:k,y:z*-1}:{x:k,y:z}}let C=Qx+u.height,D=(B.length,Gx+u.width),F=B.length===0?0:(B.length+1)%2===0?(B.length+1)/2*C:B.length/2*C*-1;return E==="left"?{x:D*-1,y:F}:{x:D,y:F}},Cb3=(u,B,E,A)=>{let C=dw0(u,B,A),D=sw0(u,B,A),F=Ab3(u,[...C,...D],A),U=QD({type:u.type,x:u.x+F.x,y:u.y+F.y,width:u.width,height:u.height,roundness:u.roundness,roughness:u.roughness,backgroundColor:u.backgroundColor,strokeColor:u.strokeColor,strokeWidth:u.strokeWidth,opacity:u.opacity,fillStyle:u.fillStyle,strokeStyle:u.strokeStyle});l2(QO(U),"not an ExcalidrawFlowchartNodeElement");let z=Mtu(u,U,B,A,E);return{nextNode:U,bindingArrow:z}},Db3=(u,B,E,A,C)=>{let D=[];for(let F=0;F<C;F++){let U,z;if(A==="left"||A==="right"){let l=Qx*(C-1)+C*u.height,b=u.y+u.height/2-l/2,M=Gx+u.width;A==="left"&&(M*=-1),U=u.x+M;let Z=(Qx+u.height)*F;z=b+Z}else{let l=Gx*(C-1)+C*u.width,b=u.x+u.width/2-l/2,M=Qx+u.height;A==="up"&&(M*=-1),z=u.y+M;let Z=(Gx+u.width)*F;U=b+Z}let k=QD({type:u.type,x:U,y:z,width:u.width,height:u.height,roundness:u.roundness,roughness:u.roughness,backgroundColor:u.backgroundColor,strokeColor:u.strokeColor,strokeWidth:u.strokeWidth,opacity:u.opacity,fillStyle:u.fillStyle,strokeStyle:u.strokeStyle});l2(QO(k),"not an ExcalidrawFlowchartNodeElement");let f=Mtu(u,k,B,A,E);D.push(k),D.push(f)}return D},Mtu=(u,B,E,A,C)=>{let D,F;switch(A){case"up":{D=u.x+u.width/2,F=u.y-6;break}case"down":{D=u.x+u.width/2,F=u.y+u.height+6;break}case"right":{D=u.x+u.width+6,F=u.y+u.height/2;break}case"left":{D=u.x-6,F=u.y+u.height/2;break}}let U,z;switch(A){case"up":{U=B.x+B.width/2-D,z=B.y+B.height-F+6;break}case"down":{U=B.x+B.width/2-D,z=B.y-F-6;break}case"right":{U=B.x-D-6,z=B.y-F+B.height/2;break}case"left":{U=B.x+B.width-D+6,z=B.y-F+B.height/2;break}}let k=Yn({type:"arrow",x:D,y:F,startArrowhead:null,endArrowhead:C.currentItemEndArrowhead,strokeColor:u.strokeColor,strokeStyle:u.strokeStyle,strokeWidth:u.strokeWidth,opacity:u.opacity,roughness:u.roughness,points:[t(0,0),t(U,z)],elbowed:!0});zD(k,u,"start",E),zD(k,B,"end",E);let f=new Map;f.set(u.id,u),f.set(B.id,B),f.set(k.id,k),M4.movePoints(k,[{index:1,point:k.points[1]}]);let l=Vn(k,RE(new Map([...E.entries(),[u.id,u],[B.id,B],[k.id,k]])),{points:k.points});return{...k,...l}},Fb3=class{constructor(){j0(this,"isExploring",!1),j0(this,"sameLevelNodes",[]),j0(this,"sameLevelIndex",0),j0(this,"direction",null),j0(this,"visitedNodes",new Set)}clear(){this.isExploring=!1,this.sameLevelNodes=[],this.sameLevelIndex=0,this.direction=null,this.visitedNodes.clear()}exploreByDirection(u,B,E){if(!iA(u))return null;if(E!==this.direction&&this.clear(),this.visitedNodes.has(u.id)||this.visitedNodes.add(u.id),this.isExploring&&E===this.direction&&this.sameLevelNodes.length>1)return this.sameLevelIndex=(this.sameLevelIndex+1)%this.sameLevelNodes.length,this.sameLevelNodes[this.sameLevelIndex].id;let A=[...dw0(u,B,E),...sw0(u,B,E)];if(A.length>0)return this.sameLevelIndex=0,this.isExploring=!0,this.sameLevelNodes=A,this.direction=E,this.visitedNodes.add(A[0].id),A[0].id;if(E===this.direction||!this.isExploring){this.isExploring||this.visitedNodes.add(u.id);let C=["up","right","down","left"].filter((D)=>D!==E).map((D)=>[...dw0(u,B,D),...sw0(u,B,D)]).flat().filter((D)=>!this.visitedNodes.has(D.id));for(let D of C)if(!this.visitedNodes.has(D.id))return this.visitedNodes.add(D.id),this.isExploring=!0,this.direction=E,D.id}return null}},Ub3=class{constructor(){j0(this,"isCreatingChart",!1),j0(this,"numberOfNodes",0),j0(this,"direction","right"),j0(this,"pendingNodes",null)}createNodes(u,B,E,A){if(A!==this.direction){let{nextNode:C,bindingArrow:D}=Cb3(u,B,E,A);this.numberOfNodes=1,this.isCreatingChart=!0,this.direction=A,this.pendingNodes=[C,D]}else{this.numberOfNodes+=1;let C=Db3(u,B,E,A,this.numberOfNodes);this.isCreatingChart=!0,this.direction=A,this.pendingNodes=C}if(u.frameId){let C=B.get(u.frameId);l2(C&&_k0(C),"not an ExcalidrawFrameElement"),C&&this.pendingNodes.every((D)=>MX([D],C,B)||dk(D,C,B))&&(this.pendingNodes=this.pendingNodes.map((D)=>Wu(D,{frameId:u.frameId},!1)))}}clear(){this.isCreatingChart=!1,this.pendingNodes=null,this.direction=null,this.numberOfNodes=0}},zb3=(u,B)=>{for(let[,E]of B)if(E.type==="arrow"&&(E.startBinding?.elementId===u.id||E.endBinding?.elementId===u.id))return!0;return!1},kb3=({appState:u,isMobile:B,device:E,app:A})=>{let{activeTool:C,isResizing:D,isRotating:F,lastPointerDownWith:U}=u,z=u.multiElement!==null;if(u.openSidebar?.name===VA.name&&u.openSidebar.tab===vK&&u.searchMatches?.length)return C0("hints.dismissSearch");if(u.openSidebar&&!E.editor.canFitSidebar)return null;if(ZD(u))return C0("hints.eraserRevert");if(C.type==="arrow"||C.type==="line")return z?C0("hints.linearElementMulti"):C.type==="arrow"?C0("hints.arrowTool",{arrowShortcut:Su("A")}):C0("hints.linearElement");if(C.type==="freedraw")return C0("hints.freeDraw");if(C.type==="text")return C0("hints.text");if(C.type==="embeddable")return C0("hints.embeddable");if(u.activeTool.type==="image"&&u.pendingImageElementId)return C0("hints.placeImage");let k=A.scene.getSelectedElements(u);if(D&&U==="mouse"&&k.length===1){let f=k[0];return W3(f)&&f.points.length===2?C0("hints.lockAngle"):H1(f)?C0("hints.resizeImage"):C0("hints.resize")}if(F&&U==="mouse")return C0("hints.rotate");if(k.length===1&&l4(k[0]))return C0("hints.text_selected");if(u.editingTextElement)return C0("hints.text_editing");if(u.croppingElementId)return C0("hints.leaveCropEditor");if(k.length===1&&H1(k[0]))return C0("hints.enterCropEditor");if(C.type==="selection"){if(u.selectionElement&&!k.length&&!u.editingTextElement&&!u.editingLinearElement)return C0("hints.deepBoxSelect");if(zX(A)&&u.selectedElementsAreBeingDragged)return C0("hints.disableSnapping");if(!k.length&&!B)return C0("hints.canvasPanning");if(k.length===1){if(W3(k[0]))return u.editingLinearElement?u.editingLinearElement.selectedPointsIndices?C0("hints.lineEditor_pointSelected"):C0("hints.lineEditor_nothingSelected"):C0("hints.lineEditor_info");if(!u.newElement&&!u.selectedElementsAreBeingDragged&&lM(k[0]))return QO(k[0])?zb3(k[0],A.scene.getNonDeletedElementsMap())?[C0("hints.bindTextToElement"),C0("hints.createFlowchart")]:[C0("hints.bindTextToElement"),C0("hints.createFlowchart")]:C0("hints.bindTextToElement")}}return null},Ztu=({appState:u,isMobile:B,device:E,app:A})=>{let C=kb3({appState:u,isMobile:B,device:E,app:A});if(!C)return null;let D=Array.isArray(C)?C.map((F)=>Su(F).replace(/\. ?$/,"")).join(". "):Su(C);return P("div",{className:"HintViewer",children:P("span",{children:D})})},fb3="medium",Fsu={CHECKED:o_,UNCHECKED:HO},Jtu=(u)=>l0("label",{className:Yu("ToolIcon ToolIcon__lock",`ToolIcon_size_${fb3}`,{"is-mobile":u.isMobile}),title:`${u.title} — Q`,children:[P("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:u.name,onChange:u.onChange,checked:u.checked,"aria-label":u.title,"data-testid":"toolbar-lock"}),P("div",{className:"ToolIcon__icon",children:u.checked?Fsu.CHECKED:Fsu.UNCHECKED})]}),GP=({heading:u,children:B,...E})=>{let{id:A}=Bz(),C=P("h2",{className:"visually-hidden",id:`${A}-${u}-title`,children:C0(`headings.${u}`)});return P("section",{...E,"aria-labelledby":`${A}-${u}-title`,children:typeof B=="function"?B(C):l0(tu,{children:[C,B]})})},dU=4,uZ=6,lb3="rgba(0,0,0,0.3)",bb3=(u,B,E,A)=>{if(!u.length)return{horizontal:null,vertical:null};let[C,D,F,U]=T1(u),z=B/A.zoom.value,k=E/A.zoom.value,f=B-z,l=E-k,b={top:parseInt(ZO("sat"))||0,bottom:parseInt(ZO("sab"))||0,left:parseInt(ZO("sal"))||0,right:parseInt(ZO("sar"))||0},M=ZP().rtl,Z=-A.scrollX+f/2+b.left,J=-A.scrollY+l/2+b.top,w=Z+z-b.right,K=J+k-b.bottom,Q=Math.min(C,Z),G=Math.min(D,J),L=Math.max(F,w),H=Math.max(U,K);return{horizontal:Z===Q&&w===L?null:{x:Math.max(b.left,dU)+(Z-Q)/(L-Q)*B,y:E-uZ-Math.max(dU,b.bottom),width:(w-Z)/(L-Q)*B-Math.max(dU*2,b.left+b.right),height:uZ},vertical:J===G&&K===H?null:{x:M?Math.max(b.left,dU):B-uZ-Math.max(b.right,dU),y:(J-G)/(H-G)*E+Math.max(b.top,dU),width:uZ,height:(K-J)/(H-G)*E-Math.max(dU*2,b.top+b.bottom)}}},Usu=(u,B,E)=>{let[A,C]=[u.horizontal,u.vertical].map((D)=>D!=null&&D.x<=B&&B<=D.x+D.width&&D.y<=E&&E<=D.y+D.height);return{isOverEither:A||C,isOverHorizontal:A,isOverVertical:C}},Mb3="medium",wtu=(u)=>u.penDetected?l0("label",{className:Yu("ToolIcon ToolIcon__penMode",`ToolIcon_size_${Mb3}`,{"is-mobile":u.isMobile}),title:`${u.title}`,children:[P("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:u.name,onChange:u.onChange,checked:u.checked,"aria-label":u.title}),P("div",{className:"ToolIcon__icon",children:zfu})]}):null,Ktu=(u)=>P(A1,{className:Yu("Shape",{fillable:!1}),type:"radio",icon:Xf0,name:"editor-current-shape",checked:u.checked,title:`${u.title} — H`,keyBindingLabel:u.isMobile?void 0:y0.H.toLocaleUpperCase(),"aria-label":`${u.title} — H`,"aria-keyshortcuts":y0.H,"data-testid":"toolbar-hand",onChange:()=>u.onChange?.()}),Zb3=({appState:u,elements:B,actionManager:E,setAppState:A,onLockToggle:C,onHandToolToggle:D,onPenModeToggle:F,renderTopRightUI:U,renderCustomStats:z,renderSidebars:k,device:f,renderWelcomeScreen:l,UIOptions:b,app:M})=>{let{WelcomeScreenCenterTunnel:Z,MainMenuTunnel:J,DefaultSidebarTriggerTunnel:w}=dB(),K=()=>l0(ltu,{side:"top",className:"App-top-bar",children:[l&&P(Z.Out,{}),P(GP,{heading:"shapes",children:(G)=>P(tA.Col,{gap:4,align:"center",children:l0(tA.Row,{gap:1,className:"App-toolbar-container",children:[l0(cD,{padding:1,className:"App-toolbar App-toolbar--mobile",children:[G,P(tA.Row,{gap:1,children:P(eou,{appState:u,activeTool:u.activeTool,UIOptions:b,app:M})})]}),U&&U(!0,u),l0("div",{className:"mobile-misc-tools-container",children:[!u.viewModeEnabled&&u.openDialog?.name!=="elementLinkSelector"&&P(w.Out,{}),P(wtu,{checked:u.penMode,onChange:()=>F(null),title:C0("toolBar.penMode"),isMobile:!0,penDetected:u.penDetected}),P(Jtu,{checked:u.activeTool.locked,onChange:C,title:C0("toolBar.lock"),isMobile:!0}),P(Ktu,{checked:SK(u),onChange:()=>D(),title:C0("toolBar.hand"),isMobile:!0})]})]})})}),P(Ztu,{appState:u,isMobile:!0,device:f,app:M})]}),Q=()=>u.viewModeEnabled||u.openDialog?.name==="elementLinkSelector"?P("div",{className:"App-toolbar-content",children:P(J.Out,{})}):l0("div",{className:"App-toolbar-content",children:[P(J.Out,{}),E.renderAction("toggleEditMenu"),E.renderAction(u.multiElement?"finalize":"duplicateSelection"),E.renderAction("deleteSelectedElements"),l0("div",{children:[E.renderAction("undo"),E.renderAction("redo")]})]});return l0(tu,{children:[k(),!u.viewModeEnabled&&u.openDialog?.name!=="elementLinkSelector"&&K(),P("div",{className:"App-bottom-bar",style:{marginBottom:uZ+dU*2,marginLeft:uZ+dU*2,marginRight:uZ+dU*2},children:l0(cD,{padding:0,children:[u.openMenu==="shape"&&!u.viewModeEnabled&&u.openDialog?.name!=="elementLinkSelector"&&en(u,B)?P(GP,{className:"App-mobile-menu",heading:"selectedShapeActions",children:P(tou,{appState:u,elementsMap:M.scene.getNonDeletedElementsMap(),renderAction:E.renderAction,app:M})}):null,l0("footer",{className:"App-toolbar",children:[Q(),u.scrolledOutside&&!u.openMenu&&!u.openSidebar&&P("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{A((G)=>({...FX(B,G)}))},children:C0("buttons.scrollBackToContent")})]})]})})]})},zsu=(u)=>{let B=FZ.useRef(null),[E,A]=FZ.useState(null);return FZ.useLayoutEffect(()=>{if(!u.spreadsheet)return;let C=MMu(u.chartType,u.spreadsheet,0,0);A(C);let D,F=B.current;return(async()=>(D=await an(C,{exportBackground:!1,viewBackgroundColor:_6.white},null,{skipInliningFonts:!0}),D.querySelector(".style-fonts")?.remove(),F.replaceChildren(),F.appendChild(D),u.selected&&F.parentNode.focus()))(),()=>{F.replaceChildren()}},[u.spreadsheet,u.chartType,u.selected]),P("button",{type:"button",className:"ChartPreview",onClick:()=>{E&&u.onClick(u.chartType,E)},children:P("div",{ref:B})})},Jb3=({setAppState:u,appState:B,onClose:E})=>{let{onInsertElements:A}=uz(),C=FZ.default.useCallback(()=>{E&&E()},[E]),D=(F,U)=>{A(U),G6("paste","chart",F),u({currentChartType:F,pasteDialog:{shown:!1,data:null}})};return P(nD,{size:"small",onCloseRequest:C,title:C0("labels.pasteCharts"),className:"PasteChartDialog",autofocus:!1,children:l0("div",{className:"container",children:[P(zsu,{chartType:"bar",spreadsheet:B.pasteDialog.data,selected:B.currentChartType==="bar",onClick:D}),P(zsu,{chartType:"line",spreadsheet:B.pasteDialog.data,selected:B.currentChartType==="line",onClick:D})]})})},wb3=()=>l0("div",{className:"HelpDialog__header",children:[l0("a",{className:"HelpDialog__btn",href:"https://docs.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:[P("div",{className:"HelpDialog__link-icon",children:Af0}),C0("helpDialog.documentation")]}),l0("a",{className:"HelpDialog__btn",href:"https://plus.excalidraw.com/blog",target:"_blank",rel:"noopener noreferrer",children:[P("div",{className:"HelpDialog__link-icon",children:Af0}),C0("helpDialog.blog")]}),l0("a",{className:"HelpDialog__btn",href:"https://github.com/excalidraw/excalidraw/issues",target:"_blank",rel:"noopener noreferrer",children:[P("div",{className:"HelpDialog__link-icon",children:Cf0}),C0("helpDialog.github")]}),l0("a",{className:"HelpDialog__btn",href:"https://youtube.com/@excalidraw",target:"_blank",rel:"noopener noreferrer",children:[P("div",{className:"HelpDialog__link-icon",children:Tlu}),"YouTube"]})]}),Kb3=(u)=>l0(tu,{children:[P("h3",{children:u.title}),P("div",{className:"HelpDialog__islands-container",children:u.children})]}),Ww0=(u)=>l0("div",{className:`HelpDialog__island ${u.className}`,children:[P("h4",{className:"HelpDialog__island-title",children:u.caption}),P("div",{className:"HelpDialog__island-content",children:u.children})]});function*Qb3(u,B){let E=!0;for(let A of u)E||(yield B),E=!1,yield A}var Gb3=(u)=>u.replace(/\b[a-z]\b/,(B)=>B.toUpperCase()),Q4=({label:u,shortcuts:B,isOr:E=!0})=>{let A=B.map((C)=>(C.endsWith("++")?[...C.slice(0,-2).split("+"),"+"]:C.split("+")).map((D)=>P(Hb3,{children:Gb3(D)},D)));return l0("div",{className:"HelpDialog__shortcut",children:[P("div",{children:u}),P("div",{className:"HelpDialog__key-container",children:[...Qb3(A,E?C0("helpDialog.or"):null)]})]})},Hb3=(u)=>P("kbd",{className:"HelpDialog__key",...u}),Lb3=({onClose:u})=>{let B=Qtu.default.useCallback(()=>{u&&u()},[u]);return P(tu,{children:l0(nD,{onCloseRequest:B,title:C0("helpDialog.title"),className:"HelpDialog",children:[P(wb3,{}),l0(Kb3,{title:C0("helpDialog.shortcuts"),children:[l0(Ww0,{className:"HelpDialog__island--tools",caption:C0("helpDialog.tools"),children:[P(Q4,{label:C0("toolBar.hand"),shortcuts:[y0.H]}),P(Q4,{label:C0("toolBar.selection"),shortcuts:[y0.V,y0[1]]}),P(Q4,{label:C0("toolBar.rectangle"),shortcuts:[y0.R,y0[2]]}),P(Q4,{label:C0("toolBar.diamond"),shortcuts:[y0.D,y0[3]]}),P(Q4,{label:C0("toolBar.ellipse"),shortcuts:[y0.O,y0[4]]}),P(Q4,{label:C0("toolBar.arrow"),shortcuts:[y0.A,y0[5]]}),P(Q4,{label:C0("toolBar.line"),shortcuts:[y0.L,y0[6]]}),P(Q4,{label:C0("toolBar.freedraw"),shortcuts:[y0.P,y0[7]]}),P(Q4,{label:C0("toolBar.text"),shortcuts:[y0.T,y0[8]]}),P(Q4,{label:C0("toolBar.image"),shortcuts:[y0[9]]}),P(Q4,{label:C0("toolBar.eraser"),shortcuts:[y0.E,y0[0]]}),P(Q4,{label:C0("toolBar.frame"),shortcuts:[y0.F]}),P(Q4,{label:C0("toolBar.laser"),shortcuts:[y0.K]}),P(Q4,{label:C0("labels.eyeDropper"),shortcuts:[y0.I,"Shift+S","Shift+G"]}),P(Q4,{label:C0("helpDialog.editLineArrowPoints"),shortcuts:[Su("CtrlOrCmd+Enter")]}),P(Q4,{label:C0("helpDialog.editText"),shortcuts:[Su("Enter")]}),P(Q4,{label:C0("helpDialog.textNewLine"),shortcuts:[Su("Enter"),Su("Shift+Enter")]}),P(Q4,{label:C0("helpDialog.textFinish"),shortcuts:[Su("Esc"),Su("CtrlOrCmd+Enter")]}),P(Q4,{label:C0("helpDialog.curvedArrow"),shortcuts:["A",C0("helpDialog.click"),C0("helpDialog.click"),C0("helpDialog.click")],isOr:!1}),P(Q4,{label:C0("helpDialog.curvedLine"),shortcuts:["L",C0("helpDialog.click"),C0("helpDialog.click"),C0("helpDialog.click")],isOr:!1}),P(Q4,{label:C0("helpDialog.cropStart"),shortcuts:[C0("helpDialog.doubleClick"),Su("Enter")],isOr:!0}),P(Q4,{label:C0("helpDialog.cropFinish"),shortcuts:[Su("Enter"),Su("Escape")],isOr:!0}),P(Q4,{label:C0("toolBar.lock"),shortcuts:[y0.Q]}),P(Q4,{label:C0("helpDialog.preventBinding"),shortcuts:[Su("CtrlOrCmd")]}),P(Q4,{label:C0("toolBar.link"),shortcuts:[Su("CtrlOrCmd+K")]})]}),l0(Ww0,{className:"HelpDialog__island--view",caption:C0("helpDialog.view"),children:[P(Q4,{label:C0("buttons.zoomIn"),shortcuts:[Su("CtrlOrCmd++")]}),P(Q4,{label:C0("buttons.zoomOut"),shortcuts:[Su("CtrlOrCmd+-")]}),P(Q4,{label:C0("buttons.resetZoom"),shortcuts:[Su("CtrlOrCmd+0")]}),P(Q4,{label:C0("helpDialog.zoomToFit"),shortcuts:["Shift+1"]}),P(Q4,{label:C0("helpDialog.zoomToSelection"),shortcuts:["Shift+2"]}),P(Q4,{label:C0("helpDialog.movePageUpDown"),shortcuts:["PgUp/PgDn"]}),P(Q4,{label:C0("helpDialog.movePageLeftRight"),shortcuts:["Shift+PgUp/PgDn"]}),P(Q4,{label:C0("buttons.zenMode"),shortcuts:[Su("Alt+Z")]}),P(Q4,{label:C0("buttons.objectsSnapMode"),shortcuts:[Su("Alt+S")]}),P(Q4,{label:C0("labels.toggleGrid"),shortcuts:[Su("CtrlOrCmd+'")]}),P(Q4,{label:C0("labels.viewMode"),shortcuts:[Su("Alt+R")]}),P(Q4,{label:C0("labels.toggleTheme"),shortcuts:[Su("Alt+Shift+D")]}),P(Q4,{label:C0("stats.fullTitle"),shortcuts:[Su("Alt+/")]}),P(Q4,{label:C0("search.title"),shortcuts:[EB("searchMenu")]}),P(Q4,{label:C0("commandPalette.title"),shortcuts:pq?[EB("commandPalette")]:[EB("commandPalette"),EB("commandPalette",1)]})]}),l0(Ww0,{className:"HelpDialog__island--editor",caption:C0("helpDialog.editor"),children:[P(Q4,{label:C0("helpDialog.createFlowchart"),shortcuts:[Su("CtrlOrCmd+Arrow Key")],isOr:!0}),P(Q4,{label:C0("helpDialog.navigateFlowchart"),shortcuts:[Su("Alt+Arrow Key")],isOr:!0}),P(Q4,{label:C0("labels.moveCanvas"),shortcuts:[Su(`Space+${C0("helpDialog.drag")}`),Su(`Wheel+${C0("helpDialog.drag")}`)],isOr:!0}),P(Q4,{label:C0("buttons.clearReset"),shortcuts:[Su("CtrlOrCmd+Delete")]}),P(Q4,{label:C0("labels.delete"),shortcuts:[Su("Delete")]}),P(Q4,{label:C0("labels.cut"),shortcuts:[Su("CtrlOrCmd+X")]}),P(Q4,{label:C0("labels.copy"),shortcuts:[Su("CtrlOrCmd+C")]}),P(Q4,{label:C0("labels.paste"),shortcuts:[Su("CtrlOrCmd+V")]}),P(Q4,{label:C0("labels.pasteAsPlaintext"),shortcuts:[Su("CtrlOrCmd+Shift+V")]}),P(Q4,{label:C0("labels.selectAll"),shortcuts:[Su("CtrlOrCmd+A")]}),P(Q4,{label:C0("labels.multiSelect"),shortcuts:[Su(`Shift+${C0("helpDialog.click")}`)]}),P(Q4,{label:C0("helpDialog.deepSelect"),shortcuts:[Su(`CtrlOrCmd+${C0("helpDialog.click")}`)]}),P(Q4,{label:C0("helpDialog.deepBoxSelect"),shortcuts:[Su(`CtrlOrCmd+${C0("helpDialog.drag")}`)]}),($n||pq)&&P(Q4,{label:C0("labels.copyAsPng"),shortcuts:[Su("Shift+Alt+C")]}),P(Q4,{label:C0("labels.copyStyles"),shortcuts:[Su("CtrlOrCmd+Alt+C")]}),P(Q4,{label:C0("labels.pasteStyles"),shortcuts:[Su("CtrlOrCmd+Alt+V")]}),P(Q4,{label:C0("labels.sendToBack"),shortcuts:[bD?Su("CtrlOrCmd+Alt+["):Su("CtrlOrCmd+Shift+[")]}),P(Q4,{label:C0("labels.bringToFront"),shortcuts:[bD?Su("CtrlOrCmd+Alt+]"):Su("CtrlOrCmd+Shift+]")]}),P(Q4,{label:C0("labels.sendBackward"),shortcuts:[Su("CtrlOrCmd+[")]}),P(Q4,{label:C0("labels.bringForward"),shortcuts:[Su("CtrlOrCmd+]")]}),P(Q4,{label:C0("labels.alignTop"),shortcuts:[Su("CtrlOrCmd+Shift+Up")]}),P(Q4,{label:C0("labels.alignBottom"),shortcuts:[Su("CtrlOrCmd+Shift+Down")]}),P(Q4,{label:C0("labels.alignLeft"),shortcuts:[Su("CtrlOrCmd+Shift+Left")]}),P(Q4,{label:C0("labels.alignRight"),shortcuts:[Su("CtrlOrCmd+Shift+Right")]}),P(Q4,{label:C0("labels.duplicateSelection"),shortcuts:[Su("CtrlOrCmd+D"),Su(`Alt+${C0("helpDialog.drag")}`)]}),P(Q4,{label:C0("helpDialog.toggleElementLock"),shortcuts:[Su("CtrlOrCmd+Shift+L")]}),P(Q4,{label:C0("buttons.undo"),shortcuts:[Su("CtrlOrCmd+Z")]}),P(Q4,{label:C0("buttons.redo"),shortcuts:Sk0?[Su("CtrlOrCmd+Y"),Su("CtrlOrCmd+Shift+Z")]:[Su("CtrlOrCmd+Shift+Z")]}),P(Q4,{label:C0("labels.group"),shortcuts:[Su("CtrlOrCmd+G")]}),P(Q4,{label:C0("labels.ungroup"),shortcuts:[Su("CtrlOrCmd+Shift+G")]}),P(Q4,{label:C0("labels.flipHorizontal"),shortcuts:[Su("Shift+H")]}),P(Q4,{label:C0("labels.flipVertical"),shortcuts:[Su("Shift+V")]}),P(Q4,{label:C0("labels.showStroke"),shortcuts:[Su("S")]}),P(Q4,{label:C0("labels.showBackground"),shortcuts:[Su("G")]}),P(Q4,{label:C0("labels.showFonts"),shortcuts:[Su("Shift+F")]}),P(Q4,{label:C0("labels.decreaseFontSize"),shortcuts:[Su("CtrlOrCmd+Shift+<")]}),P(Q4,{label:C0("labels.increaseFontSize"),shortcuts:[Su("CtrlOrCmd+Shift+>")]})]})]})]})})},qb3=4,Xb3=8,xb3=({shouldWrap:u,children:B,username:E})=>u?P(KQ,{label:E||"Unknown user",children:B}):P(tu,{children:B}),Yw0=({actionManager:u,collaborator:B,socketId:E,withName:A=!1,shouldWrapWithTooltip:C=!1,isBeingFollowed:D})=>{let F={socketId:E,collaborator:B,withName:A,isBeingFollowed:D},U=u.renderAction("goToCollaborator",F);return P(xb3,{username:B.username,shouldWrap:C,children:U},E)},vb3=["avatarUrl","id","socketId","username","isInCall","isSpeaking","isMuted"],Gtu=MQ.default.memo(({className:u,mobile:B,collaborators:E,userToFollow:A})=>{let C=_8(),D=new Map;E.forEach((Z,J)=>{let w=Z.id||J;D.set(w,{...Z,socketId:J})});let F=Array.from(D.values()).filter((Z)=>Z.username?.trim()),[U,z]=MQ.default.useState(""),k=F.filter((Z)=>Z.username?.toLowerCase().includes(U)),f=MQ.default.useRef(null);MQ.useLayoutEffect(()=>{if(f.current){let Z=(w)=>{let K=Math.max(1,Math.min(8,Math.floor(w/38)));b(K)};if(Z(f.current.clientWidth),!a_)return;let J=new ResizeObserver((w)=>{for(let K of w){let{width:Q}=K.contentRect;Z(Q)}});return J.observe(f.current),()=>{J.disconnect()}}},[]);let[l,b]=MQ.default.useState(qb3),M=F.slice(0,l-1).map((Z)=>Yw0({actionManager:C,collaborator:Z,socketId:Z.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:Z.socketId===A}));return B?P("div",{className:Yu("UserList UserList_mobile",u),children:F.map((Z)=>Yw0({actionManager:C,collaborator:Z,socketId:Z.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:Z.socketId===A}))}):P("div",{className:"UserList__wrapper",ref:f,children:l0("div",{className:Yu("UserList",u),style:{"--max-avatars":l},children:[M,F.length>l-1&&l0(gM,{children:[l0(_M,{className:"UserList__more",children:["+",F.length-l+1]}),P(Fx,{style:{zIndex:2,width:"15rem",textAlign:"left"},align:"end",sideOffset:10,children:l0(cD,{padding:2,children:[F.length>=Xb3&&P(zou,{placeholder:C0("quickSearch.placeholder"),onChange:z}),P(fou,{className:"dropdown-menu UserList__collaborators",placeholder:C0("userList.empty"),children:k.length>0?[P("div",{className:"hint",children:C0("userList.hint.text")}),k.map((Z)=>Yw0({actionManager:C,collaborator:Z,socketId:Z.socketId,withName:!0,isBeingFollowed:Z.socketId===A}))]:[]}),P(sd,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})]})]})})},(u,B)=>{if(u.collaborators.size!==B.collaborators.size||u.mobile!==B.mobile||u.className!==B.className||u.userToFollow!==B.userToFollow)return!1;let E=B.collaborators.keys();for(let[A,C]of u.collaborators){let D=B.collaborators.get(A);if(!D||A!==E.next().value||!h5(C,D,vb3))return!1}return!0}),ksu=({children:u,color:B})=>P("div",{className:"Card",style:{"--card-color":B==="primary"?"var(--color-primary)":_6[B][7],"--card-color-darker":B==="primary"?"var(--color-primary-darker)":_6[B][8],"--card-color-darkest":B==="primary"?"var(--color-primary-darkest)":_6[B][9]},children:u}),Sb3=({elements:u,appState:B,setAppState:E,files:A,actionManager:C,exportOpts:D,canvas:F,onCloseRequest:U})=>{let{onExportToBackend:z}=D;return P("div",{className:"ExportDialog ExportDialog--json",children:l0("div",{className:"ExportDialog-cards",children:[D.saveFileToDisk&&l0(ksu,{color:"lime",children:[P("div",{className:"Card-icon",children:Qfu}),P("h2",{children:C0("exportDialog.disk_title")}),l0("div",{className:"Card-details",children:[C0("exportDialog.disk_details"),!rk&&C.renderAction("changeProjectName")]}),P(A1,{className:"Card-button",type:"button",title:C0("exportDialog.disk_button"),"aria-label":C0("exportDialog.disk_button"),showAriaLabel:!0,onClick:()=>{C.executeAction(Xou,"ui")}})]}),z&&l0(ksu,{color:"pink",children:[P("div",{className:"Card-icon",children:En}),P("h2",{children:C0("exportDialog.link_title")}),P("div",{className:"Card-details",children:C0("exportDialog.link_details")}),P(A1,{className:"Card-button",type:"button",title:C0("exportDialog.link_button"),"aria-label":C0("exportDialog.link_button"),showAriaLabel:!0,onClick:async()=>{try{G6("export","link",`ui (${nku()})`),await z(u,B,A),U()}catch(k){E({errorMessage:k.message})}}})]}),D.renderCustomUI&&D.renderCustomUI(u,B,A,F)]})})},Wb3=({elements:u,appState:B,files:E,actionManager:A,exportOpts:C,canvas:D,setAppState:F})=>{let U=Htu.default.useCallback(()=>{F({openDialog:null})},[F]);return P(tu,{children:B.openDialog?.name==="jsonExport"&&P(nD,{onCloseRequest:U,title:C0("buttons.export"),children:P(Sb3,{elements:u,appState:B,setAppState:F,files:E,actionManager:A,onCloseRequest:U,exportOpts:C,canvas:D})})})},Yb3=(u)=>P("button",{className:"help-icon",onClick:u.onClick,type:"button",title:`${C0("helpDialog.title")} — ?`,"aria-label":C0("helpDialog.title"),children:Bn}),Ltu=({appState:u,actionManager:B,showExitZenModeBtn:E,renderWelcomeScreen:A})=>{let{FooterCenterTunnel:C,WelcomeScreenHelpHintTunnel:D}=dB(),F=K5(),U=!u.viewModeEnabled&&u.multiElement&&F.isTouchScreen;return l0("footer",{role:"contentinfo",className:"layer-ui__wrapper__footer App-menu App-menu_bottom",children:[P("div",{className:Yu("layer-ui__wrapper__footer-left zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":u.zenModeEnabled}),children:P(tA.Col,{gap:2,children:l0(GP,{heading:"canvasActions",children:[P(Il3,{renderAction:B.renderAction,zoom:u.zoom}),!u.viewModeEnabled&&P(Pl3,{renderAction:B.renderAction,className:Yu("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":u.zenModeEnabled})}),U&&P(Nl3,{renderAction:B.renderAction,className:Yu("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":u.zenModeEnabled})})]})})}),P(C.Out,{}),P("div",{className:Yu("layer-ui__wrapper__footer-right zen-mode-transition",{"transition-right":u.zenModeEnabled}),children:l0("div",{style:{position:"relative"},children:[A&&P(D.Out,{}),P(Yb3,{onClick:()=>B.executeAction(lK0)})]})}),P(jl3,{actionManager:B,showExitZenModeBtn:E})]})},Rb3=Ltu;Ltu.displayName="Footer";var Xtu=qtu.default.createContext({}),vtu=({children:u,className:B})=>{let E=K5(),A=xtu.useContext(Xtu),C=!!(E.editor.canFitSidebar&&A.shouldRenderDockButton);return l0("div",{className:Yu("sidebar__header",B),"data-testid":"sidebar-header",children:[u,l0("div",{className:"sidebar__header__buttons",children:[C&&P(KQ,{label:C0("labels.sidebarLock"),children:P(QQ,{onSelect:()=>A.onDock?.(!A.docked),selected:!!A.docked,className:"sidebar__dock","data-testid":"sidebar-dock","aria-label":C0("labels.sidebarLock"),children:Cfu})}),P(QQ,{"data-testid":"sidebar-close",className:"sidebar__close",onSelect:A.onCloseRequest,"aria-label":C0("buttons.close"),children:OK})]})]})};vtu.displayName="SidebarHeader";var Stu=({name:u,tab:B,icon:E,title:A,children:C,onToggle:D,className:F,style:U})=>{let z=V2(),k=X7();return l0("label",{title:A,className:"sidebar-trigger__label-element",children:[P("input",{className:"ToolIcon_type_checkbox",type:"checkbox",onChange:(f)=>{document.querySelector(".layer-ui__wrapper")?.classList.remove("animate");let l=f.target.checked;z({openSidebar:l?{name:u,tab:B}:null}),D?.(l)},checked:k.openSidebar?.name===u,"aria-label":A,"aria-keyshortcuts":"0"}),l0("div",{className:Yu("sidebar-trigger",F),style:U,children:[E&&P("div",{children:E}),C&&P("div",{className:"sidebar-trigger__label",children:C})]})]})};Stu.displayName="SidebarTrigger";var Wtu=({children:u,...B})=>P(Es,{className:"sidebar-triggers",...B,children:u});Wtu.displayName="SidebarTabTriggers";var Ytu=({children:u,tab:B,onSelect:E,...A})=>P(As,{value:B,asChild:!0,onSelect:E,children:P("button",{type:"button",className:"excalidraw-button sidebar-tab-trigger",...A,children:u})});Ytu.displayName="SidebarTabTrigger";var Rtu=({children:u,...B})=>{let E=X7(),A=V2();if(!E.openSidebar)return null;let{name:C}=E.openSidebar;return P(Bs,{className:"sidebar-tabs-root",value:E.openSidebar.tab,onValueChange:(D)=>A((F)=>({...F,openSidebar:{...F.openSidebar,name:C,tab:D}})),...B,children:u})};Rtu.displayName="SidebarTabs";var Ttu=({tab:u,children:B,...E})=>P(Cs,{...E,value:u,"data-testid":u,children:B});Ttu.displayName="SidebarTab";var wK0=I2(!1),Itu=a2.forwardRef(({name:u,children:B,onDock:E,docked:A,className:C,...D},F)=>{Z3.DEV&&E&&A==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 U=V2(),z=xs(wK0);a2.useLayoutEffect(()=>(z(!!A),()=>{z(!1)}),[z,A]);let k=a2.useRef({});k.current.onCloseRequest=()=>{U({openSidebar:null})},k.current.onDock=(M)=>E?.(M),k.current=JO(k.current,{docked:A,shouldRenderDockButton:!!E&&A!=null});let f=a2.useRef(null);a2.useImperativeHandle(F,()=>f.current);let l=K5(),b=a2.useCallback(()=>{document.querySelector(".Dialog")||U({openSidebar:null})},[U]);return DK0(f,a2.useCallback((M)=>{M.target.closest(".sidebar-trigger")||(!A||!l.editor.canFitSidebar)&&b()},[b,A,l.editor.canFitSidebar])),a2.useEffect(()=>{let M=(Z)=>{Z.key===y0.ESCAPE&&(!A||!l.editor.canFitSidebar)&&b()};return document.addEventListener("keydown",M),()=>{document.removeEventListener("keydown",M)}},[b,A,l.editor.canFitSidebar]),P(cD,{...D,className:Yu("sidebar",{"sidebar--docked":A},C),ref:f,children:P(Xtu.Provider,{value:k.current,children:B})})});Itu.displayName="SidebarInner";var pU=Object.assign(a2.forwardRef((u,B)=>{let E=X7(),{onStateChange:A}=u,C=a2.useRef(E.openSidebar);a2.useEffect(()=>{(!E.openSidebar&&C?.current?.name===u.name||E.openSidebar?.name===u.name&&C?.current?.name!==u.name||C.current?.name===u.name)&&E.openSidebar!==C.current&&A?.(E.openSidebar?.name!==u.name?null:E.openSidebar),C.current=E.openSidebar},[E.openSidebar,A,u.name]);let[D,F]=a2.useState(!1);return a2.useLayoutEffect(()=>(F(!0),()=>F(!1)),[]),D&&E.openSidebar?.name===u.name?Otu.createElement(Itu,{...u,ref:B,key:u.name}):null}),{Header:vtu,TabTriggers:Wtu,TabTrigger:Ytu,Tabs:Rtu,Tab:Ttu,Trigger:Stu});pU.displayName="Sidebar";var Ptu={};hU0(Ptu,{ChangeCanvasBackground:()=>ctu,ClearCanvas:()=>$tu,CommandPalette:()=>htu,Export:()=>gtu,Help:()=>rtu,LiveCollaborationTrigger:()=>ntu,LoadScene:()=>itu,SaveAsImage:()=>Vtu,SaveToActiveFile:()=>atu,SearchMenu:()=>mtu,Socials:()=>_tu,ToggleTheme:()=>ytu});var jtu=I2({active:!1});async function Tb3({title:u,description:B,actionLabel:E,color:A}){return new Promise((C)=>{mD.set(jtu,{active:!0,onConfirm:()=>C(!0),onClose:()=>C(!1),onReject:()=>C(!1),title:u,description:B,actionLabel:E,color:A})})}var Ntu=({value:u,shortcut:B,onChange:E,choices:A,children:C,name:D})=>{let F=K5();return l0(tu,{children:[l0("div",{className:"dropdown-menu-item-base dropdown-menu-item-bare",children:[P("label",{className:"dropdown-menu-item__text",htmlFor:D,children:C}),P(ftu,{name:D,value:u,onChange:E,choices:A})]}),B&&!F.editor.isMobile&&P("div",{className:"dropdown-menu-item__shortcut dropdown-menu-item__shortcut--orphaned",children:B})]})};Ntu.displayName="DropdownMenuItemContentRadio";var Ob3=Ntu,itu=()=>{let{t:u}=AB(),B=_8(),E=es();return B.isActionEnabled(yw0)?P(BC,{icon:An,onSelect:async()=>{(!E.length||await Tb3({title:u("overwriteConfirm.modal.loadFromFile.title"),actionLabel:u("overwriteConfirm.modal.loadFromFile.button"),color:"warning",description:P(sU,{i18nKey:"overwriteConfirm.modal.loadFromFile.description",bold:(A)=>P("strong",{children:A}),br:()=>P("br",{})})}))&&B.executeAction(yw0)},"data-testid":"load-button",shortcut:EB("loadScene"),"aria-label":u("buttons.load"),children:u("buttons.load")}):null};itu.displayName="LoadScene";var atu=()=>{let{t:u}=AB(),B=_8();return B.isActionEnabled(adu)?P(BC,{shortcut:EB("saveScene"),"data-testid":"save-button",onSelect:()=>B.executeAction(adu),icon:Jfu,"aria-label":`${u("buttons.save")}`,children:`${u("buttons.save")}`}):null};atu.displayName="SaveToActiveFile";var Vtu=()=>{let u=V2(),{t:B}=AB();return P(BC,{icon:Df0,"data-testid":"image-export-button",onSelect:()=>u({openDialog:{name:"imageExport"}}),shortcut:EB("imageExport"),"aria-label":B("buttons.exportImage"),children:B("buttons.exportImage")})};Vtu.displayName="SaveAsImage";var htu=(u)=>{let B=V2(),{t:E}=AB();return P(BC,{icon:Rf0,"data-testid":"command-palette-button",onSelect:()=>{G6("command_palette","open","menu"),B({openDialog:{name:"commandPalette"}})},shortcut:EB("commandPalette"),"aria-label":E("commandPalette.title"),className:u?.className,children:E("commandPalette.title")})};htu.displayName="CommandPalette";var mtu=(u)=>{let{t:B}=AB(),E=_8();return P(BC,{icon:ZM,"data-testid":"search-menu-button",onSelect:()=>{E.executeAction(Ctu)},shortcut:EB("searchMenu"),"aria-label":B("search.title"),className:u?.className,children:B("search.title")})};mtu.displayName="SearchMenu";var rtu=()=>{let{t:u}=AB(),B=_8();return P(BC,{"data-testid":"help-menu-item",icon:Bn,onSelect:()=>B.executeAction(lK0),shortcut:"?","aria-label":u("helpDialog.title"),children:u("helpDialog.title")})};rtu.displayName="Help";var $tu=()=>{let{t:u}=AB(),B=xs(_s);return _8().isActionEnabled(lP)?P(BC,{icon:MM,onSelect:()=>B("clearCanvas"),"data-testid":"clear-canvas-button","aria-label":u("buttons.clearReset"),children:u("buttons.clearReset")}):null};$tu.displayName="ClearCanvas";var ytu=(u)=>{let{t:B}=AB(),E=X7(),A=_8(),C=EB("toggleTheme");return A.isActionEnabled(Ks)?u?.allowSystemTheme?P(Ob3,{name:"theme",value:u.theme,onChange:(D)=>u.onSelect(D),choices:[{value:_3.LIGHT,label:un,ariaLabel:`${B("buttons.lightMode")} - ${C}`},{value:_3.DARK,label:e_,ariaLabel:`${B("buttons.darkMode")} - ${C}`},{value:"system",label:Rlu,ariaLabel:B("buttons.systemMode")}],children:B("labels.theme")}):P(BC,{onSelect:(D)=>{if(D.preventDefault(),u?.onSelect)u.onSelect(E.theme===_3.DARK?_3.LIGHT:_3.DARK);else return A.executeAction(Ks)},icon:E.theme===_3.DARK?un:e_,"data-testid":"toggle-dark-mode",shortcut:C,"aria-label":E.theme===_3.DARK?B("buttons.lightMode"):B("buttons.darkMode"),children:E.theme===_3.DARK?B("buttons.lightMode"):B("buttons.darkMode")}):null};ytu.displayName="ToggleTheme";var ctu=()=>{let{t:u}=AB(),B=X7(),E=_8(),A=vP();return B.viewModeEnabled||!A.UIOptions.canvasActions.changeViewBackgroundColor?null:l0("div",{style:{marginTop:"0.5rem"},children:[P("div",{"data-testid":"canvas-background-label",style:{fontSize:".75rem",marginBottom:".5rem"},children:u("labels.canvasBackground")}),P("div",{style:{padding:"0 0.625rem"},children:E.renderAction("changeViewBackgroundColor")})]})};ctu.displayName="ChangeCanvasBackground";var gtu=()=>{let{t:u}=AB(),B=V2();return P(BC,{icon:LO,onSelect:()=>{B({openDialog:{name:"jsonExport"}})},"data-testid":"json-export-button","aria-label":u("buttons.export"),children:u("buttons.export")})};gtu.displayName="Export";var _tu=()=>{let{t:u}=AB();return l0(tu,{children:[P(Zs,{icon:Cf0,href:"https://github.com/excalidraw/excalidraw","aria-label":"GitHub",children:"GitHub"}),P(Zs,{icon:Mfu,href:"https://x.com/excalidraw","aria-label":"X",children:u("labels.followUs")}),P(Zs,{icon:bfu,href:"https://discord.gg/UexuTaE","aria-label":"Discord",children:u("labels.discordChat")})]})};_tu.displayName="Socials";var ntu=({onSelect:u,isCollaborating:B})=>{let{t:E}=AB();return P(BC,{"data-testid":"collab-button",icon:Qf0,className:Yu({"active-collab":B}),onSelect:u,children:E("labels.liveCollaboration")})};ntu.displayName="LiveCollaborationTrigger";var XP=(u,B)=>{let E=I2(0),A=(C)=>{let{tunnelsJotai:{useAtom:D}}=dB(),[,F]=D(E),U=ss.useRef({preferHost:!1,counter:0});return ss.useLayoutEffect(()=>{let z=U.current;return F((k)=>{let f=k+1;return z.counter=f,f}),()=>{F((k)=>{let f=k-1;return z.counter=f,f||(z.preferHost=!1),f})}},[F]),C.__fallback||(U.current.preferHost=!0),!U.current.counter&&C.__fallback&&U.current.preferHost||U.current.counter>1&&C.__fallback?null:P(B,{...C})};return A.displayName=u,A},Ib3=Object.assign(XP("MainMenu",({children:u,onSelect:B})=>{let{MainMenuTunnel:E}=dB(),A=K5(),C=X7(),D=V2(),F=A.editor.isMobile?void 0:()=>D({openMenu:null});return P(E.In,{children:l0(v6,{open:C.openMenu==="canvas",children:[P(v6.Trigger,{onToggle:()=>{D({openMenu:C.openMenu==="canvas"?null:"canvas"})},"data-testid":"main-menu-trigger",className:"main-menu-trigger",children:Ef0}),l0(v6.Content,{onClickOutside:F,onSelect:wO(B,()=>{D({openMenu:null})}),children:[u,A.editor.isMobile&&C.collaborators.size>0&&l0("fieldset",{className:"UserList-Wrapper",children:[P("legend",{children:C0("labels.collaborators")}),P(Gtu,{mobile:!0,collaborators:C.collaborators,userToFollow:C.userToFollow?.socketId||null})]})]})]})})}),{Trigger:v6.Trigger,Item:v6.Item,ItemLink:v6.ItemLink,ItemCustom:v6.ItemCustom,Group:v6.Group,Separator:v6.Separator,DefaultItems:Ptu}),c8=Ib3,KK0=({title:u,children:B,actionLabel:E,onClick:A})=>l0("div",{className:"OverwriteConfirm__Actions__Action",children:[P("h4",{children:u}),P("div",{className:"OverwriteConfirm__Actions__Action__content",children:B}),P(MP,{variant:"outlined",color:"muted",label:E,size:"large",fullWidth:!0,onClick:A})]}),Pb3=()=>{let{t:u}=AB(),B=_8(),E=V2();return P(KK0,{title:u("overwriteConfirm.action.exportToImage.title"),actionLabel:u("overwriteConfirm.action.exportToImage.button"),onClick:()=>{B.executeAction(qou,"ui",!0),E({openDialog:{name:"imageExport"}})},children:u("overwriteConfirm.action.exportToImage.description")})},jb3=()=>{let{t:u}=AB(),B=_8();return P(KK0,{title:u("overwriteConfirm.action.saveToDisk.title"),actionLabel:u("overwriteConfirm.action.saveToDisk.button"),onClick:()=>{B.executeAction(Xou,"ui")},children:u("overwriteConfirm.action.saveToDisk.description")})},fsu=Object.assign(({children:u})=>P("div",{className:"OverwriteConfirm__Actions",children:u}),{ExportToImage:Pb3,SaveToDisk:jb3}),Rw0=Object.assign(XP("OverwriteConfirmDialog",({children:u})=>{let{OverwriteConfirmDialogTunnel:B}=dB(),[E,A]=P9(jtu);if(!E.active)return null;let C=()=>{E.onClose(),A((F)=>({...F,active:!1}))},D=()=>{E.onConfirm(),A((F)=>({...F,active:!1}))};return P(B.In,{children:P(nD,{onCloseRequest:C,title:!1,size:916,children:l0("div",{className:"OverwriteConfirm",children:[P("h3",{children:E.title}),l0("div",{className:`OverwriteConfirm__Description OverwriteConfirm__Description--color-${E.color}`,children:[P("div",{className:"OverwriteConfirm__Description__icon",children:llu}),P("div",{children:E.description}),P("div",{className:"OverwriteConfirm__Description__spacer"}),P(MP,{color:E.color,size:"large",label:E.actionLabel,onClick:D})]}),P(fsu,{children:u})]})})})}),{Actions:fsu,Action:KK0}),Nb3=I2(""),dtu=I2(null),ib3=350,ab3=()=>{let u=uz(),B=V2(),E=q7.useRef(null),[A,C]=P9(Nb3),D=A.trim(),[F,U]=q7.useState(!1),[z,k]=q7.useState({nonce:null,items:[]}),f=q7.useRef(null),l=q7.useRef(void 0),[b,M]=P9(dtu),Z=u.scene.getNonDeletedElementsMap();q7.useEffect(()=>{F||(D!==f.current||u.scene.getSceneNonce()!==l.current)&&(f.current=null,lsu(D,u,(G,L)=>{k({nonce:KD(),items:G}),f.current=D,l.current=u.scene.getSceneNonce(),B({searchMatches:G.map((H)=>({id:H.textElement.id,focus:!1,matchedLines:H.matchedLines}))})}))},[F,D,Z,u,B,M,l]);let J=()=>{z.items.length>0&&M((G)=>G===null?0:(G+1)%z.items.length)},w=()=>{z.items.length>0&&M((G)=>G===null?0:G-1<0?z.items.length-1:G-1)};q7.useEffect(()=>{B((G)=>({searchMatches:G.searchMatches.map((L,H)=>H===b?{...L,focus:!0}:{...L,focus:!1})}))},[b,B]),q7.useEffect(()=>{if(z.items.length>0&&b!==null){let G=z.items[b];if(G){let L=u.state.zoom.value,H=N8({text:G.searchQuery,x:G.textElement.x+(G.matchedLines[0]?.offsetX??0),y:G.textElement.y+(G.matchedLines[0]?.offsetY??0),width:G.matchedLines[0]?.width,height:G.matchedLines[0]?.height,fontSize:G.textElement.fontSize,fontFamily:G.textElement.fontFamily}),q=14,x=G.textElement.fontSize,v=x*L<q;if(!yO([H],u.canvas.width/window.devicePixelRatio,u.canvas.height/window.devicePixelRatio,{offsetLeft:u.state.offsetLeft,offsetTop:u.state.offsetTop,scrollX:u.state.scrollX,scrollY:u.state.scrollY,zoom:u.state.zoom},u.scene.getNonDeletedElementsMap(),u.getEditorUIOffsets())||v){let W;v?x>=q?W={fitToContent:!0}:W={fitToViewport:!0,maxZoom:JD(q/x,1)}:W={fitToContent:!0},u.scrollToContent(H,{animate:!0,duration:300,...W,canvasOffsets:u.getEditorUIOffsets()})}}}},[b,z,u]),q7.useEffect(()=>()=>{M(null),f.current=null,l.current=void 0,B({searchMatches:[]}),U(!1)},[B,M]);let K=Os({goToNextItem:J,goToPreviousItem:w,searchMatches:z});q7.useEffect(()=>{return d6(window,"keydown",(L)=>{if(L.key===y0.ESCAPE&&!u.state.openDialog&&!u.state.openPopup){L.preventDefault(),L.stopPropagation(),B({openSidebar:null});return}L[y0.CTRL_OR_CMD]&&L.key===y0.F&&(L.preventDefault(),L.stopPropagation(),E.current?.matches(":focus")?B({openSidebar:null}):(u.state.openDialog&&B({openDialog:null}),E.current?.focus(),E.current?.select())),L.target instanceof HTMLElement&&L.target.closest(".layer-ui__search")&&K.searchMatches.items.length&&(L.key===y0.ENTER&&(L.stopPropagation(),K.goToNextItem()),L.key===y0.ARROW_UP?(L.stopPropagation(),K.goToPreviousItem()):L.key===y0.ARROW_DOWN&&(L.stopPropagation(),K.goToNextItem()))},{capture:!0,passive:!1})},[B,K,u]);let Q=`${z.items.length} ${z.items.length===1?C0("search.singleResult"):C0("search.multipleResults")}`;return l0("div",{className:"layer-ui__search",children:[P("div",{className:"layer-ui__search-header",children:P(JK0,{className:qK.SEARCH_MENU_INPUT_WRAPPER,value:A,ref:E,placeholder:C0("search.placeholder"),icon:ZM,onChange:(G)=>{C(G),U(!0);let L=G.trim();lsu(L,u,(H,q)=>{k({nonce:KD(),items:H}),M(q),f.current=L,l.current=u.scene.getSceneNonce(),B({searchMatches:H.map((x)=>({id:x.textElement.id,focus:!1,matchedLines:x.matchedLines}))}),U(!1)})},selectOnRender:!0})}),l0("div",{className:"layer-ui__search-count",children:[z.items.length>0&&l0(tu,{children:[b!==null&&b>-1?l0("div",{children:[b+1," / ",Q]}):P("div",{children:Q}),l0("div",{className:"result-nav",children:[P(QQ,{onSelect:()=>{J()},className:"result-nav-btn",children:Of0}),P(QQ,{onSelect:()=>{w()},className:"result-nav-btn",children:alu})]})]}),z.items.length===0&&D&&f.current&&P("div",{style:{margin:"1rem auto"},children:C0("search.noMatch")})]}),P(rb3,{matches:z,onItemClick:M,focusIndex:b,searchQuery:D})]})},Vb3=(u)=>{let B=[u.preview.moreBefore?"...":"",u.preview.previewText.slice(0,u.preview.indexInSearchQuery),u.preview.previewText.slice(u.preview.indexInSearchQuery,u.preview.indexInSearchQuery+u.searchQuery.length),u.preview.previewText.slice(u.preview.indexInSearchQuery+u.searchQuery.length),u.preview.moreAfter?"...":""];return P("div",{tabIndex:-1,className:Yu("layer-ui__result-item",{active:u.highlighted}),onClick:u.onClick,ref:(E)=>{u.highlighted&&E?.scrollIntoView({behavior:"auto",block:"nearest"})},children:P("div",{className:"preview-text",children:B.flatMap((E,A)=>P(q7.Fragment,{children:A===2?P("b",{children:E}):E},A))})})},hb3=(u)=>P("div",{className:"layer-ui__search-result-container",children:u.matches.items.map((B,E)=>P(Vb3,{searchQuery:u.searchQuery,preview:B.preview,highlighted:E===u.focusIndex,onClick:()=>u.onItemClick(E)},B.textElement.id+B.index))}),mb3=(u,B)=>u.matches.nonce===B.matches.nonce&&u.focusIndex===B.focusIndex,rb3=q7.memo(hb3,mb3),$b3=(u,B,E)=>{let A=u.slice(0,B),C=A.split(/\s+/),D=A.endsWith(" "),F=C.length-2-1-(D?0:1),U=C.slice(F<=0?0:F).join(" ")+(D?" ":""),z=20;U=U.length>z?U.slice(-z):U;let k=u.slice(B+E.length),f=k.split(/\s+/),l=!k.startsWith(" "),b=l?6:5,M=(l?"":" ")+f.slice(0,b).join(" ");return{indexInSearchQuery:U.length,previewText:U+E+M,moreBefore:F>0,moreAfter:f.length>b}},yb3=(u,B)=>{let E=u.split(`
`),A=[],C=0;for(let D=0;D<E.length;D++){let F=E[D],U=E[D+1];if(U){let z=B.indexOf(U,C);if(z>F.length+C){let k=z-(F.length+C);for(;k>0;)F+=" ",k--}}A.push(F),C=C+F.length}return A.join(`
`)},cb3=(u,B,E)=>{let A=yb3(u.text,u.originalText).split(`
`),C=[],D=0,F=0;for(let f of A){let l=D,b=l+f.length-1;C.push({line:f,startIndex:l,endIndex:b,lineNumber:F}),D=b+1,F++}let U=E,z=u.originalText.slice(E,E+B.length),k=[];for(let f of C){if(z==="")break;if(U>=f.startIndex&&U<=f.endIndex){let l=f.endIndex+1-U,b=f.line.slice(0,U-f.startIndex),M=z.slice(0,l);z=z.slice(l);let Z=Q7(b,e1(u),u.lineHeight);if(b===""&&(Z.width=0),u.textAlign!=="left"&&f.line.length>0){let G=Q7(f.line,e1(u),u.lineHeight),L=u.textAlign==="center"?(u.width-G.width)/2:u.width-G.width;Z.width+=L}let{width:J,height:w}=Q7(M,e1(u),u.lineHeight),K=Z.width,Q=f.lineNumber*Z.height;k.push({offsetX:K,offsetY:Q,width:J,height:w}),U+=l}}return k},gb3=(u)=>u.replace(/[.*+?^${}()|[\]\\-]/g,"\\$&"),lsu=ptu.default((u,B,E)=>{if(!u||u===""){E([],null);return}let A=B.scene.getNonDeletedElements().filter((z)=>l4(z));A.sort((z,k)=>z.y-k.y);let C=[],D=new RegExp(gb3(u),"gi");for(let z of A){let k=null,f=z.originalText;for(;(k=D.exec(f))!==null;){let l=$b3(f,k.index,u),b=cb3(z,u,k.index);b.length>0&&C.push({textElement:z,searchQuery:u,preview:l,index:k.index,matchedLines:b})}}let F=new Set(B.visibleElements.map((z)=>z.id)),U=C.findIndex((z)=>F.has(z.textElement.id))??null;E(C,U)},ib3),otu=XP("DefaultSidebarTrigger",(u)=>{let{DefaultSidebarTriggerTunnel:B}=dB();return P(B.In,{children:P(pU.Trigger,{...u,className:"default-sidebar-trigger",name:VA.name})})});otu.displayName="DefaultSidebarTrigger";var ttu=({children:u})=>{let{DefaultSidebarTabTriggersTunnel:B}=dB();return P(B.In,{children:u})};ttu.displayName="DefaultTabTriggers";var bsu=Object.assign(XP("DefaultSidebar",({children:u,className:B,onDock:E,docked:A,...C})=>{let D=X7(),F=V2(),{DefaultSidebarTabTriggersTunnel:U}=dB(),z=D.openSidebar?.tab===vK;return stu.createElement(pU,{...C,name:"default",key:"default",className:Yu("default-sidebar",B),docked:z||(A??D.defaultSidebarDockedPreference),onDock:z||E===!1||!E&&A!=null?void 0:wO(E,(k)=>{F({defaultSidebarDockedPreference:k})})},l0(pU.Tabs,{children:[P(pU.Header,{children:l0(pU.TabTriggers,{children:[P(pU.TabTrigger,{tab:vK,children:ZM}),P(pU.TabTrigger,{tab:lO,children:s_}),P(U.Out,{})]})}),P(pU.Tab,{tab:lO,children:P(Gl3,{})}),P(pU.Tab,{tab:vK,children:P(ab3,{})}),u]}))}),{Trigger:otu,TabTriggers:ttu}),_b3="small",nb3=(u)=>l0("label",{className:Yu("ToolIcon ToolIcon__LaserPointer",`ToolIcon_size_${_b3}`,{"is-mobile":u.isMobile}),title:`${u.title}`,children:[P("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:u.name,onChange:u.onChange,checked:u.checked,"aria-label":u.title,"data-testid":"toolbar-LaserPointer"}),P("div",{className:"ToolIcon__icon",children:Wf0})]}),pb3=({canvasRef:u,setError:B})=>{let E=u.current;if(!E)return;let A=E.parentElement;A&&(A.style.background="",B(null),E.replaceChildren())},etu=async({canvasRef:u,mermaidToExcalidrawLib:B,mermaidDefinition:E,setError:A,data:C})=>{let D=u.current,F=D?.parentElement;if(!(!D||!F)){if(!E){pb3({canvasRef:u,setError:A});return}try{let U=await B.api,z;try{z=await U.parseMermaidToExcalidraw(E)}catch{z=await U.parseMermaidToExcalidraw(E.replace(/"/g,"'"))}let{elements:k,files:f={}}=z;A(null),C.current={elements:qP(k,{regenerateIds:!0}),files:f};let l=await yn({elements:C.current.elements,files:C.current.files,exportPadding:xK,maxWidthOrHeight:Math.max(F.offsetWidth,F.offsetHeight)*window.devicePixelRatio});try{await KX(l)}catch(b){throw b.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(C0("canvasError.canvasTooBig")):b}F.style.background="var(--default-bg-color)",D.replaceChildren(l)}catch(U){throw F.style.background="var(--default-bg-color)",E&&A(U),U}}},QK0=(u)=>{ZQ.set(sq.MERMAID_TO_EXCALIDRAW,u)},ueu=({app:u,data:B,text:E,shouldSaveMermaidDataToStorage:A})=>{let{elements:C,files:D}=B.current;C.length&&(u.addElementsFromPasteOrLibrary({elements:C,files:D,position:"center",fitToContent:!0}),u.setOpenDialog(null),A&&E&&QK0(E))},Beu=({children:u})=>P("div",{className:"ttd-dialog-panels",children:u}),Gs=({label:u,children:B,panelAction:E,panelActionDisabled:A=!1,onTextSubmitInProgess:C,renderTopRight:D,renderSubmitShortcut:F,renderBottomRight:U})=>l0("div",{className:"ttd-dialog-panel",children:[l0("div",{className:"ttd-dialog-panel__header",children:[P("label",{children:u}),D?.()]}),B,l0("div",{className:Yu("ttd-dialog-panel-button-container",{invisible:!E}),style:{display:"flex",alignItems:"center"},children:[l0(QQ,{className:"ttd-dialog-panel-button",onSelect:E?E.action:()=>{},disabled:A||C,children:[l0("div",{className:Yu({invisible:C}),children:[E?.label,E?.icon&&P("span",{children:E.icon})]}),C&&P(Zf,{})]}),!A&&!C&&F?.(),U?.()]})]}),Eeu=({input:u,placeholder:B,onChange:E,onKeyboardSubmit:A})=>{let C=HP.useRef(null),D=HP.useRef(A);return D.current=A,HP.useEffect(()=>{if(!D.current)return;let F=C.current;if(F){let U=(z)=>{z[y0.CTRL_OR_CMD]&&z.key===y0.ENTER&&(z.preventDefault(),D.current?.())};return F.addEventListener("keydown",U),()=>{F.removeEventListener("keydown",U)}}},[]),P("textarea",{className:"ttd-dialog-input",onChange:E,value:u,placeholder:B,autoFocus:!0,ref:C})},db3=({error:u})=>l0("div",{"data-testid":"ttd-dialog-output-error",className:"ttd-dialog-output-error",children:["Error! ",P("p",{children:u})]}),Aeu=({error:u,canvasRef:B,loaded:E})=>l0("div",{className:"ttd-dialog-output-wrapper",children:[u&&P(db3,{error:u.message}),E?P("div",{ref:B,style:{opacity:u?"0.15":1},className:"ttd-dialog-output-canvas-container"}):P(Zf,{size:"2rem"})]}),Ceu=()=>l0("div",{className:"ttd-dialog-submit-shortcut",children:[P("div",{className:"ttd-dialog-submit-shortcut__key",children:Su("CtrlOrCmd")}),P("div",{className:"ttd-dialog-submit-shortcut__key",children:Su("Enter")})]}),sb3=`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]`,Msu=YK(QK0,300),ob3=({mermaidToExcalidrawLib:u})=>{let[B,E]=_D.useState(()=>ZQ.get(sq.MERMAID_TO_EXCALIDRAW)||sb3),A=_D.useDeferredValue(B.trim()),[C,D]=_D.useState(null),F=_D.useRef(null),U=_D.useRef({elements:[],files:null}),z=uz();_D.useEffect(()=>{etu({canvasRef:F,data:U,mermaidToExcalidrawLib:u,setError:D,mermaidDefinition:A}).catch((f)=>{rk0()&&console.error("Failed to parse mermaid definition",f)}),Msu(A)},[A,u]),_D.useEffect(()=>()=>{Msu.flush()},[]);let k=()=>{ueu({app:z,data:U,text:B,shouldSaveMermaidDataToStorage:!0})};return l0(tu,{children:[P("div",{className:"ttd-dialog-desc",children:P(sU,{i18nKey:"mermaid.description",flowchartLink:(f)=>P("a",{href:"https://mermaid.js.org/syntax/flowchart.html",children:f}),sequenceLink:(f)=>P("a",{href:"https://mermaid.js.org/syntax/sequenceDiagram.html",children:f}),classLink:(f)=>P("a",{href:"https://mermaid.js.org/syntax/classDiagram.html",children:f})})}),l0(Beu,{children:[P(Gs,{label:C0("mermaid.syntax"),children:P(Eeu,{input:B,placeholder:"Write Mermaid diagram defintion here...",onChange:(f)=>E(f.target.value),onKeyboardSubmit:()=>{k()}})}),P(Gs,{label:C0("mermaid.preview"),panelAction:{action:()=>{k()},label:C0("mermaid.button"),icon:XO},renderSubmitShortcut:()=>P(Ceu,{}),children:P(Aeu,{canvasRef:F,loaded:u.loaded,error:C})})]})]})},tb3=ob3,Deu=(u)=>{let B=V2(),E=ow0.useRef(null),A=ow0.useRef(0);return P(Bs,{ref:E,className:"ttd-dialog-tabs-root",value:u.tab,onValueChange:(C)=>{if(!C)return;let D=E.current?.closest(".Modal__content");if(D){let F=D.offsetHeight||0;F>A.current&&(A.current=F,D.style.minHeight=`min(${A.current}px, 100%)`)}u.dialog==="ttd"&&yk0(["text-to-diagram","mermaid"],C)&&B({openDialog:{name:u.dialog,tab:C}})},children:u.children})};Deu.displayName="TTDDialogTabs";var eb3=Deu,Feu=({children:u,...B})=>P(Es,{className:"ttd-dialog-triggers",...B,children:u});Feu.displayName="TTDDialogTabTriggers";var tw0=({children:u,tab:B,onSelect:E,...A})=>P(As,{value:B,asChild:!0,onSelect:E,children:P("button",{type:"button",className:"ttd-dialog-tab-trigger",...A,children:u})});tw0.displayName="TTDDialogTabTrigger";var ew0=({tab:u,children:B,...E})=>P(Cs,{...E,value:u,children:B});ew0.displayName="TTDDialogTab";var Tw0=3,Zx=1000,uM3=I2(null),BM3=I2(null),EM3=(u)=>{let B=X7();return B.openDialog?.name!=="ttd"?null:P(AM3,{...u,tab:B.openDialog.tab})},AM3=XP("TTDDialogBase",({tab:u,...B})=>{let E=uz(),A=V2(),C=rD.useRef(null),[D,F]=P9(BM3),[U,z]=rD.useState(D?.prompt??""),k=U.trim(),f=(q)=>{z(q.target.value),F((x)=>({generatedResponse:x?.generatedResponse??null,prompt:q.target.value}))},[l,b]=rD.useState(!1),[M,Z]=P9(uM3),J=async()=>{if(k.length>Zx||k.length<Tw0||l||M?.rateLimitRemaining===0||"__fallback"in B){k.length<Tw0&&H(Error(`Prompt is too short (min ${Tw0} characters)`)),k.length>Zx&&H(Error(`Prompt is too long (max ${Zx} characters)`));return}try{b(!0),G6("ai","generate","ttd");let{generatedResponse:q,error:x,rateLimit:v,rateLimitRemaining:W}=await B.onTextSubmit(k);if(typeof q=="string"&&F((S)=>({generatedResponse:q,prompt:S?.prompt??null})),hq(v)&&hq(W)&&Z({rateLimit:v,rateLimitRemaining:W}),x){H(x);return}if(!q){H(Error("Generation failed"));return}try{await etu({canvasRef:C,data:G,mermaidToExcalidrawLib:K,setError:H,mermaidDefinition:q}),G6("ai","mermaid parse success","ttd")}catch(S){console.info(`%cTTD mermaid render errror: ${S.message}`,"color: red"),console.info(`>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
TTD mermaid definition render errror: ${S.message}`,"color: yellow"),G6("ai","mermaid parse failed","ttd"),H(Error("Generated an invalid diagram :(. You may also try a different prompt."))}}catch(q){let x=q.message;(!x||x==="Failed to fetch")&&(x="Request failed"),H(Error(x))}finally{b(!1)}},w=rD.useRef(J);w.current=J;let[K,Q]=rD.useState({loaded:!1,api:Promise.resolve().then(() => (Wg(),aU0))});rD.useEffect(()=>{(async()=>{await K.api,Q((q)=>({...q,loaded:!0}))})()},[K.api]);let G=rD.useRef({elements:[],files:null}),[L,H]=rD.useState(null);return P(nD,{className:"ttd-dialog",onCloseRequest:()=>{E.setOpenDialog(null)},size:1200,title:!1,...B,autofocus:!1,children:l0(eb3,{dialog:"ttd",tab:u,children:["__fallback"in B&&B.__fallback?P("p",{className:"dialog-mermaid-title",children:C0("mermaid.title")}):l0(Feu,{children:[P(tw0,{tab:"text-to-diagram",children:l0("div",{style:{display:"flex",alignItems:"center"},children:[C0("labels.textToDiagram"),P("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"})]})}),P(tw0,{tab:"mermaid",children:"Mermaid"})]}),P(ew0,{className:"ttd-dialog-content",tab:"mermaid",children:P(tb3,{mermaidToExcalidrawLib:K})}),!("__fallback"in B)&&l0(ew0,{className:"ttd-dialog-content",tab:"text-to-diagram",children:[P("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."}),l0(Beu,{children:[P(Gs,{label:C0("labels.prompt"),panelAction:{action:J,label:"Generate",icon:XO},onTextSubmitInProgess:l,panelActionDisabled:k.length>Zx||M?.rateLimitRemaining===0,renderTopRight:()=>M?l0("div",{className:"ttd-dialog-rate-limit",style:{fontSize:12,marginLeft:"auto",color:M.rateLimitRemaining===0?"var(--color-danger)":void 0},children:[M.rateLimitRemaining," requests left today"]}):null,renderSubmitShortcut:()=>P(Ceu,{}),renderBottomRight:()=>{if(typeof D?.generatedResponse=="string")return l0("div",{className:"excalidraw-link",style:{marginLeft:"auto",fontSize:14},onClick:()=>{typeof D?.generatedResponse=="string"&&(QK0(D.generatedResponse),A({openDialog:{name:"ttd",tab:"mermaid"}}))},children:["View as Mermaid",P(Ps,{icon:XO})]});let q=k.length/Zx;return q>0.8?l0("div",{style:{marginLeft:"auto",fontSize:12,fontFamily:"monospace",color:q>1?"var(--color-danger)":void 0},children:["Length: ",k.length,"/",Zx]}):null},children:P(Eeu,{onChange:f,input:U,placeholder:"Describe what you want to see...",onKeyboardSubmit:()=>{w.current()}})}),P(Gs,{label:"Preview",panelAction:{action:()=>{console.info("Panel action clicked"),ueu({app:E,data:G})},label:"Insert",icon:XO},children:P(Aeu,{canvasRef:C,error:L,loaded:K.loaded})})]})]})]})})}),CM3=0.01,Jf=(u,B)=>!(B==="height"&&l4(u)||B==="width"&&l4(u)||B==="angle"&&u3(u)),BB=(u,B)=>{let E=u+B/2;return E-E%B},Hs=(u,B,E)=>Object.keys(u).map((A)=>({original:(E??B).get(A),latest:B.get(A)})).filter((A)=>A.original!==void 0&&A.latest!==void 0),LP=(u,B,E,A,C,D,F,U=!0)=>{let z=A.get(E.id);if(!z)return;let[k,f]=[E.x+E.width/2,E.y+E.height/2],[l,b]=Lu(t(E.x,E.y),t(k,f),E.angle),M=u-l,Z=B-b,[J,w]=Lu(t(u,B),t(k+M,f+Z),-E.angle);Wu(z,{x:J,y:w},U),uK0(z,A,C,D);let K=Y3(E,F);if(K){let Q=A.get(K.id);Q&&Wu(Q,{x:K.x+M,y:K.y+Z},U)}},GK0=(u,B)=>{let E=KM(B).map((A)=>x6(u,A).reduce((C,D)=>(C[D.id]=!0,C),{}));return u.filter((A)=>!jK(A)).forEach((A)=>{E.push({[A.id]:!0})}),E},uK0=(u,B,E,A,C)=>{W3(u)?WO([u],B,E,A,!0,[],C?.zoom):hB(u,B,C)},DM3=({label:u,icon:B,dragInputCallback:E,value:A,elements:C,editable:D=!0,shouldKeepAspectRatio:F,property:U,scene:z,appState:k,sensitivity:f=1})=>{let l=uz(),b=oU.useRef(null),M=oU.useRef(null),[Z,J]=oU.useState(A.toString()),w=oU.useRef(null);w.current||(w.current={originalAppState:IU(k),originalElements:C,lastUpdatedValue:Z,updatePending:!1}),oU.useEffect(()=>{let G=A.toString();J(G),w.current.lastUpdatedValue=G},[A]);let K=(G,L,H)=>{if(!w.current.updatePending)return!1;w.current.updatePending=!1;let q=Number(G);if(isNaN(q)){J(A.toString());return}let x=Number(q.toFixed(2)),v=Number(A);(isNaN(v)||Math.abs(x-v)>=CM3)&&(w.current.lastUpdatedValue=G,E({accumulatedChange:0,instantChange:0,originalElements:L,originalElementsMap:l.scene.getNonDeletedElementsMap(),shouldKeepAspectRatio:F,shouldChangeByStepSize:!1,scene:z,nextValue:x,property:U,originalAppState:H,setInputValue:(W)=>J(String(W))}),l.syncActionResult({captureUpdate:Xu.IMMEDIATELY}))},Q=oU.useRef({});return Q.current.handleInputValue=K,oU.useEffect(()=>{let G=b.current,L=Q.current;return()=>{let H=G?.value;H&&L.handleInputValue?.(H,w.current.originalElements,w.current.originalAppState),window.removeEventListener("pointermove",L.onPointerMove,!1),window.removeEventListener("pointerup",L.onPointerUp,!1)}},[D]),D?l0("div",{className:Yu("drag-input-container",!D&&"disabled"),"data-testid":u,children:[P("div",{className:"drag-input-label",ref:M,onPointerDown:(G)=>{if(b.current&&D){document.body.classList.add("excalidraw-cursor-resize");let L=Number(b.current.value);isNaN(L)&&(L=0);let H=null,q=l.scene.getNonDeletedElements().reduce((Y,a)=>(Y.set(a.id,QM(a)),Y),new Map),x=C.map((Y)=>q.get(Y.id)),v=IU(k),W=0,S=0,T=(Y)=>{if(H&&q!==null&&x!==null){let a=Y.clientX-H.x;a!==0&&(S+=a,Math.abs(S)>=f&&(S=Math.sign(S)*Math.floor(Math.abs(S)/f),W+=S,E({accumulatedChange:W,instantChange:S,originalElements:x,originalElementsMap:q,shouldKeepAspectRatio:F,shouldChangeByStepSize:Y.shiftKey,property:U,scene:z,originalAppState:v,setInputValue:(I)=>J(String(I))}),S=0))}H={x:Y.clientX,y:Y.clientY}},R=()=>{window.removeEventListener("pointermove",T,!1),l.syncActionResult({captureUpdate:Xu.IMMEDIATELY}),H=null,W=0,S=0,x=null,q=null,document.body.classList.remove("excalidraw-cursor-resize"),window.removeEventListener("pointerup",R,!1)};Q.current.onPointerMove=T,Q.current.onPointerUp=R,window.addEventListener("pointermove",T,!1),window.addEventListener("pointerup",R,!1)}},onPointerEnter:()=>{M.current&&(M.current.style.cursor="ew-resize")},children:B?P(Ps,{icon:B}):u}),P("input",{className:"drag-input",autoComplete:"off",spellCheck:"false",onKeyDown:(G)=>{if(D){let L=G.target;L instanceof HTMLInputElement&&G.key===y0.ENTER&&(K(L.value,C,k),l.focusContainer())}},ref:b,value:Z,onChange:(G)=>{w.current.updatePending=!0,J(G.target.value)},onFocus:(G)=>{G.target.select(),w.current.originalElements=C,w.current.originalAppState=IU(k)},onBlur:(G)=>{Z?D&&K(G.target.value,w.current.originalElements,w.current.originalAppState):J(A.toString())},disabled:!D})]}):null},Kf=DM3,Zsu=10,FM3=(u)=>u.type==="image",UM3=({accumulatedChange:u,originalElements:B,originalElementsMap:E,shouldKeepAspectRatio:A,shouldChangeByStepSize:C,nextValue:D,property:F,originalAppState:U,instantChange:z,scene:k})=>{let f=k.getNonDeletedElementsMap(),l=B[0],b=f.get(l.id);if(l&&b){let M=A||FM3(l),Z=l.width/l.height;if(U.croppingElementId===l.id){let G=f.get(l.id);if(!G||!H1(G)||!G.crop)return;let L=G.crop,H={...L},q=G.scale[0]===-1,x=G.scale[1]===-1,{width:v,height:W}=WU(G),S=L.naturalWidth/v,T=L.naturalHeight/W,R=q?L.width+L.x:L.naturalWidth-L.x,Y=x?L.height+L.y:L.naturalHeight-L.y,a=U5*S,I=U5*T;if(D!==void 0){if(F==="width"){let h=D*S,r=$3(h,a,R);H={...H,width:r,x:q?L.x+L.width-r:L.x}}else if(F==="height"){let h=D*T,r=$3(h,I,Y);H={...H,height:r,y:x?L.y+L.height-r:L.y}}Wu(G,{crop:H,width:H.width/(L.naturalWidth/v),height:H.height/(L.naturalHeight/W)});return}let O=F==="width"?z:0,i=F==="height"?z:0,N=$3(L.width+O,a,R),V=$3(L.height+i,a,Y);H={...L,x:q?L.x+L.width-N:L.x,y:x?L.y+L.height-V:L.y,width:N,height:V},Wu(G,{crop:H,width:H.width/(L.naturalWidth/v),height:H.height/(L.naturalHeight/W)});return}if(D!==void 0){let G=Math.max(F==="width"?D:M?D*Z:l.width,OE),L=Math.max(F==="height"?D:M?D/Z:l.height,OE);wX(G,L,b,l,f,E,F==="width"?"e":"s",{shouldMaintainAspectRatio:M});return}let J=F==="width"?u:0,w=F==="height"?u:0,K=Math.max(0,l.width+J);F==="width"&&(C?K=BB(K,Zsu):K=Math.round(K));let Q=Math.max(0,l.height+w);F==="height"&&(C?Q=BB(Q,Zsu):Q=Math.round(Q)),M&&(F==="width"?Q=Math.round(K/Z*100)/100:K=Math.round(Q*Z*100)/100),Q=Math.max(OE,Q),K=Math.max(OE,K),wX(K,Q,b,l,f,E,F==="width"?"e":"s",{shouldMaintainAspectRatio:M})}},zM3=({property:u,element:B,scene:E,appState:A})=>{let C=JD(u==="width"?B.width:B.height,2);if(A.croppingElementId&&A.croppingElementId===B.id&&H1(B)&&B.crop){let{width:D,height:F}=WU(B);if(u==="width"){let U=D/B.crop.naturalWidth;C=JD(B.crop.width*U,2)}if(u==="height"){let U=F/B.crop.naturalHeight;C=JD(B.crop.height*U,2)}}return P(Kf,{label:u==="width"?"W":"H",elements:[B],dragInputCallback:UM3,value:C,editable:Jf(B,u),scene:E,appState:A,property:u})},Jsu=zM3,kM3=15,fM3=({accumulatedChange:u,originalElements:B,shouldChangeByStepSize:E,nextValue:A,scene:C})=>{let D=C.getNonDeletedElementsMap(),F=C.getNonDeletedElements(),U=B[0];if(U&&!K4(U)){let z=D.get(U.id);if(!z)return;if(A!==void 0){let Z=ob(A);Wu(z,{angle:Z}),uK0(z,D,F,C);let J=Y3(z,D);J&&!j3(z)&&Wu(J,{angle:Z});return}let k=Math.round(oq(U.angle)*100)/100,f=Math.round(u),l=(k+f)%360;E&&(l=BB(l,kM3)),l=l<0?l+360:l;let b=ob(l);Wu(z,{angle:b}),uK0(z,D,F,C);let M=Y3(z,D);M&&!j3(z)&&Wu(M,{angle:b})}},lM3=({element:u,scene:B,appState:E,property:A})=>P(Kf,{label:"A",icon:qf0,value:Math.round(oq(u.angle)%360*100)/100,elements:[u],dragInputCallback:fM3,editable:Jf(u,"angle"),scene:B,appState:E,property:A}),bM3=lM3,wsu=4,MM3=4,ZM3=({accumulatedChange:u,originalElements:B,shouldChangeByStepSize:E,nextValue:A,scene:C})=>{let D=C.getNonDeletedElementsMap(),F=B[0];if(F){let U=D.get(F.id);if(!U||!l4(U))return;let z;if(A!==void 0)z=Math.max(Math.round(A),wsu);else if(F.type==="text"){let k=Math.round(F.fontSize),f=Math.round(u);z=Math.max(k+f,wsu),E&&(z=BB(z,MM3))}z&&(Wu(U,{fontSize:z}),c7(U,C.getContainerElement(U),C.getNonDeletedElementsMap()))}},JM3=({element:u,scene:B,appState:E,property:A})=>{let C=l4(u)?u:i8(u)?Y3(u,B.getNonDeletedElementsMap()):null;return C?P(Kf,{label:"F",value:Math.round(C.fontSize*10)/10,elements:[C],dragInputCallback:ZM3,icon:qO,appState:E,scene:B,property:A}):null},wM3=JM3,Jx=10,KM3=(u,B,E,A)=>{let C=A.x-u,D=A.y-B,F=A.width*E,U=A.height*E,z=u+C*E,k=B+D*E;return{width:F,height:U,x:z,y:k,...tn(A,F,U,!1),...l4(A)?{fontSize:A.fontSize*E}:{}}},QM3=(u,B,E,A,C,D,F,U)=>{let z=KM3(u,B,A,D);Wu(C,z,!1);let k=Y3(D,U);if(k){let f=k.fontSize*A;hB(C,F,{newSize:{width:z.width,height:z.height}});let l=F.get(k.id);l&&l4(l)&&(Wu(l,{fontSize:f},!1),kX(C,F,E==="width"?"e":"s",!0))}},Ksu=(u,B,E,A,C,D,F,U,z,k)=>{D==="width"?B=Math.round(u/A*100)/100:u=Math.round(B*A*100)/100;let f=B/E;for(let l=0;l<U.length;l++){let b=U[l],M=F[l];QM3(C[0],C[1],D,f,M,b,z,k)}},GM3=({accumulatedChange:u,originalElements:B,originalElementsMap:E,originalAppState:A,shouldChangeByStepSize:C,nextValue:D,scene:F,property:U})=>{let z=F.getNonDeletedElementsMap(),k=GK0(B,A);if(D!==void 0){for(let b of k){let M=Hs(b,z,E);if(M.length>1){let Z=M.map((W)=>W.latest),J=M.map((W)=>W.original),[w,K,Q,G]=T1(J),L=Q-w,H=G-K,q=L/H,x=Math.max(OE,U==="width"?Math.max(0,D):L),v=Math.max(OE,U==="height"?Math.max(0,D):H);Ksu(x,v,H,q,t(w,K),U,Z,J,z,E)}else{let[Z]=M,J=Z?.latest,w=Z?.original;if(J&&w&&Jf(J,U)){let K=U==="width"?Math.max(0,D):J.width;U==="width"&&(C?K=BB(K,Jx):K=Math.round(K));let Q=U==="height"?Math.max(0,D):J.height;U==="height"&&(C?Q=BB(Q,Jx):Q=Math.round(Q)),K=Math.max(OE,K),Q=Math.max(OE,Q),wX(K,Q,J,w,z,E,U==="width"?"e":"s",{shouldInformMutation:!1})}}}F.triggerUpdate();return}let f=U==="width"?u:0,l=U==="height"?u:0;for(let b of k){let M=Hs(b,z,E);if(M.length>1){let Z=M.map((W)=>W.latest),J=M.map((W)=>W.original),[w,K,Q,G]=T1(J),L=Q-w,H=G-K,q=L/H,x=Math.max(0,L+f);U==="width"&&(C?x=BB(x,Jx):x=Math.round(x));let v=Math.max(0,H+l);U==="height"&&(C?v=BB(v,Jx):v=Math.round(v)),x=Math.max(OE,x),v=Math.max(OE,v),Ksu(x,v,H,q,t(w,K),U,Z,J,z,E)}else{let[Z]=M,J=Z?.latest,w=Z?.original;if(J&&w&&Jf(J,U)){let K=Math.max(0,w.width+f);U==="width"&&(C?K=BB(K,Jx):K=Math.round(K));let Q=Math.max(0,w.height+l);U==="height"&&(C?Q=BB(Q,Jx):Q=Math.round(Q)),K=Math.max(OE,K),Q=Math.max(OE,Q),wX(K,Q,J,w,z,E,U==="width"?"e":"s",{shouldInformMutation:!1})}}}F.triggerUpdate()},HM3=({property:u,elements:B,elementsMap:E,atomicUnits:A,scene:C,appState:D})=>{let F=zeu.useMemo(()=>A.map((k)=>{let f=Hs(k,E);if(f.length>1){let[b,M,Z,J]=T1(f.map((w)=>w.latest));return Math.round((u==="width"?Z-b:J-M)*100)/100}let[l]=f;return Math.round((u==="width"?l.latest.width:l.latest.height)*100)/100}),[E,A,u]),U=new Set(F).size===1?Math.round(F[0]*100)/100:"Mixed",z=F.length>0;return P(Kf,{label:u==="width"?"W":"H",elements:B,dragInputCallback:GM3,value:U,editable:z,appState:D,property:u,scene:C})},Qsu=HM3,LM3=15,qM3=({accumulatedChange:u,originalElements:B,shouldChangeByStepSize:E,nextValue:A,property:C,scene:D})=>{let F=D.getNonDeletedElementsMap(),U=B.map((k)=>F.get(k.id)).filter((k)=>k&&!jK(k)&&Jf(k,C)),z=B.filter((k)=>!jK(k)&&Jf(k,C));if(A!==void 0){let k=ob(A);for(let f of U){if(!f)continue;Wu(f,{angle:k},!1);let l=Y3(f,F);l&&!j3(f)&&Wu(l,{angle:k},!1)}D.triggerUpdate();return}for(let k=0;k<U.length;k++){let f=U[k];if(!f)continue;let l=z[k],b=Math.round(oq(l.angle)*100)/100,M=Math.round(u),Z=(b+M)%360;E&&(Z=BB(Z,LM3)),Z=Z<0?Z+360:Z;let J=ob(Z);Wu(f,{angle:J},!1);let w=Y3(f,F);w&&!j3(f)&&Wu(w,{angle:J},!1)}D.triggerUpdate()},XM3=({elements:u,scene:B,appState:E,property:A})=>{let C=u.filter((z)=>!jK(z)&&Jf(z,"angle")),D=C.map((z)=>Math.round(oq(z.angle)%360*100)/100),F=new Set(D).size===1?D[0]:"Mixed",U=C.some((z)=>Jf(z,"angle"));return P(Kf,{label:"A",icon:qf0,value:F,elements:u,dragInputCallback:qM3,editable:U,appState:E,scene:B,property:A})},xM3=XM3,Gsu=4,vM3=4,SM3=(u,B)=>u.reduce((E,A)=>{if(!A||jK(A))return E;if(l4(A))return E.push(A),E;if(i8(A)){let C=Y3(A,B);if(C)return E.push(C),E}return E},[]),WM3=({accumulatedChange:u,originalElements:B,shouldChangeByStepSize:E,nextValue:A,scene:C})=>{let D=C.getNonDeletedElementsMap(),F=B.map((z)=>D.get(z.id)),U;if(A){U=Math.max(Math.round(A),Gsu);for(let z of F)Wu(z,{fontSize:U},!1),c7(z,C.getContainerElement(z),D,!1);C.triggerUpdate()}else{let z=B;for(let k=0;k<F.length;k++){let f=F[k],l=z[k],b=Math.round(l.fontSize),M=Math.round(u),Z=Math.max(b+M,Gsu);E&&(Z=BB(Z,vM3)),Wu(f,{fontSize:Z},!1),c7(f,C.getContainerElement(f),D,!1)}C.triggerUpdate()}},YM3=({elements:u,scene:B,appState:E,property:A,elementsMap:C})=>{let D=SM3(u,C);if(!D.length)return null;let F=D.map((k)=>Math.round(k.fontSize*10)/10),U=new Set(F).size===1?F[0]:"Mixed",z=F.length>0;return P(Kf,{label:"F",icon:qO,elements:D,dragInputCallback:WM3,value:U,editable:z,scene:B,property:A,appState:E})},RM3=YM3,Hsu=10,TM3=({accumulatedChange:u,instantChange:B,originalElements:E,originalElementsMap:A,shouldChangeByStepSize:C,nextValue:D,property:F,scene:U,originalAppState:z})=>{let k=U.getNonDeletedElementsMap(),f=U.getNonDeletedElements(),l=E[0],[b,M]=[l.x+l.width/2,l.y+l.height/2],[Z,J]=Lu(t(l.x,l.y),t(b,M),l.angle);if(z.croppingElementId===l.id){let L=k.get(l.id);if(!L||!H1(L)||!L.crop)return;let H=L.crop,q=H,x=L.scale[0]===-1,v=L.scale[1]===-1,{width:W,height:S}=WU(L);if(D!==void 0){if(F==="x"){let Y=D*(H.naturalWidth/W);x?q={...H,x:$3(H.naturalWidth-Y-H.width,0,H.naturalWidth-H.width)}:q={...H,x:$3(D*(H.naturalWidth/W),0,H.naturalWidth-H.width)}}F==="y"&&(q={...H,y:$3(D*(H.naturalHeight/S),0,H.naturalHeight-H.height)}),Wu(L,{crop:q});return}let T=(F==="x"?B:0)*(x?-1:1),R=(F==="y"?B:0)*(v?-1:1);q={...H,x:$3(H.x+T,0,H.naturalWidth-H.width),y:$3(H.y+R,0,H.naturalHeight-H.height)},Wu(L,{crop:q});return}if(D!==void 0){LP(F==="x"?D:Z,F==="y"?D:J,l,k,f,U,A);return}let w=F==="x"?u:0,K=F==="y"?u:0,Q=F==="x"?Math.round(C?BB(l.x+w,Hsu):Z+w):Z,G=F==="y"?Math.round(C?BB(l.y+K,Hsu):J+K):J;LP(Q,G,l,k,f,U,A)},OM3=({property:u,element:B,elementsMap:E,scene:A,appState:C})=>{let[D,F]=Lu(t(B.x,B.y),t(B.x+B.width/2,B.y+B.height/2),B.angle),U=JD(u==="x"?D:F,2);if(C.croppingElementId===B.id&&H1(B)&&B.crop){let z=Ebu(B);z&&(U=JD(u==="x"?z.x:z.y,2))}return P(Kf,{label:u==="x"?"X":"Y",elements:[B],dragInputCallback:TM3,scene:A,value:U,property:u,appState:C})},Lsu=OM3,IM3=10,PM3=(u,B,E,A,C,D,F,U)=>{for(let z=0;z<A.length;z++){let k=C[z],[f,l]=[k.x+k.width/2,k.y+k.height/2],[b,M]=Lu(t(k.x,k.y),t(f,l),k.angle),Z=u==="x"?Math.round(b+B):b,J=u==="y"?Math.round(M+E):M;LP(Z,J,k,D,A,U,F,!1)}},jM3=(u,B,E,A,C,D,F)=>{let[U,z,,]=T1(E),k=u-U,f=B-z;for(let l=0;l<E.length;l++){let b=E[l],M=A.get(b.id);if(M&&(!l4(M)||!M.containerId)){let[Z,J]=[M.x+M.width/2,M.y+M.height/2],[w,K]=Lu(t(M.x,M.y),t(Z,J),M.angle);LP(w+k,K+f,b,A,C,F,D,!1)}}},NM3=({accumulatedChange:u,originalElements:B,originalElementsMap:E,shouldChangeByStepSize:A,nextValue:C,property:D,scene:F,originalAppState:U})=>{let z=F.getNonDeletedElementsMap(),k=F.getNonDeletedElements();if(C!==void 0){for(let l of GK0(B,U)){let b=Hs(l,z,E);if(b.length>1){let[M,Z,,]=T1(b.map((J)=>J.latest));jM3(D==="x"?C:M,D==="y"?C:Z,b.map((J)=>J.original),z,k,E,F)}else{let M=b[0]?.original,Z=b[0]?.latest;if(M&&Z&&Jf(Z,D)){let[J,w]=[M.x+M.width/2,M.y+M.height/2],[K,Q]=Lu(t(M.x,M.y),t(J,w),M.angle);LP(D==="x"?C:K,D==="y"?C:Q,M,z,k,F,E,!1)}}}F.triggerUpdate();return}let f=A?BB(u,IM3):u;PM3(D,D==="x"?f:0,D==="y"?f:0,B,B,z,E,F),F.triggerUpdate()},iM3=({property:u,elements:B,elementsMap:E,atomicUnits:A,scene:C,appState:D})=>{let F=keu.useMemo(()=>A.map((z)=>{let k=Object.keys(z).map((J)=>E.get(J)).filter((J)=>J!==void 0);if(k.length>1){let[J,w]=T1(k);return Math.round((u==="x"?J:w)*100)/100}let[f]=k,[l,b]=[f.x+f.width/2,f.y+f.height/2],[M,Z]=Lu(t(f.x,f.y),t(l,b),f.angle);return Math.round((u==="x"?M:Z)*100)/100}),[A,E,u]),U=new Set(F).size===1?F[0]:"Mixed";return P(Kf,{label:u==="x"?"X":"Y",elements:B,dragInputCallback:NM3,value:U,property:u,scene:C,appState:D})},qsu=iM3,Xsu=5,aM3=({property:u,scene:B,appState:E,setAppState:A})=>P(Kf,{label:"Grid step",sensitivity:8,elements:[],dragInputCallback:({nextValue:C,instantChange:D,shouldChangeByStepSize:F,setInputValue:U})=>{A((z)=>{let k;return C?k=C:D&&(k=F?BB(z.gridStep+Xsu*Math.sign(D),Xsu):z.gridStep+D),k?(k=sf0(k),U(k),{gridStep:k}):(U(z.gridStep),null)})},scene:B,value:E.gridStep,property:u,appState:E}),VM3=aM3,hM3=50,HK0=(u)=>{let B=SP(),E=u.app.scene.getSceneNonce()||1,A=u.app.scene.getSelectedElements({selectedElementIds:B.selectedElementIds,includeBoundTextElement:!1}),C=zX(u.app);return P(mM3,{...u,appState:B,sceneNonce:E,selectedElements:A,gridModeEnabled:C})},V6=({children:u,columns:B=1,heading:E,style:A,...C})=>P("div",{className:Yu("exc-stats__row",{"exc-stats__row--heading":E}),style:{gridTemplateColumns:`repeat(${B}, 1fr)`,...A},...C,children:u});V6.displayName="StatsRow";var Ls=({children:u,order:B,style:E,...A})=>P("div",{className:"exc-stats__rows",style:{order:B,...E},...A,children:u});Ls.displayName="StatsRows";HK0.StatsRow=V6;HK0.StatsRows=Ls;var mM3=gD.memo(({app:u,onClose:B,renderCustomStats:E,selectedElements:A,appState:C,sceneNonce:D,gridModeEnabled:F})=>{let U=u.scene,z=U.getNonDeletedElements(),k=U.getNonDeletedElementsMap(),f=V2(),l=A.length===1?A[0]:null,b=A.length>1?A:null,M=C.croppingElementId&&H1(l),Z=M?WU(l):null,[J,w]=gD.useState({width:0,height:0}),K=gD.useMemo(()=>Ueu.default((L)=>{let H=T1(L);w({width:Math.round(H[2])-Math.round(H[0]),height:Math.round(H[3])-Math.round(H[1])})},hM3),[]);gD.useEffect(()=>{K(z)},[D,z,K]),gD.useEffect(()=>()=>K.cancel(),[K]);let Q=gD.useMemo(()=>GK0(A,C),[A,C]),G=gD.useMemo(()=>rl0(A),[A]);return P("div",{className:"exc-stats",children:l0(cD,{padding:3,children:[l0("div",{className:"title",children:[P("h2",{children:C0("stats.title")}),P("div",{className:"close",onClick:B,children:OK})]}),l0(rw0,{label:P("h3",{children:C0("stats.generalStats")}),open:!!(C.stats.panels&MK.generalStats),openTrigger:()=>f((L)=>({stats:{open:!0,panels:L.stats.panels^MK.generalStats}})),children:[l0(Ls,{children:[P(V6,{heading:!0,children:C0("stats.scene")}),l0(V6,{columns:2,children:[P("div",{children:C0("stats.shapes")}),P("div",{children:z.length})]}),l0(V6,{columns:2,children:[P("div",{children:C0("stats.width")}),P("div",{children:J.width})]}),l0(V6,{columns:2,children:[P("div",{children:C0("stats.height")}),P("div",{children:J.height})]}),F&&l0(tu,{children:[P(V6,{heading:!0,children:"Canvas"}),P(V6,{children:P(VM3,{property:"gridStep",scene:U,appState:C,setAppState:f})})]})]}),E?.(z,C)]}),!G&&A.length>0&&P("div",{id:"elementStats",style:{marginTop:12},children:P(rw0,{label:P("h3",{children:C0("stats.elementProperties")}),open:!!(C.stats.panels&MK.elementProperties),openTrigger:()=>f((L)=>({stats:{open:!0,panels:L.stats.panels^MK.elementProperties}})),children:l0(Ls,{children:[l&&l0(tu,{children:[M&&P(V6,{heading:!0,children:C0("labels.unCroppedDimension")}),C.croppingElementId&&H1(l)&&Z&&l0(V6,{columns:2,children:[P("div",{children:C0("stats.width")}),P("div",{children:JD(Z.width,2)})]}),C.croppingElementId&&H1(l)&&Z&&l0(V6,{columns:2,children:[P("div",{children:C0("stats.height")}),P("div",{children:JD(Z.height,2)})]}),P(V6,{heading:!0,"data-testid":"stats-element-type",children:C.croppingElementId?C0("labels.imageCropping"):C0(`element.${l.type}`)}),P(V6,{children:P(Lsu,{element:l,property:"x",elementsMap:k,scene:U,appState:C})}),P(V6,{children:P(Lsu,{element:l,property:"y",elementsMap:k,scene:U,appState:C})}),P(V6,{children:P(Jsu,{property:"width",element:l,scene:U,appState:C})}),P(V6,{children:P(Jsu,{property:"height",element:l,scene:U,appState:C})}),!K4(l)&&P(V6,{children:P(bM3,{property:"angle",element:l,scene:U,appState:C})}),P(V6,{children:P(wM3,{property:"fontSize",element:l,scene:U,appState:C})})]}),b&&l0(tu,{children:[Bl0(b)&&P(V6,{heading:!0,children:C0("element.group")}),l0(V6,{columns:2,style:{margin:"0.3125rem 0"},children:[P("div",{children:C0("stats.shapes")}),P("div",{children:A.length})]}),P(V6,{children:P(qsu,{property:"x",elements:b,elementsMap:k,atomicUnits:Q,scene:U,appState:C})}),P(V6,{children:P(qsu,{property:"y",elements:b,elementsMap:k,atomicUnits:Q,scene:U,appState:C})}),P(V6,{children:P(Qsu,{property:"width",elements:b,elementsMap:k,atomicUnits:Q,scene:U,appState:C})}),P(V6,{children:P(Qsu,{property:"height",elements:b,elementsMap:k,atomicUnits:Q,scene:U,appState:C})}),P(V6,{children:P(xM3,{property:"angle",elements:b,scene:U,appState:C})}),P(V6,{children:P(RM3,{property:"fontSize",elements:b,scene:U,appState:C,elementsMap:k})})]})]})})})]})})},(u,B)=>u.sceneNonce===B.sceneNonce&&u.selectedElements===B.selectedElements&&u.appState.stats.panels===B.appState.stats.panels&&u.gridModeEnabled===B.gridModeEnabled&&u.appState.gridStep===B.appState.gridStep&&u.appState.croppingElementId===B.appState.croppingElementId),rM3=({sourceElementId:u,onClose:B,elementsMap:E,appState:A,generateLinkForSelection:C=Ll0})=>{let D=E.get(u)?.link??null,[F,U]=CZ.useState(D),[z,k]=CZ.useState(!1);CZ.useEffect(()=>{let l=N3(E,A),b=D;if(l.length>0&&C){let M=ql0(l,A);M&&(b=j8(C(M.id,M.type)))}U(b)},[E,A,A.selectedElementIds,D,C]);let f=CZ.useCallback(()=>{if(F&&F!==E.get(u)?.link){let l=E.get(u);l&&Wu(l,{link:F})}if(!F&&z&&u){let l=E.get(u);l&&Wu(l,{link:null})}B?.()},[u,F,E,z,B]);return CZ.useEffect(()=>{let l=(b)=>{A.openDialog?.name==="elementLinkSelector"&&b.key===y0.ENTER&&f(),A.openDialog?.name==="elementLinkSelector"&&b.key===y0.ESCAPE&&B?.()};return window.addEventListener("keydown",l),()=>{window.removeEventListener("keydown",l)}},[A,B,f]),l0("div",{className:"ElementLinkDialog",children:[l0("div",{className:"ElementLinkDialog__header",children:[P("h2",{children:C0("elementLink.title")}),P("p",{children:C0("elementLink.desc")})]}),l0("div",{className:"ElementLinkDialog__input",children:[P(JK0,{value:F??"",onChange:(l)=>{z||k(!0),U(l)},onKeyDown:(l)=>{l.key===y0.ENTER&&f()},className:"ElementLinkDialog__input-field",selectOnRender:!0}),D&&F&&P(A1,{type:"button",title:C0("buttons.remove"),"aria-label":C0("buttons.remove"),label:C0("buttons.remove"),onClick:()=>{U(null),k(!0)},className:"ElementLinkDialog__remove",icon:MM})]}),l0("div",{className:"ElementLinkDialog__actions",children:[P(Hx,{label:C0("buttons.cancel"),onClick:()=>{B?.()},style:{marginRight:10}}),P(Hx,{label:C0("buttons.confirm"),onClick:f,actionType:"primary"})]})]})},$M3=rM3,yM3=({UIOptions:u})=>l0(c8,{__fallback:!0,children:[P(c8.DefaultItems.LoadScene,{}),P(c8.DefaultItems.SaveToActiveFile,{}),u.canvasActions.export&&P(c8.DefaultItems.Export,{}),u.canvasActions.saveAsImage&&P(c8.DefaultItems.SaveAsImage,{}),P(c8.DefaultItems.SearchMenu,{}),P(c8.DefaultItems.Help,{}),P(c8.DefaultItems.ClearCanvas,{}),P(c8.Separator,{}),P(c8.Group,{title:"Excalidraw links",children:P(c8.DefaultItems.Socials,{})}),P(c8.Separator,{}),P(c8.DefaultItems.ToggleTheme,{}),P(c8.DefaultItems.ChangeCanvasBackground,{})]}),cM3=()=>l0(Rw0,{__fallback:!0,children:[P(Rw0.Actions.SaveToDisk,{}),P(Rw0.Actions.ExportToImage,{})]}),gM3=({actionManager:u,appState:B,files:E,setAppState:A,elements:C,canvas:D,onLockToggle:F,onHandToolToggle:U,onPenModeToggle:z,showExitZenModeBtn:k,renderTopRightUI:f,renderCustomStats:l,UIOptions:b,onExportImage:M,renderWelcomeScreen:Z,children:J,app:w,isCollaborating:K,generateLinkForSelection:Q})=>{let G=K5(),L=Ol3(),H=L.tunnelsJotai.Provider,[q,x]=P9(Is),v=()=>b.canvasActions.export?P(Wb3,{elements:C,appState:B,files:E,actionManager:u,exportOpts:b.canvasActions.export,canvas:D,setAppState:A}):null,W=()=>!b.canvasActions.saveAsImage||B.openDialog?.name!=="imageExport"?null:P(Eb3,{elements:C,appState:B,files:E,actionManager:u,onExportImage:M,onCloseRequest:()=>A({openDialog:null}),name:w.getName()}),S=()=>l0("div",{style:{position:"relative"},children:[P(L.MainMenuTunnel.Out,{}),Z&&P(L.WelcomeScreenMenuHintTunnel.Out,{})]}),T=()=>P(GP,{heading:"selectedShapeActions",className:Yu("selected-shape-actions zen-mode-transition",{"transition-left":B.zenModeEnabled}),children:P(cD,{className:qK.SHAPE_ACTIONS_MENU,padding:2,style:{maxHeight:`${B.height-166}px`},children:P(tou,{appState:B,elementsMap:w.scene.getNonDeletedElementsMap(),renderAction:u.renderAction,app:w})})}),R=()=>{let O=en(B,C),i=B.stats.open&&!B.zenModeEnabled&&!B.viewModeEnabled&&B.openDialog?.name!=="elementLinkSelector";return P(ltu,{side:"top",children:l0("div",{className:"App-menu App-menu_top",children:[l0(tA.Col,{gap:6,className:Yu("App-menu_top__left"),children:[S(),O&&T()]}),!B.viewModeEnabled&&B.openDialog?.name!=="elementLinkSelector"&&P(GP,{heading:"shapes",className:"shapes-section",children:(N)=>l0("div",{style:{position:"relative"},children:[Z&&P(L.WelcomeScreenToolbarHintTunnel.Out,{}),P(tA.Col,{gap:4,align:"start",children:l0(tA.Row,{gap:1,className:Yu("App-toolbar-container",{"zen-mode":B.zenModeEnabled}),children:[l0(cD,{padding:1,className:Yu("App-toolbar",{"zen-mode":B.zenModeEnabled}),children:[P(Ztu,{appState:B,isMobile:G.editor.isMobile,device:G,app:w}),N,l0(tA.Row,{gap:1,children:[P(wtu,{zenModeEnabled:B.zenModeEnabled,checked:B.penMode,onChange:()=>z(null),title:C0("toolBar.penMode"),penDetected:B.penDetected}),P(Jtu,{checked:B.activeTool.locked,onChange:F,title:C0("toolBar.lock")}),P("div",{className:"App-toolbar__divider"}),P(Ktu,{checked:SK(B),onChange:()=>U(),title:C0("toolBar.hand"),isMobile:!0}),P(eou,{appState:B,activeTool:B.activeTool,UIOptions:b,app:w})]})]}),K&&P(cD,{style:{marginLeft:8,alignSelf:"center",height:"fit-content"},children:P(nb3,{title:C0("toolBar.laser"),checked:B.activeTool.type===O2.laser,onChange:()=>w.setActiveTool({type:O2.laser}),isMobile:!0})})]})})]})}),l0("div",{className:Yu("layer-ui__wrapper__top-right zen-mode-transition",{"transition-right":B.zenModeEnabled}),children:[B.collaborators.size>0&&P(Gtu,{collaborators:B.collaborators,userToFollow:B.userToFollow?.socketId||null}),f?.(G.editor.isMobile,B),!B.viewModeEnabled&&B.openDialog?.name!=="elementLinkSelector"&&(!a||B.openSidebar?.name!==VA.name)&&P(L.DefaultSidebarTriggerTunnel.Out,{}),i&&P(HK0,{app:w,onClose:()=>{u.executeAction(gw0)},renderCustomStats:l})]})]})})},Y=()=>P(bsu,{__fallback:!0,onDock:(O)=>{G6("sidebar",`toggleDock (${O?"dock":"undock"})`,`(${G.editor.isMobile?"mobile":"desktop"})`)}}),a=asu(wK0),I=l0(tu,{children:[J,P(yM3,{UIOptions:b}),P(bsu.Trigger,{__fallback:!0,icon:s_,title:tq(C0("toolBar.library")),onToggle:(O)=>{O&&G6("sidebar",`${VA.name} (open)`,`button (${G.editor.isMobile?"mobile":"desktop"})`)},tab:VA.defaultTab,children:C0("toolBar.library")}),P(cM3,{}),B.openDialog?.name==="ttd"&&P(EM3,{__fallback:!0}),B.isLoading&&P(rsu,{delay:250}),B.errorMessage&&P(sl3,{onClose:()=>A({errorMessage:null}),children:B.errorMessage}),q&&!G.editor.isMobile&&P(xk3,{colorPickerType:q.colorPickerType,onCancel:()=>{x(null)},onChange:(O,i,N,{altKey:V})=>{if(!(O!=="elementBackground"&&O!=="elementStroke"))if(N.length){for(let h of N)Wu(h,{[V&&q.swapPreviewOnAlt?O==="elementBackground"?"strokeColor":"backgroundColor":O==="elementBackground"?"backgroundColor":"strokeColor"]:i},!1),p6.delete(h);RU.getScene(N[0])?.triggerUpdate()}else A(O==="elementBackground"?{currentItemBackgroundColor:i}:{currentItemStrokeColor:i})},onSelect:(O,i)=>{x((N)=>N?.keepOpenOnAlt&&i.altKey?N:null),q?.onSelect?.(O,i)}}),B.openDialog?.name==="help"&&P(Lb3,{onClose:()=>{A({openDialog:null})}}),P(il3,{}),B.openDialog?.name==="elementLinkSelector"&&P($M3,{sourceElementId:B.openDialog.sourceElementId,onClose:()=>{A({openDialog:null})},elementsMap:w.scene.getNonDeletedElementsMap(),appState:B,generateLinkForSelection:Q}),P(L.OverwriteConfirmDialogTunnel.Out,{}),W(),v(),B.pasteDialog.shown&&P(Jb3,{setAppState:A,appState:B,onClose:()=>A({pasteDialog:{shown:!1,data:null}})}),G.editor.isMobile&&P(Zb3,{app:w,appState:B,elements:C,actionManager:u,renderJSONExportDialog:v,renderImageExportDialog:W,setAppState:A,onLockToggle:F,onHandToolToggle:U,onPenModeToggle:z,renderTopRightUI:f,renderCustomStats:l,renderSidebars:Y,device:G,renderWelcomeScreen:Z,UIOptions:b}),!G.editor.isMobile&&l0(tu,{children:[l0("div",{className:"layer-ui__wrapper",style:B.openSidebar&&a&&G.editor.canFitSidebar?{width:"calc(100% - var(--right-sidebar-width))"}:{},children:[Z&&P(L.WelcomeScreenCenterTunnel.Out,{}),R(),P(Rb3,{appState:B,actionManager:u,showExitZenModeBtn:k,renderWelcomeScreen:Z}),B.scrolledOutside&&P("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{A((O)=>({...FX(C,O)}))},children:C0("buttons.scrollBackToContent")})]}),Y()]})]});return P(uou.Provider,{value:B,children:P(H,{children:P(dou.Provider,{value:L,children:I})})})},xsu=(u)=>{let{suggestedBindings:B,startBoundElement:E,cursorButton:A,scrollX:C,scrollY:D,...F}=u;return F},_M3=(u,B)=>{if(u.children!==B.children)return!1;let{canvas:E,appState:A,...C}=u,{canvas:D,appState:F,...U}=B;return h5(xsu(A),xsu(F),{selectedElementIds:h5,selectedGroupIds:h5})&&h5(C,U)},nM3=ktu.default.memo(gM3,_M3),pM3=5000,dM3=({message:u,onClose:B,closable:E=!1,duration:A=pM3,style:C})=>{let D=Wx.useRef(0),F=A!==1/0,U=Wx.useCallback(()=>{F&&(D.current=window.setTimeout(()=>B(),A))},[B,A,F]);return Wx.useEffect(()=>{if(F)return U(),()=>clearTimeout(D.current)},[U,u,A,F]),l0("div",{className:"Toast",onMouseEnter:F?()=>clearTimeout(D?.current):void 0,onMouseLeave:F?U:void 0,style:C,children:[P("p",{className:"Toast__message",children:u}),E&&P(A1,{icon:OK,"aria-label":"close",type:"icon",onClick:B,className:"close"})]})},vsu=C4({name:"viewMode",label:"labels.viewMode",paletteName:"Toggle view mode",icon:Fn,viewMode:!0,trackEvent:{category:"canvas",predicate:(u)=>!u.viewModeEnabled},perform(u,B){return{appState:{...B,viewModeEnabled:!this.checked(B)},captureUpdate:Xu.EVENTUALLY}},checked:(u)=>u.viewModeEnabled,predicate:(u,B,E)=>typeof E.viewModeEnabled>"u",keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&u.altKey&&u.code===U1.R}),leu=(u,B)=>{let E=B.scene.getSelectedElements(u);return E.length===1&&u3(E[0])},sM3=C4({name:"selectAllElementsInFrame",label:"labels.selectAllElementsInFrame",trackEvent:{category:"canvas"},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B).at(0)||null;if(u3(C)){let D=HD(z6(u),C.id).filter((F)=>!(F.type==="text"&&F.containerId));return{elements:u,appState:{...B,selectedElementIds:D.reduce((F,U)=>(F[U.id]=!0,F),{})},captureUpdate:Xu.IMMEDIATELY}}return{elements:u,appState:B,captureUpdate:Xu.EVENTUALLY}},predicate:(u,B,E,A)=>leu(B,A)}),oM3=C4({name:"removeAllElementsFromFrame",label:"labels.removeAllElementsFromFrame",trackEvent:{category:"history"},perform:(u,B,E,A)=>{let C=A.scene.getSelectedElements(B).at(0)||null;return u3(C)?{elements:Vl0(u,C),appState:{...B,selectedElementIds:{[C.id]:!0}},captureUpdate:Xu.IMMEDIATELY}:{elements:u,appState:B,captureUpdate:Xu.EVENTUALLY}},predicate:(u,B,E,A)=>leu(B,A)}),Dj1=C4({name:"updateFrameRendering",label:"labels.updateFrameRendering",viewMode:!0,trackEvent:{category:"canvas"},perform:(u,B)=>({elements:u,appState:{...B,frameRendering:{...B.frameRendering,enabled:!B.frameRendering.enabled}},captureUpdate:Xu.EVENTUALLY}),checked:(u)=>u.frameRendering.enabled}),Fj1=C4({name:"setFrameAsActiveTool",label:"toolBar.frame",trackEvent:{category:"toolbar"},icon:vf0,viewMode:!1,perform:(u,B,E,A)=>{let C=n9(B,{type:"frame"});return wD(A.interactiveCanvas,{...B,activeTool:C}),{elements:u,appState:{...B,activeTool:n9(B,{type:"frame"})},captureUpdate:Xu.EVENTUALLY}},keyTest:(u)=>!u[y0.CTRL_OR_CMD]&&!u.shiftKey&&!u.altKey&&u.key.toLocaleLowerCase()===y0.F}),tM3=C4({name:"wrapSelectionInFrame",label:"labels.wrapSelectionInFrame",trackEvent:{category:"element"},predicate:(u,B,E,A)=>{let C=N3(u,B);return C.length>0&&!C.some((D)=>u3(D))},perform:(u,B,E,A)=>{let C=N3(u,B),[D,F,U,z]=T1(C,A.scene.getNonDeletedElementsMap()),k=16,f=Sn({x:D-k,y:F-k,width:U-D+k*2,height:z-F+k*2});if(B.editingGroupId){let l=x6(C,B.editingGroupId);for(let b of l){let M=b.groupIds.indexOf(B.editingGroupId);Wu(b,{groupIds:b.groupIds.slice(0,M)},!1)}}return{elements:ZX([...A.scene.getElementsIncludingDeleted(),f],C,f,B),appState:{selectedElementIds:{[f.id]:!0}},captureUpdate:Xu.IMMEDIATELY}}}),eM3=()=>l0("div",{"data-testid":"brave-measure-text-error",children:[P("p",{children:P(sU,{i18nKey:"errors.brave_measure_text_error.line1",bold:(u)=>P("span",{style:{fontWeight:600},children:u})})}),P("p",{children:P(sU,{i18nKey:"errors.brave_measure_text_error.line2",bold:(u)=>P("span",{style:{fontWeight:600},children:u})})}),P("p",{children:P(sU,{i18nKey:"errors.brave_measure_text_error.line3",link:(u)=>P("a",{href:"http://docs.excalidraw.com/docs/@excalidraw/excalidraw/faq#turning-off-aggresive-block-fingerprinting-in-brave-browser",children:u})})}),P("p",{children:P(sU,{i18nKey:"errors.brave_measure_text_error.line4",issueLink:(u)=>P("a",{href:"https://github.com/excalidraw/excalidraw/issues/new",children:u}),discordLink:(u)=>l0("a",{href:"https://discord.gg/UexuTaE",children:[u,"."]})})})]}),uZ3=eM3,ks={width:100,height:0},BZ=100,BZ3=(u,B,E)=>{let A=N8({x:0,y:0,textAlign:rq.CENTER,verticalAlign:P8.MIDDLE,...B,containerId:u.id,strokeColor:B.strokeColor||u.strokeColor});return Object.assign(u,{boundElements:(u.boundElements||[]).concat({type:"text",id:A.id})}),c7(A,u,E),[u,A]},Ssu=(u,B,E,A,C)=>{let D,F;if(Object.assign(u,{startBinding:u?.startBinding||null,endBinding:u.endBinding||null}),B){let f=B?.width??BZ,l=B?.height??BZ,b;B.id&&(b=A.getElement(B.id),b||console.error(`No element for start binding with id ${B.id} found`));let M=B.x||u.x-f,Z=B.y||u.y-l/2,J=b?b.type:B.type;if(J){if(J==="text"){let w="";b&&b.type==="text"?w=b.text:B.type==="text"&&(w=B.text),w||console.error(`No text found for start binding text element for ${u.id}`),D=N8({x:M,y:Z,type:"text",...b,...B,text:w}),Object.assign(D,{x:B.x||u.x-D.width,y:B.y||u.y-D.height/2})}else switch(J){case"rectangle":case"ellipse":case"diamond":{D=QD({x:M,y:Z,width:f,height:l,...b,...B,type:J});break}default:fM(u,`Unhandled element start type "${B.type}"`,!0)}zD(u,D,"start",C)}}if(E){let f=E?.height??BZ,l=E?.width??BZ,b;E.id&&(b=A.getElement(E.id),b||console.error(`No element for end binding with id ${E.id} found`));let M=E.x||u.x+u.width,Z=E.y||u.y-f/2,J=b?b.type:E.type;if(J){if(J==="text"){let w="";b&&b.type==="text"?w=b.text:E.type==="text"&&(w=E.text),w||console.error(`No text found for end binding text element for ${u.id}`),F=N8({x:M,y:Z,type:"text",...b,...E,text:w}),Object.assign(F,{y:E.y||u.y-F.height/2})}else switch(J){case"rectangle":case"ellipse":case"diamond":{F=QD({x:M,y:Z,width:l,height:f,...b,...E,type:J});break}default:fM(u,`Unhandled element end type "${J}"`,!0)}zD(u,F,"end",C)}}if(u.points.length<2)return{linearElement:u,startBoundElement:D,endBoundElement:F};let U=u.points.length-1,z=0.5,k=IU(u.points);return u.points[U][0]>u.points[U-1][0]&&(k[0][0]=z,k[U][0]-=z),u.points[U][0]<u.points[U-1][0]&&(k[0][0]=-z,k[U][0]+=z),u.points[U][1]>u.points[U-1][1]&&(k[0][1]=z,k[U][1]-=z),u.points[U][1]<u.points[U-1][1]&&(k[0][1]=-z,k[U][1]+=z),Object.assign(u,{points:k}),{linearElement:u,startBoundElement:D,endBoundElement:F}},EZ3=class{constructor(){j0(this,"excalidrawElements",new Map),j0(this,"add",(u)=>{u&&this.excalidrawElements.set(u.id,u)}),j0(this,"getElements",()=>iU(Array.from(this.excalidrawElements.values()))),j0(this,"getElementsMap",()=>RE(e4(this.getElements()))),j0(this,"getElement",(u)=>this.excalidrawElements.get(u))}},qP=(u,B)=>{if(!u)return[];let E=IU(u),A=new EZ3,C=new Map,D=new Map;for(let U of E){let z,k=U.id;switch(B?.regenerateIds!==!1&&Object.assign(U,{id:TE()}),U.type){case"rectangle":case"ellipse":case"diamond":{let f=U?.label?.text&&U.width===void 0?0:U?.width||BZ,l=U?.label?.text&&U.height===void 0?0:U?.height||BZ;z=QD({...U,width:f,height:l});break}case"line":{let f=U.width||ks.width,l=U.height||ks.height;z=eb({width:f,height:l,points:[t(0,0),t(f,l)],...U});break}case"arrow":{let f=U.width||ks.width,l=U.height||ks.height;z=Yn({width:f,height:l,endArrowhead:"arrow",points:[t(0,0),t(f,l)],...U,type:"arrow"}),Object.assign(z,QK(z.points));break}case"text":{let f=U?.fontFamily||ok,l=U?.fontSize||TU,b=U?.lineHeight||JM(f),M=U.text??"",Z=TK(M),J=Q7(Z,e1({fontFamily:f,fontSize:l}),b);z=N8({width:J.width,height:J.height,fontFamily:f,fontSize:l,...U});break}case"image":{z=ll0({width:U?.width||BZ,height:U?.height||BZ,...U});break}case"frame":{z=Sn({x:0,y:0,...U});break}case"magicframe":{z=Wn({x:0,y:0,...U});break}case"freedraw":case"iframe":case"embeddable":{z=U;break}default:z=U,fM(U,`Unhandled element type "${U.type}"`,!0)}A.getElement(z.id)?console.error(`Duplicate id found for ${z.id}`):(A.add(z),C.set(z.id,U),k&&D.set(k,z.id))}let F=A.getElementsMap();for(let[U,z]of C){let k=A.getElement(U);switch(z.type){case"rectangle":case"ellipse":case"diamond":case"arrow":{if(z.label?.text){let[f,l]=BZ3(k,z?.label,F);if(A.add(f),A.add(l),j3(f)){let b=z.type==="arrow"?z?.start:void 0,M=z.type==="arrow"?z?.end:void 0;if(b&&b.id){let K=D.get(b.id);K&&Object.assign(b,{id:K})}if(M&&M.id){let K=D.get(M.id);K&&Object.assign(M,{id:K})}let{linearElement:Z,startBoundElement:J,endBoundElement:w}=Ssu(f,b,M,A,F);f=Z,A.add(Z),A.add(J),A.add(w)}}else switch(z.type){case"arrow":{let{start:f,end:l}=z;if(f&&f.id){let J=D.get(f.id);Object.assign(f,{id:J})}if(l&&l.id){let J=D.get(l.id);Object.assign(l,{id:J})}let{linearElement:b,startBoundElement:M,endBoundElement:Z}=Ssu(k,f,l,A,F);A.add(b),A.add(M),A.add(Z);break}}break}}}for(let[U,z]of C){if(z.type!=="frame"&&z.type!=="magicframe")continue;let k=A.getElement(U);if(!k)throw Error(`Excalidraw element with id ${U} doesn't exist`);let f=[];z.children.forEach((L)=>{let H=D.get(L);if(!H)throw Error(`Element with ${L} wasn't mapped correctly`);let q=A.getElement(H);if(!q)throw Error(`Frame element with id ${H} doesn't exist`);Object.assign(q,{frameId:k.id}),q?.boundElements?.forEach((x)=>{let v=A.getElement(x.id);if(!v)throw Error(`Bound element with id ${x.id} doesn't exist`);Object.assign(v,{frameId:k.id}),f.push(v)}),f.push(q)});let[l,b,M,Z]=T1(f),J=10;l=l-J,b=b-J,M=M+J,Z=Z+J;let w=k?.x||l,K=k?.y||b,Q=k?.width||M-l,G=k?.height||Z-b;Object.assign(k,{x:w,y:K,width:Q,height:G}),rk0()&&z.children.length&&(k?.x||k?.y||k?.width||k?.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 A.getElements()},I9=(u)=>(B)=>{LK0.unstable_batchedUpdates(u,B)},Ow0=(u)=>MO((B)=>{LK0.unstable_batchedUpdates(u,B)}),qK0=(()=>{let u;try{let E=beu.version.split(".");u=Number(E[0])>17}catch{u=!1}let B=!1;return()=>window.EXCALIDRAW_THROTTLE_RENDER===!0?u?!0:(B||(B=!0,console.warn("Excalidraw: render throttling is disabled on React versions < 18.")),!1):!1})(),AZ3="#ff6b6b",CZ3="#ff0000",Wsu=1,Ysu=2,DZ3=(u,B)=>{if(!B.snapLines.length)return;let E=B.theme===_3.LIGHT||B.zenModeEnabled?AZ3:CZ3,A=(B.zenModeEnabled?Wsu*1.5:Wsu)/B.zoom.value;u.save(),u.translate(B.scrollX,B.scrollY);for(let C of B.snapLines)C.type==="pointer"?(u.lineWidth=A,u.strokeStyle=E,UZ3(C,u,B)):C.type==="gap"?(u.lineWidth=A,u.strokeStyle=E,zZ3(C.points[0],C.points[1],C.direction,B,u)):C.type==="points"&&(u.lineWidth=A,u.strokeStyle=E,FZ3(C,u,B));u.restore()},FZ3=(u,B,E)=>{if(!E.zenModeEnabled){let A=u.points[0],C=u.points[u.points.length-1];sA(A,C,B)}for(let A of u.points)Meu(A,E,B)},UZ3=(u,B,E)=>{Meu(u.points[0],E,B),E.zenModeEnabled||sA(u.points[0],u.points[1],B)},Meu=([u,B],E,A)=>{A.save();let C=(E.zenModeEnabled?Ysu*1.5:Ysu)/E.zoom.value;A.beginPath(),A.moveTo(u-C,B-C),A.lineTo(u+C,B+C),A.moveTo(u+C,B-C),A.lineTo(u-C,B+C),A.stroke(),A.restore()},sA=(u,B,E)=>{E.beginPath(),E.lineTo(u[0],u[1]),E.lineTo(B[0],B[1]),E.stroke()},zZ3=(u,B,E,A,C)=>{let D=8/A.zoom.value,F=D/2,U=D/4;if(E==="horizontal"){let z=[(u[0]+B[0])/2,u[1]];A.zenModeEnabled||sA(t(u[0],u[1]-D),t(u[0],u[1]+D),C),sA(t(z[0]-U,z[1]-F),t(z[0]-U,z[1]+F),C),sA(t(z[0]+U,z[1]-F),t(z[0]+U,z[1]+F),C),A.zenModeEnabled||(sA(t(B[0],B[1]-D),t(B[0],B[1]+D),C),sA(u,B,C))}else{let z=[u[0],(u[1]+B[1])/2];A.zenModeEnabled||sA(t(u[0]-D,u[1]),t(u[0]+D,u[1]),C),sA(t(z[0]-F,z[1]-U),t(z[0]+F,z[1]-U),C),sA(t(z[0]-F,z[1]+U),t(z[0]+F,z[1]+U),C),A.zenModeEnabled||(sA(t(B[0]-D,B[1]),t(B[0]+D,B[1]),C),sA(u,B,C))}},kZ3=(u,B)=>{l2(B.selectedLinearElement,"selectedLinearElement is null");let{segmentMidPointHoveredCoords:E}=B.selectedLinearElement;l2(E,"midPointCoords is null"),u.save(),u.translate(B.scrollX,B.scrollY),Zeu(E,u,B),u.restore()},fZ3=(u,B,E)=>{let{elementId:A,hoverPointIndex:C}=B.selectedLinearElement;if(B.editingLinearElement?.selectedPointsIndices?.includes(C))return;let D=M4.getElement(A,E);if(!D)return;let F=M4.getPointAtIndexGlobalCoordinates(D,C,E);u.save(),u.translate(B.scrollX,B.scrollY),Zeu(F,u,B),u.restore()},Zeu=(u,B,E)=>{B.fillStyle="rgba(105, 101, 219, 0.4)",jO(B,u[0],u[1],M4.POINT_HANDLE_SIZE/E.zoom.value,!1)},xP=(u,B,E,A,C,D,F,U,z=!1,k=0)=>{u.save(),u.translate(D,F),u.rotate(U),z&&u.fillRect(B-D,E-F,A,C),k&&u.roundRect?(u.beginPath(),u.roundRect(B-D,E-F,A,C,k),u.stroke(),u.closePath()):u.strokeRect(B-D,E-F,A,C),u.restore()},lZ3=(u,B,E,A,C,D)=>{u.save(),u.translate(A,C),u.rotate(D),u.beginPath(),u.moveTo(0,E/2),u.lineTo(B/2,0),u.lineTo(0,-E/2),u.lineTo(-B/2,0),u.closePath(),u.stroke(),u.restore()},Iw0=(u,B,E,A,C,D=!1)=>{u.strokeStyle="#5e5ad8",u.setLineDash([]),u.fillStyle="rgba(255, 255, 255, 0.9)",C?u.fillStyle="rgba(134, 131, 226, 0.9)":D&&(u.fillStyle="rgba(177, 151, 252, 0.7)"),jO(u,E[0],E[1],A/B.zoom.value,!D)},bZ3=(u,B,E,A,C,D)=>{u.beginPath(),u.ellipse(A,C,B/2,E/2,D,0,Math.PI*2),u.stroke()},MZ3=(u,B,E,A)=>{let[C,D,F,U]=S3(B,E),z=F-C,k=U-D;u.strokeStyle="rgba(0,0,0,.05)";let f=A.value<1?A.value:1;u.lineWidth=Kn/f;let l=u.lineWidth/2+Qn,b=IA(Math.min(B.width,B.height),B);switch(B.type){case"rectangle":case"text":case"image":case"iframe":case"embeddable":case"frame":case"magicframe":xP(u,C-l,D-l,z+l*2,k+l*2,C+z/2,D+k/2,B.angle,void 0,b);break;case"diamond":let M=Math.hypot(z,k),Z=l*M/k,J=l*M/z;lZ3(u,z+Z*2,k+J*2,C+z/2,D+k/2,B.angle);break;case"ellipse":bZ3(u,z+l*2,k+l*2,C+z/2,D+k/2,B.angle);break}},ZZ3=(u,B,E,A)=>{let[C,D,F]=B,U=DX(F,F.width,F.height,A);u.strokeStyle="rgba(0,0,0,0)",u.fillStyle="rgba(0,0,0,.05)",(D==="both"?[0,-1]:D==="start"?[0]:[-1]).forEach((z)=>{let[k,f]=M4.getPointAtIndexGlobalCoordinates(C,z,E);jO(u,k,f,U)})},Jeu=(u,B,E)=>{let{angle:A,x1:C,y1:D,x2:F,y2:U,selectionColors:z,cx:k,cy:f,dashed:l,activeEmbeddable:b}=E,M=F-C,Z=U-D,J=(E.padding??EM*2)/B.zoom.value,w=8/B.zoom.value,K=4/B.zoom.value;u.save(),u.translate(B.scrollX,B.scrollY),u.lineWidth=(b?4:1)/B.zoom.value;let Q=z.length;for(let G=0;G<Q;++G)u.strokeStyle=z[G],l&&u.setLineDash([w,K+(w+K)*(Q-1)]),u.lineDashOffset=(w+K)*G,xP(u,C-J,D-J,M+J*2,Z+J*2,k,f,A);u.restore()},JZ3=(u,B,E,A)=>{let C=Array.isArray(E)?ZZ3:MZ3;u.save(),u.translate(B.scrollX,B.scrollY),C(u,E,A,B.zoom),u.restore()},wZ3=(u,B,E,A)=>{let[C,D,F,U]=S3(E,A),z=F-C,k=U-D;u.strokeStyle="rgb(0,118,255)",u.lineWidth=j6.strokeWidth/B.zoom.value,u.save(),u.translate(B.scrollX,B.scrollY),xP(u,C,D,z,k,C+z/2,D+k/2,E.angle,!1,j6.radius/B.zoom.value),u.restore()},KZ3=(u,B,E)=>{let A=E.filter((U)=>U.groupIds.length===0),C=E.filter((U)=>U.groupIds.length>0),D=(U)=>{let[z,k,f,l]=T1(U);return{angle:0,x1:z,x2:f,y1:k,y2:l,selectionColors:["rgb(0,118,255)"],dashed:!1,cx:z+(f-z)/2,cy:k+(l-k)/2,activeEmbeddable:!1}},F=(U)=>{let z=x6(E,U);return D(z)};Object.entries(ul0(C,B)).filter(([U,z])=>z).map(([U,z])=>U).map((U)=>F(U)).concat(A.map((U)=>D([U]))).forEach((U)=>Jeu(u,B,U))},Pw0=(u,B,E,A)=>{if(!B.selectedLinearElement)return;u.save(),u.translate(B.scrollX,B.scrollY),u.lineWidth=1/B.zoom.value;let C=M4.getPointsGlobalCoordinates(E,A),{POINT_HANDLE_SIZE:D}=M4,F=B.editingLinearElement?D:D/2;if(C.forEach((U,z)=>{if(K4(E)&&z!==0&&z!==C.length-1)return;let k=!!B.editingLinearElement?.selectedPointsIndices?.includes(z);Iw0(u,B,U,F,k)}),K4(E)){let U=E.fixedSegments?.map((z)=>z.index)||[];C.slice(0,-1).forEach((z,k)=>{M4.isSegmentTooShort(E,C[k+1],C[k],k,B.zoom)||Iw0(u,B,t((z[0]+C[k+1][0])/2,(z[1]+C[k+1][1])/2),D/2,!1,!U.includes(k+1))})}else M4.getEditorMidPoints(E,A,B).filter((U,z,k)=>U!==null&&!(K4(E)&&(z===0||z===k.length-1))).forEach((U)=>{(B.editingLinearElement||C.length===2)&&Iw0(u,B,U,D/2,!1,!0)});u.restore()},Rsu=(u,B,E,A,C)=>{Object.keys(A).forEach((D)=>{let F=A[D];if(F!==void 0){let[U,z,k,f]=F;u.save(),u.lineWidth=1/E.zoom.value,B.selectionColor&&(u.strokeStyle=B.selectionColor),D==="rotation"?jO(u,U+k/2,z+f/2,k/2):u.roundRect?(u.beginPath(),u.roundRect(U,z,k,f,2/E.zoom.value),u.fill(),u.stroke()):xP(u,U,z,k,f,U+k/2,z+f/2,C,!0),u.restore()}})},QZ3=(u,B,E,A,C)=>{let[D,F,,,U,z]=S3(A,C),k=3,f=20,l=k/E.zoom.value,b=l/2,M=U-D+l,Z=z-F+l,J=Math.min(f/E.zoom.value,M),w=Math.min(f/E.zoom.value,Z);u.save(),u.fillStyle=B.selectionColor,u.strokeStyle=B.selectionColor,u.lineWidth=l,[[[-M,-Z],[0,b],[J,b],[b,0],[b,w]],[[M-b,-Z],[b,b],[-J+b,b],[0,0],[0,w]],[[-M,Z],[0,-b],[J,-b],[b,0],[b,-w]],[[M-b,Z],[b,-b],[-J+b,-b],[0,0],[0,-w]]].forEach((K)=>{let[[Q,G],[L,H],[q,x],[v,W],[S,T]]=K;u.save(),u.translate(U,z),u.rotate(A.angle),u.beginPath(),u.moveTo(Q+L,G+H),u.lineTo(Q+q,G+x),u.stroke(),u.beginPath(),u.moveTo(Q+v,G+W),u.lineTo(Q+S,G+T),u.stroke(),u.restore()}),u.restore()},GZ3=(u,B,E,A)=>{B.save();let C=EM*2/E.zoom.value,D=u.width+C*2,F=u.height+C*2,U=u.x+D/2,z=u.y+F/2,k=-(D/2+C),f=-(F/2+C);B.translate(U+E.scrollX,z+E.scrollY),B.rotate(u.angle),B.lineWidth=1/E.zoom.value,B.strokeStyle=A,B.strokeRect(k,f,D,F),B.restore()},weu=({canvas:u,elementsMap:B,visibleElements:E,selectedElements:A,allElementsMap:C,scale:D,appState:F,renderConfig:U,device:z})=>{if(u===null)return{atLeastOneVisibleElement:!1,elementsMap:B};let[k,f]=jn(u,D),l=Nn({canvas:u,scale:D,normalizedWidth:k,normalizedHeight:f});l.save(),l.scale(F.zoom.value,F.zoom.value);let b;if(E.forEach((J)=>{F.editingLinearElement?.elementId===J.id&&J&&(b=J)}),b&&Pw0(l,F,b,B),F.selectionElement&&!F.isCropping)try{kbu(F.selectionElement,l,F,U.selectionColor)}catch(J){console.error(J)}if(F.editingTextElement&&l4(F.editingTextElement)){let J=C.get(F.editingTextElement.id);J&&!J.autoResize&&GZ3(J,l,F,U.selectionColor)}F.isBindingEnabled&&F.suggestedBindings.filter((J)=>J!=null).forEach((J)=>{JZ3(l,F,J,B)}),F.frameToHighlight&&wZ3(l,F,F.frameToHighlight,B),F.elementsToHighlight&&KZ3(l,F,F.elementsToHighlight);let M=A.some((J)=>u3(J));if(A.length===1&&F.editingLinearElement?.elementId===A[0].id&&Pw0(l,F,A[0],B),K4(A[0])&&F.selectedLinearElement&&F.selectedLinearElement.segmentMidPointHoveredCoords?kZ3(l,F):F.selectedLinearElement&&F.selectedLinearElement.hoverPointIndex>=0&&!(K4(A[0])&&F.selectedLinearElement.hoverPointIndex>0&&F.selectedLinearElement.hoverPointIndex<A[0].points.length-1)&&fZ3(l,F,B),!F.multiElement&&!F.editingLinearElement){let J=_l0(A,F),w=A.length===1&&W3(A[0]);w&&F.selectedLinearElement?.elementId===A[0].id&&!A[0].locked&&Pw0(l,F,A[0],B);let K=U.selectionColor||_6.black;if(J){let Q=e4(A),G=[];for(let H of B.values()){let q=[],x=U.remoteSelectedElementIds.get(H.id);if(w&&K4(H)&&(H.startBinding||H.endBinding)||(Q.has(H.id)&&!tf0(F,H)&&q.push(K),x&&q.push(...x.map((v)=>hs(v,F.collaborators.get(v))))),q.length){let[v,W,S,T,R,Y]=S3(H,B,!0);G.push({angle:H.angle,x1:v,y1:W,x2:S,y2:T,selectionColors:q,dashed:!!x,cx:R,cy:Y,activeEmbeddable:F.activeEmbeddable?.element===H&&F.activeEmbeddable.state==="active",padding:H.id===F.croppingElementId||H1(H)?0:void 0})}}let L=(H)=>{let q=x6(B,H),[x,v,W,S]=T1(q);G.push({angle:0,x1:x,x2:W,y1:v,y2:S,selectionColors:[_6.black],dashed:!0,cx:x+(W-x)/2,cy:v+(S-v)/2,activeEmbeddable:!1})};for(let H of KM(F))L(H);F.editingGroupId&&L(F.editingGroupId),G.forEach((H)=>Jeu(l,F,H))}if(l.save(),l.translate(F.scrollX,F.scrollY),A.length===1){l.fillStyle=_6.white;let Q=gl0(A[0],F.zoom,B,"mouse",JX(z));if(!F.viewModeEnabled&&J&&!l4(F.editingTextElement)&&!F.croppingElementId&&Rsu(l,U,F,Q,A[0].angle),F.croppingElementId&&!F.isCropping){let G=B.get(F.croppingElementId);G&&H1(G)&&QZ3(l,U,F,G,B)}}else if(A.length>1&&!F.isRotating){let Q=EM*2/F.zoom.value;l.fillStyle=_6.white;let[G,L,H,q]=T1(A),x=l.getLineDash();l.setLineDash([2/F.zoom.value]);let v=l.lineWidth;l.lineWidth=1/F.zoom.value,l.strokeStyle=K,xP(l,G-Q,L-Q,H-G+Q*2,q-L+Q*2,(G+H)/2,(L+q)/2,0),l.lineWidth=v,l.setLineDash(x);let W=on([G,L,H,q,(G+H)/2,(L+q)/2],0,F.zoom,"mouse",M?{...JX(z),rotation:!0}:JX(z));A.some((S)=>!S.locked)&&Rsu(l,U,F,W,0)}l.restore()}F.searchMatches.forEach(({id:J,focus:w,matchedLines:K})=>{let Q=B.get(J);if(Q&&l4(Q)){let[G,L,,,H,q]=S3(Q,B,!0);l.save(),F.theme===_3.LIGHT?w?l.fillStyle="rgba(255, 124, 0, 0.4)":l.fillStyle="rgba(255, 226, 0, 0.4)":w?l.fillStyle="rgba(229, 82, 0, 0.4)":l.fillStyle="rgba(99, 52, 0, 0.4)",l.translate(F.scrollX,F.scrollY),l.translate(H,q),l.rotate(Q.angle),K.forEach((x)=>{l.fillRect(G+x.offsetX-H,L+x.offsetY-q,x.width,x.height)}),l.restore()}}),DZ3(l,F),l.restore(),Df3({context:l,renderConfig:U,appState:F,normalizedWidth:k,normalizedHeight:f});let Z;return U.renderScrollbars&&(Z=bb3(E,k,f,F),l.save(),l.fillStyle=lb3,l.strokeStyle="rgba(255,255,255,0.8)",[Z.horizontal,Z.vertical].forEach((J)=>{J&&vou(l,J.x,J.y,J.width,J.height,uZ/2)}),l.restore()),{scrollBars:Z,atLeastOneVisibleElement:E.length>0,elementsMap:B}},Keu=MO((u)=>{let B=weu(u);u.callback?.(B)},{trailing:!0}),HZ3=(u,B)=>{if(B){Keu(u);return}let E=weu(u);return u.callback(E),E},LZ3=(u)=>{let B=Yx.useRef(!1);return Yx.useEffect(()=>{if(!B.current){B.current=!0;return}let E=new Map,A=new Map,C=new Map,D=new Map,F=new Map;u.appState.collaborators.forEach((z,k)=>{if(z.selectedElementIds)for(let f of Object.keys(z.selectedElementIds))C.has(f)||C.set(f,[]),C.get(f).push(k);!z.pointer||z.pointer.renderCursor===!1||(z.username&&D.set(k,z.username),z.userState&&F.set(k,z.userState),A.set(k,jA({sceneX:z.pointer.x,sceneY:z.pointer.y},u.appState)),E.set(k,z.button))});let U=u.containerRef?.current&&getComputedStyle(u.containerRef.current).getPropertyValue("--color-selection")||"#6965db";HZ3({canvas:u.canvas,elementsMap:u.elementsMap,visibleElements:u.visibleElements,selectedElements:u.selectedElements,allElementsMap:u.allElementsMap,scale:window.devicePixelRatio,appState:u.appState,renderConfig:{remotePointerViewportCoords:A,remotePointerButton:E,remoteSelectedElementIds:C,remotePointerUsernames:D,remotePointerUserStates:F,selectionColor:U,renderScrollbars:!1},device:u.device,callback:u.renderInteractiveSceneCallback},qK0())}),P("canvas",{className:"excalidraw__canvas interactive",style:{width:u.appState.width,height:u.appState.height,cursor:u.appState.viewModeEnabled?g1.GRAB:g1.AUTO},width:u.appState.width*u.scale,height:u.appState.height*u.scale,ref:u.handleCanvasRef,onContextMenu:u.onContextMenu,onPointerMove:u.onPointerMove,onPointerUp:u.onPointerUp,onPointerCancel:u.onPointerCancel,onTouchMove:u.onTouchMove,onPointerDown:u.onPointerDown,onDoubleClick:u.appState.viewModeEnabled?void 0:u.onDoubleClick,children:C0("labels.drawingCanvas")})},Tsu=(u)=>({zoom:u.zoom,scrollX:u.scrollX,scrollY:u.scrollY,width:u.width,height:u.height,viewModeEnabled:u.viewModeEnabled,openDialog:u.openDialog,editingGroupId:u.editingGroupId,editingLinearElement:u.editingLinearElement,selectedElementIds:u.selectedElementIds,frameToHighlight:u.frameToHighlight,offsetLeft:u.offsetLeft,offsetTop:u.offsetTop,theme:u.theme,pendingImageElementId:u.pendingImageElementId,selectionElement:u.selectionElement,selectedGroupIds:u.selectedGroupIds,selectedLinearElement:u.selectedLinearElement,multiElement:u.multiElement,isBindingEnabled:u.isBindingEnabled,suggestedBindings:u.suggestedBindings,isRotating:u.isRotating,elementsToHighlight:u.elementsToHighlight,collaborators:u.collaborators,activeEmbeddable:u.activeEmbeddable,snapLines:u.snapLines,zenModeEnabled:u.zenModeEnabled,editingTextElement:u.editingTextElement,isCropping:u.isCropping,croppingElementId:u.croppingElementId,searchMatches:u.searchMatches}),qZ3=(u,B)=>u.selectionNonce!==B.selectionNonce||u.sceneNonce!==B.sceneNonce||u.scale!==B.scale||u.elementsMap!==B.elementsMap||u.visibleElements!==B.visibleElements||u.selectedElements!==B.selectedElements?!1:h5(Tsu(u.appState),Tsu(B.appState)),XZ3=Yx.default.memo(LZ3,qZ3),xZ3=(u)=>{let B=GQ.useRef(null),E=GQ.useRef(!1);return GQ.useEffect(()=>{let A=B.current;if(!A)return;let C=u.canvas;E.current||(E.current=!0,A.replaceChildren(C),C.classList.add("excalidraw__canvas","static"));let D=`${u.appState.width}px`,F=`${u.appState.height}px`;C.style.width!==D&&(C.style.width=D),C.style.height!==F&&(C.style.height=F);let U=u.appState.width*u.scale,z=u.appState.height*u.scale;C.width!==U&&(C.width=U),C.height!==z&&(C.height=z),xl0({canvas:C,rc:u.rc,scale:u.scale,elementsMap:u.elementsMap,allElementsMap:u.allElementsMap,visibleElements:u.visibleElements,appState:u.appState,renderConfig:u.renderConfig},qK0())}),P("div",{className:"excalidraw__canvas-wrapper",ref:B})},Osu=(u)=>({zoom:u.zoom,scrollX:u.scrollX,scrollY:u.scrollY,width:u.width,height:u.height,viewModeEnabled:u.viewModeEnabled,openDialog:u.openDialog,hoveredElementIds:u.hoveredElementIds,offsetLeft:u.offsetLeft,offsetTop:u.offsetTop,theme:u.theme,pendingImageElementId:u.pendingImageElementId,shouldCacheIgnoreZoom:u.shouldCacheIgnoreZoom,viewBackgroundColor:u.viewBackgroundColor,exportScale:u.exportScale,selectedElementsAreBeingDragged:u.selectedElementsAreBeingDragged,gridSize:u.gridSize,gridStep:u.gridStep,frameRendering:u.frameRendering,selectedElementIds:u.selectedElementIds,frameToHighlight:u.frameToHighlight,editingGroupId:u.editingGroupId,currentHoveredFontFamily:u.currentHoveredFontFamily,croppingElementId:u.croppingElementId}),vZ3=(u,B)=>u.sceneNonce!==B.sceneNonce||u.scale!==B.scale||u.elementsMap!==B.elementsMap||u.visibleElements!==B.visibleElements?!1:h5(Osu(u.appState),Osu(B.appState))&&h5(u.renderConfig,B.renderConfig),SZ3=GQ.default.memo(xZ3,vZ3),Isu=class{constructor(u){j0(this,"scene"),j0(this,"getRenderableElements",(()=>{let B=({elementsMap:A,zoom:C,offsetLeft:D,offsetTop:F,scrollX:U,scrollY:z,height:k,width:f})=>{let l=[];for(let b of A.values())$O(b,f,k,{zoom:C,offsetLeft:D,offsetTop:F,scrollX:U,scrollY:z},A)&&l.push(b);return l},E=({elements:A,editingTextElement:C,newElementId:D,pendingImageElementId:F})=>{let U=RE(new Map);for(let z of A)H1(z)&&F===z.id||D!==z.id&&(!C||C.type!=="text"||z.id!==C.id)&&U.set(z.id,z);return U};return pku(({zoom:A,offsetLeft:C,offsetTop:D,scrollX:F,scrollY:U,height:z,width:k,editingTextElement:f,newElementId:l,pendingImageElementId:b,sceneNonce:M})=>{let Z=this.scene.getNonDeletedElements(),J=E({elements:Z,editingTextElement:f,newElementId:l,pendingImageElementId:b}),w=B({elementsMap:J,zoom:A,offsetLeft:C,offsetTop:D,scrollX:F,scrollY:U,height:z,width:k});return{elementsMap:J,visibleElements:w}})})()),this.scene=u}destroy(){Keu.cancel(),Xl0.cancel(),this.getRenderableElements.clear()}},WZ3=({trails:u})=>{let B=os.useRef(null);return os.useEffect(()=>{if(B.current)for(let E of u)E.start(B.current);return()=>{for(let E of u)E.stop()}},u),P("div",{className:"SVGLayer",children:P("svg",{ref:B})})},YZ3=5,RZ3=(u,B,E)=>{let[A,C]=S3(u,E),{x:D,y:F}=jA({sceneX:A+u.width,sceneY:C},B),U=D-B.offsetLeft+10,z=F-B.offsetTop;return{x:U,y:z}},Psu=({children:u,element:B,elementsMap:E})=>{let A=SP();if(A.contextMenu||A.newElement||A.resizingElement||A.isRotating||A.openMenu||A.viewModeEnabled)return null;let{x:C,y:D}=RZ3(B,A,E);return P("div",{className:"excalidraw-canvas-buttons",style:{top:`${D}px`,left:`${C}px`,padding:YZ3},children:u})},TZ3="small",jw0=(u)=>l0("label",{className:Yu("ToolIcon ToolIcon__MagicButton",`ToolIcon_size_${TZ3}`,{"is-mobile":u.isMobile}),title:`${u.title}`,children:[P("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:u.name,onChange:u.onChange,checked:u.checked,"aria-label":u.title}),P("div",{className:"ToolIcon__icon",children:u.icon})]}),OZ3=({height:u,width:B,userToFollow:E,onDisconnect:A})=>P("div",{className:"follow-mode",style:{width:B,height:u},children:l0("div",{className:"follow-mode__badge",children:[l0("div",{className:"follow-mode__badge__label",children:["Following"," ",P("span",{className:"follow-mode__badge__username",title:E.username,children:E.username})]}),P("button",{type:"button",onClick:A,className:"follow-mode__disconnect-btn",children:OK})]})}),IZ3=OZ3,PZ3=class{constructor(){j0(this,"targets",new WeakMap),j0(this,"rafIds",new WeakMap)}register(u,B){this.targets.set(u,{callback:B,stopped:!0})}start(u){let B=this.targets.get(u);B&&(this.rafIds.has(u)||(this.targets.set(u,{...B,stopped:!1}),this.scheduleFrame(u)))}stop(u){let B=this.targets.get(u);B&&!B.stopped&&this.targets.set(u,{...B,stopped:!0}),this.cancelFrame(u)}constructFrame(u){return(B)=>{let E=this.targets.get(u);if(!E)return;let A=this.onFrame(E,B);!E.stopped&&!A?this.scheduleFrame(u):this.cancelFrame(u)}}scheduleFrame(u){let B=requestAnimationFrame(this.constructFrame(u));this.rafIds.set(u,B)}cancelFrame(u){if(this.rafIds.has(u)){let B=this.rafIds.get(u);cancelAnimationFrame(B)}this.rafIds.delete(u)}onFrame(u,B){return u.callback(B)??!1}},BK0=class{constructor(u,B,E){this.animationFrameHandler=u,this.app=B,this.options=E,j0(this,"currentTrail"),j0(this,"pastTrails",[]),j0(this,"container"),j0(this,"trailElement"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.trailElement=document.createElementNS(Z1,"path")}get hasCurrentTrail(){return!!this.currentTrail}hasLastPoint(u,B){if(this.currentTrail){let E=this.currentTrail.originalPoints.length;return this.currentTrail.originalPoints[E-1][0]===u&&this.currentTrail.originalPoints[E-1][1]===B}return!1}start(u){u&&(this.container=u),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(u,B){this.currentTrail=new oM(this.options),this.currentTrail.addPoint([u,B,performance.now()]),this.update()}addPointToPath(u,B){this.currentTrail&&(this.currentTrail.addPoint([u,B,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 u=[];for(let E of this.pastTrails)u.push(this.drawTrail(E,this.app.state));if(this.currentTrail){let E=this.drawTrail(this.currentTrail,this.app.state);u.push(E)}this.pastTrails=this.pastTrails.filter((E)=>E.getStrokeOutline().length!==0),u.length===0&&this.stop();let B=u.join(" ").trim();this.trailElement.setAttribute("d",B),this.trailElement.setAttribute("fill",(this.options.fill??(()=>"black"))(this))}drawTrail(u,B){let E=u.getStrokeOutline(u.options.size/B.zoom.value).map(([A,C])=>{let D=jA({sceneX:A,sceneY:C},B);return[D.x,D.y]});return dku(E,!0)}},jZ3=class{constructor(u,B){this.animationFrameHandler=u,this.app=B,j0(this,"localTrail"),j0(this,"collabTrails",new Map),j0(this,"container"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.localTrail=new BK0(u,B,{...this.getTrailOptions(),fill:()=>fku})}getTrailOptions(){return{simplify:0,streamline:0.4,sizeMapping:(u)=>{let B=Math.max(0,1-(performance.now()-u.pressure)/1000),E=(50-Math.min(50,u.totalLength-u.currentIndex))/50;return Math.min(zM(E),zM(B))}}}startPath(u,B){this.localTrail.startPath(u,B)}addPointToPath(u,B){this.localTrail.addPointToPath(u,B)}endPath(){this.localTrail.endPath()}start(u){this.container=u,this.animationFrameHandler.start(this),this.localTrail.start(u)}stop(){this.animationFrameHandler.stop(this),this.localTrail.stop()}onFrame(){this.updateCollabTrails()}updateCollabTrails(){if(!(!this.container||this.app.state.collaborators.size===0)){for(let[u,B]of this.app.state.collaborators.entries()){let E;this.collabTrails.has(u)?E=this.collabTrails.get(u):(E=new BK0(this.animationFrameHandler,this.app,{...this.getTrailOptions(),fill:()=>B.pointer?.laserColor||hs(u,B)}),E.start(this.container),this.collabTrails.set(u,E)),B.pointer&&B.pointer.tool==="laser"&&(B.button==="down"&&!E.hasCurrentTrail&&E.startPath(B.pointer.x,B.pointer.y),B.button==="down"&&E.hasCurrentTrail&&!E.hasLastPoint(B.pointer.x,B.pointer.y)&&E.addPointToPath(B.pointer.x,B.pointer.y),B.button==="up"&&E.hasCurrentTrail&&(E.addPointToPath(B.pointer.x,B.pointer.y),E.endPath()))}for(let u of this.collabTrails.keys())this.app.state.collaborators.has(u)||(this.collabTrails.get(u).stop(),this.collabTrails.delete(u))}}},NZ3=(u,B,E,A,C,D)=>{let{zoom:F}=A,U=180*E/Math.PI,z=u*(F.value-1)/2,k=B*(F.value-1)/2;return u>C&&F.value!==1&&(z=C*(F.value-1)/2),B>D&&F.value!==1&&(k=D*(F.value-1)/2),`translate(${z}px, ${k}px) scale(${F.value}) rotate(${U}deg)`},iZ3=({id:u,onChange:B,onSubmit:E,getViewportCoords:A,element:C,canvas:D,excalidrawContainer:F,app:U,autoSelect:z=!0})=>{let k=(I,O)=>{if(!O.style.fontFamily||!O.style.fontSize)return!1;let i=O.style.fontFamily.replace(/"/g,"");return WK({fontFamily:I.fontFamily})!==i||`${I.fontSize}px`!==O.style.fontSize},f=()=>{let I=U.state,O=RU.getScene(C)?.getElement(u);if(!O)return;let{textAlign:i,verticalAlign:N}=O,V=U.scene.getNonDeletedElementsMap();if(O&&l4(O)){let{x:h,y:r}=O,m=l5(O,U.scene.getNonDeletedElementsMap()),$=O.width,y=O.height,p=O.width,e=O.height;if(m&&O.containerId){if(j3(m)){let a0=M4.getBoundTextElementPosition(m,O,V);h=a0.x,r=a0.y}let q0=k(O,l),m0;if(q0?m0=TO(m.id,m.height):(m0=GK[m.id],m0||(m0=TO(m.id,m.height))),p=kD(m,O),e=fX(m,O),!j3(m)&&y>e){let a0=CM(y,m.type);Wu(m,{height:a0});return}else if(!j3(m)&&m.height>m0.height&&y<e){let a0=CM(y,m.type);Wu(m,{height:a0})}else{let{y:a0}=OO(m,O,V);r=a0}}let[_,b0]=A(h,r),B0=l.selectionStart,k0=l.selectionEnd,f0=l.value.length;if(B0===k0&&k0!==f0){let q0=f0-k0;l.selectionStart=l.value.length-q0,l.selectionEnd=l.value.length-q0}m?$+=0.5:(p=(I.width-8-_)/I.zoom.value,$=Math.min($,p)),y*=1.05;let D0=e1(O),P0=(I.height-b0)/I.zoom.value;Object.assign(l.style,{font:D0,lineHeight:O.lineHeight,width:`${$}px`,height:`${y}px`,left:`${_}px`,top:`${b0}px`,transform:NZ3($,y,jbu(O,m),I,p,P0),textAlign:i,verticalAlign:N,color:O.strokeColor,opacity:O.opacity/100,filter:"var(--theme-filter)",maxHeight:`${P0}px`}),l.scrollTop=0,OU()&&(l.style.fontFamily=WK(O)),Wu(O,{x:h,y:r})}},l=document.createElement("textarea");l.dir="auto",l.tabIndex=0,l.dataset.type="wysiwyg",l.wrap="off",l.classList.add("excalidraw-wysiwyg");let b="pre",M="normal";(X6(C)||!C.autoResize)&&(b="pre-wrap",M="break-word"),Object.assign(l.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:M,whiteSpace:b,overflowWrap:"break-word",boxSizing:"content-box"}),l.value=C.originalText,f(),B&&(l.onpaste=async(I)=>{let O=await Pl0(I,!0);if(!O.text)return;let i=TK(O.text);if(!i)return;let N=l5(C,U.scene.getNonDeletedElementsMap()),V=e1({fontSize:U.state.currentItemFontSize,fontFamily:U.state.currentItemFontFamily});if(N){let h=Y3(N,U.scene.getNonDeletedElementsMap()),r=bM(`${l.value}${i}`,V,kD(N,h)),m=d_(r,V);l.style.width=`${m}px`}},l.oninput=()=>{let I=TK(l.value);if(l.value!==I){let O=l.selectionStart;l.value=I,l.selectionStart=O,l.selectionEnd=O}B(l.value)}),l.onkeydown=(I)=>{if(!I.shiftKey&&Pdu.keyTest(I))I.preventDefault(),U.actionManager.executeAction(Pdu),f();else if(!I.shiftKey&&jdu.keyTest(I))I.preventDefault(),U.actionManager.executeAction(jdu),f();else if(!I.shiftKey&&Ndu.keyTest(I))I.preventDefault(),U.actionManager.executeAction(Ndu),f();else if(Tdu.keyTest(I))U.actionManager.executeAction(Tdu);else if(Odu.keyTest(I))U.actionManager.executeAction(Odu);else if(I.key===y0.ESCAPE)I.preventDefault(),H=!0,q();else if(I.key===y0.ENTER&&I[y0.CTRL_OR_CMD]){if(I.preventDefault(),I.isComposing||I.keyCode===229)return;H=!0,q()}else if(I.key===y0.TAB||I[y0.CTRL_OR_CMD]&&(I.code===U1.BRACKET_LEFT||I.code===U1.BRACKET_RIGHT)){if(I.preventDefault(),I.isComposing)return;I.shiftKey||I.code===U1.BRACKET_LEFT?Q():K(),l.dispatchEvent(new Event("input"))}};let Z=4,J=" ".repeat(Z),w=new RegExp(`^ {1,${Z}}`),K=()=>{let{selectionStart:I,selectionEnd:O}=l,i=G(),N=l.value;i.forEach((V)=>{let h=N.slice(0,V),r=N.slice(V);N=`${h}${J}${r}`}),l.value=N,l.selectionStart=I+Z,l.selectionEnd=O+Z*i.length},Q=()=>{let{selectionStart:I,selectionEnd:O}=l,i=G(),N=[],V=l.value;i.forEach((h)=>{let r=V.slice(h,h+Z).match(w);if(r){let m=V.slice(0,h),$=V.slice(h+r[0].length);V=`${m}${$}`,N.push(h)}}),l.value=V,N.length&&(I>N[N.length-1]?l.selectionStart=Math.max(I-Z,N[N.length-1]):l.selectionStart=I,l.selectionEnd=Math.max(l.selectionStart,O-Z*N.length))},G=()=>{let{selectionStart:I,selectionEnd:O,value:i}=l,N=i.slice(0,I).match(/[^\n]*$/)[0].length;return I=I-N,i.slice(I,O).split(`
`).reduce((V,h,r,m)=>V.concat(r?V[r-1]+m[r-1].length+1:I),[]).reverse()},L=(I)=>{I.target instanceof HTMLCanvasElement&&(I.preventDefault(),I.stopPropagation())},H=!1,q=()=>{if(Y)return;Y=!0,x();let I=RU.getScene(C)?.getElement(C.id);if(!I)return;let O=l5(I,U.scene.getNonDeletedElementsMap());if(O){if(l.value.trim()){let i=YU(O);!i||i!==C.id?Wu(O,{boundElements:(O.boundElements||[]).concat({type:"text",id:C.id})}):j3(O)&&rO(O)}else Wu(O,{boundElements:O.boundElements?.filter((i)=>!l4(i))});c7(I,O,U.scene.getNonDeletedElementsMap())}E({viaKeyboard:H,nextOriginalText:l.value})},x=()=>{l.onblur=null,l.oninput=null,l.onkeydown=null,a&&a.disconnect(),window.removeEventListener("resize",f),window.removeEventListener("wheel",L,!0),window.removeEventListener("pointerdown",S),window.removeEventListener("pointerup",v),window.removeEventListener("blur",q),window.removeEventListener("beforeunload",q),T(),R(),l.remove()},v=(I)=>{window.removeEventListener("pointerup",v);let O=I?.target,i=O instanceof HTMLElement&&O.classList.contains("properties-trigger");setTimeout(()=>{l.onblur=q,i||l.focus()})},W=()=>{l.onblur=null,window.addEventListener("pointerup",v),window.addEventListener("blur",q)},S=(I)=>{let O=I?.target;if(I.button===sk.WHEEL){O instanceof HTMLTextAreaElement&&(I.preventDefault(),U.handleCanvasPanUsingWheelOrSpaceDrag(I)),W();return}let i=O instanceof HTMLElement&&O.classList.contains("properties-trigger");(I.target instanceof HTMLElement||I.target instanceof SVGElement)&&I.target.closest(`.${qK.SHAPE_ACTIONS_MENU}, .${qK.ZOOM_ACTIONS}`)&&!UM(I.target)||i?W():I.target instanceof HTMLCanvasElement&&!OU()&&requestAnimationFrame(()=>{q()})},T=U.scene.onUpdate(()=>{f(),!!document.activeElement?.closest(".properties-content")||l.focus()}),R=U.onScrollChangeEmitter.on(()=>{f()}),Y=!1;z&&l.select(),v();let a=null;D&&"ResizeObserver"in window?(a=new window.ResizeObserver(()=>{f()}),a.observe(D)):window.addEventListener("resize",f),l.onpointerdown=(I)=>I.stopPropagation(),requestAnimationFrame(()=>{window.addEventListener("pointerdown",S,{capture:!0})}),window.addEventListener("beforeunload",q),F?.querySelector(".excalidraw-textEditorContainer").appendChild(l)},aZ3=C4({name:"autoResize",label:"labels.autoResize",icon:null,trackEvent:{category:"element"},predicate:(u,B,E,A)=>{let C=N3(u,B);return C.length===1&&l4(C[0])&&!C[0].autoResize},perform:(u,B,E,A)=>{let C=N3(u,B);return{appState:B,elements:u.map((D)=>{if(D.id===C[0].id&&l4(D)){let F=Q7(D.originalText,e1(D),D.lineHeight);return O3(D,{autoResize:!0,width:F.width,height:F.height,text:D.originalText})}return D}),captureUpdate:Xu.IMMEDIATELY}}}),VZ3=(u)=>{return 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((E)=>`\\s*${E}(-beta)?`).join("|")})\\b`).test(u.trim())},Qeu=({canvas:u,rc:B,newElement:E,elementsMap:A,allElementsMap:C,scale:D,appState:F,renderConfig:U})=>{if(u){let[z,k]=jn(u,D),f=Nn({canvas:u,scale:D,normalizedWidth:z,normalizedHeight:k});f.save(),f.scale(F.zoom.value,F.zoom.value),E&&E.type!=="selection"?pb(E,A,C,B,f,U,F):f.clearRect(0,0,z,k)}},hZ3=MO((u)=>{Qeu(u)},{trailing:!0}),mZ3=(u,B)=>{if(B){hZ3(u);return}Qeu(u)},rZ3=(u)=>{let B=ts.useRef(null);return ts.useEffect(()=>{B.current&&mZ3({canvas:B.current,scale:u.scale,newElement:u.appState.newElement,elementsMap:u.elementsMap,allElementsMap:u.allElementsMap,rc:u.rc,renderConfig:u.renderConfig,appState:u.appState},qK0())}),P("canvas",{className:"excalidraw__canvas",style:{width:u.appState.width,height:u.appState.height},width:u.appState.width*u.scale,height:u.appState.height*u.scale,ref:B})},$Z3=rZ3,Geu=i2.default.createContext(null),Heu=i2.default.createContext(null),Leu={viewport:{isMobile:!1,isLandscape:!1},editor:{isMobile:!1,canFitSidebar:!1},isTouchScreen:!1},XK0=i2.default.createContext(Leu);XK0.displayName="DeviceContext";var xK0=i2.default.createContext({container:null,id:null});xK0.displayName="ExcalidrawContainerContext";var vK0=i2.default.createContext([]);vK0.displayName="ExcalidrawElementsContext";var SK0=i2.default.createContext({...MD(),width:0,height:0,offsetLeft:0,offsetTop:0});SK0.displayName="ExcalidrawAppStateContext";var WK0=i2.default.createContext(()=>{console.warn("Uninitialized ExcalidrawSetAppStateContext context!")});WK0.displayName="ExcalidrawSetAppStateContext";var YK0=i2.default.createContext(null);YK0.displayName="ExcalidrawActionManagerContext";var uz=()=>i2.useContext(Geu),vP=()=>i2.useContext(Heu),K5=()=>i2.useContext(XK0),Bz=()=>i2.useContext(xK0),es=()=>i2.useContext(vK0),SP=()=>i2.useContext(SK0),V2=()=>i2.useContext(WK0),_8=()=>i2.useContext(YK0),DP=!1,Nw0=0,lQ=!1,FP=!1,iw0=!1,aw0={horizontal:null,vertical:null},tM=0,UP=!1,Vw0=new Map,fs=!1,jsu=0,Nsu=!1,zP=null,I1={pointers:new Map,lastCenter:null,initialDistance:null,initialScale:null},yZ3=class u extends i2.default.Component{constructor(B){super(B);j0(this,"canvas"),j0(this,"interactiveCanvas",null),j0(this,"rc"),j0(this,"unmounted",!1),j0(this,"actionManager"),j0(this,"device",Leu),j0(this,"excalidrawContainerRef",i2.default.createRef()),j0(this,"scene"),j0(this,"fonts"),j0(this,"renderer"),j0(this,"visibleElements"),j0(this,"resizeObserver"),j0(this,"nearestScrollableContainer"),j0(this,"library"),j0(this,"libraryItemsFromStorage"),j0(this,"id"),j0(this,"store"),j0(this,"history"),j0(this,"excalidrawContainerValue"),j0(this,"files",{}),j0(this,"imageCache",new Map),j0(this,"iFrameRefs",new Map),j0(this,"embedsValidationStatus",new Map),j0(this,"initializedEmbeds",new Set),j0(this,"elementsPendingErasure",new Set),j0(this,"flowChartCreator",new Ub3),j0(this,"flowChartNavigator",new Fb3),j0(this,"hitLinkElement"),j0(this,"lastPointerDownEvent",null),j0(this,"lastPointerUpEvent",null),j0(this,"lastPointerMoveEvent",null),j0(this,"lastPointerMoveCoords",null),j0(this,"lastViewportPosition",{x:0,y:0}),j0(this,"animationFrameHandler",new PZ3),j0(this,"laserTrails",new jZ3(this.animationFrameHandler,this)),j0(this,"eraserTrail",new BK0(this.animationFrameHandler,this,{streamline:0.2,size:5,keepHead:!0,sizeMapping:(f)=>{let l=Math.max(0,1-(performance.now()-f.pressure)/200),b=(10-Math.min(10,f.totalLength-f.currentIndex))/10;return Math.min(zM(b),zM(l))},fill:()=>this.state.theme===_3.LIGHT?"rgba(0, 0, 0, 0.2)":"rgba(255, 255, 255, 0.2)"})),j0(this,"onChangeEmitter",new GD),j0(this,"onPointerDownEmitter",new GD),j0(this,"onPointerUpEmitter",new GD),j0(this,"onUserFollowEmitter",new GD),j0(this,"onScrollChangeEmitter",new GD),j0(this,"missingPointerEventCleanupEmitter",new GD),j0(this,"onRemoveEventListenersEmitter",new GD),j0(this,"getEffectiveGridSize",()=>zX(this)?this.state.gridSize:null),j0(this,"updateEmbedValidationStatus",(f,l)=>{this.embedsValidationStatus.set(f.id,l),p6.delete(f)}),j0(this,"updateEmbeddables",()=>{let f=new Set,l=!1;this.scene.getNonDeletedElements().filter((b)=>{if(rB(b)){if(f.add(b.id),!this.embedsValidationStatus.has(b.id)){l=!0;let M=IO(b.link,this.props.validateEmbeddable);this.updateEmbedValidationStatus(b,M)}}else tk(b)&&f.add(b.id);return!1}),l&&this.scene.triggerUpdate(),this.iFrameRefs.forEach((b,M)=>{f.has(M)||this.iFrameRefs.delete(M)})}),j0(this,"getFrameNameDOMId",(f)=>`${this.id}-frame-name-${f.id}`),j0(this,"frameNameBoundsCache",{get:(f)=>{let l=this.frameNameBoundsCache._cache.get(f.id);if(!l||l.zoom!==this.state.zoom.value||l.versionNonce!==f.versionNonce){let b=document.getElementById(this.getFrameNameDOMId(f));if(b){let M=b.getBoundingClientRect(),Z=Q6({clientX:M.x,clientY:M.y},this.state),J=Q6({clientX:M.right,clientY:M.bottom},this.state);return l={x:Z.x,y:Z.y,width:J.x-Z.x,height:J.y-Z.y,angle:0,zoom:this.state.zoom.value,versionNonce:f.versionNonce},this.frameNameBoundsCache._cache.set(f.id,l),l}return null}return l},_cache:new Map}),j0(this,"resetEditingFrame",(f)=>{f&&Wu(f,{name:f.name?.trim()||null}),this.setState({editingFrame:null})}),j0(this,"renderFrameNames",()=>{if(!this.state.frameRendering.enabled||!this.state.frameRendering.name)return this.state.editingFrame&&this.resetEditingFrame(null),null;let f=this.state.theme===_3.DARK;return this.scene.getNonDeletedFramesLikes().map((l)=>{if(!$O(l,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===l.id&&this.resetEditingFrame(l),null;let{x:b,y:M}=jA({sceneX:l.x,sceneY:l.y},this.state),Z=6,J,w=ml0(l);if(l.id===this.state.editingFrame){let K=w;J=P("input",{autoFocus:!0,value:K,onChange:(Q)=>{Wu(l,{name:Q.target.value})},onFocus:(Q)=>Q.target.select(),onBlur:()=>this.resetEditingFrame(l),onKeyDown:(Q)=>{(Q.key===y0.ESCAPE||Q.key===y0.ENTER)&&this.resetEditingFrame(l)},style:{background:this.state.viewBackgroundColor,filter:f?$_:"none",zIndex:2,border:"none",display:"block",padding:`${Z}px`,borderRadius:4,boxShadow:"inset 0 0 0 1px var(--color-primary)",fontFamily:"Assistant",fontSize:"14px",transform:`translate(-${Z}px, ${Z}px)`,color:"var(--color-gray-80)",overflow:"hidden",maxWidth:`${document.body.clientWidth-b-Z}px`},size:K.length+1||1,dir:"auto",autoComplete:"off",autoCapitalize:"off",autoCorrect:"off"})}else J=w;return P("div",{id:this.getFrameNameDOMId(l),style:{position:"absolute",bottom:`${this.state.height+j6.nameOffsetY-M+this.state.offsetTop}px`,left:`${b-this.state.offsetLeft}px`,zIndex:2,fontSize:j6.nameFontSize,color:f?j6.nameColorDarkTheme:j6.nameColorLightTheme,lineHeight:j6.nameLineHeight,width:"max-content",maxWidth:`${l.width}px`,overflow:l.id===this.state.editingFrame?"visible":"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",cursor:g1.MOVE,pointerEvents:this.state.viewModeEnabled?LK.disabled:LK.enabled},onPointerDown:(K)=>this.handleCanvasPointerDown(K),onWheel:(K)=>this.handleWheel(K),onContextMenu:this.handleCanvasContextMenu,onDoubleClick:()=>{this.setState({editingFrame:l.id})},children:J},l.id)})}),j0(this,"focusContainer",()=>{this.excalidrawContainerRef.current?.focus()}),j0(this,"getSceneElementsIncludingDeleted",()=>this.scene.getElementsIncludingDeleted()),j0(this,"getSceneElements",()=>this.scene.getNonDeletedElements()),j0(this,"onInsertElements",(f)=>{this.addElementsFromPasteOrLibrary({elements:f,position:"center",files:null})}),j0(this,"onExportImage",async(f,l,b)=>{G6("export",f,"ui");let M=await Vs(f,l,this.state,this.files,{exportBackground:this.state.exportBackground,name:this.getName(),viewBackgroundColor:this.state.viewBackgroundColor,exportingFrame:b.exportingFrame}).catch(hk0).catch((Z)=>{console.error(Z),this.setState({errorMessage:Z.message})});this.state.exportEmbedScene&&M&&Bp(M)&&this.setState({fileHandle:M})}),j0(this,"magicGenerations",new Map),j0(this,"updateMagicGeneration",({frameElement:f,data:l})=>{l.status==="pending"?Wu(f,{customData:{generationData:void 0}},!1):Wu(f,{customData:{generationData:l}},!1),this.magicGenerations.set(f.id,l),this.triggerRender()}),j0(this,"plugins",{}),j0(this,"onMagicframeToolSelect",()=>{let f=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds});if(f.length===0)this.setActiveTool({type:O2.magicframe}),G6("ai","tool-select (empty-selection)","d2c");else{let l=f.length===1&&KO(f[0])&&f[0];if(!l&&f.some((M)=>u3(M)||M.frameId)){this.setActiveTool({type:O2.magicframe});return}G6("ai","tool-select (existing selection)","d2c");let b;if(l)b=l;else{let[M,Z,J,w]=T1(f),K=50;b=Wn({...j6,x:M-K,y:Z-K,width:J-M+K*2,height:w-Z+K*2,opacity:100,locked:!1}),this.scene.insertElement(b);for(let Q of f)Wu(Q,{frameId:b.id});this.setState({selectedElementIds:{[b.id]:!0}})}this.onMagicFrameGenerate(b,"upstream")}}),j0(this,"openEyeDropper",({type:f})=>{mD.set(Is,{swapPreviewOnAlt:!0,colorPickerType:f==="stroke"?"elementStroke":"elementBackground",onSelect:(l,b)=>{let M=f==="background"&&b.altKey||f==="stroke"&&!b.altKey;!this.scene.getSelectedElements(this.state).length||this.state.activeTool.type!=="selection"?M?this.syncActionResult({appState:{...this.state,currentItemStrokeColor:l},captureUpdate:Xu.IMMEDIATELY}):this.syncActionResult({appState:{...this.state,currentItemBackgroundColor:l},captureUpdate:Xu.IMMEDIATELY}):this.updateScene({elements:this.scene.getElementsIncludingDeleted().map((Z)=>this.state.selectedElementIds[Z.id]?O3(Z,{[M?"strokeColor":"backgroundColor"]:l}):Z),captureUpdate:Xu.IMMEDIATELY})},keepOpenOnAlt:!1})}),j0(this,"dismissLinearEditor",()=>{setTimeout(()=>{this.setState({editingLinearElement:null})})}),j0(this,"syncActionResult",I9((f)=>{if(this.unmounted||f===!1)return;f.captureUpdate===Xu.NEVER?this.store.shouldUpdateSnapshot():f.captureUpdate===Xu.IMMEDIATELY&&this.store.shouldCaptureIncrement();let l=!1,b=null;if(f.elements&&(this.scene.replaceAllElements(f.elements),l=!0),f.files&&(this.addMissingFiles(f.files,f.replaceFiles),this.addNewImagesToImageCache()),f.appState||b||this.state.contextMenu){let M=f?.appState?.viewModeEnabled||!1,Z=f?.appState?.zenModeEnabled||!1,J=f?.appState?.theme||this.props.theme||_3.LIGHT,w=f?.appState?.name??this.state.name,K=f?.appState?.errorMessage??this.state.errorMessage;typeof this.props.viewModeEnabled<"u"&&(M=this.props.viewModeEnabled),typeof this.props.zenModeEnabled<"u"&&(Z=this.props.zenModeEnabled),b=f.appState?.editingTextElement||null,f.elements&&b&&f.elements.forEach((Q)=>{b?.id===Q.id&&b!==Q&&up(Q)&&l4(Q)&&(b=Q)}),b?.isDeleted&&(b=null),this.setState((Q)=>{let G=f.appState||{};return{...Q,...G,contextMenu:null,editingTextElement:b,viewModeEnabled:M,zenModeEnabled:Z,theme:J,name:w,errorMessage:K}}),l=!0}!l&&f.captureUpdate!==Xu.EVENTUALLY&&this.scene.triggerUpdate()})),j0(this,"onBlur",I9(()=>{lQ=!1,this.setState({isBindingEnabled:!0})})),j0(this,"onUnload",()=>{this.onBlur()}),j0(this,"disableEvent",(f)=>{f.preventDefault()}),j0(this,"resetHistory",()=>{this.history.clear()}),j0(this,"resetStore",()=>{this.store.clear()}),j0(this,"resetScene",I9((f)=>{this.scene.replaceAllElements([]),this.setState((l)=>({...MD(),isLoading:f?.resetLoadingState?!1:l.isLoading,theme:this.state.theme})),this.resetStore(),this.resetHistory()})),j0(this,"initializeScene",async()=>{"launchQueue"in window&&"LaunchParams"in window&&window.launchQueue.setConsumer(async(b)=>{if(!b.files.length)return;let M=b.files[0],Z=await M.getFile();this.loadFileToCanvas(new File([Z],Z.name||"",{type:Z.type}),M)}),this.props.theme&&this.setState({theme:this.props.theme}),this.state.isLoading||this.setState({isLoading:!0});let f=null;try{typeof this.props.initialData=="function"?f=await this.props.initialData()||null:f=await this.props.initialData||null,f?.libraryItems&&this.library.updateLibrary({libraryItems:f.libraryItems,merge:!0}).catch((b)=>{console.error(b)})}catch(b){console.error(b),f={appState:{errorMessage:b.message||"Encountered an error during importing or restoring scene data"}}}let l=iO(f,null,null,{repairBindings:!0});l.appState={...l.appState,theme:this.props.theme||l.appState.theme,openSidebar:l.appState?.openSidebar||this.state.openSidebar,activeTool:l.appState.activeTool.type==="image"?{...l.appState.activeTool,type:"selection"}:l.appState.activeTool,isLoading:!1,toast:this.state.toast},f?.scrollToContent&&(l.appState={...l.appState,...FX(l.elements,{...l.appState,width:this.state.width,height:this.state.height,offsetTop:this.state.offsetTop,offsetLeft:this.state.offsetLeft})}),this.resetStore(),this.resetHistory(),this.syncActionResult({...l,captureUpdate:Xu.NEVER}),this.clearImageShapeCache(),this.fonts.loadSceneFonts().then((b)=>{this.fonts.onLoaded(b)}),lX(window.location.href)&&this.scrollToContent(window.location.href,{animate:!1})}),j0(this,"isMobileBreakpoint",(f,l)=>f<Lku||l<Xku&&f<qku),j0(this,"refreshViewportBreakpoints",()=>{if(!this.excalidrawContainerRef.current)return;let{clientWidth:f,clientHeight:l}=document.body,b=this.device.viewport,M=JO(b,{isLandscape:f>l,isMobile:this.isMobileBreakpoint(f,l)});return b!==M?(this.device={...this.device,viewport:M},!0):!1}),j0(this,"refreshEditorBreakpoints",()=>{let f=this.excalidrawContainerRef.current;if(!f)return;let{width:l,height:b}=f.getBoundingClientRect(),M=this.props.UIOptions.dockedSidebarBreakpoint!=null?this.props.UIOptions.dockedSidebarBreakpoint:xku,Z=this.device.editor,J=JO(Z,{isMobile:this.isMobileBreakpoint(l,b),canFitSidebar:l>M});return Z!==J?(this.device={...this.device,editor:J},!0):!1}),j0(this,"onResize",I9(()=>{this.scene.getElementsIncludingDeleted().forEach((f)=>p6.delete(f)),this.refreshViewportBreakpoints(),this.updateDOMRect(),a_||this.refreshEditorBreakpoints(),this.setState({})})),j0(this,"onFullscreenChange",()=>{!document.fullscreenElement&&this.state.activeEmbeddable?.state==="active"&&this.setState({activeEmbeddable:null})}),j0(this,"renderInteractiveSceneCallback",({atLeastOneVisibleElement:f,scrollBars:l,elementsMap:b})=>{l&&(aw0=l);let M=this.state.editingTextElement?!1:!f&&b.size>0;this.state.scrolledOutside!==M&&this.setState({scrolledOutside:M}),this.scheduleImageRefresh()}),j0(this,"onScroll",YK(()=>{let{offsetTop:f,offsetLeft:l}=this.getCanvasOffsets();this.setState((b)=>b.offsetLeft===l&&b.offsetTop===f?null:{offsetTop:f,offsetLeft:l})},Gku)),j0(this,"onCut",I9((f)=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||UM(f.target)||(this.actionManager.executeAction(rdu,"keyboard",f),f.preventDefault(),f.stopPropagation())})),j0(this,"onCopy",I9((f)=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||UM(f.target)||(this.actionManager.executeAction(Ms,"keyboard",f),f.preventDefault(),f.stopPropagation())})),j0(this,"onTouchStart",(f)=>{if(Wk0&&f.preventDefault(),!DP){DP=!0,clearTimeout(Nw0),Nw0=window.setTimeout(u.resetTapTwice,Kku);return}if(DP&&f.touches.length===1){let l=f.touches[0];this.handleCanvasDoubleClick({clientX:l.clientX,clientY:l.clientY}),DP=!1,clearTimeout(Nw0)}f.touches.length===2&&this.setState({selectedElementIds:L1({},this.state),activeEmbeddable:null})}),j0(this,"onTouchEnd",(f)=>{this.resetContextMenuTimer(),f.touches.length>0?this.setState({previousSelectedElementIds:{},selectedElementIds:L1(this.state.previousSelectedElementIds,this.state)}):I1.pointers.clear()}),j0(this,"pasteFromClipboard",I9(async(f)=>{let l=!!fs,b=document.activeElement,M=this.excalidrawContainerRef.current?.contains(b);if(f&&!M)return;let Z=document.elementFromPoint(this.lastViewportPosition.x,this.lastViewportPosition.y);if(f&&(!(Z instanceof HTMLCanvasElement)||UM(b)))return;let{x:J,y:w}=Q6({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),K=f?.clipboardData?.files[0],Q=await Pl0(f,l);if(!K&&!l){if(Q.mixedContent)return this.addElementsFromMixedContentPaste(Q.mixedContent,{isPlainPaste:l,sceneX:J,sceneY:w});if(Q.text){let G=Q.text.trim();G.startsWith("<svg")&&G.endsWith("</svg>")&&(K=Cb0(G))}}if(GM(K)&&!Q.spreadsheet){if(!this.isToolSupported("image")){this.setState({errorMessage:C0("errors.imageToolNotSupported")});return}let G=this.createImageElement({sceneX:J,sceneY:w});this.insertImageElement(G,K),this.initializeImageDimensions(G),this.setState({selectedElementIds:L1({[G.id]:!0},this.state)});return}if(this.props.onPaste)try{if(await this.props.onPaste(Q,f)===!1)return}catch(G){console.error(G)}if(Q.errorMessage)this.setState({errorMessage:Q.errorMessage});else if(Q.spreadsheet&&!l)this.setState({pasteDialog:{data:Q.spreadsheet,shown:!0}});else if(Q.elements){let G=Q.programmaticAPI?qP(Q.elements):Q.elements;this.addElementsFromPasteOrLibrary({elements:G,files:Q.files||null,position:"cursor",retainSeed:l})}else if(Q.text){if(Q.text&&VZ3(Q.text)){let H=await Promise.resolve().then(() => (Wg(),aU0));try{let{elements:q,files:x={}}=await H.parseMermaidToExcalidraw(Q.text),v=qP(q,{regenerateIds:!0});this.addElementsFromPasteOrLibrary({elements:v,files:x,position:"cursor"});return}catch(q){console.warn(`parsing pasted text as mermaid definition failed: ${q.message}`)}}let G=ck0(Q.text).split(/\n+/).map((H)=>H.trim()).filter(Boolean),L=G.map((H)=>obu(H)).filter((H)=>IO(H,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(H)||NK(H)?.type==="video"));if(!fs&&L.length>0&&L.length===G.length){let H=[];for(let q of L){let x=H[H.length-1],v=this.insertEmbeddableElement({sceneX:x?x.x+x.width+20:J,sceneY:w,link:j8(q)});v&&H.push(v)}H.length&&this.setState({selectedElementIds:Object.fromEntries(H.map((q)=>[q.id,!0]))});return}this.addTextFromPaste(Q.text,l)}this.setActiveTool({type:"selection"}),f?.preventDefault()})),j0(this,"addElementsFromPasteOrLibrary",(f)=>{let l=hn(f.elements,null,void 0),[b,M,Z,J]=T1(l),w=K7(b,Z)/2,K=K7(M,J)/2,Q=typeof f.position=="object"?f.position.clientX:f.position==="cursor"?this.lastViewportPosition.x:this.state.width/2+this.state.offsetLeft,G=typeof f.position=="object"?f.position.clientY:f.position==="cursor"?this.lastViewportPosition.y:this.state.height/2+this.state.offsetTop,{x:L,y:H}=Q6({clientX:Q,clientY:G},this.state),q=L-w,x=H-K,[v,W]=M2(q,x,this.getEffectiveGridSize()),S=Ml0(l.map((I)=>O3(I,{x:I.x+v-b,y:I.y+W-M})),{randomizeSeed:!f.retainSeed}),T=this.scene.getElementsIncludingDeleted(),R=[...T,...S];R=this.props.onDuplicate?.(R,T)||R,lD(R,e4(S));let Y=this.getTopLayerFrameAtSceneCoords({x:L,y:H});if(Y){let I=vMu(S,Y);ZX(R,I,Y,this.state)}this.scene.replaceAllElements(R),S.forEach((I)=>{if(l4(I)&&X6(I)){let O=l5(I,this.scene.getElementsMapIncludingDeleted());c7(I,O,this.scene.getElementsMapIncludingDeleted())}}),Dku&&PU.loadElementsFonts(S).then((I)=>{this.fonts.onLoaded(I)}),f.files&&this.addMissingFiles(f.files),this.store.shouldCaptureIncrement();let a=pn(S);this.setState({...this.state,openSidebar:this.state.openSidebar&&this.device.editor.canFitSidebar&&mD.get(wK0)?this.state.openSidebar:null,...y7({editingGroupId:null,selectedElementIds:a.reduce((I,O)=>(X6(O)||(I[O.id]=!0),I),{})},this.scene.getNonDeletedElements(),this.state,this)},()=>{f.files&&this.addNewImagesToImageCache()}),this.setActiveTool({type:"selection"}),f.fitToContent&&this.scrollToContent(S,{fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()})}),j0(this,"setAppState",(f,l)=>{this.setState(f,l)}),j0(this,"removePointer",(f)=>{tM&&this.resetContextMenuTimer(),I1.pointers.delete(f.pointerId)}),j0(this,"toggleLock",(f="ui")=>{this.state.activeTool.locked||G6("toolbar","toggleLock",`${f} (${this.device.editor.isMobile?"mobile":"desktop"})`),this.setState((l)=>({activeTool:{...l.activeTool,...n9(this.state,l.activeTool.locked?{type:"selection"}:l.activeTool),locked:!l.activeTool.locked}}))}),j0(this,"updateFrameRendering",(f)=>{this.setState((l)=>{let b=typeof f=="function"?f(l.frameRendering):f;return{frameRendering:{enabled:b?.enabled??l.frameRendering.enabled,clip:b?.clip??l.frameRendering.clip,name:b?.name??l.frameRendering.name,outline:b?.outline??l.frameRendering.outline}}})}),j0(this,"togglePenMode",(f)=>{this.setState((l)=>({penMode:f??!l.penMode,penDetected:!0}))}),j0(this,"onHandToolToggle",()=>{this.actionManager.executeAction(ck3)}),j0(this,"zoomCanvas",(f)=>{this.setState({...bQ({viewportX:this.state.width/2+this.state.offsetLeft,viewportY:this.state.height/2+this.state.offsetTop,nextZoom:jU(f)},this.state)})}),j0(this,"cancelInProgressAnimation",null),j0(this,"scrollToContent",(f=this.scene.getNonDeletedElements(),l)=>{if(typeof f=="string"){let w;if(lX(f)?w=AMu(f):w=f,w){let K=this.scene.getElementsFromId(w);K?.length?this.scrollToContent(K,{fitToContent:l?.fitToContent??!0,animate:l?.animate??!0}):lX(f)&&this.setState({toast:{message:C0("elementLink.notFound"),duration:3000,closable:!0}})}return}this.cancelInProgressAnimation?.();let b=Array.isArray(f)?f:[f],M=this.state.zoom,Z=this.state.scrollX,J=this.state.scrollY;if(l?.fitToContent||l?.fitToViewport){let{appState:w}=is({canvasOffsets:l.canvasOffsets,targetElements:b,appState:this.state,fitToViewport:!!l?.fitToViewport,viewportZoomFactor:l?.viewportZoomFactor,minZoom:l?.minZoom,maxZoom:l?.maxZoom});M=w.zoom,Z=w.scrollX,J=w.scrollY}else{let w=FX(b,this.state);Z=w.scrollX,J=w.scrollY}if(l?.animate){let w=this.state.scrollX,K=this.state.scrollY,Q=this.state.zoom.value,G=hku({fromValues:{scrollX:w,scrollY:K,zoom:Q},toValues:{scrollX:Z,scrollY:J,zoom:M.value},interpolateValue:(L,H,q,x)=>{if(x==="zoom")return L*Math.pow(H/L,zM(q))},onStep:({scrollX:L,scrollY:H,zoom:q})=>{this.setState({scrollX:L,scrollY:H,zoom:{value:q}})},onStart:()=>{this.setState({shouldCacheIgnoreZoom:!0})},onEnd:()=>{this.setState({shouldCacheIgnoreZoom:!1})},onCancel:()=>{this.setState({shouldCacheIgnoreZoom:!1})},duration:l?.duration??500});this.cancelInProgressAnimation=()=>{G(),this.cancelInProgressAnimation=null}}else this.setState({scrollX:Z,scrollY:J,zoom:M})}),j0(this,"maybeUnfollowRemoteUser",()=>{this.state.userToFollow&&this.setState({userToFollow:null})}),j0(this,"translateCanvas",(f)=>{this.cancelInProgressAnimation?.(),this.maybeUnfollowRemoteUser(),this.setState(f)}),j0(this,"setToast",(f)=>{this.setState({toast:f})}),j0(this,"restoreFileFromShare",async()=>{try{let f=await caches.open("web-share-target"),l=await f.match("shared-file");if(l){let b=await l.blob(),M=new File([b],b.name||"",{type:b.type});this.loadFileToCanvas(M,null),await f.delete("shared-file"),window.history.replaceState(null,Uku,window.location.pathname)}}catch(f){this.setState({errorMessage:f.message})}}),j0(this,"addFiles",I9((f)=>{let{addedFiles:l}=this.addMissingFiles(f);this.clearImageShapeCache(l),this.scene.triggerUpdate(),this.addNewImagesToImageCache()})),j0(this,"addMissingFiles",(f,l=!1)=>{let b=l?{}:{...this.files},M={},Z=Array.isArray(f)?f:Object.values(f);for(let J of Z)if(!b[J.id]&&(M[J.id]=J,b[J.id]=J,J.mimeType===y4.svg))try{let w=yMu(Gl0(gMu(J.dataURL)),y4.svg);J.dataURL!==w&&(J.version=(J.version??1)+1,J.dataURL=w)}catch(w){console.error(w)}return this.files=b,{addedFiles:M}}),j0(this,"updateScene",I9((f)=>{let l=iU(f.elements??[]);if(f.captureUpdate&&f.captureUpdate!==Xu.EVENTUALLY){let b=this.store.snapshot.appState,M=this.store.snapshot.elements,Z=f.appState?Object.assign({},b,f.appState):b,J=f.elements?this.store.filterUncomittedElements(this.scene.getElementsMapIncludingDeleted(),e4(l)):M;f.captureUpdate===Xu.IMMEDIATELY?this.store.captureIncrement(J,Z):f.captureUpdate===Xu.NEVER&&this.store.updateSnapshot(J,Z)}f.appState&&this.setState(f.appState),f.elements&&this.scene.replaceAllElements(l),f.collaborators&&this.setState({collaborators:f.collaborators})})),j0(this,"triggerRender",(f)=>{f===!0?this.scene.triggerUpdate():this.setState({})}),j0(this,"toggleSidebar",({name:f,tab:l,force:b})=>{let M;b===void 0?M=this.state.openSidebar?.name===f&&this.state.openSidebar?.tab===l?null:f:M=b?f:null;let Z=M?{name:M}:null;return Z&&l&&(Z.tab=l),this.setState({openSidebar:Z}),!!M}),j0(this,"updateCurrentCursorPosition",I9((f)=>{this.lastViewportPosition.x=f.clientX,this.lastViewportPosition.y=f.clientY})),j0(this,"getEditorUIOffsets",()=>{let f=this.excalidrawContainerRef?.current?.querySelector(".App-toolbar")?.getBoundingClientRect()?.bottom??0,l=this.excalidrawContainerRef?.current?.querySelector(".sidebar")?.getBoundingClientRect(),b=this.excalidrawContainerRef?.current?.querySelector(".App-menu__left")?.getBoundingClientRect(),M=16;return ZP().rtl?{top:f+M,right:Math.max(this.state.width-(b?.left??this.state.width),0)+M,bottom:M,left:Math.max(l?.right??0,0)+M}:{top:f+M,right:Math.max(this.state.width-(l?.left??this.state.width)+M,0),bottom:M,left:Math.max(b?.right??0,0)+M}}),j0(this,"onKeyDown",I9((f)=>{if("Proxy"in window&&(!f.shiftKey&&/^[A-Z]$/.test(f.key)||f.shiftKey&&/^[a-z]$/.test(f.key))&&(f=new Proxy(f,{get(Z,J){let w=Z[J];return typeof w=="function"?w.bind(Z):J==="key"?f.shiftKey?Z.key.toUpperCase():Z.key.toLowerCase():w}})),!g_(f.target)){if((f.key===y0.ESCAPE||f.key===y0.ENTER)&&this.state.croppingElementId){this.finishImageCropping();return}let Z=N3(this.scene.getNonDeletedElementsMap(),this.state);if(Z.length===1&&H1(Z[0])&&f.key===y0.ENTER){this.startImageCropping(Z[0]);return}if(f.key===y0.ESCAPE&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.clear(),this.triggerRender(!0);return}let J=AX(f.key);if(f[y0.CTRL_OR_CMD]&&J&&!f.shiftKey){f.preventDefault();let w=N3(this.scene.getNonDeletedElementsMap(),this.state);w.length===1&&QO(w[0])&&this.flowChartCreator.createNodes(w[0],this.scene.getNonDeletedElementsMap(),this.state,Dsu(f.key)),this.flowChartCreator.pendingNodes?.length&&!yO(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(f.altKey){let w=N3(this.scene.getNonDeletedElementsMap(),this.state);if(w.length===1&&J){f.preventDefault();let K=this.flowChartNavigator.exploreByDirection(w[0],this.scene.getNonDeletedElementsMap(),Dsu(f.key));if(K){this.setState((G)=>({selectedElementIds:L1({[K]:!0},G)}));let Q=this.scene.getNonDeletedElementsMap().get(K);Q&&!yO([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(f[y0.CTRL_OR_CMD]&&f.key===y0.P&&!f.shiftKey&&!f.altKey){this.setToast({message:C0("commandPalette.shortcutHint",{shortcut:EB("commandPalette")})}),f.preventDefault();return}if(f[y0.CTRL_OR_CMD]&&f.key.toLowerCase()===y0.V&&(fs=f.shiftKey,clearTimeout(jsu),jsu=window.setTimeout(()=>{fs=!1},100)),f[y0.CTRL_OR_CMD]&&UM(f.target)&&(f.code===U1.MINUS||f.code===U1.EQUAL)){f.preventDefault();return}if(UM(f.target)&&f.key!==y0.ESCAPE||AX(f.key)&&g_(f.target))return;if(f.key===y0.QUESTION_MARK){this.setState({openDialog:{name:"help"}});return}else if(f.key.toLowerCase()===y0.E&&f.shiftKey&&f[y0.CTRL_OR_CMD]){f.preventDefault(),this.setState({openDialog:{name:"imageExport"}});return}if(f.key===y0.PAGE_UP||f.key===y0.PAGE_DOWN){let Z=(f.shiftKey?this.state.width:this.state.height)/this.state.zoom.value;f.key===y0.PAGE_DOWN&&(Z=-Z),f.shiftKey?this.translateCanvas((J)=>({scrollX:J.scrollX+Z})):this.translateCanvas((J)=>({scrollY:J.scrollY+Z}))}if(this.state.openDialog?.name==="elementLinkSelector"||this.actionManager.handleKeyDown(f)||this.state.viewModeEnabled)return;if(f[y0.CTRL_OR_CMD]&&this.state.isBindingEnabled&&this.setState({isBindingEnabled:!1}),AX(f.key)){let Z=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),J=Z.find(K4),w=new Set;Z.filter(K4).filter((L)=>{let H=L.startBinding&&!Z.some((x)=>x.id===L.startBinding?.elementId),q=L.endBinding&&!Z.some((x)=>x.id===L.endBinding?.elementId);return H||q}).forEach((L)=>w.add(L.id)),Z=Z.filter((L)=>!w.has(L.id));let K=this.getEffectiveGridSize()&&(f.shiftKey?Yk0:this.getEffectiveGridSize())||(f.shiftKey?zku:Yk0),Q=0,G=0;f.key===y0.ARROW_LEFT?Q=-K:f.key===y0.ARROW_RIGHT?Q=K:f.key===y0.ARROW_UP?G=-K:f.key===y0.ARROW_DOWN&&(G=K),Z.forEach((L)=>{Wu(L,{x:L.x+Q,y:L.y+G},!1),hB(L,this.scene.getNonDeletedElementsMap(),{simultaneouslyUpdated:Z})}),this.setState({suggestedBindings:Gn(Z.filter((L)=>L.id!==J?.id||K!==0),this.scene.getNonDeletedElementsMap(),this.state.zoom)}),this.scene.triggerUpdate(),f.preventDefault()}else if(f.key===y0.ENTER){let Z=this.scene.getSelectedElements(this.state);if(Z.length===1){let J=Z[0];if(f[y0.CTRL_OR_CMD])W3(J)&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==Z[0].id)&&(this.store.shouldCaptureIncrement(),K4(J)||this.setState({editingLinearElement:new M4(J)}));else if(l4(J)||abu(J)){let w;l4(J)||(w=J);let K=vn(J,this.state,this.scene.getNonDeletedElementsMap()),Q=K.x,G=K.y;this.startTextEditing({sceneX:Q,sceneY:G,container:w}),f.preventDefault();return}else u3(J)&&this.setState({editingFrame:J.id})}}else if(!f.ctrlKey&&!f.altKey&&!f.metaKey&&!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged){let Z=olu(f.key);Z?(this.state.activeTool.type!==Z&&G6("toolbar",Z,`keyboard (${this.device.editor.isMobile?"mobile":"desktop"})`),Z==="arrow"&&this.state.activeTool.type==="arrow"&&this.setState((J)=>({currentItemArrowType:J.currentItemArrowType===f5.sharp?f5.round:J.currentItemArrowType===f5.round?f5.elbow:f5.sharp})),this.setActiveTool({type:Z}),f.stopPropagation()):f.key===y0.Q&&(this.toggleLock("keyboard"),f.stopPropagation())}if(f.key===y0.SPACE&&I1.pointers.size===0&&(lQ=!0,u6(this.interactiveCanvas,g1.GRAB),f.preventDefault()),(f.key===y0.G||f.key===y0.S)&&!f.altKey&&!f[y0.CTRL_OR_CMD]){let Z=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!Z.length)return;f.key===y0.G&&(PK(this.state.activeTool.type)||Z.some((J)=>PK(J.type)))&&(this.setState({openPopup:"elementBackground"}),f.stopPropagation()),f.key===y0.S&&(this.setState({openPopup:"elementStroke"}),f.stopPropagation())}if(!f[y0.CTRL_OR_CMD]&&f.shiftKey&&f.key.toLowerCase()===y0.F){let Z=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!Z.length)return;(this.state.activeTool.type==="text"||Z.find((J)=>l4(J)||Y3(J,this.scene.getNonDeletedElementsMap())))&&(f.preventDefault(),this.setState({openPopup:"fontFamily"}))}if(f.key===y0.K&&!f.altKey&&!f[y0.CTRL_OR_CMD]){this.state.activeTool.type==="laser"?this.setActiveTool({type:"selection"}):this.setActiveTool({type:"laser"});return}f[y0.CTRL_OR_CMD]&&(f.key===y0.BACKSPACE||f.key===y0.DELETE)&&mD.set(_s,"clearCanvas");let l=f.key.toLocaleLowerCase(),b=l===y0.S&&f.shiftKey,M=f.key===y0.I||l===y0.G&&f.shiftKey;(b||M)&&this.openEyeDropper({type:b?"stroke":"background"})})),j0(this,"onKeyUp",I9((f)=>{if(f.key===y0.SPACE&&(this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector"?u6(this.interactiveCanvas,g1.GRAB):this.state.activeTool.type==="selection"?mA(this.interactiveCanvas):(wD(this.interactiveCanvas,this.state),this.setState({selectedElementIds:L1({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})),lQ=!1),!f[y0.CTRL_OR_CMD]&&!this.state.isBindingEnabled&&this.setState({isBindingEnabled:!0}),AX(f.key)&&(WO(this.scene.getSelectedElements(this.state).filter(W3),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,AM(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom),this.setState({suggestedBindings:[]})),f.altKey||this.flowChartNavigator.isExploring&&(this.flowChartNavigator.clear(),this.syncActionResult({captureUpdate:Xu.IMMEDIATELY})),!f[y0.CTRL_OR_CMD]&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.pendingNodes?.length&&this.scene.insertElements(this.flowChartCreator.pendingNodes);let l=this.flowChartCreator.pendingNodes?.[0];l&&(this.setState((b)=>({selectedElementIds:L1({[l.id]:!0},b)})),yO([l],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(l,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})),this.flowChartCreator.clear(),this.syncActionResult({captureUpdate:Xu.IMMEDIATELY})}})),j0(this,"isToolSupported",(f)=>this.props.UIOptions.tools?.[f]!==!1),j0(this,"setActiveTool",(f)=>{if(!this.isToolSupported(f.type)){console.warn(`"${f.type}" tool is disabled via "UIOptions.canvasActions.tools.${f.type}"`);return}let l=n9(this.state,f);l.type==="hand"?u6(this.interactiveCanvas,g1.GRAB):lQ||wD(this.interactiveCanvas,{...this.state,activeTool:l}),aku(document.activeElement)&&this.focusContainer(),n_(l.type)||this.setState({suggestedBindings:[]}),l.type==="image"&&this.onImageAction({insertOnCanvasDirectly:(f.type==="image"&&f.insertOnCanvasDirectly)??!1}),this.setState((b)=>{let M={snapLines:b.snapLines.length?[]:b.snapLines,originSnapOffset:null,activeEmbeddable:null};return l.type==="freedraw"&&this.store.shouldCaptureIncrement(),l.type!=="selection"?{...b,activeTool:l,selectedElementIds:L1({},b),selectedGroupIds:L1({},b),editingGroupId:null,multiElement:null,...M}:{...b,activeTool:l,...M}})}),j0(this,"setOpenDialog",(f)=>{this.setState({openDialog:f})}),j0(this,"setCursor",(f)=>{u6(this.interactiveCanvas,f)}),j0(this,"resetCursor",()=>{mA(this.interactiveCanvas)}),j0(this,"isTouchScreenMultiTouchGesture",()=>I1.pointers.size>=2),j0(this,"getName",()=>this.state.name||this.props.name||`${C0("labels.untitled")}-${Vk0()}`),j0(this,"onGestureStart",I9((f)=>{f.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({selectedElementIds:L1({},this.state),activeEmbeddable:null}),I1.initialScale=this.state.zoom.value})),j0(this,"onGestureChange",I9((f)=>{if(f.preventDefault(),this.isTouchScreenMultiTouchGesture())return;let l=I1.initialScale;l&&this.setState((b)=>({...bQ({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:jU(l*f.scale)},b)}))})),j0(this,"onGestureEnd",I9((f)=>{f.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({previousSelectedElementIds:{},selectedElementIds:L1(this.state.previousSelectedElementIds,this.state)}),I1.initialScale=null})),j0(this,"startTextEditing",({sceneX:f,sceneY:l,insertAtParentCenter:b=!0,container:M,autoEdit:Z=!0})=>{let J=!1,w=b&&this.getTextWysiwygSnappedToCenterPosition(f,l,this.state,M);M&&w&&(Y3(M,this.scene.getNonDeletedElementsMap())||(J=!0));let K=null,Q=this.scene.getSelectedElements(this.state);Q.length===1?l4(Q[0])?K=Q[0]:M?K=Y3(Q[0],this.scene.getNonDeletedElementsMap()):K=this.getTextElementAtPosition(f,l):K=this.getTextElementAtPosition(f,l);let G=K?.fontFamily||this.state.currentItemFontFamily,L=K?.lineHeight||JM(G),H=this.state.currentItemFontSize;if(!K&&J&&M&&!j3(M)){let v=dk0(e1({fontSize:H,fontFamily:G}),L),W=ok0(H,L),S=Math.max(M.height,W),T=Math.max(M.width,v);Wu(M,{height:S,width:T}),f=M.x+T/2,l=M.y+S/2,w&&(w=this.getTextWysiwygSnappedToCenterPosition(f,l,this.state,M))}let q=this.getTopLayerFrameAtSceneCoords({x:f,y:l}),x=K||N8({x:w?w.elementCenterX:f,y:w?w.elementCenterY:l,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:H,fontFamily:G,textAlign:w?"center":this.state.currentItemTextAlign,verticalAlign:w?P8.MIDDLE:FO,containerId:J?M?.id:void 0,groupIds:M?.groupIds??[],lineHeight:L,angle:M?.angle??0,frameId:q?q.id:null});if(!K&&J&&M&&Wu(M,{boundElements:(M.boundElements||[]).concat({type:"text",id:x.id})}),this.setState({editingTextElement:x}),!K)if(M&&J){let v=this.scene.getElementIndex(M.id);this.scene.insertElementAtIndex(x,v+1)}else this.scene.insertElement(x);Z||K||M?this.handleTextWysiwyg(x,{isExistingElement:!!K}):this.setState({newElement:x,multiElement:null})}),j0(this,"startImageCropping",(f)=>{this.store.shouldCaptureIncrement(),this.setState({croppingElementId:f.id})}),j0(this,"finishImageCropping",()=>{this.state.croppingElementId&&(this.store.shouldCaptureIncrement(),this.setState({croppingElementId:null}))}),j0(this,"handleCanvasDoubleClick",(f)=>{if(this.state.multiElement||this.state.activeTool.type!=="selection")return;let l=this.scene.getSelectedElements(this.state),{x:b,y:M}=Q6(f,this.state);if(l.length===1&&W3(l[0])){if(f[y0.CTRL_OR_CMD]&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==l[0].id)&&!K4(l[0])){this.store.shouldCaptureIncrement(),this.setState({editingLinearElement:new M4(l[0])});return}else if(this.state.selectedLinearElement&&K4(l[0])){let Z=M4.getSegmentMidpointHitCoords(this.state.selectedLinearElement,{x:b,y:M},this.state,this.scene.getNonDeletedElementsMap()),J=Z?M4.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,Z,this.scene.getNonDeletedElementsMap()):-1;if(J&&J>-1){this.store.shouldCaptureIncrement(),M4.deleteFixedSegment(l[0],J);let w=M4.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:b,y:M},this.state,this.scene.getNonDeletedElementsMap()),K=w?M4.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,w,this.scene.getNonDeletedElementsMap()):null;this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:{...this.state.selectedLinearElement.pointerDownState,segmentMidpoint:{index:K,value:Z,added:!1}},segmentMidPointHoveredCoords:w}});return}}}if(l.length===1&&H1(l[0])){this.startImageCropping(l[0]);return}if(mA(this.interactiveCanvas),KM(this.state).length>0){let Z=this.getElementAtPosition(b,M),J=Z&&qbu(Z,this.state.selectedGroupIds);if(J){this.store.shouldCaptureIncrement(),this.setState((w)=>({...w,...y7({editingGroupId:J,selectedElementIds:{[Z.id]:!0}},this.scene.getNonDeletedElements(),w,this)}));return}}if(mA(this.interactiveCanvas),!f[y0.CTRL_OR_CMD]&&!this.state.viewModeEnabled){let Z=this.getElementAtPosition(b,M);if(YE(Z)){this.setState({activeEmbeddable:{element:Z,state:"active"}});return}let J=this.getTextBindableContainerAtPosition(b,M);if(J&&(i8(J)||!TA(J.backgroundColor)||IK({x:b,y:M,element:J,shape:vU(J,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()}))){let w=vn(J,this.state,this.scene.getNonDeletedElementsMap());b=w.x,M=w.y}this.startTextEditing({sceneX:b,sceneY:M,insertAtParentCenter:!f.altKey,container:J})}}),j0(this,"getElementLinkAtPosition",(f,l)=>{let b=this.scene.getNonDeletedElements(),M=-1;for(let Z=b.length-1;Z>=0;Z--){let J=b[Z];if(l&&J.id===l.id&&(M=Z),J.link&&Z>=M&&Pn(J,this.scene.getNonDeletedElementsMap(),this.state,t(f.x,f.y),this.device.editor.isMobile))return J}}),j0(this,"redirectToLink",(f,l)=>{let b=G1(t(this.lastPointerDownEvent.clientX,this.lastPointerDownEvent.clientY),t(this.lastPointerUpEvent.clientX,this.lastPointerUpEvent.clientY));if(!this.hitLinkElement||b>FM)return;let M=Q6(this.lastPointerDownEvent,this.state),Z=this.scene.getNonDeletedElementsMap(),J=Pn(this.hitLinkElement,Z,this.state,t(M.x,M.y),this.device.editor.isMobile),w=Q6(this.lastPointerUpEvent,this.state),K=Pn(this.hitLinkElement,Z,this.state,t(w.x,w.y),this.device.editor.isMobile);if(J&&K){ndu();let Q=this.hitLinkElement.link;if(Q){Q=j8(Q);let G;if(this.props.onLinkOpen&&(G=$k0("excalidraw-link",f.nativeEvent),this.props.onLinkOpen({...this.hitLinkElement,link:Q},G)),!G?.defaultPrevented){let L=Fl0(Q)?"_self":"_blank",H=window.open(void 0,L);H&&(H.opener=null,H.location=Q)}}}}),j0(this,"getTopLayerFrameAtSceneCoords",(f)=>{let l=this.scene.getNonDeletedElementsMap(),b=this.scene.getNonDeletedFramesLikes().filter((M)=>al0(f,M,l));return b.length?b[b.length-1]:null}),j0(this,"handleCanvasPointerMove",(f)=>{this.savePointer(f.clientX,f.clientY,this.state.cursorButton),this.lastPointerMoveEvent=f.nativeEvent,I1.pointers.has(f.pointerId)&&I1.pointers.set(f.pointerId,{x:f.clientX,y:f.clientY});let l=I1.initialScale;if(I1.pointers.size===2&&I1.lastCenter&&l&&I1.initialDistance){let G=Esu(I1.pointers),L=G.x-I1.lastCenter.x,H=G.y-I1.lastCenter.y;I1.lastCenter=G;let q=Asu(Array.from(I1.pointers.values())),x=this.state.activeTool.type==="freedraw"&&this.state.penMode?1:q/I1.initialDistance,v=x?jU(l*x):this.state.zoom.value;this.setState((W)=>{let S=bQ({viewportX:G.x,viewportY:G.y,nextZoom:v},W);this.translateCanvas({zoom:S.zoom,scrollX:S.scrollX+2*(L/v),scrollY:S.scrollY+2*(H/v),shouldCacheIgnoreZoom:!0})}),this.resetShouldCacheIgnoreZoomDebounced()}else I1.lastCenter=I1.initialDistance=I1.initialScale=null;if(lQ||FP||iw0||SK(this.state))return;let b=Usu(aw0,f.clientX-this.state.offsetLeft,f.clientY-this.state.offsetTop).isOverEither;!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.multiElement&&(b?mA(this.interactiveCanvas):wD(this.interactiveCanvas,this.state));let M=Q6(f,this.state),{x:Z,y:J}=M;if(!this.state.newElement&&Obu(this.state.activeTool.type)){let{originOffset:G,snapLines:L}=Tbu(this.scene.getNonDeletedElements(),this,{x:Z,y:J},f,this.scene.getNonDeletedElementsMap());this.setState((H)=>{let q=BX(H.snapLines,L),x=H.originSnapOffset?BX(H.originSnapOffset,G):G;return H.snapLines===q&&H.originSnapOffset===x?null:{snapLines:q,originSnapOffset:x}})}else!this.state.newElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.selectionElement&&this.setState((G)=>G.snapLines.length?{snapLines:[]}:null);if(this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging){let G=M4.handlePointerMove(f,Z,J,this,this.scene.getNonDeletedElementsMap());G&&G!==this.state.editingLinearElement&&eM.flushSync(()=>{this.setState({editingLinearElement:G})}),G?.lastUncommittedPoint!=null?this.maybeSuggestBindingAtCursor(M,G.elbowed):eM.flushSync(()=>{this.setState({suggestedBindings:[]})})}if(nk0(this.state.activeTool.type)){let{newElement:G}=this.state;FD(G,!1)?this.maybeSuggestBindingsForLinearElementAtCoords(G,[M],this.state.startBoundElement):this.maybeSuggestBindingAtCursor(M,!1)}if(this.state.multiElement){let{multiElement:G}=this.state,{x:L,y:H}=G,{points:q,lastCommittedPoint:x}=G,v=q[q.length-1];if(wD(this.interactiveCanvas,this.state),v===x)G1(t(Z-L,J-H),v)>=CO?Wu(G,{points:[...q,t(Z-L,J-H)]},!1):u6(this.interactiveCanvas,g1.POINTER);else if(q.length>2&&x&&G1(t(Z-L,J-H),x)<CO)u6(this.interactiveCanvas,g1.POINTER),Wu(G,{points:q.slice(0,-1)},!1);else{let[W,S]=M2(Z,J,f[y0.CTRL_OR_CMD]||K4(G)?null:this.getEffectiveGridSize()),[T,R]=G?.lastCommittedPoint??[0,0],Y=W-L-T,a=S-H-R;yq(f)&&({width:Y,height:a}=sn(T+L,R+H,W,S)),SU(q,this.state.zoom.value)&&u6(this.interactiveCanvas,g1.POINTER),Wu(G,{points:[...q.slice(0,-1),t(T+Y,R+a)]},!1,{isDragging:!0}),this.triggerRender(!1)}return}if(!!f.buttons||this.state.activeTool.type!=="selection"&&this.state.activeTool.type!=="text"&&this.state.activeTool.type!=="eraser")return;let w=this.scene.getNonDeletedElements(),K=this.scene.getSelectedElements(this.state);if(K.length===1&&!b&&!this.state.editingLinearElement){if(this.state.selectedLinearElement&&this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,Z,J),(!this.state.selectedLinearElement||this.state.selectedLinearElement.hoverPointIndex===-1)&&this.state.openDialog?.name!=="elementLinkSelector"&&!(K.length===1&&K4(K[0]))){let G=nl0(w,this.state,Z,J,this.state.zoom,f.pointerType,this.scene.getNonDeletedElementsMap(),this.device);if(G&&G.transformHandleType){u6(this.interactiveCanvas,dl0(G));return}}}else if(K.length>1&&!b&&this.state.openDialog?.name!=="elementLinkSelector"){let G=pl0(T1(K),Z,J,this.state.zoom,f.pointerType,this.device);if(G){u6(this.interactiveCanvas,dl0({transformHandleType:G}));return}}let Q=this.getElementAtPosition(M.x,M.y);this.hitLinkElement=this.getElementLinkAtPosition(M,Q),!ZD(this.state)&&(this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?(u6(this.interactiveCanvas,g1.POINTER),qf3(this.hitLinkElement,this.state,this.scene.getNonDeletedElementsMap())):(ndu(),Q&&(Q.link||rB(Q))&&this.state.selectedElementIds[Q.id]&&!this.state.contextMenu&&!this.state.showHyperlinkPopup?this.setState({showHyperlinkPopup:"info"}):this.state.activeTool.type==="text"?u6(this.interactiveCanvas,l4(Q)?g1.TEXT:g1.CROSSHAIR):this.state.viewModeEnabled?u6(this.interactiveCanvas,g1.GRAB):this.state.openDialog?.name==="elementLinkSelector"?u6(this.interactiveCanvas,g1.AUTO):b?u6(this.interactiveCanvas,g1.AUTO):this.state.selectedLinearElement?this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,Z,J):f[y0.CTRL_OR_CMD]?u6(this.interactiveCanvas,g1.AUTO):(Q||this.isHittingCommonBoundingBoxOfSelectedElements(M,K))&&!Q?.locked&&(Q&&YE(Q)&&this.isIframeLikeElementCenter(Q,f,Z,J)?(u6(this.interactiveCanvas,g1.POINTER),this.setState({activeEmbeddable:{element:Q,state:"hover"}})):(!Q||!K4(Q))&&(u6(this.interactiveCanvas,g1.MOVE),this.state.activeEmbeddable?.state==="hover"&&this.setState({activeEmbeddable:null})))),this.state.openDialog?.name==="elementLinkSelector"&&Q?this.setState((G)=>({hoveredElementIds:BX(G.hoveredElementIds,y7({editingGroupId:G.editingGroupId,selectedElementIds:{[Q.id]:!0}},this.scene.getNonDeletedElements(),G,this).selectedElementIds)})):this.state.openDialog?.name==="elementLinkSelector"&&!Q&&this.setState((G)=>({hoveredElementIds:BX(G.hoveredElementIds,{})})))}),j0(this,"handleEraser",(f,l,b)=>{this.eraserTrail.addPointToPath(b.x,b.y);let M=!1,Z=new Set,J=this.scene.getNonDeletedElements(),w=(H)=>{for(let q of H){if(q.locked)return;if(f.altKey?this.elementsPendingErasure.delete(q.id)&&(M=!0):this.elementsPendingErasure.has(q.id)||(M=!0,this.elementsPendingErasure.add(q.id)),M&&q.groupIds?.length){let x=q.groupIds.at(-1);if(!Z.has(x)){Z.add(x);let v=x6(J,x);for(let W of v)f.altKey?this.elementsPendingErasure.delete(W.id):this.elementsPendingErasure.add(W.id)}}}},K=G1(t(l.lastCoords.x,l.lastCoords.y),t(b.x,b.y)),Q=this.getElementHitThreshold(),G={...l.lastCoords},L=0;for(;L<=K;){let H=this.getElementsAtPosition(G.x,G.y);if(w(H),L===K)break;L=Math.min(L+Q,K);let q=L/K,x=(1-q)*G.x+q*b.x,v=(1-q)*G.y+q*b.y;G.x=x,G.y=v}if(l.lastCoords.x=b.x,l.lastCoords.y=b.y,M){for(let H of this.scene.getNonDeletedElements())X6(H)&&(this.elementsPendingErasure.has(H.id)||this.elementsPendingErasure.has(H.containerId))&&(f.altKey?(this.elementsPendingErasure.delete(H.id),this.elementsPendingErasure.delete(H.containerId)):(this.elementsPendingErasure.add(H.id),this.elementsPendingErasure.add(H.containerId)));this.elementsPendingErasure=new Set(this.elementsPendingErasure),this.triggerRender()}}),j0(this,"handleTouchMove",(f)=>{UP=!0}),j0(this,"handleCanvasPointerDown",(f)=>{let l=f.target;if(l.setPointerCapture&&l.setPointerCapture(f.pointerId),this.maybeCleanupAfterMissingPointerUp(f.nativeEvent),this.maybeUnfollowRemoteUser(),this.state.searchMatches&&(this.setState((Q)=>({searchMatches:Q.searchMatches.map((G)=>({...G,focus:!1}))})),mD.set(dtu,null)),this.state.contextMenu&&this.setState({contextMenu:null}),this.state.snapLines&&this.setAppState({snapLines:[]}),this.updateGestureOnPointerDown(f),f.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((G)=>G.id!==Q.id)}:{},appState:{newElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:L1(Object.keys(this.state.selectedElementIds).filter((G)=>G!==Q.id).reduce((G,L)=>(G[L]=this.state.selectedElementIds[L],G),{}),this.state)},captureUpdate:this.state.openDialog?.name==="elementLinkSelector"?Xu.EVENTUALLY:Xu.NEVER});return}let b=document.getSelection();if(b?.anchorNode&&b.removeAllRanges(),this.maybeOpenContextMenuAfterPointerDownOnTouchDevices(f),!this.state.penDetected&&f.pointerType==="pen"&&this.setState((Q)=>({penMode:!0,penDetected:!0})),!this.device.isTouchScreen&&["pen","touch"].includes(f.pointerType)&&(this.device=JO(this.device,{isTouchScreen:!0})),FP||(this.lastPointerDownEvent=f,this.handleCanvasPanUsingWheelOrSpaceDrag(f)))return;if(this.setState({lastPointerDownWith:f.pointerType,cursorButton:"down"}),this.savePointer(f.clientX,f.clientY,"down"),f.button===sk.ERASER&&this.state.activeTool.type!==O2.eraser){this.setState({activeTool:n9(this.state,{type:O2.eraser,lastActiveToolBeforeEraser:this.state.activeTool})},()=>{this.handleCanvasPointerDown(f);let Q=()=>{G(),L?.(),ZD(this.state)&&this.setState({activeTool:n9(this.state,{...this.state.activeTool.lastActiveTool||{type:O2.selection},lastActiveToolBeforeEraser:null})})},G=d6(window,"pointerup",Q,{once:!0}),L;requestAnimationFrame(()=>{L=this.missingPointerEventCleanupEmitter.once(Q)})});return}if(f.button!==sk.MAIN&&f.button!==sk.TOUCH&&f.button!==sk.ERASER||I1.pointers.size>1)return;let M=this.initialPointerDownState(f);if(this.setState({selectedElementsAreBeingDragged:!1}),this.handleDraggingScrollBar(f,M)||(this.clearSelectionIfNotUsingSelection(),this.updateBindingEnabledOnPointerMove(f),this.handleSelectionOnPointerDown(f,M))||!(!this.state.penMode||f.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(f,M);else if(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")this.handleLinearElementOnPointerDown(f,this.state.activeTool.type,M);else if(this.state.activeTool.type==="image"){u6(this.interactiveCanvas,g1.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:G,y:L}=Q6(f,this.state),H=this.getTopLayerFrameAtSceneCoords({x:G,y:L});Wu(Q,{x:G,y:L,frameId:H?H.id:null})}else this.state.activeTool.type==="freedraw"?this.handleFreeDrawElementOnPointerDown(f,this.state.activeTool.type,M):this.state.activeTool.type==="custom"?wD(this.interactiveCanvas,this.state):this.state.activeTool.type===O2.frame||this.state.activeTool.type===O2.magicframe?this.createFrameElementOnPointerDown(M,this.state.activeTool.type):this.state.activeTool.type==="laser"?this.laserTrails.startPath(M.lastCoords.x,M.lastCoords.y):this.state.activeTool.type!=="eraser"&&this.state.activeTool.type!=="hand"&&this.createGenericElementOnPointerDown(this.state.activeTool.type,M);this.props?.onPointerDown?.(this.state.activeTool,M),this.onPointerDownEmitter.trigger(this.state.activeTool,M,f),this.state.activeTool.type==="eraser"&&this.eraserTrail.startPath(M.lastCoords.x,M.lastCoords.y);let Z=this.onPointerMoveFromPointerDownHandler(M),J=this.onPointerUpFromPointerDownHandler(M),w=this.onKeyDownFromPointerDownHandler(M),K=this.onKeyUpFromPointerDownHandler(M);this.missingPointerEventCleanupEmitter.once((Q)=>J(Q||f.nativeEvent)),(!this.state.viewModeEnabled||this.state.activeTool.type==="laser")&&(window.addEventListener("pointermove",Z),window.addEventListener("pointerup",J),window.addEventListener("keydown",w),window.addEventListener("keyup",K),M.eventListeners.onMove=Z,M.eventListeners.onUp=J,M.eventListeners.onKeyUp=K,M.eventListeners.onKeyDown=w)}),j0(this,"handleCanvasPointerUp",(f)=>{this.removePointer(f),this.lastPointerUpEvent=f;let l=Q6({clientX:f.clientX,clientY:f.clientY},this.state),b=f.timeStamp-(this.lastPointerDownEvent?.timeStamp??0);if(this.device.editor.isMobile&&b<300){let M=this.getElementAtPosition(l.x,l.y);if(YE(M)&&this.isIframeLikeElementCenter(M,f,l.x,l.y)){this.handleEmbeddableCenterClick(M);return}}if(this.device.isTouchScreen){let M=this.getElementAtPosition(l.x,l.y);this.hitLinkElement=this.getElementLinkAtPosition(l,M)}this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?b<300&&YE(this.hitLinkElement)&&!Hl0(this.hitLinkElement,this.scene.getNonDeletedElementsMap(),this.state,t(l.x,l.y))?this.handleEmbeddableCenterClick(this.hitLinkElement):this.redirectToLink(f,this.device.isTouchScreen):this.state.viewModeEnabled&&this.setState({activeEmbeddable:null,selectedElementIds:{}})}),j0(this,"maybeOpenContextMenuAfterPointerDownOnTouchDevices",(f)=>{f.pointerType==="touch"&&(UP=!1,tM?UP=!0:tM=window.setTimeout(()=>{tM=0,UP||this.handleCanvasContextMenu(f)},Qku))}),j0(this,"resetContextMenuTimer",()=>{clearTimeout(tM),tM=0,UP=!1}),j0(this,"maybeCleanupAfterMissingPointerUp",(f)=>{zP?.(),this.missingPointerEventCleanupEmitter.trigger(f).clear()}),j0(this,"handleCanvasPanUsingWheelOrSpaceDrag",(f)=>{if(!(I1.pointers.size<=1&&(f.button===sk.WHEEL||f.button===sk.MAIN&&lQ||SK(this.state)||this.state.viewModeEnabled)))return!1;FP=!0,this.focusContainer(),this.state.editingTextElement||f.preventDefault();let l=!1,b=typeof window===void 0?!1:/Linux/.test(window.navigator.platform);u6(this.interactiveCanvas,g1.GRABBING);let{clientX:M,clientY:Z}=f,J=Ow0((K)=>{let Q=M-K.clientX,G=Z-K.clientY;if(M=K.clientX,Z=K.clientY,b&&!l&&(Math.abs(Q)>1||Math.abs(G)>1)){l=!0;let L=(q)=>{document.body.removeEventListener("paste",L),q.stopPropagation()},H=()=>{setTimeout(()=>{document.body.removeEventListener("paste",L),window.removeEventListener("pointerup",H)},100)};document.body.addEventListener("paste",L),window.addEventListener("pointerup",H)}this.translateCanvas({scrollX:this.state.scrollX-Q/this.state.zoom.value,scrollY:this.state.scrollY-G/this.state.zoom.value})}),w=I9(zP=()=>{zP=null,FP=!1,lQ||(this.state.viewModeEnabled?u6(this.interactiveCanvas,g1.GRAB):wD(this.interactiveCanvas,this.state)),this.setState({cursorButton:"up"}),this.savePointer(f.clientX,f.clientY,"up"),window.removeEventListener("pointermove",J),window.removeEventListener("pointerup",w),window.removeEventListener("blur",w),J.flush()});return window.addEventListener("blur",w),window.addEventListener("pointermove",J,{passive:!0}),window.addEventListener("pointerup",w),!0}),j0(this,"clearSelectionIfNotUsingSelection",()=>{this.state.activeTool.type!=="selection"&&this.setState({selectedElementIds:L1({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}),j0(this,"handleSelectionOnPointerDown",(f,l)=>{if(this.state.activeTool.type==="selection"){let b=this.scene.getNonDeletedElements(),M=this.scene.getNonDeletedElementsMap(),Z=this.scene.getSelectedElements(this.state);if(Z.length===1&&!this.state.editingLinearElement&&!K4(Z[0])&&!(this.state.selectedLinearElement&&this.state.selectedLinearElement.hoverPointIndex!==-1)){let J=nl0(b,this.state,l.origin.x,l.origin.y,this.state.zoom,f.pointerType,this.scene.getNonDeletedElementsMap(),this.device);J!=null&&(J.transformHandleType==="rotation"?(this.setState({resizingElement:J.element}),l.resize.handleType=J.transformHandleType):(this.state.croppingElementId||this.setState({resizingElement:J.element}),l.resize.handleType=J.transformHandleType))}else Z.length>1&&(l.resize.handleType=pl0(T1(Z),l.origin.x,l.origin.y,this.state.zoom,f.pointerType,this.device));if(l.resize.handleType)l.resize.isResizing=!0,l.resize.offset=OA(OMu(l.resize.handleType,Z,M,l.origin.x,l.origin.y)),Z.length===1&&W3(Z[0])&&Z[0].points.length===2&&(l.resize.arrowDirection=IMu(l.resize.handleType,Z[0]));else{if(this.state.selectedLinearElement){let K=this.state.editingLinearElement||this.state.selectedLinearElement,Q=M4.handlePointerDown(f,this,this.store,l.origin,K,this.scene);if(Q.hitElement&&(l.hit.element=Q.hitElement),Q.linearElementEditor&&(this.setState({selectedLinearElement:Q.linearElementEditor}),this.state.editingLinearElement&&this.setState({editingLinearElement:Q.linearElementEditor})),Q.didAddPoint)return!0}if(l.hit.element=l.hit.element??this.getElementAtPosition(l.origin.x,l.origin.y),this.hitLinkElement=this.getElementLinkAtPosition(l.origin,l.hit.element),this.hitLinkElement)return!0;if(this.state.croppingElementId&&l.hit.element?.id!==this.state.croppingElementId&&this.finishImageCropping(),l.hit.element&&this.getElementLinkAtPosition({x:l.origin.x,y:l.origin.y},l.hit.element))return!1;l.hit.allHitElements=this.getElementsAtPosition(l.origin.x,l.origin.y);let J=l.hit.element,w=l.hit.allHitElements.some((K)=>this.isASelectedElement(K));if((J===null||!w)&&!f.shiftKey&&!l.hit.hasHitCommonBoundingBoxOfSelectedElements&&this.clearSelection(J),this.state.editingLinearElement)this.setState({selectedElementIds:L1({[this.state.editingLinearElement.elementId]:!0},this.state)});else if(J!=null){if(f[y0.CTRL_OR_CMD])return this.state.selectedElementIds[J.id]||(l.hit.wasAddedToSelection=!0),this.setState((K)=>({...Lbu(K,J),previousSelectedElementIds:this.state.selectedElementIds})),!1;this.state.selectedElementIds[J.id]||(this.state.editingGroupId&&!UX(J,this.state.editingGroupId)&&this.setState({selectedElementIds:L1({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),!w&&!l.hit.hasHitCommonBoundingBoxOfSelectedElements&&(this.setState((K)=>{let Q={...K.selectedElementIds,[J.id]:!0},G=[];if(Object.keys(K.selectedElementIds).forEach((L)=>{let H=this.scene.getElement(L);H&&G.push(H)}),u3(J))HD(G,J.id).forEach((L)=>{delete Q[L.id]});else if(J.frameId)Q[J.frameId]&&delete Q[J.id];else{let L=J.groupIds,H=new Set(L.flatMap((q)=>x6(this.scene.getNonDeletedElements(),q)).filter((q)=>u3(q)).map((q)=>q.id));H.size>0&&G.forEach((q)=>{q.frameId&&H.has(q.frameId)&&(delete Q[q.id],q.groupIds.flatMap((x)=>x6(this.scene.getNonDeletedElements(),x)).forEach((x)=>{delete Q[x.id]}))})}return K.openDialog?.name==="elementLinkSelector"&&(J.groupIds.some((L)=>K.selectedGroupIds[L])||(Q={[J.id]:!0})),{...y7({editingGroupId:K.editingGroupId,selectedElementIds:Q},this.scene.getNonDeletedElements(),K,this),showHyperlinkPopup:J.link||rB(J)?"info":!1}}),l.hit.wasAddedToSelection=!0))}this.setState({previousSelectedElementIds:this.state.selectedElementIds})}}return!1}),j0(this,"handleTextOnPointerDown",(f,l)=>{if(this.state.editingTextElement)return;let b=l.origin.x,M=l.origin.y,Z=this.getElementAtPosition(b,M,{includeBoundTextElement:!0}),J=this.getTextBindableContainerAtPosition(b,M);i8(Z)&&(J=Z,b=Z.x+Z.width/2,M=Z.y+Z.height/2),this.startTextEditing({sceneX:b,sceneY:M,insertAtParentCenter:!f.altKey,container:J,autoEdit:!1}),mA(this.interactiveCanvas),this.state.activeTool.locked||this.setState({activeTool:n9(this.state,{type:"selection"})})}),j0(this,"handleFreeDrawElementOnPointerDown",(f,l,b)=>{let[M,Z]=M2(b.origin.x,b.origin.y,null),J=this.getTopLayerFrameAtSceneCoords({x:M,y:Z}),w=f.pressure===0.5,K=cbu({type:l,x:M,y:Z,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:w,locked:!1,frameId:J?J.id:null,points:[t(0,0)],pressures:w?[]:[f.pressure]});this.scene.insertElement(K),this.setState((G)=>{let L={...G.selectedElementIds};return delete L[K.id],{selectedElementIds:L1(L,G)}});let Q=aA(b.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom);this.setState({newElement:K,startBoundElement:Q,suggestedBindings:[]})}),j0(this,"insertIframeElement",({sceneX:f,sceneY:l,width:b,height:M})=>{let[Z,J]=M2(f,l,this.lastPointerDownEvent?.[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),w=$bu({type:"iframe",x:Z,y:J,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:b,height:M});return this.scene.insertElement(w),w}),j0(this,"insertEmbeddableElement",({sceneX:f,sceneY:l,link:b})=>{let[M,Z]=M2(f,l,this.lastPointerDownEvent?.[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),J=NK(b);if(!J)return;J.error instanceof URIError&&this.setToast({message:C0("toast.unrecognizedLinkFormat"),closable:!0});let w=kl0({type:"embeddable",x:M,y:Z,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:J.intrinsicSize.w,height:J.intrinsicSize.h,link:b});return this.scene.insertElement(w),w}),j0(this,"createImageElement",({sceneX:f,sceneY:l,addToFrameUnderCursor:b=!0})=>{let[M,Z]=M2(f,l,this.lastPointerDownEvent?.[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),J=b?this.getTopLayerFrameAtSceneCoords({x:M,y:Z}):null;return ll0({type:"image",x:M,y:Z,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:J?J.id:null})}),j0(this,"handleLinearElementOnPointerDown",(f,l,b)=>{if(this.state.multiElement){let{multiElement:M}=this.state;if(M.type==="line"&&SU(M.points,this.state.zoom.value)){Wu(M,{lastCommittedPoint:M.points[M.points.length-1]}),this.actionManager.executeAction(hD);return}if(K4(M)&&M.points.length>1){Wu(M,{lastCommittedPoint:M.points[M.points.length-1]}),this.actionManager.executeAction(hD);return}let{x:Z,y:J,lastCommittedPoint:w}=M;if(M.points.length>1&&w&&G1(t(b.origin.x-Z,b.origin.y-J),w)<CO){this.actionManager.executeAction(hD);return}this.setState((K)=>({selectedElementIds:L1({...K.selectedElementIds,[M.id]:!0},K)})),Wu(M,{lastCommittedPoint:M.points[M.points.length-1]}),u6(this.interactiveCanvas,g1.POINTER)}else{let[M,Z]=M2(b.origin.x,b.origin.y,f[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),J=this.getTopLayerFrameAtSceneCoords({x:M,y:Z}),{currentItemStartArrowhead:w,currentItemEndArrowhead:K}=this.state,[Q,G]=l==="arrow"?[w,K]:[null,null],L=l==="arrow"?Yn({type:l,x:M,y:Z,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===f5.round?{type:b2.PROPORTIONAL_RADIUS}:null,startArrowhead:Q,endArrowhead:G,locked:!1,frameId:J?J.id:null,elbowed:this.state.currentItemArrowType===f5.elbow,fixedSegments:this.state.currentItemArrowType===f5.elbow?[]:null}):eb({type:l,x:M,y:Z,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:b2.PROPORTIONAL_RADIUS}:null,locked:!1,frameId:J?J.id:null});this.setState((q)=>{let x={...q.selectedElementIds};return delete x[L.id],{selectedElementIds:L1(x,q)}}),Wu(L,{points:[...L.points,t(0,0)]});let H=aA(b.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,K4(L),K4(L));this.scene.insertElement(L),this.setState({newElement:L,startBoundElement:H,suggestedBindings:[]})}}),j0(this,"createGenericElementOnPointerDown",(f,l)=>{let[b,M]=M2(l.origin.x,l.origin.y,this.lastPointerDownEvent?.[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Z=this.getTopLayerFrameAtSceneCoords({x:b,y:M}),J={x:b,y:M,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(f),locked:!1,frameId:Z?Z.id:null},w;f==="embeddable"?w=kl0({type:"embeddable",...J}):w=QD({type:f,...J}),w.type==="selection"?this.setState({selectionElement:w}):(this.scene.insertElement(w),this.setState({multiElement:null,newElement:w}))}),j0(this,"createFrameElementOnPointerDown",(f,l)=>{let[b,M]=M2(f.origin.x,f.origin.y,this.lastPointerDownEvent?.[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Z={x:b,y:M,opacity:this.state.currentItemOpacity,locked:!1,...j6},J=l===O2.magicframe?Wn(Z):Sn(Z);this.scene.insertElement(J),this.setState({multiElement:null,newElement:J})}),j0(this,"restoreReadyToEraseElements",()=>{this.elementsPendingErasure=new Set,this.triggerRender()}),j0(this,"eraseElements",()=>{let f=!1,l=this.scene.getElementsIncludingDeleted().map((b)=>this.elementsPendingErasure.has(b.id)||b.frameId&&this.elementsPendingErasure.has(b.frameId)||X6(b)&&this.elementsPendingErasure.has(b.containerId)?(f=!0,O3(b,{isDeleted:!0})):b);this.elementsPendingErasure=new Set,f&&(this.store.shouldCaptureIncrement(),this.scene.replaceAllElements(l))}),j0(this,"initializeImage",async({imageFile:f,imageElement:l,showCursorImagePreview:b=!1})=>{if(!GM(f))throw Error(C0("errors.unsupportedFileType"));let M=f.type;if(u6(this.interactiveCanvas,"wait"),M===y4.svg)try{f=Cb0(Gl0(await f.text()),f.name)}catch(K){throw console.warn(K),Error(C0("errors.svgImageInsertError"))}let Z=await(this.props.generateIdForFile?.(f)||$Mu(f));if(!Z)throw console.warn("Couldn't generate file id or the supplied `generateIdForFile` didn't resolve to one."),Error(C0("errors.imageInsertError"));if(!this.files[Z]?.dataURL){try{f=await Ep(f,{maxWidthOrHeight:vku})}catch(K){console.error("Error trying to resizing image file on insertion",K)}if(f.size>Ok0)throw Error(C0("errors.fileTooBig",{maxSize:`${Math.trunc(Ok0/1024/1024)}MB`}))}if(b){let K=this.files[Z]?.dataURL,Q=K&&cMu(K);this.setImagePreviewCursor(Q||f)}let J=this.files[Z]?.dataURL||await Ab0(f),w=Wu(l,{fileId:Z},!1);return new Promise(async(K,Q)=>{try{this.addMissingFiles([{mimeType:M,id:Z,dataURL:J,created:Date.now(),lastRetrieved:Date.now()}]);let G=this.imageCache.get(Z);G||(this.addNewImagesToImageCache(),await this.updateImageCache([w])),G?.image instanceof Promise&&await G.image,this.state.pendingImageElementId!==w.id&&this.state.newElement?.id!==w.id&&this.initializeImageDimensions(w,!0),K(w)}catch(G){console.error(G),Q(Error(C0("errors.imageInsertError")))}finally{b||mA(this.interactiveCanvas)}})}),j0(this,"insertImageElement",async(f,l,b)=>{if(!this.isToolSupported("image")){this.setState({errorMessage:C0("errors.imageToolNotSupported")});return}this.scene.insertElement(f);try{return await this.initializeImage({imageFile:l,imageElement:f,showCursorImagePreview:b})}catch(M){return Wu(f,{isDeleted:!0}),this.actionManager.executeAction(hD),this.setState({errorMessage:M.message||C0("errors.imageInsertError")}),null}}),j0(this,"setImagePreviewCursor",async(f)=>{let l;try{l=await Ep(f,{maxWidthOrHeight:96})}catch(M){throw M.cause==="UNSUPPORTED"?Error(C0("errors.unsupportedFileType")):M}let b=await Ab0(l);if(f.type===y4.svg){let M=await wl0(b),Z=Math.min(M.height,96),J=Z*(M.width/M.height);J>96&&(J=96,Z=J*(M.height/M.width));let w=document.createElement("canvas");w.height=Z,w.width=J,w.getContext("2d").drawImage(M,0,0,J,Z),b=w.toDataURL(y4.svg)}this.state.pendingImageElementId&&u6(this.interactiveCanvas,`url(${b}) 4 4, auto`)}),j0(this,"onImageAction",async({insertOnCanvasDirectly:f})=>{try{let l=this.state.width/2+this.state.offsetLeft,b=this.state.height/2+this.state.offsetTop,{x:M,y:Z}=Q6({clientX:l,clientY:b},this.state),J=await Tn({description:"Image",extensions:Object.keys(XK)}),w=this.createImageElement({sceneX:M,sceneY:Z,addToFrameUnderCursor:!1});f?(this.insertImageElement(w,J),this.initializeImageDimensions(w),this.setState({selectedElementIds:L1({[w.id]:!0},this.state)},()=>{this.actionManager.executeAction(hD)})):this.setState({pendingImageElementId:w.id},()=>{this.insertImageElement(w,J,!0)})}catch(l){l.name!=="AbortError"?console.error(l):console.warn(l),this.setState({pendingImageElementId:null,newElement:null,activeTool:n9(this.state,{type:"selection"})},()=>{this.actionManager.executeAction(hD)})}}),j0(this,"initializeImageDimensions",(f,l=!1)=>{let b=IE(f)&&this.imageCache.get(f.fileId)?.image;if(!b||b instanceof Promise){if(f.width<FM/this.state.zoom.value&&f.height<FM/this.state.zoom.value){let M=100/this.state.zoom.value;Wu(f,{x:f.x-M/2,y:f.y-M/2,width:M,height:M})}return}if(l||f.width<FM/this.state.zoom.value&&f.height<FM/this.state.zoom.value){let M=Math.max(this.state.height-120,160),Z=Math.min(M,Math.floor(this.state.height*0.5)/this.state.zoom.value),J=Math.min(b.naturalHeight,Z),w=J*(b.naturalWidth/b.naturalHeight),K=f.x+f.width/2-w/2,Q=f.y+f.height/2-J/2;Wu(f,{x:K,y:Q,width:w,height:J,crop:null})}}),j0(this,"updateImageCache",async(f,l=this.files)=>{let{updatedFiles:b,erroredFiles:M}=await Kl0({imageCache:this.imageCache,fileIds:f.map((Z)=>Z.fileId),files:l});if(b.size||M.size)for(let Z of f)b.has(Z.fileId)&&p6.delete(Z);return M.size&&this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().map((Z)=>IE(Z)&&M.has(Z.fileId)?O3(Z,{status:"error"}):Z)),{updatedFiles:b,erroredFiles:M}}),j0(this,"addNewImagesToImageCache",async(f=Ql0(this.scene.getNonDeletedElements()),l=this.files)=>{let b=f.filter((M)=>!M.isDeleted&&!this.imageCache.has(M.fileId));if(b.length){let{updatedFiles:M}=await this.updateImageCache(b,l);M.size&&this.scene.triggerUpdate()}}),j0(this,"scheduleImageRefresh",feu.default(()=>{this.addNewImagesToImageCache()},wku)),j0(this,"updateBindingEnabledOnPointerMove",(f)=>{let l=wbu(f);this.state.isBindingEnabled!==l&&this.setState({isBindingEnabled:l})}),j0(this,"maybeSuggestBindingAtCursor",(f,l)=>{let b=aA(f,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,!1,l);this.setState({suggestedBindings:b!=null?[b]:[]})}),j0(this,"maybeSuggestBindingsForLinearElementAtCoords",(f,l,b)=>{if(!l.length)return;let M=l.reduce((Z,J)=>{let w=aA(J,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,K4(f),K4(f));return w!=null&&!_f0(f,b?.id,w)&&Z.push(w),Z},[]);this.setState({suggestedBindings:M})}),j0(this,"handleInteractiveCanvasRef",(f)=>{f!==null?(this.interactiveCanvas=f,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))}),j0(this,"handleAppOnDrop",async(f)=>{let{file:l,fileHandle:b}=await nMu(f),{x:M,y:Z}=Q6(f,this.state);try{if(GM(l)&&this.isToolSupported("image")){if(l?.type===y4.png||l?.type===y4.svg)try{let K=await Bb0(l,this.state,this.scene.getElementsIncludingDeleted(),b);this.syncActionResult({...K,appState:{...K.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:Xu.IMMEDIATELY});return}catch(K){if(K.name!=="EncodingError")throw Error(C0("alerts.couldNotLoadInvalidFile"))}let w=this.createImageElement({sceneX:M,sceneY:Z});this.insertImageElement(w,l),this.initializeImageDimensions(w),this.setState({selectedElementIds:L1({[w.id]:!0},this.state)});return}}catch(w){return this.setState({isLoading:!1,errorMessage:w.message})}let J=f.dataTransfer.getData(y4.excalidrawlib);if(J&&typeof J=="string"){try{let w=Eb0(J);this.addElementsFromPasteOrLibrary({elements:Vou(w),position:f,files:null})}catch(w){this.setState({errorMessage:w.message})}return}if(l&&await this.loadFileToCanvas(l,b),f.dataTransfer?.types?.includes("text/plain")){let w=f.dataTransfer?.getData("text");if(w&&IO(w,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(w)||NK(w)?.type==="video")){let K=this.insertEmbeddableElement({sceneX:M,sceneY:Z,link:j8(w)});K&&this.setState({selectedElementIds:{[K.id]:!0}})}}}),j0(this,"loadFileToCanvas",async(f,l)=>{f=await Ap(f);try{let b=this.scene.getElementsIncludingDeleted(),M;try{M=await ub0(f,this.state,b,l)}catch(Z){let J=Z instanceof sb;if(J&&Z.code==="IMAGE_NOT_CONTAINS_SCENE_DATA"&&!this.isToolSupported("image")){this.setState({isLoading:!1,errorMessage:C0("errors.imageToolNotSupported")});return}let w=J?C0("alerts.cannotRestoreFromImage"):C0("alerts.couldNotLoadInvalidFile");this.setState({isLoading:!1,errorMessage:w})}if(!M)return;M.type===y4.excalidraw?(iU(b.concat(M.data.elements)),this.store.updateSnapshot(e4(b),this.state),this.setState({isLoading:!0}),this.syncActionResult({...M.data,appState:{...M.data.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:Xu.IMMEDIATELY})):M.type===y4.excalidrawlib&&await this.library.updateLibrary({libraryItems:f,merge:!0,openLibraryMenu:!0}).catch((Z)=>{console.error(Z),this.setState({errorMessage:C0("errors.importLibraryError")})})}catch(b){this.setState({isLoading:!1,errorMessage:b.message})}}),j0(this,"handleCanvasContextMenu",(f)=>{if(f.preventDefault(),(("pointerType"in f.nativeEvent)&&f.nativeEvent.pointerType==="touch"||("pointerType"in f.nativeEvent)&&f.nativeEvent.pointerType==="pen"&&f.button!==sk.SECONDARY)&&this.state.activeTool.type!=="selection")return;let{x:l,y:b}=Q6(f,this.state),M=this.getElementAtPosition(l,b,{preferSelected:!0,includeLockedElements:!0}),Z=this.scene.getSelectedElements(this.state),J=this.isHittingCommonBoundingBoxOfSelectedElements({x:l,y:b},Z),w=M||J?"element":"canvas",K=this.excalidrawContainerRef.current,{top:Q,left:G}=K.getBoundingClientRect(),L=f.clientX-G,H=f.clientY-Q;G6("contextMenu","openContextMenu",w),this.setState({...M&&!this.state.selectedElementIds[M.id]?{...this.state,...y7({editingGroupId:this.state.editingGroupId,selectedElementIds:{[M.id]:!0}},this.scene.getNonDeletedElements(),this.state,this),selectedLinearElement:W3(M)?new M4(M):null}:this.state,showHyperlinkPopup:!1},()=>{this.setState({contextMenu:{top:H,left:L,items:this.getContextMenuItems(w)}})})}),j0(this,"maybeDragNewGenericElement",(f,l,b=!0)=>{let M=this.state.selectionElement,Z=f.lastCoords;if(M&&this.state.activeTool.type!=="eraser"){tl0({newElement:M,elementType:this.state.activeTool.type,originX:f.origin.x,originY:f.origin.y,x:Z.x,y:Z.y,width:K7(f.origin.x,Z.x),height:K7(f.origin.y,Z.y),shouldMaintainAspectRatio:CX(l),shouldResizeFromCenter:fn(l),zoom:this.state.zoom.value,informMutation:b});return}let J=this.state.newElement;if(!J)return;let[w,K]=M2(Z.x,Z.y,l[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Q=IE(J)&&this.imageCache.get(J.fileId)?.image,G=Q&&!(Q instanceof Promise)?Q.width/Q.height:null;this.maybeCacheReferenceSnapPoints(l,[J]);let{snapOffset:L,snapLines:H}=Rbu(J,this,l,{x:f.originInGrid.x+(this.state.originSnapOffset?.x??0),y:f.originInGrid.y+(this.state.originSnapOffset?.y??0)},{x:w-f.originInGrid.x,y:K-f.originInGrid.y},this.scene.getNonDeletedElementsMap());w+=L.x,K+=L.y,this.setState({snapLines:H}),tl0({newElement:J,elementType:this.state.activeTool.type,originX:f.originInGrid.x,originY:f.originInGrid.y,x:w,y:K,width:K7(f.originInGrid.x,w),height:K7(f.originInGrid.y,K),shouldMaintainAspectRatio:H1(J)?!CX(l):CX(l),shouldResizeFromCenter:fn(l),zoom:this.state.zoom.value,widthAspectRatio:G,originOffset:this.state.originSnapOffset,informMutation:b}),this.setState({newElement:J}),(this.state.activeTool.type===O2.frame||this.state.activeTool.type===O2.magicframe)&&this.setState({elementsToHighlight:VO(this.scene.getNonDeletedElements(),J,this.state,this.scene.getNonDeletedElementsMap())})}),j0(this,"maybeHandleCrop",(f,l)=>{if(!this.state.croppingElementId)return!1;let b=f.resize.handleType,M=f.lastCoords,[Z,J]=M2(M.x-f.resize.offset.x,M.y-f.resize.offset.y,l[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),w=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(b&&w&&H1(w)){let K=f.originalElements.get(w.id),Q=IE(w)&&this.imageCache.get(w.fileId)?.image;if(K&&H1(K)&&Q&&!(Q instanceof Promise)){let[G,L]=M2(M.x,M.y,l[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),H={x:G-f.originInGrid.x,y:L-f.originInGrid.y};this.maybeCacheReferenceSnapPoints(l,[w]);let{snapOffset:q,snapLines:x}=Al0([w],[K],this,l,H,b);Wu(w,Bbu(w,b,Q.naturalWidth,Q.naturalHeight,Z+q.x,J+q.y,l.shiftKey?K.width/K.height:void 0)),hB(w,this.scene.getNonDeletedElementsMap(),{newSize:{width:w.width,height:w.height}}),this.setState({isCropping:b&&b!=="rotation",snapLines:x})}return!0}return!1}),j0(this,"maybeHandleResize",(f,l)=>{let b=this.scene.getSelectedElements(this.state),M=b.filter((G)=>u3(G)),Z=f.resize.handleType;if(M.length>0&&Z==="rotation"||b.length===1&&K4(b[0])||this.state.croppingElementId)return!1;this.setState({isResizing:Z&&Z!=="rotation",isRotating:Z==="rotation",activeEmbeddable:null});let J=f.lastCoords,[w,K]=M2(J.x-f.resize.offset.x,J.y-f.resize.offset.y,l[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Q=new Map;if(M.forEach((G)=>{HD(this.scene.getNonDeletedElements(),G.id).forEach((L)=>{Q.set(G.id+L.id,{x:L.x-G.x,y:L.y-G.y})})}),!this.state.selectedElementsAreBeingDragged){let[G,L]=M2(J.x,J.y,l[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),H={x:G-f.originInGrid.x,y:L-f.originInGrid.y},q=[...f.originalElements.values()];this.maybeCacheReferenceSnapPoints(l,b);let{snapOffset:x,snapLines:v}=Al0(b,N3(q,this.state),this,l,H,Z);w+=x.x,K+=x.y,this.setState({snapLines:v})}if(TMu(f.originalElements,Z,b,this.scene.getElementsMapIncludingDeleted(),this.scene,yq(l),fn(l),b.some((G)=>H1(G))?!CX(l):CX(l),w,K,f.resize.center.x,f.resize.center.y)){let G=Gn(b,this.scene.getNonDeletedElementsMap(),this.state.zoom),L=new Set;return M.forEach((H)=>{VO(this.scene.getNonDeletedElements(),H,this.state,this.scene.getNonDeletedElementsMap()).forEach((q)=>L.add(q))}),this.setState({elementsToHighlight:[...L],suggestedBindings:G}),!0}return!1}),j0(this,"getContextMenuItems",(f)=>{let l=[];return l.push(ydu,$du),f==="canvas"?this.state.viewModeEnabled?[...l,gdu,cw0,vsu,gw0]:[mdu,J5,ydu,$du,cdu,J5,Dk3,Sf3,J5,gdu,Mf3,cw0,vsu,gw0]:(l.push(cdu),this.state.viewModeEnabled?[Ms,...l]:[J5,rdu,Ms,mdu,J5,sM3,oM3,tM3,J5,yl3,J5,...l,J5,tk3,ek3,J5,Bf3,aZ3,Zf3,Jf3,Qf3,Ef3,J5,Ff3,J5,Bk3,Ek3,Ak3,Ck3,J5,ff3,lf3,J5,$l3,J5,Iou,Etu,J5,kk3,vf3,J5,$su])}),j0(this,"handleWheel",I9((f)=>{if(!(f.target instanceof HTMLCanvasElement||f.target instanceof HTMLTextAreaElement||f.target instanceof HTMLIFrameElement)){f[y0.CTRL_OR_CMD]&&f.preventDefault();return}if(f.preventDefault(),FP)return;let{deltaX:l,deltaY:b}=f;if(f.metaKey||f.ctrlKey){let M=Math.sign(b),Z=kO*100,J=Math.abs(b),w=b;J>Z&&(w=Z*M);let K=this.state.zoom.value-w/100;K+=Math.log10(Math.max(1,this.state.zoom.value))*-M*Math.min(1,J/20),this.translateCanvas((Q)=>({...bQ({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:jU(K)},Q),shouldCacheIgnoreZoom:!0})),this.resetShouldCacheIgnoreZoomDebounced();return}if(f.shiftKey){this.translateCanvas(({zoom:M,scrollX:Z})=>({scrollX:Z-(b||l)/M.value}));return}this.translateCanvas(({zoom:M,scrollX:Z,scrollY:J})=>({scrollX:Z-l/M.value,scrollY:J-b/M.value}))})),j0(this,"savePointer",(f,l,b)=>{if(!f||!l)return;let{x:M,y:Z}=Q6({clientX:f,clientY:l},this.state);isNaN(M)||isNaN(Z);let J={x:M,y:Z,tool:this.state.activeTool.type==="laser"?"laser":"pointer"};this.props.onPointerUpdate?.({pointer:J,button:b,pointersMap:I1.pointers})}),j0(this,"resetShouldCacheIgnoreZoomDebounced",YK(()=>{this.unmounted||this.setState({shouldCacheIgnoreZoom:!1})},300)),j0(this,"updateDOMRect",(f)=>{if(this.excalidrawContainerRef?.current){let l=this.excalidrawContainerRef.current,{width:b,height:M,left:Z,top:J}=l.getBoundingClientRect(),{width:w,height:K,offsetTop:Q,offsetLeft:G}=this.state;if(b===w&&M===K&&Z===G&&J===Q){f&&f();return}this.setState({width:b,height:M,offsetLeft:Z,offsetTop:J},()=>{f&&f()})}}),j0(this,"refresh",()=>{this.setState({...this.getCanvasOffsets()})});let E=MD(),{excalidrawAPI:A,viewModeEnabled:C=!1,zenModeEnabled:D=!1,gridModeEnabled:F=!1,objectsSnapModeEnabled:U=!1,theme:z=E.theme,name:k=`${C0("labels.untitled")}-${Vk0()}`}=B;if(this.state={...E,theme:z,isLoading:!0,...this.getCanvasOffsets(),viewModeEnabled:C,zenModeEnabled:D,objectsSnapModeEnabled:U,gridModeEnabled:F??E.gridModeEnabled,name:k,width:window.innerWidth,height:window.innerHeight},this.id=z9(),this.library=new if3(this),this.actionManager=new nl3(this.syncActionResult,()=>this.state,()=>this.scene.getElementsIncludingDeleted(),this),this.scene=new RU,this.canvas=document.createElement("canvas"),this.rc=WA.canvas(this.canvas),this.renderer=new Isu(this.scene),this.visibleElements=[],this.store=new dbu,this.history=new Bsu,A){let f={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:(l)=>{this.actionManager.registerAction(l)},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:(l)=>this.onChangeEmitter.on(l),onPointerDown:(l)=>this.onPointerDownEmitter.on(l),onPointerUp:(l)=>this.onPointerUpEmitter.on(l),onScrollChange:(l)=>this.onScrollChangeEmitter.on(l),onUserFollow:(l)=>this.onUserFollowEmitter.on(l)};typeof A=="function"?A(f):console.error("excalidrawAPI should be a function!")}this.excalidrawContainerValue={container:this.excalidrawContainerRef.current,id:this.id},this.fonts=new PU(this.scene),this.history=new Bsu,this.actionManager.registerAll(O_),this.actionManager.registerAction(gl3(this.history,this.store)),this.actionManager.registerAction(_l3(this.history,this.store))}onWindowMessage(B){if(B.origin!=="https://player.vimeo.com"&&B.origin!=="https://www.youtube.com")return;let E=null;try{E=JSON.parse(B.data)}catch{}if(E)switch(B.origin){case"https://player.vimeo.com":if(E.method==="paused"){let A=null,C=document.body.querySelectorAll("iframe.excalidraw__embeddable");if(!C)break;for(let D of C)D.contentWindow===B.source&&(A=D.contentWindow);A?.postMessage(JSON.stringify({method:E.value?"play":"pause",value:!0}),"*")}break;case"https://www.youtube.com":if(E.event==="infoDelivery"&&E.info&&E.id&&typeof E.info.playerState=="number"){let A=E.id,C=E.info.playerState;Object.values(DO).includes(C)&&Vw0.set(A,C)}break}}cacheEmbeddableRef(B,E){E&&this.iFrameRefs.set(B.id,E)}getHTMLIFrameElement(B){return this.iFrameRefs.get(B.id)}handleEmbeddableCenterClick(B){if(this.state.activeEmbeddable?.element===B&&this.state.activeEmbeddable?.state==="active"||(setTimeout(()=>{this.setState({activeEmbeddable:{element:B,state:"active"},selectedElementIds:{[B.id]:!0},newElement:null,selectionElement:null})},100),tk(B)))return;let E=this.getHTMLIFrameElement(B);if(E?.contentWindow){if(E.src.includes("youtube")){let A=Vw0.get(B.id);switch(A||(Vw0.set(B.id,DO.UNSTARTED),E.contentWindow.postMessage(JSON.stringify({event:"listening",id:B.id}),"*")),A){case DO.PLAYING:case DO.BUFFERING:E.contentWindow?.postMessage(JSON.stringify({event:"command",func:"pauseVideo",args:""}),"*");break;default:E.contentWindow?.postMessage(JSON.stringify({event:"command",func:"playVideo",args:""}),"*")}}E.src.includes("player.vimeo.com")&&E.contentWindow.postMessage(JSON.stringify({method:"paused"}),"*")}}isIframeLikeElementCenter(B,E,A,C){return B&&!E.altKey&&!E.shiftKey&&!E.metaKey&&!E.ctrlKey&&(this.state.activeEmbeddable?.element!==B||this.state.activeEmbeddable?.state==="hover"||!this.state.activeEmbeddable)&&A>=B.x+B.width/3&&A<=B.x+2*B.width/3&&C>=B.y+B.height/3&&C<=B.y+2*B.height/3}renderEmbeddables(){let B=this.state.zoom.value,E=this.state.width,A=this.state.height,C=this.scene.getNonDeletedElements().filter((D)=>rB(D)&&this.embedsValidationStatus.get(D.id)===!0||tk(D));return P(tu,{children:C.map((D)=>{let{x:F,y:U}=jA({sceneX:D.x,sceneY:D.y},this.state),z=$O(D,E,A,this.state,this.scene.getNonDeletedElementsMap()),k=this.initializedEmbeds.has(D.id);if(z&&!k&&this.initializedEmbeds.add(D.id),!(z||k))return null;let f;if(tk(D)){f=null;let M=(D.customData?.generationData??this.magicGenerations.get(D.id))||{status:"error",message:"No generation data",code:"ERR_NO_GENERATION_DATA"};if(M.status==="done"){let Z=M.html;f={intrinsicSize:{w:D.width,h:D.height},type:"document",srcdoc:()=>Z}}else if(M.status==="pending")f={intrinsicSize:{w:D.width,h:D.height},type:"document",srcdoc:()=>mq(`
<style>
html, body {
width: 100%;
height: 100%;
color: ${this.state.theme===_3.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 Z;M.code==="ERR_GENERATION_INTERRUPTED"?Z="Generation was interrupted...":Z=M.message||"Generation failed",f={intrinsicSize:{w:D.width,h:D.height},type:"document",srcdoc:()=>mq(`
<style>
html, body {
height: 100%;
}
body {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: ${m3.red[3]};
}
h1, h3 {
margin-top: 0;
margin-bottom: 0.5rem;
}
</style>
<h1>Error!</h1>
<h3>${Z}</h3>
`)}}}else f=NK(Ul0(D.link||""));let l=this.state.activeEmbeddable?.element===D&&this.state.activeEmbeddable?.state==="active",b=this.state.activeEmbeddable?.element===D&&this.state.activeEmbeddable?.state==="hover";return P("div",{className:Yu("excalidraw__embeddable-container",{"is-hovered":b}),style:{transform:z?`translate(${F-this.state.offsetLeft}px, ${U-this.state.offsetTop}px) scale(${B})`:"none",display:z?"block":"none",opacity:af0(D,mB(D,this.scene.getNonDeletedElementsMap()),this.elementsPendingErasure,null,this.state.openDialog?.name==="elementLinkSelector"?jk0:1),"--embeddable-radius":`${IA(Math.min(D.width,D.height),D)}px`},children:l0("div",{className:"excalidraw__embeddable-container__inner",style:{width:z?`${D.width}px`:0,height:z?`${D.height}px`:0,transform:z?`rotate(${D.angle}rad)`:"none",pointerEvents:l?LK.enabled:LK.disabled},children:[b&&P("div",{className:"excalidraw__embeddable-hint",children:C0("buttons.embeddableInteractionButton")}),P("div",{className:"excalidraw__embeddable__outer",style:{padding:`${D.strokeWidth}px`},children:(rB(D)?this.props.renderEmbeddable?.(D,this.state):null)??P("iframe",{ref:(M)=>this.cacheEmbeddableRef(D,M),className:"excalidraw__embeddable",srcDoc:f?.type==="document"?f.srcdoc(this.state.theme):void 0,src:f?.type!=="document"?f?.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:`${f?.sandbox?.allowSameOrigin?"allow-same-origin":""} allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation allow-downloads`})})]})},D.id)})})}toggleOverscrollBehavior(B){document.documentElement.style.overscrollBehaviorX=B.type==="pointerenter"?"none":"auto"}render(){let B=this.scene.getSelectedElements(this.state),{renderTopRightUI:E,renderCustomStats:A}=this.props,C=this.scene.getSceneNonce(),{elementsMap:D,visibleElements:F}=this.renderer.getRenderableElements({sceneNonce:C,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=F;let U=this.scene.getNonDeletedElementsMap(),z="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",k=B[0];return P("div",{className:Yu("excalidraw excalidraw-container",{"excalidraw--view-mode":this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector","excalidraw--mobile":this.device.editor.isMobile}),style:{"--ui-pointerEvents":z?LK.disabled:LK.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:P(Geu.Provider,{value:this,children:P(Heu.Provider,{value:this.props,children:P(xK0.Provider,{value:this.excalidrawContainerValue,children:P(XK0.Provider,{value:this.device,children:P(WK0.Provider,{value:this.setAppState,children:P(SK0.Provider,{value:this.state,children:l0(vK0.Provider,{value:this.scene.getNonDeletedElements(),children:[l0(YK0.Provider,{value:this.actionManager,children:[P(nM3,{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:ZP().code,renderTopRightUI:E,renderCustomStats:A,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}),P("div",{className:"excalidraw-textEditorContainer"}),P("div",{className:"excalidraw-contextMenuContainer"}),P("div",{className:"excalidraw-eye-dropper-container"}),P(WZ3,{trails:[this.laserTrails,this.eraserTrail]}),B.length===1&&this.state.openDialog?.name!=="elementLinkSelector"&&this.state.showHyperlinkPopup&&P(Lf3,{element:k,elementsMap:U,setAppState:this.setAppState,onLinkOpen:this.props.onLinkOpen,setToast:this.setToast,updateEmbedValidationStatus:this.updateEmbedValidationStatus},k.id),this.props.aiEnabled!==!1&&B.length===1&&KO(k)&&P(Psu,{element:k,elementsMap:D,children:P(jw0,{title:C0("labels.convertToCode"),icon:Yf0,checked:!1,onChange:()=>this.onMagicFrameGenerate(k,"button")})}),B.length===1&&tk(k)&&k.customData?.generationData?.status==="done"&&l0(Psu,{element:k,elementsMap:D,children:[P(jw0,{title:C0("labels.copySource"),icon:Dn,checked:!1,onChange:()=>this.onIframeSrcCopy(k)}),P(jw0,{title:"Enter fullscreen",icon:Zlu,checked:!1,onChange:()=>{let f=this.getHTMLIFrameElement(k);if(f)try{f.requestFullscreen(),this.setState({activeEmbeddable:{element:k,state:"active"},selectedElementIds:{[k.id]:!0},newElement:null,selectionElement:null})}catch(l){console.warn(l),this.setState({errorMessage:"Couldn't enter fullscreen"})}}})]}),this.state.toast!==null&&P(dM3,{message:this.state.toast.message,onClose:()=>this.setToast(null),duration:this.state.toast.duration,closable:this.state.toast.closable}),this.state.contextMenu&&P(dl3,{items:this.state.contextMenu.items,top:this.state.contextMenu.top,left:this.state.contextMenu.left,actionManager:this.actionManager,onClose:(f)=>{this.setState({contextMenu:null},()=>{this.focusContainer(),f?.()})}}),P(SZ3,{canvas:this.canvas,rc:this.rc,elementsMap:D,allElementsMap:U,visibleElements:F,sceneNonce:C,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:zX(this),canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:this.flowChartCreator.pendingNodes}}),this.state.newElement&&P($Z3,{appState:this.state,scale:window.devicePixelRatio,rc:this.rc,elementsMap:D,allElementsMap:U,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:!1,canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:null}}),P(XZ3,{containerRef:this.excalidrawContainerRef,canvas:this.interactiveCanvas,elementsMap:D,visibleElements:F,allElementsMap:U,selectedElements:B,sceneNonce:C,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&&P(IZ3,{width:this.state.width,height:this.state.height,userToFollow:this.state.userToFollow,onDisconnect:this.maybeUnfollowRemoteUser}),this.renderFrameNames()]}),this.renderEmbeddables()]})})})})})})})})}setPlugins(B){Object.assign(this.plugins,B)}async onMagicFrameGenerate(B,E){let A=this.plugins.diagramToCode?.generate;if(!A){this.setState({errorMessage:"No diagram to code plugin found"});return}let C=nn(this.scene.getNonDeletedElements(),B).filter((F)=>!KO(F));if(!C.length){E==="button"?(this.setState({errorMessage:"Cannot generate from an empty frame"}),G6("ai","generate (no-children)","d2c")):this.setActiveTool({type:"magicframe"});return}let D=this.insertIframeElement({sceneX:B.x+B.width+30,sceneY:B.y,width:B.width,height:B.height});if(D){this.updateMagicGeneration({frameElement:D,data:{status:"pending"}}),this.setState({selectedElementIds:{[D.id]:!0}}),G6("ai","generate (start)","d2c");try{let{html:F}=await A({frame:B,children:C});if(G6("ai","generate (success)","d2c"),!F.trim()){this.updateMagicGeneration({frameElement:D,data:{status:"error",code:"ERR_OAI",message:"Nothing genereated :("}});return}let U=F.includes("<!DOCTYPE html>")&&F.includes("</html>")?F.slice(F.indexOf("<!DOCTYPE html>"),F.indexOf("</html>")+7):F;this.updateMagicGeneration({frameElement:D,data:{status:"done",html:U}})}catch(F){G6("ai","generate (failed)","d2c"),this.updateMagicGeneration({frameElement:D,data:{status:"error",code:"ERR_OAI",message:F.message||"Unknown error during generation"}})}}}onIframeSrcCopy(B){B.customData?.generationData?.status==="done"&&(bX(B.customData.generationData.html),this.setToast({message:"copied to clipboard",closable:!1,duration:1500}))}clearImageShapeCache(B){let E=B??this.files;this.scene.getNonDeletedElements().forEach((A)=>{IE(A)&&E[A.fileId]&&(this.imageCache.delete(A.fileId),p6.delete(A))})}async componentDidMount(){if(this.unmounted=!1,this.excalidrawContainerValue.container=this.excalidrawContainerRef.current,Z3.MODE===VB.TEST||Z3.DEV){let B=this.setState.bind(this);Object.defineProperties(window.h,{state:{configurable:!0,get:()=>this.state},setState:{configurable:!0,value:(...E)=>this.setState(...E)},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((B)=>{this.history.record(B.elementsChange,B.appStateChange)}),this.scene.onUpdate(this.triggerRender),this.addEventListeners(),this.props.autoFocus&&this.excalidrawContainerRef.current&&this.focusContainer(),OU()||(this.refreshViewportBreakpoints(),this.refreshEditorBreakpoints()),a_&&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),Fku()&&!ufu()&&this.setState({errorMessage:P(uZ3,{})})}componentWillUnmount(){window.launchQueue?.setConsumer(()=>{}),this.renderer.destroy(),this.scene.destroy(),this.scene=new RU,this.fonts=new PU(this.scene),this.renderer=new Isu(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(),p6.destroy(),NU.destroy(),clearTimeout(tM),Z2.clearCache(),y7.clearCache(),tM=0,document.documentElement.style.overscrollBehaviorX=""}removeEventListeners(){this.onRemoveEventListenersEmitter.trigger()}addEventListeners(){this.removeEventListeners(),this.props.handleKeyboardGlobally&&this.onRemoveEventListenersEmitter.once(d6(document,"keydown",this.onKeyDown,!1)),this.onRemoveEventListenersEmitter.once(d6(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),d6(window,"message",this.onWindowMessage,!1),d6(document,"pointerup",this.removePointer,{passive:!1}),d6(document,"copy",this.onCopy,{passive:!1}),d6(document,"keyup",this.onKeyUp,{passive:!0}),d6(document,"pointermove",this.updateCurrentCursorPosition,{passive:!1}),d6(document.fonts,"loadingdone",(B)=>{let E=B.fontfaces;this.fonts.onLoaded(E)},{passive:!1}),d6(document,"gesturestart",this.onGestureStart,!1),d6(document,"gesturechange",this.onGestureChange,!1),d6(document,"gestureend",this.onGestureEnd,!1),d6(window,"focus",()=>{this.maybeCleanupAfterMissingPointerUp(null),this.triggerRender(!0)},{passive:!1})),!this.state.viewModeEnabled&&(this.onRemoveEventListenersEmitter.once(d6(document,"fullscreenchange",this.onFullscreenChange,{passive:!1}),d6(document,"paste",this.pasteFromClipboard,{passive:!1}),d6(document,"cut",this.onCut,{passive:!1}),d6(window,"resize",this.onResize,!1),d6(window,"unload",this.onUnload,!1),d6(window,"blur",this.onBlur,!1),d6(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),d6(this.excalidrawContainerRef.current,"dragover",this.disableEvent,!1),d6(this.excalidrawContainerRef.current,"drop",this.disableEvent,!1)),this.props.detectScroll&&this.onRemoveEventListenersEmitter.once(d6(yku(this.excalidrawContainerRef.current),"scroll",this.onScroll,{passive:!1})))}componentDidUpdate(B,E){this.updateEmbeddables();let A=this.scene.getElementsIncludingDeleted(),C=this.scene.getElementsMapIncludingDeleted(),D=this.scene.getNonDeletedElementsMap();!this.state.showWelcomeScreen&&!A.length&&this.setState({showWelcomeScreen:!0}),B.UIOptions.dockedSidebarBreakpoint!==this.props.UIOptions.dockedSidebarBreakpoint&&this.refreshEditorBreakpoints(),E.userToFollow&&!this.state.collaborators.has(E.userToFollow.socketId)&&this.maybeUnfollowRemoteUser(),(E.zoom.value!==this.state.zoom.value||E.scrollX!==this.state.scrollX||E.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)),E.userToFollow!==this.state.userToFollow&&(E.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:E.userToFollow,action:"UNFOLLOW"}),this.state.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:this.state.userToFollow,action:"FOLLOW"})),Object.keys(this.state.selectedElementIds).length&&ZD(this.state)&&this.setState({activeTool:n9(this.state,{type:"selection"})}),this.state.activeTool.type==="eraser"&&E.theme!==this.state.theme&&zl0(this.interactiveCanvas,this.state.theme),E.activeTool.type==="selection"&&this.state.activeTool.type!=="selection"&&this.state.showHyperlinkPopup&&this.setState({showHyperlinkPopup:!1}),B.langCode!==this.props.langCode&&this.updateLanguage(),ZD(E)&&!ZD(this.state)&&this.eraserTrail.endPath(),B.viewModeEnabled!==this.props.viewModeEnabled&&this.setState({viewModeEnabled:!!this.props.viewModeEnabled}),E.viewModeEnabled!==this.state.viewModeEnabled&&(this.addEventListeners(),this.deselectElements()),(E.openDialog?.name==="elementLinkSelector"||this.state.openDialog?.name==="elementLinkSelector")&&E.openDialog?.name!==this.state.openDialog?.name&&(this.deselectElements(),this.setState({hoveredElementIds:{}})),B.zenModeEnabled!==this.props.zenModeEnabled&&this.setState({zenModeEnabled:!!this.props.zenModeEnabled}),B.theme!==this.props.theme&&this.props.theme&&this.setState({theme:this.props.theme}),this.excalidrawContainerRef.current?.classList.toggle("theme--dark",this.state.theme===_3.DARK),this.state.editingLinearElement&&!this.state.selectedElementIds[this.state.editingLinearElement.elementId]&&setTimeout(()=>{this.state.editingLinearElement&&this.actionManager.executeAction(hD)}),this.state.editingTextElement?.isDeleted&&this.setState({editingTextElement:null}),this.state.selectedLinearElement&&!this.state.selectedElementIds[this.state.selectedLinearElement.elementId]&&this.setState({selectedLinearElement:null});let{multiElement:F}=E;E.activeTool!==this.state.activeTool&&F!=null&&AM(this.state)&&FD(F,!1)&&Hn(F,this.state,OA(M4.getPointAtIndexGlobalCoordinates(F,-1,D)),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.store.commit(C,this.state),this.state.isLoading||(this.props.onChange?.(A,this.state,this.files),this.onChangeEmitter.trigger(A,this.state,this.files))}static resetTapTwice(){DP=!1}async addElementsFromMixedContentPaste(B,{isPlainPaste:E,sceneX:A,sceneY:C}){if(!E&&B.some((D)=>D.type==="imageUrl")&&this.isToolSupported("image")){let D=B.filter((l)=>l.type==="imageUrl").map((l)=>l.value),F=await Promise.all(D.map(async(l)=>{try{return{file:await _Mu(l)}}catch(b){let M=b.message;return b.cause==="FETCH_ERROR"?M=C0("errors.failedToFetchImage"):b.cause==="UNSUPPORTED"&&(M=C0("errors.unsupportedFileType")),{errorMessage:M}}})),U=C,z=!1,k={};for(let l of F)if(l.file){let b=this.createImageElement({sceneX:A,sceneY:U}),M=await this.insertImageElement(b,l.file);M&&(z||(z=!0,U-=M.height/2),Wu(M,{y:U},!1),U=b.y+b.height+25,k[b.id]=!0)}this.setState({selectedElementIds:L1(k,this.state)});let f=F.find((l)=>!!l.errorMessage);f&&f.errorMessage&&this.setState({errorMessage:f.errorMessage})}else{let D=B.filter((F)=>F.type==="text");D.length&&this.addTextFromPaste(D.map((F)=>F.value).join(`
`),E)}}addTextFromPaste(B,E=!1){let{x:A,y:C}=Q6({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),D={x:A,y:C,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:B,fontSize:this.state.currentItemFontSize,fontFamily:this.state.currentItemFontFamily,textAlign:dq,verticalAlign:FO,locked:!1},F=e1({fontSize:D.fontSize,fontFamily:D.fontFamily}),U=JM(D.fontFamily),[z,,k]=Jbu(this.state),f=Math.max(Math.min((k-z)*0.5,800),200),l=10,b=C,M=E?[B]:B.split(`
`),Z=M.reduce((J,w,K)=>{let Q=TK(w).trim();if(Q.length){let G=this.getTopLayerFrameAtSceneCoords({x:A,y:b}),L=Q7(Q,F,U),H=L.width>f,q=H?bM(Q,F,f):Q;L=H?Q7(q,F,U):L;let x=A-L.width/2,v=b-L.height/2,W=N8({...D,x,y:v,text:q,originalText:Q,lineHeight:U,autoResize:!H,frameId:G?G.id:null});J.push(W),b+=W.height+l}else M[K-1]?.trim()&&(b+=EX(D.fontSize,U)+l);return J},[]);Z.length!==0&&(this.scene.insertElements(Z),this.setState({selectedElementIds:L1(Object.fromEntries(Z.map((J)=>[J.id,!0])),this.state)}),!E&&Z.length>1&&Nsu===!1&&!this.device.editor.isMobile&&(this.setToast({message:C0("toast.pasteAsSingleElement",{shortcut:Su("CtrlOrCmd+Shift+V")}),duration:5000}),Nsu=!0),this.store.shouldCaptureIncrement())}handleTextWysiwyg(B,{isExistingElement:E=!1}){let A=this.scene.getElementsMapIncludingDeleted(),C=(D,F)=>{this.scene.replaceAllElements([...this.scene.getElementsIncludingDeleted().map((U)=>U.id===B.id&&l4(U)?O3(U,{originalText:D,isDeleted:F??U.isDeleted,...fl0(U,l5(U,A),A,D)}):U)])};iZ3({id:B.id,canvas:this.canvas,getViewportCoords:(D,F)=>{let{x:U,y:z}=jA({sceneX:D,sceneY:F},this.state);return[U-this.state.offsetLeft,z-this.state.offsetTop]},onChange:I9((D)=>{C(D,!1),up(B)&&hB(B,this.scene.getNonDeletedElementsMap())}),onSubmit:I9(({viaKeyboard:D,nextOriginalText:F})=>{let U=!F.trim();if(C(F,U),!U&&D){let z=B.containerId?B.containerId:B.id;eM.flushSync(()=>{this.setState((k)=>({selectedElementIds:L1({...k.selectedElementIds,[z]:!0},k)}))})}U&&pf0(this.scene.getNonDeletedElements(),[B]),(!U||E)&&this.store.shouldCaptureIncrement(),eM.flushSync(()=>{this.setState({newElement:null,editingTextElement:null})}),this.state.activeTool.locked&&wD(this.interactiveCanvas,this.state),this.focusContainer()}),element:B,excalidrawContainer:this.excalidrawContainerRef.current,app:this,autoSelect:!this.device.isTouchScreen}),this.deselectElements(),C(B.originalText,!1)}deselectElements(){this.setState({selectedElementIds:L1({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}getTextElementAtPosition(B,E){let A=this.getElementAtPosition(B,E,{includeBoundTextElement:!0});return A&&l4(A)&&!A.isDeleted?A:null}getElementAtPosition(B,E,A){let C=this.getElementsAtPosition(B,E,A?.includeBoundTextElement,A?.includeLockedElements);if(C.length>1){if(A?.preferSelected){for(let F=C.length-1;F>-1;F--)if(this.state.selectedElementIds[C[F].id])return C[F]}let D=C[C.length-1];return IK({x:B,y:E,element:D,shape:vU(D,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()/2,frameNameBound:u3(D)?this.frameNameBoundsCache.get(D):null})?D:C[C.length-2]}return C.length===1?C[0]:null}getElementsAtPosition(B,E,A=!1,C=!1){let D=[],F=this.scene.getNonDeletedElementsMap();return(A&&C?this.scene.getNonDeletedElements():this.scene.getNonDeletedElements().filter((U)=>(C||!U.locked)&&(A||!(l4(U)&&U.containerId)))).filter((U)=>this.hitElement(B,E,U)).filter((U)=>{let z=mB(U,F);return z&&this.state.frameRendering.enabled&&this.state.frameRendering.clip?al0({x:B,y:E},z,F):!0}).filter((U)=>tk(U)?(D.push(U),!1):!0).concat(D)}getElementHitThreshold(){return bku/this.state.zoom.value}hitElement(B,E,A,C=!0){if(C&&this.state.selectedElementIds[A.id]&&_l0([A],this.state)){let D=ylu(A,this.scene.getNonDeletedElementsMap(),H1(A)?0:this.getElementHitThreshold());if(eT(t(B,E),D))return!0}return Nf0(B,E,if0(A,this.scene.getNonDeletedElementsMap()))?!0:IK({x:B,y:E,element:A,shape:vU(A,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:u3(A)?this.frameNameBoundsCache.get(A):null})}getTextBindableContainerAtPosition(B,E){let A=this.scene.getNonDeletedElements(),C=this.scene.getSelectedElements(this.state);if(C.length===1)return lM(C[0],!1)?C[0]:null;let D=null;for(let F=A.length-1;F>=0;--F){if(A[F].isDeleted)continue;let[U,z,k,f]=S3(A[F],this.scene.getNonDeletedElementsMap());if(j3(A[F])&&IK({x:B,y:E,element:A[F],shape:vU(A[F],this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()})){D=A[F];break}else if(U<B&&B<k&&z<E&&E<f){D=A[F];break}}return lM(D,!1)?D:null}handleHoverSelectedLinearElement(B,E,A){let C=this.scene.getNonDeletedElementsMap(),D=M4.getElement(B.elementId,C);if(D)if(this.state.selectedLinearElement){let F=-1,U=null;IK({x:E,y:A,element:D,shape:vU(D,this.scene.getNonDeletedElementsMap())})?(F=M4.getPointIndexUnderCursor(D,C,this.state.zoom,E,A),U=M4.getSegmentMidpointHitCoords(B,{x:E,y:A},this.state,this.scene.getNonDeletedElementsMap()),(K4(D)?F===0||F===D.points.length-1:F>=0)||U?u6(this.interactiveCanvas,g1.POINTER):this.hitElement(E,A,D)&&u6(this.interactiveCanvas,g1.MOVE)):this.hitElement(E,A,D)&&(!K4(D)||!(D.startBinding||D.endBinding))&&u6(this.interactiveCanvas,g1.MOVE),this.state.selectedLinearElement.hoverPointIndex!==F&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,hoverPointIndex:F}}),M4.arePointsEqual(this.state.selectedLinearElement.segmentMidPointHoveredCoords,U)||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:U}})}else u6(this.interactiveCanvas,g1.AUTO)}updateGestureOnPointerDown(B){I1.pointers.set(B.pointerId,{x:B.clientX,y:B.clientY}),I1.pointers.size===2&&(I1.lastCenter=Esu(I1.pointers),I1.initialScale=this.state.zoom.value,I1.initialDistance=Asu(Array.from(I1.pointers.values())))}initialPointerDownState(B){let E=Q6(B,this.state),A=this.scene.getSelectedElements(this.state),[C,D,F,U]=T1(A),z=A.findIndex(K4)===0;return{origin:E,withCmdOrCtrl:B[y0.CTRL_OR_CMD],originInGrid:OA(M2(E.x,E.y,B[y0.CTRL_OR_CMD]||z?null:this.getEffectiveGridSize())),scrollbars:Usu(aw0,B.clientX-this.state.offsetLeft,B.clientY-this.state.offsetTop),lastCoords:{...E},originalElements:this.scene.getNonDeletedElements().reduce((k,f)=>(k.set(f.id,QM(f)),k),new Map),resize:{handleType:!1,isResizing:!1,offset:{x:0,y:0},arrowDirection:"origin",center:{x:(F+C)/2,y:(U+D)/2}},hit:{element:null,allHitElements:[],wasAddedToSelection:!1,hasBeenDuplicated:!1,hasHitCommonBoundingBoxOfSelectedElements:this.isHittingCommonBoundingBoxOfSelectedElements(E,A)},drag:{hasOccurred:!1,offset:null},eventListeners:{onMove:null,onUp:null,onKeyUp:null,onKeyDown:null},boxSelection:{hasOccurred:!1}}}handleDraggingScrollBar(B,E){if(!(E.scrollbars.isOverEither&&!this.state.multiElement))return!1;iw0=!0,E.lastCoords.x=B.clientX,E.lastCoords.y=B.clientY;let A=Ow0((D)=>{D.target instanceof HTMLElement&&this.handlePointerMoveOverScrollbars(D,E)}),C=I9(()=>{zP=null,iw0=!1,wD(this.interactiveCanvas,this.state),this.setState({cursorButton:"up"}),this.savePointer(B.clientX,B.clientY,"up"),window.removeEventListener("pointermove",A),window.removeEventListener("pointerup",C),A.flush()});return zP=C,window.addEventListener("pointermove",A),window.addEventListener("pointerup",C),!0}isASelectedElement(B){return B!=null&&this.state.selectedElementIds[B.id]}isHittingCommonBoundingBoxOfSelectedElements(B,E){if(E.length<2)return!1;let A=this.getElementHitThreshold(),[C,D,F,U]=T1(E);return B.x>C-A&&B.x<F+A&&B.y>D-A&&B.y<U+A}getCurrentItemRoundness(B){return this.state.currentItemRoundness==="round"?{type:RK(B)?b2.ADAPTIVE_RADIUS:b2.PROPORTIONAL_RADIUS}:null}maybeCacheReferenceSnapPoints(B,E,A=!1){ek({event:B,app:this,selectedElements:E})&&(A||!NU.getReferenceSnapPoints())&&NU.setReferenceSnapPoints(Wbu(this.scene.getNonDeletedElements(),E,this.state,this.scene.getNonDeletedElementsMap()))}maybeCacheVisibleGaps(B,E,A=!1){ek({event:B,app:this,selectedElements:E})&&(A||!NU.getVisibleGaps())&&NU.setVisibleGaps(Sbu(this.scene.getNonDeletedElements(),E,this.state,this.scene.getNonDeletedElementsMap()))}onKeyDownFromPointerDownHandler(B){return I9((E)=>{this.maybeHandleResize(B,E)||this.maybeDragNewGenericElement(B,E)})}onKeyUpFromPointerDownHandler(B){return I9((E)=>{E.key===y0.ALT&&E.preventDefault(),!this.maybeHandleResize(B,E)&&this.maybeDragNewGenericElement(B,E)})}onPointerMoveFromPointerDownHandler(B){return Ow0((E)=>{if(this.state.openDialog?.name==="elementLinkSelector")return;let A=Q6(E,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.elbowed&&this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index){let[f,l]=M2(A.x,A.y,E[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),b=this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index;if(b<0){let Z=M4.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:f,y:l},this.state,this.scene.getNonDeletedElementsMap());b=Z?M4.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,Z,this.scene.getNonDeletedElementsMap()):-1}let M=M4.moveFixedSegment(this.state.selectedLinearElement,b,f,l,this.scene.getNonDeletedElementsMap());eM.flushSync(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:M.segmentMidPointHoveredCoords,pointerDownState:M.pointerDownState}})});return}let C=this.lastPointerMoveCoords??B.origin;if(this.lastPointerMoveCoords=A,B.drag.offset===null&&(B.drag.offset=OA(jMu(this.scene.getSelectedElements(this.state),B.origin.x,B.origin.y))),!(E.target instanceof HTMLElement)||this.handlePointerMoveOverScrollbars(E,B))return;if(ZD(this.state)){this.handleEraser(E,B,A);return}this.state.activeTool.type==="laser"&&this.laserTrails.addPointToPath(A.x,A.y);let[D,F]=M2(A.x,A.y,E[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize());if(!B.drag.hasOccurred&&(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")&&G1(t(A.x,A.y),t(B.origin.x,B.origin.y))<FM)return;if(B.resize.isResizing&&(B.lastCoords.x=A.x,B.lastCoords.y=A.y,this.maybeHandleCrop(B,E)||this.maybeHandleResize(B,E)))return!0;let U=this.scene.getNonDeletedElementsMap();if(this.state.selectedLinearElement){let f=this.state.editingLinearElement||this.state.selectedLinearElement;if(M4.shouldAddMidpoint(this.state.selectedLinearElement,A,this.state,U)){let l=M4.addMidpoint(this.state.selectedLinearElement,A,this,!E[y0.CTRL_OR_CMD],U);if(!l)return;eM.flushSync(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:l.pointerDownState,selectedPointsIndices:l.selectedPointsIndices}}),this.state.editingLinearElement&&this.setState({editingLinearElement:{...this.state.editingLinearElement,pointerDownState:l.pointerDownState,selectedPointsIndices:l.selectedPointsIndices}})});return}else if(f.pointerDownState.segmentMidpoint.value!==null&&!f.pointerDownState.segmentMidpoint.added)return;if(M4.handlePointDragging(E,this,A.x,A.y,(l,b)=>{this.maybeSuggestBindingsForLinearElementAtCoords(l,b)},f,this.scene)){B.lastCoords.x=A.x,B.lastCoords.y=A.y,B.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 z=B.hit.allHitElements.some((f)=>this.isASelectedElement(f)),k=this.state.editingLinearElement&&E.shiftKey&&this.state.editingLinearElement.elementId===B.hit.element?.id;if((z||B.hit.hasHitCommonBoundingBoxOfSelectedElements)&&!k){let f=this.scene.getSelectedElements(this.state);if(f.every((Z)=>Z.locked))return;let l=f.find((Z)=>u3(Z)),b=this.getTopLayerFrameAtSceneCoords(A),M=b&&!l?b:null;if(this.state.frameToHighlight!==M&&eM.flushSync(()=>{this.setState({frameToHighlight:M})}),B.drag.hasOccurred=!0,f.length>0&&!B.withCmdOrCtrl&&!this.state.editingTextElement&&this.state.activeEmbeddable?.state!=="active"){let Z={x:A.x-B.origin.x,y:A.y-B.origin.y},J=[...B.originalElements.values()],w=E.shiftKey;if(w){let G=Math.abs(Z.x),L=Math.abs(Z.y),H=w&&G<L,q=w&&G>L;H&&(Z.x=0),q&&(Z.y=0)}if(this.state.croppingElementId){let G=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(G&&H1(G)&&G.crop!==null&&B.hit.element===G){let L=G.crop,H=IE(G)&&this.imageCache.get(G.fileId)?.image;if(H&&!(H instanceof Promise)){let q=b9(V5(A.x-C.x,A.y-C.y),Math.max(this.state.zoom.value,2)),[x,v,W,S,T,R]=S3(G,U),Y=O4(Lu(t(x,v),t(T,R),G.angle)),a=O4(Lu(t(W,v),t(T,R),G.angle)),I=O4(Lu(t(x,S),t(T,R),G.angle)),O=w7(dT(a,Y)),i=w7(dT(I,Y)),N=V5(Nk0(q,O),Nk0(q,i)),V={...L,x:$3(L.x-N[0]*Math.sign(G.scale[0]),0,H.naturalWidth-L.width),y:$3(L.y-N[1]*Math.sign(G.scale[1]),0,H.naturalHeight-L.height)};Wu(G,{crop:V});return}}}this.maybeCacheVisibleGaps(E,f),this.maybeCacheReferenceSnapPoints(E,f);let{snapOffset:K,snapLines:Q}=Ybu(J,Z,this,E,this.scene.getNonDeletedElementsMap());if(this.setState({snapLines:Q}),this.state.editingFrame||PMu(B,f,Z,this.scene,K,E[y0.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),this.setState({selectedElementsAreBeingDragged:!0,selectionElement:null}),(f.length!==1||!K4(f[0]))&&this.setState({suggestedBindings:Gn(f,this.scene.getNonDeletedElementsMap(),this.state.zoom)}),E.altKey&&!B.hit.hasBeenDuplicated){B.hit.hasBeenDuplicated=!0;let G=[],L=[],H=new Map,q=new Map,x=B.hit.element,v=new Set(this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}).map((T)=>T.id)),W=this.scene.getElementsIncludingDeleted();for(let T of W){let R=v.has(T.id)||T.id===x?.id&&B.hit.wasAddedToSelection;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 element in scene with invalid dimensions",T.x,T.y,T.width,T.height,R);return}if(R){let Y=bl0(this.state.editingGroupId,H,T);if(Math.abs(Y.x)>1e7||Math.abs(Y.x)>1e7||Math.abs(Y.width)>1e7||Math.abs(Y.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",Y.x,Y.y,Y.width,Y.height);return}let a=B.originalElements.get(T.id);if(Math.abs(a.x)>1e7||Math.abs(a.x)>1e7||Math.abs(a.width)>1e7||Math.abs(a.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",a.x,a.y,a.width,a.height);return}Wu(Y,{x:a.x,y:a.y}),B.originalElements.set(Y.id,Y),G.push(Y),L.push(T),q.set(T.id,Y.id)}else G.push(T)}let S=[...G,...L];S=this.props.onDuplicate?.(S,W)||S,lD(S,e4(L)),Dl0(G,L,q),nf0(S,L,q,"duplicatesServeAsOld"),jl0(S,L,q),this.scene.replaceAllElements(S),this.maybeCacheVisibleGaps(E,f,!0),this.maybeCacheReferenceSnapPoints(E,f,!0)}return}}if(this.state.selectionElement)B.lastCoords.x=A.x,B.lastCoords.y=A.y,this.maybeDragNewGenericElement(B,E);else{let f=this.state.newElement;if(!f)return;if(f.type==="freedraw"){let l=f.points,b=A.x-f.x,M=A.y-f.y,Z=l.length>0&&l[l.length-1];if(!(Z&&Z[0]===b&&Z[1]===M)){let J=f.simulatePressure?f.pressures:[...f.pressures,E.pressure];Wu(f,{points:[...l,t(b,M)],pressures:J},!1),this.setState({newElement:f})}}else if(W3(f)){B.drag.hasOccurred=!0;let l=f.points,b=D-f.x,M=F-f.y;yq(E)&&l.length===2&&({width:b,height:M}=sn(f.x,f.y,A.x,A.y)),l.length===1?Wu(f,{points:[...l,t(b,M)]},!1):(l.length===2||l.length>1&&K4(f))&&Wu(f,{points:[...l.slice(0,-1),t(b,M)]},!1,{isDragging:!0}),this.setState({newElement:f}),FD(f,!1)&&this.maybeSuggestBindingsForLinearElementAtCoords(f,[A],this.state.startBoundElement)}else B.lastCoords.x=A.x,B.lastCoords.y=A.y,this.maybeDragNewGenericElement(B,E,!1)}if(this.state.activeTool.type==="selection"){B.boxSelection.hasOccurred=!0;let f=this.scene.getNonDeletedElements();if(this.state.editingLinearElement)M4.handleBoxSelection(E,this.state,this.setState.bind(this),this.scene.getNonDeletedElementsMap());else{let l=!0;!E.shiftKey&&Z2(f,this.state)&&(B.withCmdOrCtrl&&B.hit.element?this.setState((M)=>y7({...M,selectedElementIds:{[B.hit.element.id]:!0}},this.scene.getNonDeletedElements(),M,this)):l=!1);let b=this.state.selectionElement?dn(f,this.state.selectionElement,this.scene.getNonDeletedElementsMap(),!1):[];this.setState((M)=>{let Z={...l&&M.selectedElementIds,...b.reduce((J,w)=>(J[w.id]=!0,J),{})};return B.hit.element&&(b.length?delete Z[B.hit.element.id]:Z[B.hit.element.id]=!0),M=l?M:{...M,selectedGroupIds:{},editingGroupId:null},{...y7({editingGroupId:M.editingGroupId,selectedElementIds:Z},this.scene.getNonDeletedElements(),M,this),selectedLinearElement:b.length===1&&W3(b[0])?new M4(b[0]):null,showHyperlinkPopup:b.length===1&&(b[0].link||rB(b[0]))?"info":!1}})}}})}handlePointerMoveOverScrollbars(B,E){if(E.scrollbars.isOverHorizontal){let A=B.clientX,C=A-E.lastCoords.x;return this.translateCanvas({scrollX:this.state.scrollX-C/this.state.zoom.value}),E.lastCoords.x=A,!0}if(E.scrollbars.isOverVertical){let A=B.clientY,C=A-E.lastCoords.y;return this.translateCanvas({scrollY:this.state.scrollY-C/this.state.zoom.value}),E.lastCoords.y=A,!0}return!1}onPointerUpFromPointerDownHandler(B){return I9((E)=>{this.removePointer(E),B.eventListeners.onMove&&B.eventListeners.onMove.flush();let{newElement:A,resizingElement:C,croppingElementId:D,multiElement:F,activeTool:U,isResizing:z,isRotating:k,isCropping:f}=this.state;this.setState((J)=>({isResizing:!1,isRotating:!1,isCropping:!1,resizingElement:null,selectionElement:null,frameToHighlight:null,elementsToHighlight:null,cursorButton:"up",snapLines:BX(J.snapLines,[]),originSnapOffset:null})),this.lastPointerMoveCoords=null,NU.setReferenceSnapPoints(null),NU.setVisibleGaps(null),this.savePointer(E.clientX,E.clientY,"up"),this.setState({selectedElementsAreBeingDragged:!1});let l=this.scene.getNonDeletedElementsMap();if(B.drag.hasOccurred&&B.hit?.element?.id){let J=l.get(B.hit.element.id);iA(J)&&J.boundElements?.filter((w)=>w.type==="arrow").map((w)=>l.get(w.id)).filter((w)=>K4(w)).forEach((w)=>{w&&Wu(w,{},!0)})}if(this.state.editingLinearElement)if(!B.boxSelection.hasOccurred&&B.hit?.element?.id!==this.state.editingLinearElement.elementId)this.actionManager.executeAction(hD);else{let J=M4.handlePointerUp(E,this.state.editingLinearElement,this.state,this.scene);J!==this.state.editingLinearElement&&this.setState({editingLinearElement:J,suggestedBindings:[]})}else if(this.state.selectedLinearElement){if(this.state.selectedLinearElement.elbowed){let J=M4.getElement(this.state.selectedLinearElement.elementId,this.scene.getNonDeletedElementsMap());J&&Wu(J,{},!0)}if(B.hit?.element?.id!==this.state.selectedLinearElement.elementId)this.scene.getSelectedElements(this.state).length>1&&this.setState({selectedLinearElement:null});else{let J=M4.handlePointerUp(E,this.state.selectedLinearElement,this.state,this.scene),{startBindingElement:w,endBindingElement:K}=J,Q=this.scene.getElement(J.elementId);FD(Q)&&SO(Q,w,K,l,this.scene),J!==this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...J,selectedPointsIndices:null},suggestedBindings:[]})}}if(this.missingPointerEventCleanupEmitter.clear(),window.removeEventListener("pointermove",B.eventListeners.onMove),window.removeEventListener("pointerup",B.eventListeners.onUp),window.removeEventListener("keydown",B.eventListeners.onKeyDown),window.removeEventListener("keyup",B.eventListeners.onKeyUp),this.state.pendingImageElementId&&this.setState({pendingImageElementId:null}),this.props?.onPointerUp?.(U,B),this.onPointerUpEmitter.trigger(this.state.activeTool,B,E),A?.type==="freedraw"){let J=Q6(E,this.state),w=A.points,K=J.x-A.x,Q=J.y-A.y;K===w[0][0]&&Q===w[0][1]&&(Q+=0.0001,K+=0.0001);let G=A.simulatePressure?[]:[...A.pressures,E.pressure];Wu(A,{points:[...w,t(K,Q)],pressures:G,lastCommittedPoint:t(K,Q)}),this.actionManager.executeAction(hD);return}if(H1(A)){let J=A;try{this.initializeImageDimensions(J),this.setState({selectedElementIds:L1({[J.id]:!0},this.state)},()=>{this.actionManager.executeAction(hD)})}catch(w){console.error(w),this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().filter((K)=>K.id!==J.id)),this.actionManager.executeAction(hD)}return}if(W3(A)){A.points.length>1&&this.store.shouldCaptureIncrement();let J=Q6(E,this.state);!B.drag.hasOccurred&&A&&!F?(Wu(A,{points:[...A.points,t(J.x-A.x,J.y-A.y)]}),this.setState({multiElement:A,newElement:A})):B.drag.hasOccurred&&!F&&(AM(this.state)&&FD(A,!1)&&Hn(A,this.state,J,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.setState({suggestedBindings:[],startBoundElement:null}),U.locked?this.setState((w)=>({newElement:null})):(mA(this.interactiveCanvas),this.setState((w)=>({newElement:null,activeTool:n9(this.state,{type:"selection"}),selectedElementIds:L1({...w.selectedElementIds,[A.id]:!0},w),selectedLinearElement:new M4(A)}))),this.scene.triggerUpdate());return}if(l4(A)){let J=p_(e1({fontSize:A.fontSize,fontFamily:A.fontFamily}),A.lineHeight);A.width<J&&Wu(A,{autoResize:!0}),this.resetCursor(),this.handleTextWysiwyg(A,{isExistingElement:!0})}if(U.type!=="selection"&&A&&aK(A)){this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter((J)=>J.id!==A.id),appState:{newElement:null},captureUpdate:Xu.NEVER});return}if(u3(A)){let J=xMu(this.scene.getElementsIncludingDeleted(),A,this.scene.getNonDeletedElementsMap());this.scene.replaceAllElements(ZX(this.scene.getElementsMapIncludingDeleted(),J,A,this.state))}if(A&&(Wu(A,yl0(A)),this.scene.triggerUpdate()),B.drag.hasOccurred){let J=Q6(E,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.isDragging){let w=this.scene.getElement(this.state.selectedLinearElement.elementId);if(w?.frameId){let K=mB(w,l);K&&w&&(dk(w,K,this.scene.getNonDeletedElementsMap())||(Wu(w,{groupIds:[]}),hO([w],this.scene.getNonDeletedElementsMap()),this.scene.triggerUpdate()))}}else{let w=this.getTopLayerFrameAtSceneCoords(J),K=this.scene.getSelectedElements(this.state),Q=this.scene.getElementsMapIncludingDeleted(),G=(L)=>{if(L.length>0){for(let H of L){let q=H.groupIds.indexOf(this.state.editingGroupId);Wu(H,{groupIds:H.groupIds.slice(0,q)},!1)}Q.forEach((H)=>{H.groupIds.length&&x6(Q,H.groupIds[H.groupIds.length-1]).length<2&&Wu(H,{groupIds:[]},!1)}),this.setState({editingGroupId:null})}};if(w&&!this.state.selectedElementIds[w.id]){let L=K.filter((H)=>H.frameId!==w.id&&mO(H,Q,this.state));this.state.editingGroupId&&G(L),Q=ZX(Q,L,w,this.state)}else if(!w&&this.state.editingGroupId){let L=K.filter((H)=>H.frameId&&!mO(H,Q,this.state));G(L)}Q=iK(Q,this.state,this),this.scene.replaceAllElements(Q)}}if(C&&this.store.shouldCaptureIncrement(),C&&aK(C)&&this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter((J)=>J.id!==C.id),captureUpdate:Xu.NEVER}),B.resize.isResizing){let J=iK(this.scene.getElementsIncludingDeleted(),this.state,this),w=this.scene.getSelectedElements(this.state).filter((K)=>u3(K));for(let K of w)J=hl0(J,VO(this.scene.getElementsIncludingDeleted(),K,this.state,l),K,this);this.scene.replaceAllElements(J)}let b=B.hit.element;this.state.selectedLinearElement?.elementId!==b?.id&&W3(b)&&this.scene.getSelectedElements(this.state).length===1&&this.setState({selectedLinearElement:new M4(b)}),(!D||D&&(!b&&!f||b&&b.id!==D))&&this.finishImageCropping();let M=this.lastPointerDownEvent,Z=this.lastPointerUpEvent||this.lastPointerMoveEvent;if(ZD(this.state)&&M&&Z){if(this.eraserTrail.endPath(),G1(t(M.clientX,M.clientY),t(Z.clientX,Z.clientY))===0){let J=Q6({clientX:Z.clientX,clientY:Z.clientY},this.state);this.getElementsAtPosition(J.x,J.y).forEach((w)=>this.elementsPendingErasure.add(w.id))}this.eraseElements();return}else this.elementsPendingErasure.size&&this.restoreReadyToEraseElements();if(b&&!B.drag.hasOccurred&&!B.hit.wasAddedToSelection&&(!this.state.editingLinearElement||!B.boxSelection.hasOccurred)&&(E.shiftKey&&!this.state.editingLinearElement?this.state.selectedElementIds[b.id]?tf0(this.state,b)?this.setState((J)=>{let w={...J.selectedElementIds};for(let K of b.groupIds.flatMap((Q)=>x6(this.scene.getNonDeletedElements(),Q)))delete w[K.id];return{selectedGroupIds:{...J.selectedElementIds,...b.groupIds.map((K)=>({[K]:!1})).reduce((K,Q)=>({...K,...Q}),{})},selectedElementIds:L1(w,J)}}):this.state.selectedLinearElement?.isDragging||this.setState((J)=>{let w={...J.selectedElementIds};delete w[b.id];let K=N3(this.scene.getNonDeletedElements(),{selectedElementIds:w});return{...y7({editingGroupId:J.editingGroupId,selectedElementIds:w},this.scene.getNonDeletedElements(),J,this),selectedLinearElement:K.length===1&&W3(K[0])?new M4(K[0]):J.selectedLinearElement}}):b.frameId&&this.state.selectedElementIds[b.frameId]?this.setState((J)=>{let w={...J.selectedElementIds,[b.id]:!0};return delete w[b.frameId],(this.scene.getElement(b.frameId)?.groupIds??[]).flatMap((K)=>x6(this.scene.getNonDeletedElements(),K)).forEach((K)=>{delete w[K.id]}),{...y7({editingGroupId:J.editingGroupId,selectedElementIds:w},this.scene.getNonDeletedElements(),J,this),showHyperlinkPopup:b.link||rB(b)?"info":!1}}):this.setState((J)=>({selectedElementIds:L1({...J.selectedElementIds,[b.id]:!0},J)})):this.setState((J)=>({...y7({editingGroupId:J.editingGroupId,selectedElementIds:{[b.id]:!0}},this.scene.getNonDeletedElements(),J,this),selectedLinearElement:W3(b)&&J.selectedLinearElement?.elementId!==b.id?new M4(b):J.selectedLinearElement}))),!(b&&K4(b))&&!B.drag.hasOccurred&&!this.state.isResizing&&(b&&dlu({x:B.origin.x,y:B.origin.y,element:b,shape:vU(b,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:u3(b)?this.frameNameBoundsCache.get(b):null},l)||!b&&B.hit.hasHitCommonBoundingBoxOfSelectedElements)){this.state.editingLinearElement?this.setState({editingLinearElement:null}):this.setState({selectedElementIds:L1({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),u6(this.interactiveCanvas,g1.AUTO);return}if(!U.locked&&U.type!=="freedraw"&&A&&this.setState((J)=>({selectedElementIds:L1({...J.selectedElementIds,[A.id]:!0},J),showHyperlinkPopup:rB(A)&&!A.link?"editor":J.showHyperlinkPopup})),(U.type!=="selection"||Z2(this.scene.getNonDeletedElements(),this.state)||!h5(this.state.previousSelectedElementIds,this.state.selectedElementIds))&&this.store.shouldCaptureIncrement(),B.drag.hasOccurred||z||k||f){let J=this.scene.getSelectedElements(this.state).filter(W3);WO(J,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,AM(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom)}if(U.type==="laser"){this.laserTrails.endPath();return}!U.locked&&U.type!=="freedraw"?(mA(this.interactiveCanvas),this.setState({newElement:null,suggestedBindings:[],activeTool:n9(this.state,{type:"selection"})})):this.setState({newElement:null,suggestedBindings:[]}),b&&this.lastPointerUpEvent&&this.lastPointerDownEvent&&this.lastPointerUpEvent.timeStamp-this.lastPointerDownEvent.timeStamp<300&&I1.pointers.size<=1&&YE(b)&&this.isIframeLikeElementCenter(b,this.lastPointerUpEvent,B.origin.x,B.origin.y)&&this.handleEmbeddableCenterClick(b)})}clearSelection(B){this.setState((E)=>({selectedElementIds:L1({},E),activeEmbeddable:null,selectedGroupIds:{},editingGroupId:E.editingGroupId&&B!=null&&UX(B,E.editingGroupId)?E.editingGroupId:null})),this.setState({selectedElementIds:L1({},this.state),activeEmbeddable:null,previousSelectedElementIds:this.state.selectedElementIds})}getTextWysiwygSnappedToCenterPosition(B,E,A,C){if(C){let D=C.x+C.width/2,F=C.y+C.height/2,U=vn(C,A,this.scene.getNonDeletedElementsMap());if(U&&(D=U.x,F=U.y),Math.hypot(B-D,E-F)<kku){let{x:z,y:k}=jA({sceneX:D,sceneY:F},A);return{viewportX:z,viewportY:k,elementCenterX:D,elementCenterY:F}}}}getCanvasOffsets(){if(this.excalidrawContainerRef?.current){let B=this.excalidrawContainerRef.current,{left:E,top:A}=B.getBoundingClientRect();return{offsetLeft:E,offsetTop:A}}return{offsetLeft:0,offsetTop:0}}async updateLanguage(){let B=EK0.find((E)=>E.code===this.props.langCode)||Lx;await Vsu(B),this.setAppState({})}},cZ3=()=>{(Z3.MODE===VB.TEST||Z3.DEV)&&(window.h=window.h||{},Object.defineProperties(window.h,{elements:{configurable:!0,get(){return this.app?.scene.getElementsIncludingDeleted()},set(u){return this.app?.scene.replaceAllElements(iU(u))}},scene:{configurable:!0,get(){return this.app?.scene}}}))};cZ3();var gZ3=yZ3,_Z3=()=>{Array.prototype.at||Object.defineProperty(Array.prototype,"at",{value:function(u){if(u=Math.trunc(u)||0,u<0&&(u+=this.length),!(u<0||u>=this.length))return this[u]},writable:!0,enumerable:!1,configurable:!0}),Element.prototype.replaceChildren||(Element.prototype.replaceChildren=function(...u){this.innerHTML="",this.append(...u)})},nZ3=_Z3,pZ3=({children:u})=>{let{FooterCenterTunnel:B}=dB(),E=X7();return P(B.In,{children:P("div",{className:Yu("footer-center zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":E.zenModeEnabled}),children:u})})};pZ3.displayName="FooterCenter";var dZ3=()=>P("svg",{viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"ExcalidrawLogo-icon",children:P("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"})}),sZ3=()=>l0("svg",{viewBox:"0 0 450 55",xmlns:"http://www.w3.org/2000/svg",fill:"none",className:"ExcalidrawLogo-text",children:[P("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)"}),P("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)"}),P("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)"}),P("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)"})]}),oZ3=({style:u,size:B="small",withText:E})=>l0("div",{className:`ExcalidrawLogo is-${B}`,style:u,children:[P(dZ3,{}),E&&P(sZ3,{})]}),RK0=({icon:u,shortcut:B,children:E})=>{let A=K5();return l0(tu,{children:[P("div",{className:"welcome-screen-menu-item__icon",children:u}),P("div",{className:"welcome-screen-menu-item__text",children:E}),B&&!A.editor.isMobile&&P("div",{className:"welcome-screen-menu-item__shortcut",children:B})]})};RK0.displayName="WelcomeScreenMenuItemContent";var WP=({onSelect:u,children:B,icon:E,shortcut:A,className:C="",...D})=>P("button",{...D,type:"button",className:`welcome-screen-menu-item ${C}`,onClick:u,children:P(RK0,{icon:E,shortcut:A,children:B})});WP.displayName="WelcomeScreenMenuItem";var qeu=({children:u,href:B,icon:E,shortcut:A,className:C="",...D})=>P("a",{...D,className:`welcome-screen-menu-item ${C}`,href:B,target:"_blank",rel:"noreferrer",children:P(RK0,{icon:E,shortcut:A,children:u})});qeu.displayName="WelcomeScreenMenuItemLink";var pD=({children:u})=>{let{WelcomeScreenCenterTunnel:B}=dB();return P(B.In,{children:P("div",{className:"welcome-screen-center",children:u||l0(tu,{children:[P(TK0,{}),P(OK0,{children:C0("welcomeScreen.defaults.center_heading")}),l0(IK0,{children:[P(jK0,{}),P(PK0,{})]})]})})})};pD.displayName="Center";var TK0=({children:u})=>P("div",{className:"welcome-screen-center__logo excalifont welcome-screen-decor",children:u||P(oZ3,{withText:!0})});TK0.displayName="Logo";var OK0=({children:u})=>P("div",{className:"welcome-screen-center__heading welcome-screen-decor excalifont",children:u});OK0.displayName="Heading";var IK0=({children:u})=>P("div",{className:"welcome-screen-menu",children:u});IK0.displayName="Menu";var PK0=()=>{let u=_8();return P(WP,{onSelect:()=>u.executeAction(lK0),shortcut:"?",icon:Bn,children:C0("helpDialog.title")})};PK0.displayName="MenuItemHelp";var jK0=()=>{let u=X7(),B=_8();return u.viewModeEnabled?null:P(WP,{onSelect:()=>B.executeAction(yw0),shortcut:EB("loadScene"),icon:An,children:C0("buttons.load")})};jK0.displayName="MenuItemLoadScene";var Xeu=({onSelect:u})=>{let{t:B}=AB();return P(WP,{shortcut:null,onSelect:u,icon:Qf0,children:B("labels.liveCollaboration")})};Xeu.displayName="MenuItemLiveCollaborationTrigger";pD.Logo=TK0;pD.Heading=OK0;pD.Menu=IK0;pD.MenuItem=WP;pD.MenuItemLink=qeu;pD.MenuItemHelp=PK0;pD.MenuItemLoadScene=jK0;pD.MenuItemLiveCollaborationTrigger=Xeu;var NK0=({children:u})=>{let{WelcomeScreenMenuHintTunnel:B}=dB();return P(B.In,{children:l0("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--menu",children:[Dfu,P("div",{className:"welcome-screen-decor-hint__label",children:u||C0("welcomeScreen.defaults.menuHint")})]})})};NK0.displayName="MenuHint";var iK0=({children:u})=>{let{WelcomeScreenToolbarHintTunnel:B}=dB();return P(B.In,{children:l0("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--toolbar",children:[P("div",{className:"welcome-screen-decor-hint__label",children:u||C0("welcomeScreen.defaults.toolbarHint")}),Ufu]})})};iK0.displayName="ToolbarHint";var aK0=({children:u})=>{let{WelcomeScreenHelpHintTunnel:B}=dB();return P(B.In,{children:l0("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--help",children:[P("div",{children:u||C0("welcomeScreen.defaults.helpHint")}),Ffu]})})};aK0.displayName="HelpHint";var VK0=(u)=>P(tu,{children:u.children||l0(tu,{children:[P(pD,{}),P(NK0,{}),P(iK0,{}),P(aK0,{})]})});VK0.displayName="WelcomeScreen";VK0.Center=pD;VK0.Hints={MenuHint:NK0,ToolbarHint:iK0,HelpHint:aK0};var tZ3=({isCollaborating:u,onSelect:B,...E})=>{let A=X7(),C=A.width<830;return l0(QQ,{...E,className:Yu("collab-button",{active:u}),type:"button",onSelect:B,style:{position:"relative",width:C?void 0:"auto"},title:C0("labels.liveCollaboration"),children:[C?Lfu:C0("labels.share"),A.collaborators.size>0&&P("div",{className:"CollabButton-collaborators",children:A.collaborators.size})]})};tZ3.displayName="LiveCollaborationTrigger";var Wj1=xeu.default((u,B,E)=>{if(Z3.DEV||Z3.MODE===VB.TEST||window?.DEBUG_FRACTIONAL_INDICES){let A=iU(u.map((C)=>({...C})));Rn(A,{shouldThrow:Z3.DEV||Z3.MODE===VB.TEST,includeBoundTextValidation:!0,reconciliationContext:{localElements:B,remoteElements:E}})}},60000,{leading:!0,trailing:!1});var eZ3=({children:u,icon:B})=>{let{TTDDialogTriggerTunnel:E}=dB(),A=V2();return P(E.In,{children:l0(v6.Item,{onSelect:()=>{G6("ai","dialog open","ttd"),A({openDialog:{name:"ttd",tab:"text-to-diagram"}})},icon:B??wlu,children:[u??C0("labels.textToDiagram"),P(v6.Item.Badge,{children:"AI"})]})})};eZ3.displayName="TTDDialogTrigger";nZ3();var BJ3=(u)=>{let{onChange:B,initialData:E,excalidrawAPI:A,isCollaborating:C=!1,onPointerUpdate:D,renderTopRightUI:F,langCode:U=Lx.code,viewModeEnabled:z,zenModeEnabled:k,gridModeEnabled:f,libraryReturnUrl:l,theme:b,name:M,renderCustomStats:Z,onPaste:J,detectScroll:w=!0,handleKeyboardGlobally:K=!1,onLibraryChange:Q,autoFocus:G=!1,generateIdForFile:L,onLinkOpen:H,generateLinkForSelection:q,onPointerDown:x,onPointerUp:v,onScrollChange:W,onDuplicate:S,children:T,validateEmbeddable:R,renderEmbeddable:Y,aiEnabled:a,showDeprecatedFonts:I}=u,O=u.UIOptions?.canvasActions,i={...u.UIOptions,canvasActions:{...Tk0.canvasActions,...O},tools:{image:u.UIOptions?.tools?.image??!0}};return O?.export&&(i.canvasActions.export.saveFileToDisk=O.export?.saveFileToDisk??Tk0.canvasActions.export.saveFileToDisk),i.canvasActions.toggleTheme===null&&typeof b>"u"&&(i.canvasActions.toggleTheme=!0),qs.useEffect(()=>{(async()=>{await Promise.resolve().then(() => (Xdu(),rz3))})();let N=(V)=>{typeof V.scale=="number"&&V.scale!==1&&V.preventDefault()};return document.addEventListener("touchmove",N,{passive:!1}),()=>{document.removeEventListener("touchmove",N)}},[]),P($z3,{store:mD,children:P(_z3,{langCode:U,theme:b,children:P(gZ3,{onChange:B,initialData:E,excalidrawAPI:A,isCollaborating:C,onPointerUpdate:D,renderTopRightUI:F,langCode:U,viewModeEnabled:z,zenModeEnabled:k,gridModeEnabled:f,libraryReturnUrl:l,theme:b,name:M,renderCustomStats:Z,UIOptions:i,onPaste:J,detectScroll:w,handleKeyboardGlobally:K,onLibraryChange:Q,autoFocus:G,generateIdForFile:L,onLinkOpen:H,generateLinkForSelection:q,onPointerDown:x,onPointerUp:v,onScrollChange:W,onDuplicate:S,validateEmbeddable:R,renderEmbeddable:Y,aiEnabled:a!==!1,showDeprecatedFonts:I,children:T})})})},EJ3=(u,B)=>{if(u.children!==B.children)return!1;let{initialData:E,UIOptions:A={},...C}=u,{initialData:D,UIOptions:F={},...U}=B,z=Object.keys(A),k=Object.keys(F);return z.length!==k.length?!1:z.every((f)=>f==="canvasActions"?Object.keys(A.canvasActions).every((l)=>l==="export"&&A?.canvasActions?.export&&F?.canvasActions?.export?A.canvasActions.export.saveFileToDisk===F.canvasActions.export.saveFileToDisk:A?.canvasActions?.[l]===F?.canvasActions?.[l]):A[f]===F[f])&&h5(C,U)},AJ3=qs.default.memo(BJ3,EJ3);AJ3.displayName="Excalidraw";window.EXCALIDRAW_ASSET_PATH="https://gstack-render.localhost/excalidraw-assets/";var CJ3='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';cw.initialize({startOnLoad:!1,securityLevel:"strict",theme:"neutral",fontFamily:CJ3,htmlLabels:!1,flowchart:{htmlLabels:!1}});window.__renderMermaid=async(u,B)=>{if(!/^[A-Za-z][\w-]*$/.test(u))throw Error(`invalid mermaid render id: ${u}`);let{svg:E}=await cw.render(u,B);return E};window.__mermaidToExcalidraw=async(u)=>{let{elements:B,files:E}=await iU0(u),C={type:"excalidraw",version:2,source:"gstack-diagram-render",elements:qP(B),appState:{viewBackgroundColor:"#ffffff"},files:E??{}};return JSON.stringify(C)};window.__excalidrawToSvg=async(u)=>{let B=JSON.parse(u);if(!Array.isArray(B.elements))throw Error("excalidraw scene has no elements array");let E=await aO({elements:B.elements,appState:{...B.appState??{},exportBackground:!0},files:B.files??null,exportPadding:16});return new XMLSerializer().serializeToString(E)};var DJ3=1e4;function Seu(u){if(!(u>0&&u<=DJ3))throw Error(`targetWidthPx out of range: ${u}`)}window.__rasterize=async(u,B)=>{Seu(B);let E=new Blob([u],{type:"image/svg+xml;charset=utf-8"}),A=URL.createObjectURL(E);try{let C=new Image;await new Promise((f,l)=>{C.onload=()=>f(),C.onerror=()=>l(Error("SVG image decode failed (malformed SVG or foreignObject content)")),C.src=A});let D=C.naturalWidth||800,F=C.naturalHeight||600,U=B/D,z=document.createElement("canvas");z.width=Math.round(D*U),z.height=Math.round(F*U);let k=z.getContext("2d");if(!k)throw Error("2d canvas context unavailable");return k.fillStyle="#ffffff",k.fillRect(0,0,z.width,z.height),k.drawImage(C,0,0,z.width,z.height),z.toDataURL("image/png")}finally{URL.revokeObjectURL(A)}};window.__mountForScreenshot=(u,B)=>{document.getElementById("raster-stage")?.remove();let E=document.createElement("div");E.id="raster-stage",E.style.cssText=`display:inline-block;background:#fff;width:${B}px`,E.innerHTML=u;let A=E.querySelector("svg");if(A)A.setAttribute("width",String(B)),A.removeAttribute("height"),A.style.height="auto";return document.body.appendChild(E),`mounted:${B}`};window.__downscaleRaster=async(u,B,E)=>{Seu(B);let A=new Image;await new Promise((z,k)=>{A.onload=()=>z(),A.onerror=()=>k(Error("image decode failed")),A.src=u});let C=B/(A.naturalWidth||B),D=document.createElement("canvas");D.width=Math.round(A.naturalWidth*C),D.height=Math.round(A.naturalHeight*C);let F=D.getContext("2d");if(!F)throw Error("2d canvas context unavailable");F.drawImage(A,0,0,D.width,D.height);let U=E==="image/jpeg"?"image/jpeg":"image/png";return U==="image/jpeg"?D.toDataURL(U,0.9):D.toDataURL(U)};window.__probeImage=async(u)=>{let B=new Image;return await new Promise((E,A)=>{B.onload=()=>E(),B.onerror=()=>A(Error("image decode failed")),B.src=u}),JSON.stringify({width:B.naturalWidth,height:B.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 veu=document.getElementById("status");if(veu)veu.textContent="ready";var uo=document.createElement("div");uo.id="done";uo.textContent="ready";uo.style.cssText="position:absolute;left:-9999px";document.body.appendChild(uo);
</script>
</body>
</html>